@latticexyz/world-module-metadata 2.2.19-900ac35deebfa260bafb1697d15e95eef855cd69 → 2.2.20-306707570ec5fd27877d674502aa381d7fd89662

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.
@@ -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":"install","inputs":[{"name":"args","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"installRoot","inputs":[{"name":"","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"pure"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"pure"},{"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":"EncodedLengths"},{"name":"dynamicData","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":"FieldLayout_Empty","inputs":[]},{"type":"error","name":"FieldLayout_InvalidStaticDataLength","inputs":[{"name":"staticDataLength","type":"uint256","internalType":"uint256"},{"name":"computedStaticDataLength","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_StaticLengthDoesNotFitInAWord","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_StaticLengthIsNotZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_StaticLengthIsZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_TooManyDynamicFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_TooManyFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Module_AlreadyInstalled","inputs":[]},{"type":"error","name":"Module_MissingDependency","inputs":[{"name":"dependency","type":"address","internalType":"address"}]},{"type":"error","name":"Module_NonRootInstallNotSupported","inputs":[]},{"type":"error","name":"Module_RootInstallNotSupported","inputs":[]},{"type":"error","name":"Schema_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Schema_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_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_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":"World_AccessDenied","inputs":[{"name":"resource","type":"string","internalType":"string"},{"name":"caller","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60c060408190523060805262000015906200004f565b604051809103905ff0801580156200002f573d5f803e3d5ffd5b506001600160a01b031660a05234801562000048575f80fd5b506200005d565b6120aa8062002dbe83390190565b60805160a051612d3f6200007f5f395f61039c01525f6101f50152612d3f5ff3fe608060405234801561000f575f80fd5b506004361061006f575f3560e01c806345ec93541161004d57806345ec9354146100d05780637c5b0335146100e3578063e1af802c146100f6575f80fd5b806301ffc9a714610073578063119df25f1461009b57806313861fb5146100bb575b5f80fd5b610086610081366004612781565b6100fe565b60405190151581526020015b60405180910390f35b6100a36101e2565b6040516001600160a01b039091168152602001610092565b6100ce6100c93660046127b0565b6101f0565b005b604051601f193601358152602001610092565b6100ce6100f13660046127b0565b610707565b6100a3610739565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f6fdd1c8000000000000000000000000000000000000000000000000000000000148061019057507fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000145b806101dc57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b5f6101eb610742565b905090565b61021a7f000000000000000000000000000000000000000000000000000000000000000082610774565b5f610223610739565b90507f6e736d657461646174610000000000000000000000000000000000000000000061024f816107b9565b6102c2576040517fb29e4089000000000000000000000000000000000000000000000000000000008152600481018290526001600160a01b0383169063b29e4089906024015f604051808303815f87803b1580156102ab575f80fd5b505af11580156102bd573d5f803e3d5ffd5b505050505b6102cc8130610843565b6102f57f74626d657461646174610000000000005265736f7572636554616700000000006107b9565b610301576103016108ed565b5f6103567f73790000000000000000000000000000000000000000000000000000000000006103308460101b90565b7f4d6574616461746153797374656d000000000000000000000000000000000000610984565b9050610361816107b9565b610677576040517f3350b6a9000000000000000000000000000000000000000000000000000000008152600481018290526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116602483015260016044830152841690633350b6a9906064015f604051808303815f87803b1580156103ec575f80fd5b505af11580156103fe573d5f803e3d5ffd5b5050604080517f26d98102000000000000000000000000000000000000000000000000000000008152600481018590526024810191909152601f60448201527f6765745265736f7572636554616728627974657333322c62797465733332290060648201526001600160a01b03861692506326d9810291506084016020604051808303815f875af1158015610495573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104b9919061285b565b50604080517f26d98102000000000000000000000000000000000000000000000000000000008152600481018390526024810191909152602560448201527f7365745265736f7572636554616728627974657333322c627974657333322c6260648201527f797465732900000000000000000000000000000000000000000000000000000060848201526001600160a01b038416906326d981029060a4016020604051808303815f875af1158015610573573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610597919061285b565b50604080517f26d98102000000000000000000000000000000000000000000000000000000008152600481018390526024810191909152602260448201527f64656c6574655265736f7572636554616728627974657333322c62797465733360648201527f322900000000000000000000000000000000000000000000000000000000000060848201526001600160a01b038416906326d981029060a4016020604051808303815f875af1158015610651573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610675919061285b565b505b826001600160a01b031663ef5d6bbb8361068f6101e2565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b031660248201526044015f604051808303815f87803b1580156106eb575f80fd5b505af11580156106fd573d5f803e3d5ffd5b5050505050505050565b6040517fb6622fc000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6101eb6109fb565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806107715750335b90565b61077e8282610a04565b156107b5576040517f1401206800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f815181106107f0576107f0612876565b60209081029190910101525f61082f7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610a1d565b905061083b8160f81c90565b949350505050565b6001600160a01b0381166108987f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617610ad7565b6001600160a01b0316146107b5576108af82610b70565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016108e49291906128d7565b60405180910390fd5b6109827f74626d657461646174610000000000005265736f7572636554616700000000007c01000000000000000000000000000000000000000000000000000000007e4002005f5f00000000000000000000000000000000000000000000000000007c01c4000000000000000000000000000000000000000000000000000000610975610c9d565b61097d610d74565b610dea565b565b5f61099160706010612915565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16176fffffffffffffffffffffffffffffffff19841690911c1790509392505050565b5f6101eb610e9e565b5f610a16838380519060200120610edc565b9392505050565b5f80610a27610e9e565b9050306001600160a01b03821603610a4d57610a4586868686610f92565b91505061083b565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990610a98908990899089908990600401612962565b602060405180830381865afa158015610ab3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a459190612990565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110610b0e57610b0e612876565b60209081029190910101525f610b657f7462776f726c640000000000000000004e616d6573706163654f776e6572000083837e14010014000000000000000000000000000000000000000000000000000000610a1d565b60601c949350505050565b606081601081901b5f610b8283610fbe565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615610bdd57610bd87fffffffffffffffffffffffffffff0000000000000000000000000000000000008416610fd4565b610c14565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff19831615610c3b57610c3683610fd4565b610c72565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001610c84939291906129a7565b6040516020818303038152906040529350505050919050565b6040805160028082526060828101909352816020015b6060815260200190600190039081610cb35790505090506040518060400160405280600881526020017f7265736f75726365000000000000000000000000000000000000000000000000815250815f81518110610d1257610d12612876565b60200260200101819052506040518060400160405280600381526020017f746167000000000000000000000000000000000000000000000000000000000081525081600181518110610d6657610d66612876565b602002602001018190525090565b604080516001808252818301909252606091816020015b6060815260200190600190039081610d8b5790505090506040518060400160405280600581526020017f76616c7565000000000000000000000000000000000000000000000000000000815250815f81518110610d6657610d66612876565b5f610df3610e9e565b9050306001600160a01b03821603610e1857610e13878787878787611059565b610e95565b6040517f0ba51f490000000000000000000000000000000000000000000000000000000081526001600160a01b03821690630ba51f4990610e67908a908a908a908a908a908a90600401612a8c565b5f604051808303815f87803b158015610e7e575f80fd5b505af1158015610e90573d5f803e3d5ffd5b505050505b50505050505050565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f906001600160a01b031680610ed7573391505090565b919050565b6040805160028082526060820183525f9283929190602083019080368337019050509050836001600160a01b03165f1b815f81518110610f1e57610f1e612876565b6020026020010181815250508281600181518110610f3e57610f3e612876565b60209081029190910101525f610f7d7f7462776f726c64000000000000000000496e7374616c6c65644d6f64756c65738383630101000160d81b610a1d565b9050610f898160f81c90565b95945050505050565b5f610f89610fa0868661154f565b60ff858116601b0360080285901c16610fb985876115a4565b6115dc565b5f610fcb60706010612915565b9190911b919050565b60605f5b6010811015611029576fffffffffffffffffffffffffffffffff198316600882021b7fff00000000000000000000000000000000000000000000000000000000000000161561102957600101610fd8565b604080516fffffffffffffffffffffffffffffffff1985166020820152815160309091019091528181528061083b565b7f7462000000000000000000000000000000000000000000000000000000000000867fffff00000000000000000000000000000000000000000000000000000000000016148015906110d25750611bdd60f21b867fffff0000000000000000000000000000000000000000000000000000000000001614155b1561114e577f7462000000000000000000000000000000000000000000000000000000000000868760405160200161110c91815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526108e4939291600401612ad5565b6111578561162c565b611162846001611876565b61116c835f611876565b60e084901c60e885901c0160ff168251146111cc5760e084901c60e885901c0160ff1682516040517f0f72cb98000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b60e085901c60e886901c0160ff1681511461122c5760e085901c60e886901c0160ff1681516040517f7dec4c00000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146112a45760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d88000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b6112ad85611a0a565b6112b684611a0a565b14611308576112c485611a0a565b6112cd84611a0a565b6040517f65cc0adf000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b61131185611a3b565b61131a84611a3b565b1461136c5761132885611a3b565b61133184611a3b565b6040517fedea9587000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b5f5b61137786611a0a565b811015611412576113a161138b8583611a57565b60c581111561139c5761139c612b15565b611a77565b6008601b8390030287901c60ff161461140a576008601b8290030286901c60ff166113cf61138b8684611a57565b6040517f254c7db4000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b60010161136e565b505f61146e7f74620000000000000000000000000000000000000000000000000000000000006114428960101b90565b60101c7fffff000000000000000000000000000000000000000000000000000000000000919091161790565b90505f611484611bdd60f21b6114428a60101b90565b905061148f82611acf565b8061149e575061149e81611acf565b156114f85787886040516020016114b791815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526108e49291600401612b29565b61154488888888886040516020016115109190612b41565b604051602081830303815290604052886040516020016115309190612b41565b604051602081830303815290604052611b45565b6106fd886001611c24565b5f8282604051602001611563929190612b53565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff168110156115d4576115ca60ff601b83900360080287901c1683612915565b91506001016115a8565b509392505050565b5f60208210611601576020820484019350602082816115fd576115fd612b8d565b0691505b508254600882021b6020829003808411156115d4576001850154600882021c82179150509392505050565b80611663576040517fa019e4da00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f61166d82611a3b565b905060058111156116b4576040517f6793df6200000000000000000000000000000000000000000000000000000000815260048101829052600560248201526044016108e4565b5f6116be83611a0a565b90505f6116cb8383612915565b9050601c811115611712576040517fecd893b900000000000000000000000000000000000000000000000000000000815260048101829052601c60248201526044016108e4565b5f805b838110156117bb5760ff601b82900360080287901c165f819003611768576040517f53b2dd05000000000000000000000000000000000000000000000000000000008152600481018390526024016108e4565b60208111156117a6576040517f7237f237000000000000000000000000000000000000000000000000000000008152600481018390526024016108e4565b6117b08184612915565b925050600101611715565b506117c585611cc6565b8114611811576117d485611cc6565b6040517feba964de0000000000000000000000000000000000000000000000000000000081526004810191909152602481018290526044016108e4565b825b601c81101561186e5760ff601b82900360080287901c168015611865576040517f1d8d44db000000000000000000000000000000000000000000000000000000008152600481018390526024016108e4565b50600101611813565b505050505050565b80158015611882575081155b156118a25760405163d498615960e01b81525f60048201526024016108e4565b5f6118ac83611a3b565b905060058111156118d35760405163d498615960e01b8152600481018290526024016108e4565b5f6118dd84611a0a565b90505f6118ea8383612915565b9050601c8111156119115760405163d498615960e01b8152600481018290526024016108e4565b5f805b8381101561197a575f61192a61138b8984611a57565b9050805f03611965576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61196f8184612915565b925050600101611914565b5061198486611cc6565b81146119af5761199386611cc6565b60405163d498615960e01b81526004016108e491815260200190565b825b82811015610e95575f6119c761138b8984611a57565b90508015611a01576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b506001016119b1565b5f60086001611a1b60026020612ba1565b611a259190612ba1565b611a2f9190612bb4565b8260ff911c1692915050565b5f6008600180611a4d60026020612ba1565b611a1b9190612ba1565b5f601b8290036008028360ff911c1660c5811115610a1657610a16612b15565b5f808260c5811115611a8b57611a8b612b15565b60ff1690506061811015611aa557601f1660010192915050565b60618360c5811115611ab957611ab9612b15565b03611ac75750601492915050565b505f92915050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110611b0657611b06612876565b60209081029190910101525f61082f7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610f92565b604080516020810187905280820186905260608082018690528251808303909101815260809091019091525f611b7b8484611ce8565b90505f611b888585611d04565b6040805160018082528183019092529192505f91906020808301908036833701905050905089815f81518110611bc057611bc0612876565b6020908102919091010152611c187f746273746f72650000000000000000005461626c657300000000000000000000828686867e60030220202000000000000000000000000000000000000000000000000000611d30565b50505050505050505050565b6040805160018082528183019092525f916020808301908036833701905050905082815f81518110611c5857611c58612876565b602002602001018181525050611cc17f746273746f72650000000000000000005265736f7572636549647300000000005f1b825f85604051602001611ca491151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b612037565b505050565b5f6008611cd560026020612ba1565b611cdf9190612bb4565b9190911c919050565b815181515f9181810160389190911b1760609190911b17610a16565b60608282604051602001611d19929190612bcb565b604051602081830303815290604052905092915050565b611bdd60f21b867fffff0000000000000000000000000000000000000000000000000000000000001603611da157857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051611d949493929190612bf9565b60405180910390a261186e565b5f611dab87612053565b90505f5b8151811015611e7d575f828281518110611dcb57611dcb612876565b60200260200101519050611df76001826affffffffffffffffffffff19166120d890919063ffffffff16565b15611e74576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611e46908c908c908c908c908c908c90600401612c42565b5f604051808303815f87803b158015611e5d575f80fd5b505af1158015611e6f573d5f803e3d5ffd5b505050505b50600101611daf565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611eb49493929190612bf9565b60405180910390a25f611ec7888861154f565b90505f602087019050611edd825f8951846120f5565b5f611ee785611a3b565b1115611f67575f611ef88a8a6121b0565b87815590506020860191505f805f5b611f1088611a3b565b8160ff161015611f6257611f258d8d83612205565b9250611f408a8260ff166028026038011c64ffffffffff1690565b9150611f4e835f84886120f5565b611f588286612915565b9450600101611f07565b505050505b5f5b8351811015611c18575f848281518110611f8557611f85612876565b60200260200101519050611fb16002826affffffffffffffffffffff19166120d890919063ffffffff16565b1561202e576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90612000908e908e908e908e908e908e90600401612c42565b5f604051808303815f87803b158015612017575f80fd5b505af1158015612029573d5f803e3d5ffd5b505050505b50600101611f69565b61204c858561204684876115a4565b85612283565b5050505050565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f8151811061208b5761208b612876565b60209081029190910101525f6120c27f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836124f3565b905061083b6120d3825f845161252c565b6125b8565b5f8160ff16826120e88560581c90565b1660ff1614905092915050565b821561216d576020831061211f5760208304840193506020838161211b5761211b612b8d565b0692505b821561216d5760208390035f5f19600885021c1990506008850281811c91508351811c905081198754168282161787555081841161215e5750506121aa565b50600194909401939182900391015b5b6020821061218f5780518455600190930192601f199091019060200161216e565b81156121aa57835481515f19600885021c9182169119161784555b50505050565b5f82826040516020016121c4929190612b53565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f8383604051602001612219929190612b53565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b611bdd60f21b847fffff00000000000000000000000000000000000000000000000000000000000016036122f257837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516122e593929190612c9a565b60405180910390a26121aa565b5f6122fd858561154f565b90505f61230986612053565b90505f5b81518110156123d7575f82828151811061232957612329612876565b602002602001015190506123556004826affffffffffffffffffffff19166120d890919063ffffffff16565b156123ce576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906123a0908b908b908b908b90600401612cd6565b5f604051808303815f87803b1580156123b7575f80fd5b505af11580156123c9573d5f803e3d5ffd5b505050505b5060010161230d565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161240c93929190612c9a565b60405180910390a2612427828565ffffffffffff16856125c7565b5f5b8151811015610e95575f82828151811061244557612445612876565b602002602001015190506124716008826affffffffffffffffffffff19166120d890919063ffffffff16565b156124ea576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba8721906124bc908b908b908b908b90600401612cd6565b5f604051808303815f87803b1580156124d3575f80fd5b505af11580156124e5573d5f803e3d5ffd5b505050505b50600101612429565b606061083b612503858585612205565b5f6125278561251289896125dd565b9060ff166028026038011c64ffffffffff1690565b6125ef565b5f8183118061253b5750835182115b15612578578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016108e493929190612d0e565b602084016125868482612915565b90505f6125938585612ba1565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f610a168360155f612612565b611cc1838383516125d88560200190565b6120f5565b5f610a166125eb84846121b0565b5490565b60405160208101601f19603f84840101166040528282526115d48585858461268a565b60605f61261f8560801c90565b90506fffffffffffffffffffffffffffffffff85165f85828161264457612644612b8d565b0490506040519350602084016020820281016040528185525f5b8281101561267e578451871c82529387019360209091019060010161265e565b50505050509392505050565b821561270e57602083106126b4576020830484019350602083816126b0576126b0612b8d565b0692505b821561270e5760208390035f818410156126d557505f19600884021c6126de565b505f19600882021c5b8554600886021b8184511682198216178452508184116126ff5750506121aa565b50600194909401939182900391015b5b602082106127305783548152600190930192601f199091019060200161270f565b81156121aa575f5f19600884021c8251865482191691161782525050505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461277e575f80fd5b50565b5f60208284031215612791575f80fd5b8135610a1681612751565b634e487b7160e01b5f52604160045260245ffd5b5f602082840312156127c0575f80fd5b813567ffffffffffffffff808211156127d7575f80fd5b818401915084601f8301126127ea575f80fd5b8135818111156127fc576127fc61279c565b604051601f8201601f19908116603f011681019083821181831017156128245761282461279c565b8160405282815287602084870101111561283c575f80fd5b826020860160208301375f928101602001929092525095945050505050565b5f6020828403121561286b575f80fd5b8151610a1681612751565b634e487b7160e01b5f52603260045260245ffd5b5f5b838110156128a457818101518382015260200161288c565b50505f910152565b5f81518084526128c381602086016020860161288a565b601f01601f19169290920160200192915050565b604081525f6128e960408301856128ac565b90506001600160a01b03831660208301529392505050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156101dc576101dc612901565b5f815180845260208085019450602084015f5b838110156129575781518752958201959082019060010161293b565b509495945050505050565b848152608060208201525f61297a6080830186612928565b60ff949094166040830152506060015292915050565b5f602082840312156129a0575f80fd5b5051919050565b7fffff000000000000000000000000000000000000000000000000000000000000841681525f7f3a000000000000000000000000000000000000000000000000000000000000008060028401528451612a0781600386016020890161288a565b808401905081600382015284519150612a2782600483016020880161288a565b0160040195945050505050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015612a7f57601f19868403018952612a6d8383516128ac565b98840198925090830190600101612a51565b5090979650505050505050565b86815285602082015284604082015283606082015260c060808201525f612ab660c0830185612a34565b82810360a0840152612ac88185612a34565b9998505050505050505050565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201525f610f8960608301846128ac565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61083b60408301846128ac565b602081525f610a166020830184612a34565b8281525f60208083018451602086015f5b82811015612b8057815184529284019290840190600101612b64565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b818103818111156101dc576101dc612901565b80820281158282048414176101dc576101dc612901565b5f8351612bdc81846020880161288a565b835190830190612bf081836020880161288a565b01949350505050565b608081525f612c0b6080830187612928565b8281036020840152612c1d81876128ac565b90508460408401528281036060840152612c3781856128ac565b979650505050505050565b86815260c060208201525f612c5a60c0830188612928565b8281036040840152612c6c81886128ac565b90508560608401528281036080840152612c8681866128ac565b9150508260a0830152979650505050505050565b606081525f612cac6060830186612928565b65ffffffffffff851660208401528281036040840152612ccc81856128ac565b9695505050505050565b848152608060208201525f612cee6080830186612928565b65ffffffffffff851660408401528281036060840152612c3781856128ac565b606081525f612d2060608301866128ac565b6020830194909452506040015291905056fea164736f6c6343000818000a608060405234801561000f575f80fd5b5061208d8061001d5f395ff3fe608060405234801561000f575f80fd5b506004361061007a575f3560e01c806345ec93541161005857806345ec9354146100db578063c6972e93146100ee578063e1af802c1461010e578063f128760214610116575f80fd5b806301ffc9a71461007e578063116e68f2146100a6578063119df25f146100bb575b5f80fd5b61009161008c366004611a45565b610129565b60405190151581526020015b60405180910390f35b6100b96100b4366004611af0565b6101c1565b005b6100c36101eb565b6040516001600160a01b03909116815260200161009d565b604051601f19360135815260200161009d565b6101016100fc366004611b7c565b6101f9565b60405161009d9190611be9565b6100c361020c565b6100b9610124366004611b7c565b610215565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806101bb57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b6101ca83610238565b6101db836101d66101eb565b61028f565b6101e6838383610330565b505050565b5f6101f46103c0565b905090565b606061020583836103f2565b9392505050565b5f6101f4610489565b61021e82610238565b61022a826101d66101eb565b6102348282610492565b5050565b6102418161051a565b61028c578061024f826105bc565b6040517ffbf10ce6000000000000000000000000000000000000000000000000000000008152600401610283929190611bfb565b60405180910390fd5b50565b6001600160a01b0381166102e47f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff000000000000000000000000000000008516176106f8565b6001600160a01b031614610234576102fb826105bc565b816040517fd787b737000000000000000000000000000000000000000000000000000000008152600401610283929190611c13565b6040805160028082526060820183525f9260208301908036833701905050905083815f8151811061036357610363611c3d565b602002602001018181525050828160018151811061038357610383611c3d565b60209081029190910101526103ba7f74626d657461646174610000000000005265736f757263655461670000000000825f85610791565b50505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806103ef5750335b90565b60408051600280825260608083018452925f92919060208301908036833701905050905083815f8151811061042957610429611c3d565b602002602001018181525050828160018151811061044957610449611c3d565b60209081029190910101525f6104807f74626d657461646174610000000000005265736f757263655461670000000000838361083d565b95945050505050565b5f6101f46108ff565b6040805160028082526060820183525f9260208301908036833701905050905082815f815181106104c5576104c5611c3d565b60200260200101818152505081816001815181106104e5576104e5611c3d565b60209081029190910101526101e67f74626d657461646174610000000000005265736f7572636554616700000000008261093d565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061055157610551611c3d565b60209081029190910101525f6105a87f746273746f72650000000000000000005265736f75726365496473000000000083837e010100010000000000000000000000000000000000000000000000000000006109db565b90506105b48160f81c90565b949350505050565b606081601081901b5f6105ce83610a95565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615610629576106247fffffffffffffffffffffffffffff0000000000000000000000000000000000008416610aab565b610660565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff000000000000000000000000000000008316156106965761069183610aab565b6106cd565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6040516020016106df93929190611c51565b6040516020818303038152906040529350505050919050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061072f5761072f611c3d565b60209081029190910101525f6107867f7462776f726c640000000000000000004e616d6573706163654f776e6572000083837e140100140000000000000000000000000000000000000000000000000000006109db565b60601c949350505050565b5f61079a6108ff565b9050306001600160a01b038216036107bd576107b885858585610b4e565b610836565b6040517fef6ea8620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063ef6ea86290610808908890889088908890600401611d18565b5f604051808303815f87803b15801561081f575f80fd5b505af1158015610831573d5f803e3d5ffd5b505050505b5050505050565b60605f6108486108ff565b9050306001600160a01b0382160361086d57610865858585610b8e565b915050610205565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e788977906108b690889088908890600401611d56565b5f60405180830381865afa1580156108d0573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526108659190810190611d81565b509392505050565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f906001600160a01b031680610938573391505090565b919050565b5f6109466108ff565b9050306001600160a01b03821603610962576101e68383610bc7565b6040517f505a181d0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063505a181d906109a99086908690600401611dea565b5f604051808303815f87803b1580156109c0575f80fd5b505af11580156109d2573d5f803e3d5ffd5b50505050505050565b5f806109e56108ff565b9050306001600160a01b03821603610a0b57610a0386868686610bda565b9150506105b4565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990610a56908990899089908990600401611e02565b602060405180830381865afa158015610a71573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a039190611e30565b5f610aa260706010611e5b565b9190911b919050565b60605f5b6010811015610b0f577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615610b0f57600101610aaf565b604080517fffffffffffffffffffffffffffffffff000000000000000000000000000000008516602082015281516030909101909152818152806105b4565b5f610b598585610c06565b90505f610b75828560ff166028026038011c64ffffffffff1690565b9050610b868686865f858888610c18565b505050505050565b60606105b4610b9e85858561103d565b5f610bc285610bad8989610c06565b9060ff166028026038011c64ffffffffff1690565b6110bb565b6102348282610bd5856110de565b611161565b5f610480610be8868661144d565b60ff858116601b0360080285901c16610c0185876114a2565b6114d2565b5f610205610c148484611522565b5490565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff0000000000000000000000000000000000000000000000000000000000001614610cd8577f74620000000000000000000000000000000000000000000000000000000000008788604051602001610c9691815260200190565b60408051601f19818403018152908290527f31b46683000000000000000000000000000000000000000000000000000000008252610283939291600401611e6e565b5f610cf2828760ff166028026038011c64ffffffffff1690565b90505f83518564ffffffffff1683610d0a9190611eae565b610d149190611e5b565b9050808214158015610d36575081610d2c8688611ec1565b64ffffffffff1614155b15610d86576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610283565b818664ffffffffff161115610dd7576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610283565b5f610de3848984611577565b90505f610def8b611644565b90505f5b8151811015610eb3575f828281518110610e0f57610e0f611c3d565b60200260200101519050610e3b6010826affffffffffffffffffffff19166116c990919063ffffffff16565b15610eaa57606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b8152600401610e7c9796959493929190611ee6565b5f604051808303815f87803b158015610e93575f80fd5b505af1158015610ea5573d5f803e3d5ffd5b505050505b50600101610df3565b5064ffffffffff88165f5b8a60ff168160ff161015610ef157610ee5878260ff166028026038011c64ffffffffff1690565b90910190600101610ebe565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d604051610f2c96959493929190611f43565b60405180910390a250828414610f4c575f610f478c8c611522565b839055505b5f610f588c8c8c61103d565b9050610f6c818a64ffffffffff16896116e6565b505f5b815181101561102f575f828281518110610f8b57610f8b611c3d565b60200260200101519050610fb76020826affffffffffffffffffffff19166116c990919063ffffffff16565b1561102657606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b8152600401610ff89796959493929190611ee6565b5f604051808303815f87803b15801561100f575f80fd5b505af1158015611021573d5f803e3d5ffd5b505050505b50600101610f6f565b505050505050505050505050565b5f8383604051602001611051929190611f9e565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b60405160208101601f19603f84840101166040528282526108f7858585846116fc565b5f7f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161112c57507e60030220202000000000000000000000000000000000000000000000000000919050565b6101bb6111597f746273746f72650000000000000000005461626c657300000000000000000000846117c3565b60205f6114d2565b7f6f74000000000000000000000000000000000000000000000000000000000000837fffff00000000000000000000000000000000000000000000000000000000000016036111e757827f0e1f72f429eb97e64878619984a91e687ae91610348b9ff4216782cc96e49d07836040516111da9190611fd8565b60405180910390a2505050565b5f6111f184611644565b90505f5b81518110156112bd575f82828151811061121157611211611c3d565b6020026020010151905061123d6040826affffffffffffffffffffff19166116c990919063ffffffff16565b156112b4576040517f9faeaf45000000000000000000000000000000000000000000000000000000008152606082901c90639faeaf459061128690899089908990600401611fea565b5f604051808303815f87803b15801561129d575f80fd5b505af11580156112af573d5f803e3d5ffd5b505050505b506001016111f5565b50837f0e1f72f429eb97e64878619984a91e687ae91610348b9ff4216782cc96e49d07846040516112ee9190611fd8565b60405180910390a25f611301858561144d565b9050611359815f611311866117de565b67ffffffffffffffff81111561132957611329611a84565b6040519080825280601f01601f191660200182016040528015611353576020820181803683370190505b506116e6565b5f61136384611800565b1115611383575f6113748686611522565b905061138181602061183c565b505b5f5b8251811015610b86575f8382815181106113a1576113a1611c3d565b602002602001015190506113cd6080826affffffffffffffffffffff19166116c990919063ffffffff16565b15611444576040517f83b5c95b000000000000000000000000000000000000000000000000000000008152606082901c906383b5c95b90611416908a908a908a90600401611fea565b5f604051808303815f87803b15801561142d575f80fd5b505af115801561143f573d5f803e3d5ffd5b505050505b50600101611385565b5f8282604051602001611461929190611f9e565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff168110156108f7576114c860ff601b83900360080287901c1683611e5b565b91506001016114a6565b5f602082106114f7576020820484019350602082816114f3576114f3612012565b0691505b508254600882021b6020829003808411156108f7576001850154600882021c82179150509392505050565b5f8282604051602001611536929190611f9e565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f64ffffffffff8211156115ba576040517f7149a3c100000000000000000000000000000000000000000000000000000000815260048101839052602401610283565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff168085106115ec57808503820191506115f4565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f8151811061167c5761167c611c3d565b60209081029190910101525f6116b37f746273746f726500000000000000000053746f7265486f6f6b730000000000008383610b8e565b90506105b46116c4825f8451611877565b611903565b5f8160ff16826116d98560581c90565b1660ff1614905092915050565b6101e6838383516116f78560200190565b611912565b821561178057602083106117265760208304840193506020838161172257611722612012565b0692505b82156117805760208390035f8184101561174757505f19600884021c611750565b505f19600882021c5b8554600886021b8184511682198216178452508184116117715750506103ba565b50600194909401939182900391015b5b602082106117a25783548152600190930192601f1990910190602001611781565b81156103ba575f5f19600884021c8251865482191691161782525050505050565b60408051602081018490529081018290525f90606001611461565b5f60086117ed60026020611eae565b6117f79190612026565b9190911c919050565b5f600860018061181260026020611eae565b61181c9190611eae565b6118269190611eae565b6118309190612026565b8260ff911c1692915050565b5f602061184a83601f611e5b565b611854919061203d565b61185e9084611e5b565b90505b808310156101e6575f8355600183019250611861565b5f818311806118865750835182115b156118c3578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016102839392919061205c565b602084016118d18482611e5b565b90505f6118de8585611eae565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f6102058360155f6119cd565b821561198a576020831061193c5760208304840193506020838161193857611938612012565b0692505b821561198a5760208390035f5f19600885021c1990506008850281811c91508351811c905081198754168282161787555081841161197b5750506103ba565b50600194909401939182900391015b5b602082106119ac5780518455600190930192601f199091019060200161198b565b81156103ba575f5f19600884021c8554835182191691161785555050505050565b60605f6119da8560801c90565b90506fffffffffffffffffffffffffffffffff85165f8582816119ff576119ff612012565b0490506040519350602084016020820281016040528185525f5b82811015611a39578451871c825293870193602090910190600101611a19565b50505050509392505050565b5f60208284031215611a55575f80fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610205575f80fd5b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611ac157611ac1611a84565b604052919050565b5f67ffffffffffffffff821115611ae257611ae2611a84565b50601f01601f191660200190565b5f805f60608486031215611b02575f80fd5b8335925060208401359150604084013567ffffffffffffffff811115611b26575f80fd5b8401601f81018613611b36575f80fd5b8035611b49611b4482611ac9565b611a98565b818152876020838501011115611b5d575f80fd5b816020840160208301375f602083830101528093505050509250925092565b5f8060408385031215611b8d575f80fd5b50508035926020909101359150565b5f5b83811015611bb6578181015183820152602001611b9e565b50505f910152565b5f8151808452611bd5816020860160208601611b9c565b601f01601f19169290920160200192915050565b602081525f6102056020830184611bbe565b828152604060208201525f6105b46040830184611bbe565b604081525f611c256040830185611bbe565b90506001600160a01b03831660208301529392505050565b634e487b7160e01b5f52603260045260245ffd5b7fffff000000000000000000000000000000000000000000000000000000000000841681525f7f3a000000000000000000000000000000000000000000000000000000000000008060028401528451611cb1816003860160208901611b9c565b808401905081600382015284519150611cd1826004830160208801611b9c565b0160040195945050505050565b5f815180845260208085019450602084015f5b83811015611d0d57815187529582019590820190600101611cf1565b509495945050505050565b848152608060208201525f611d306080830186611cde565b60ff851660408401528281036060840152611d4b8185611bbe565b979650505050505050565b838152606060208201525f611d6e6060830185611cde565b905060ff83166040830152949350505050565b5f60208284031215611d91575f80fd5b815167ffffffffffffffff811115611da7575f80fd5b8201601f81018413611db7575f80fd5b8051611dc5611b4482611ac9565b818152856020838501011115611dd9575f80fd5b610480826020830160208601611b9c565b828152604060208201525f6105b46040830184611cde565b848152608060208201525f611e1a6080830186611cde565b60ff949094166040830152506060015292915050565b5f60208284031215611e40575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156101bb576101bb611e47565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201525f6104806060830184611bbe565b818103818111156101bb576101bb611e47565b64ffffffffff818116838216019080821115611edf57611edf611e47565b5092915050565b87815260e060208201525f611efe60e0830189611cde565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c0840152611f358185611bbe565b9a9950505050505050505050565b60c081525f611f5560c0830189611cde565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a0840152611f918185611bbe565b9998505050505050505050565b8281525f60208083018451602086015f5b82811015611fcb57815184529284019290840190600101611faf565b5091979650505050505050565b602081525f6102056020830184611cde565b838152606060208201525f6120026060830185611cde565b9050826040830152949350505050565b634e487b7160e01b5f52601260045260245ffd5b80820281158282048414176101bb576101bb611e47565b5f8261205757634e487b7160e01b5f52601260045260245ffd5b500490565b606081525f61206e6060830186611bbe565b6020830194909452506040015291905056fea164736f6c6343000818000a","sourceMap":"980:1514:119:-:0;;;;;644:4:53;600:49;;1117:20:119;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;1067:70:119;;;980:1514;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561000f575f80fd5b506004361061006f575f3560e01c806345ec93541161004d57806345ec9354146100d05780637c5b0335146100e3578063e1af802c146100f6575f80fd5b806301ffc9a714610073578063119df25f1461009b57806313861fb5146100bb575b5f80fd5b610086610081366004612781565b6100fe565b60405190151581526020015b60405180910390f35b6100a36101e2565b6040516001600160a01b039091168152602001610092565b6100ce6100c93660046127b0565b6101f0565b005b604051601f193601358152602001610092565b6100ce6100f13660046127b0565b610707565b6100a3610739565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f6fdd1c8000000000000000000000000000000000000000000000000000000000148061019057507fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000145b806101dc57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b5f6101eb610742565b905090565b61021a7f000000000000000000000000000000000000000000000000000000000000000082610774565b5f610223610739565b90507f6e736d657461646174610000000000000000000000000000000000000000000061024f816107b9565b6102c2576040517fb29e4089000000000000000000000000000000000000000000000000000000008152600481018290526001600160a01b0383169063b29e4089906024015f604051808303815f87803b1580156102ab575f80fd5b505af11580156102bd573d5f803e3d5ffd5b505050505b6102cc8130610843565b6102f57f74626d657461646174610000000000005265736f7572636554616700000000006107b9565b610301576103016108ed565b5f6103567f73790000000000000000000000000000000000000000000000000000000000006103308460101b90565b7f4d6574616461746153797374656d000000000000000000000000000000000000610984565b9050610361816107b9565b610677576040517f3350b6a9000000000000000000000000000000000000000000000000000000008152600481018290526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116602483015260016044830152841690633350b6a9906064015f604051808303815f87803b1580156103ec575f80fd5b505af11580156103fe573d5f803e3d5ffd5b5050604080517f26d98102000000000000000000000000000000000000000000000000000000008152600481018590526024810191909152601f60448201527f6765745265736f7572636554616728627974657333322c62797465733332290060648201526001600160a01b03861692506326d9810291506084016020604051808303815f875af1158015610495573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104b9919061285b565b50604080517f26d98102000000000000000000000000000000000000000000000000000000008152600481018390526024810191909152602560448201527f7365745265736f7572636554616728627974657333322c627974657333322c6260648201527f797465732900000000000000000000000000000000000000000000000000000060848201526001600160a01b038416906326d981029060a4016020604051808303815f875af1158015610573573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610597919061285b565b50604080517f26d98102000000000000000000000000000000000000000000000000000000008152600481018390526024810191909152602260448201527f64656c6574655265736f7572636554616728627974657333322c62797465733360648201527f322900000000000000000000000000000000000000000000000000000000000060848201526001600160a01b038416906326d981029060a4016020604051808303815f875af1158015610651573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610675919061285b565b505b826001600160a01b031663ef5d6bbb8361068f6101e2565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b031660248201526044015f604051808303815f87803b1580156106eb575f80fd5b505af11580156106fd573d5f803e3d5ffd5b5050505050505050565b6040517fb6622fc000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6101eb6109fb565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806107715750335b90565b61077e8282610a04565b156107b5576040517f1401206800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f815181106107f0576107f0612876565b60209081029190910101525f61082f7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610a1d565b905061083b8160f81c90565b949350505050565b6001600160a01b0381166108987f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617610ad7565b6001600160a01b0316146107b5576108af82610b70565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016108e49291906128d7565b60405180910390fd5b6109827f74626d657461646174610000000000005265736f7572636554616700000000007c01000000000000000000000000000000000000000000000000000000007e4002005f5f00000000000000000000000000000000000000000000000000007c01c4000000000000000000000000000000000000000000000000000000610975610c9d565b61097d610d74565b610dea565b565b5f61099160706010612915565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16176fffffffffffffffffffffffffffffffff19841690911c1790509392505050565b5f6101eb610e9e565b5f610a16838380519060200120610edc565b9392505050565b5f80610a27610e9e565b9050306001600160a01b03821603610a4d57610a4586868686610f92565b91505061083b565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990610a98908990899089908990600401612962565b602060405180830381865afa158015610ab3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a459190612990565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110610b0e57610b0e612876565b60209081029190910101525f610b657f7462776f726c640000000000000000004e616d6573706163654f776e6572000083837e14010014000000000000000000000000000000000000000000000000000000610a1d565b60601c949350505050565b606081601081901b5f610b8283610fbe565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615610bdd57610bd87fffffffffffffffffffffffffffff0000000000000000000000000000000000008416610fd4565b610c14565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff19831615610c3b57610c3683610fd4565b610c72565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001610c84939291906129a7565b6040516020818303038152906040529350505050919050565b6040805160028082526060828101909352816020015b6060815260200190600190039081610cb35790505090506040518060400160405280600881526020017f7265736f75726365000000000000000000000000000000000000000000000000815250815f81518110610d1257610d12612876565b60200260200101819052506040518060400160405280600381526020017f746167000000000000000000000000000000000000000000000000000000000081525081600181518110610d6657610d66612876565b602002602001018190525090565b604080516001808252818301909252606091816020015b6060815260200190600190039081610d8b5790505090506040518060400160405280600581526020017f76616c7565000000000000000000000000000000000000000000000000000000815250815f81518110610d6657610d66612876565b5f610df3610e9e565b9050306001600160a01b03821603610e1857610e13878787878787611059565b610e95565b6040517f0ba51f490000000000000000000000000000000000000000000000000000000081526001600160a01b03821690630ba51f4990610e67908a908a908a908a908a908a90600401612a8c565b5f604051808303815f87803b158015610e7e575f80fd5b505af1158015610e90573d5f803e3d5ffd5b505050505b50505050505050565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f906001600160a01b031680610ed7573391505090565b919050565b6040805160028082526060820183525f9283929190602083019080368337019050509050836001600160a01b03165f1b815f81518110610f1e57610f1e612876565b6020026020010181815250508281600181518110610f3e57610f3e612876565b60209081029190910101525f610f7d7f7462776f726c64000000000000000000496e7374616c6c65644d6f64756c65738383630101000160d81b610a1d565b9050610f898160f81c90565b95945050505050565b5f610f89610fa0868661154f565b60ff858116601b0360080285901c16610fb985876115a4565b6115dc565b5f610fcb60706010612915565b9190911b919050565b60605f5b6010811015611029576fffffffffffffffffffffffffffffffff198316600882021b7fff00000000000000000000000000000000000000000000000000000000000000161561102957600101610fd8565b604080516fffffffffffffffffffffffffffffffff1985166020820152815160309091019091528181528061083b565b7f7462000000000000000000000000000000000000000000000000000000000000867fffff00000000000000000000000000000000000000000000000000000000000016148015906110d25750611bdd60f21b867fffff0000000000000000000000000000000000000000000000000000000000001614155b1561114e577f7462000000000000000000000000000000000000000000000000000000000000868760405160200161110c91815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526108e4939291600401612ad5565b6111578561162c565b611162846001611876565b61116c835f611876565b60e084901c60e885901c0160ff168251146111cc5760e084901c60e885901c0160ff1682516040517f0f72cb98000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b60e085901c60e886901c0160ff1681511461122c5760e085901c60e886901c0160ff1681516040517f7dec4c00000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146112a45760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d88000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b6112ad85611a0a565b6112b684611a0a565b14611308576112c485611a0a565b6112cd84611a0a565b6040517f65cc0adf000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b61131185611a3b565b61131a84611a3b565b1461136c5761132885611a3b565b61133184611a3b565b6040517fedea9587000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b5f5b61137786611a0a565b811015611412576113a161138b8583611a57565b60c581111561139c5761139c612b15565b611a77565b6008601b8390030287901c60ff161461140a576008601b8290030286901c60ff166113cf61138b8684611a57565b6040517f254c7db4000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b60010161136e565b505f61146e7f74620000000000000000000000000000000000000000000000000000000000006114428960101b90565b60101c7fffff000000000000000000000000000000000000000000000000000000000000919091161790565b90505f611484611bdd60f21b6114428a60101b90565b905061148f82611acf565b8061149e575061149e81611acf565b156114f85787886040516020016114b791815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526108e49291600401612b29565b61154488888888886040516020016115109190612b41565b604051602081830303815290604052886040516020016115309190612b41565b604051602081830303815290604052611b45565b6106fd886001611c24565b5f8282604051602001611563929190612b53565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff168110156115d4576115ca60ff601b83900360080287901c1683612915565b91506001016115a8565b509392505050565b5f60208210611601576020820484019350602082816115fd576115fd612b8d565b0691505b508254600882021b6020829003808411156115d4576001850154600882021c82179150509392505050565b80611663576040517fa019e4da00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f61166d82611a3b565b905060058111156116b4576040517f6793df6200000000000000000000000000000000000000000000000000000000815260048101829052600560248201526044016108e4565b5f6116be83611a0a565b90505f6116cb8383612915565b9050601c811115611712576040517fecd893b900000000000000000000000000000000000000000000000000000000815260048101829052601c60248201526044016108e4565b5f805b838110156117bb5760ff601b82900360080287901c165f819003611768576040517f53b2dd05000000000000000000000000000000000000000000000000000000008152600481018390526024016108e4565b60208111156117a6576040517f7237f237000000000000000000000000000000000000000000000000000000008152600481018390526024016108e4565b6117b08184612915565b925050600101611715565b506117c585611cc6565b8114611811576117d485611cc6565b6040517feba964de0000000000000000000000000000000000000000000000000000000081526004810191909152602481018290526044016108e4565b825b601c81101561186e5760ff601b82900360080287901c168015611865576040517f1d8d44db000000000000000000000000000000000000000000000000000000008152600481018390526024016108e4565b50600101611813565b505050505050565b80158015611882575081155b156118a25760405163d498615960e01b81525f60048201526024016108e4565b5f6118ac83611a3b565b905060058111156118d35760405163d498615960e01b8152600481018290526024016108e4565b5f6118dd84611a0a565b90505f6118ea8383612915565b9050601c8111156119115760405163d498615960e01b8152600481018290526024016108e4565b5f805b8381101561197a575f61192a61138b8984611a57565b9050805f03611965576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61196f8184612915565b925050600101611914565b5061198486611cc6565b81146119af5761199386611cc6565b60405163d498615960e01b81526004016108e491815260200190565b825b82811015610e95575f6119c761138b8984611a57565b90508015611a01576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b506001016119b1565b5f60086001611a1b60026020612ba1565b611a259190612ba1565b611a2f9190612bb4565b8260ff911c1692915050565b5f6008600180611a4d60026020612ba1565b611a1b9190612ba1565b5f601b8290036008028360ff911c1660c5811115610a1657610a16612b15565b5f808260c5811115611a8b57611a8b612b15565b60ff1690506061811015611aa557601f1660010192915050565b60618360c5811115611ab957611ab9612b15565b03611ac75750601492915050565b505f92915050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110611b0657611b06612876565b60209081029190910101525f61082f7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610f92565b604080516020810187905280820186905260608082018690528251808303909101815260809091019091525f611b7b8484611ce8565b90505f611b888585611d04565b6040805160018082528183019092529192505f91906020808301908036833701905050905089815f81518110611bc057611bc0612876565b6020908102919091010152611c187f746273746f72650000000000000000005461626c657300000000000000000000828686867e60030220202000000000000000000000000000000000000000000000000000611d30565b50505050505050505050565b6040805160018082528183019092525f916020808301908036833701905050905082815f81518110611c5857611c58612876565b602002602001018181525050611cc17f746273746f72650000000000000000005265736f7572636549647300000000005f1b825f85604051602001611ca491151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b612037565b505050565b5f6008611cd560026020612ba1565b611cdf9190612bb4565b9190911c919050565b815181515f9181810160389190911b1760609190911b17610a16565b60608282604051602001611d19929190612bcb565b604051602081830303815290604052905092915050565b611bdd60f21b867fffff0000000000000000000000000000000000000000000000000000000000001603611da157857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051611d949493929190612bf9565b60405180910390a261186e565b5f611dab87612053565b90505f5b8151811015611e7d575f828281518110611dcb57611dcb612876565b60200260200101519050611df76001826affffffffffffffffffffff19166120d890919063ffffffff16565b15611e74576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611e46908c908c908c908c908c908c90600401612c42565b5f604051808303815f87803b158015611e5d575f80fd5b505af1158015611e6f573d5f803e3d5ffd5b505050505b50600101611daf565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611eb49493929190612bf9565b60405180910390a25f611ec7888861154f565b90505f602087019050611edd825f8951846120f5565b5f611ee785611a3b565b1115611f67575f611ef88a8a6121b0565b87815590506020860191505f805f5b611f1088611a3b565b8160ff161015611f6257611f258d8d83612205565b9250611f408a8260ff166028026038011c64ffffffffff1690565b9150611f4e835f84886120f5565b611f588286612915565b9450600101611f07565b505050505b5f5b8351811015611c18575f848281518110611f8557611f85612876565b60200260200101519050611fb16002826affffffffffffffffffffff19166120d890919063ffffffff16565b1561202e576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90612000908e908e908e908e908e908e90600401612c42565b5f604051808303815f87803b158015612017575f80fd5b505af1158015612029573d5f803e3d5ffd5b505050505b50600101611f69565b61204c858561204684876115a4565b85612283565b5050505050565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f8151811061208b5761208b612876565b60209081029190910101525f6120c27f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836124f3565b905061083b6120d3825f845161252c565b6125b8565b5f8160ff16826120e88560581c90565b1660ff1614905092915050565b821561216d576020831061211f5760208304840193506020838161211b5761211b612b8d565b0692505b821561216d5760208390035f5f19600885021c1990506008850281811c91508351811c905081198754168282161787555081841161215e5750506121aa565b50600194909401939182900391015b5b6020821061218f5780518455600190930192601f199091019060200161216e565b81156121aa57835481515f19600885021c9182169119161784555b50505050565b5f82826040516020016121c4929190612b53565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f8383604051602001612219929190612b53565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b611bdd60f21b847fffff00000000000000000000000000000000000000000000000000000000000016036122f257837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516122e593929190612c9a565b60405180910390a26121aa565b5f6122fd858561154f565b90505f61230986612053565b90505f5b81518110156123d7575f82828151811061232957612329612876565b602002602001015190506123556004826affffffffffffffffffffff19166120d890919063ffffffff16565b156123ce576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906123a0908b908b908b908b90600401612cd6565b5f604051808303815f87803b1580156123b7575f80fd5b505af11580156123c9573d5f803e3d5ffd5b505050505b5060010161230d565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161240c93929190612c9a565b60405180910390a2612427828565ffffffffffff16856125c7565b5f5b8151811015610e95575f82828151811061244557612445612876565b602002602001015190506124716008826affffffffffffffffffffff19166120d890919063ffffffff16565b156124ea576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba8721906124bc908b908b908b908b90600401612cd6565b5f604051808303815f87803b1580156124d3575f80fd5b505af11580156124e5573d5f803e3d5ffd5b505050505b50600101612429565b606061083b612503858585612205565b5f6125278561251289896125dd565b9060ff166028026038011c64ffffffffff1690565b6125ef565b5f8183118061253b5750835182115b15612578578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016108e493929190612d0e565b602084016125868482612915565b90505f6125938585612ba1565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f610a168360155f612612565b611cc1838383516125d88560200190565b6120f5565b5f610a166125eb84846121b0565b5490565b60405160208101601f19603f84840101166040528282526115d48585858461268a565b60605f61261f8560801c90565b90506fffffffffffffffffffffffffffffffff85165f85828161264457612644612b8d565b0490506040519350602084016020820281016040528185525f5b8281101561267e578451871c82529387019360209091019060010161265e565b50505050509392505050565b821561270e57602083106126b4576020830484019350602083816126b0576126b0612b8d565b0692505b821561270e5760208390035f818410156126d557505f19600884021c6126de565b505f19600882021c5b8554600886021b8184511682198216178452508184116126ff5750506121aa565b50600194909401939182900391015b5b602082106127305783548152600190930192601f199091019060200161270f565b81156121aa575f5f19600884021c8251865482191691161782525050505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461277e575f80fd5b50565b5f60208284031215612791575f80fd5b8135610a1681612751565b634e487b7160e01b5f52604160045260245ffd5b5f602082840312156127c0575f80fd5b813567ffffffffffffffff808211156127d7575f80fd5b818401915084601f8301126127ea575f80fd5b8135818111156127fc576127fc61279c565b604051601f8201601f19908116603f011681019083821181831017156128245761282461279c565b8160405282815287602084870101111561283c575f80fd5b826020860160208301375f928101602001929092525095945050505050565b5f6020828403121561286b575f80fd5b8151610a1681612751565b634e487b7160e01b5f52603260045260245ffd5b5f5b838110156128a457818101518382015260200161288c565b50505f910152565b5f81518084526128c381602086016020860161288a565b601f01601f19169290920160200192915050565b604081525f6128e960408301856128ac565b90506001600160a01b03831660208301529392505050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156101dc576101dc612901565b5f815180845260208085019450602084015f5b838110156129575781518752958201959082019060010161293b565b509495945050505050565b848152608060208201525f61297a6080830186612928565b60ff949094166040830152506060015292915050565b5f602082840312156129a0575f80fd5b5051919050565b7fffff000000000000000000000000000000000000000000000000000000000000841681525f7f3a000000000000000000000000000000000000000000000000000000000000008060028401528451612a0781600386016020890161288a565b808401905081600382015284519150612a2782600483016020880161288a565b0160040195945050505050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015612a7f57601f19868403018952612a6d8383516128ac565b98840198925090830190600101612a51565b5090979650505050505050565b86815285602082015284604082015283606082015260c060808201525f612ab660c0830185612a34565b82810360a0840152612ac88185612a34565b9998505050505050505050565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201525f610f8960608301846128ac565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61083b60408301846128ac565b602081525f610a166020830184612a34565b8281525f60208083018451602086015f5b82811015612b8057815184529284019290840190600101612b64565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b818103818111156101dc576101dc612901565b80820281158282048414176101dc576101dc612901565b5f8351612bdc81846020880161288a565b835190830190612bf081836020880161288a565b01949350505050565b608081525f612c0b6080830187612928565b8281036020840152612c1d81876128ac565b90508460408401528281036060840152612c3781856128ac565b979650505050505050565b86815260c060208201525f612c5a60c0830188612928565b8281036040840152612c6c81886128ac565b90508560608401528281036080840152612c8681866128ac565b9150508260a0830152979650505050505050565b606081525f612cac6060830186612928565b65ffffffffffff851660208401528281036040840152612ccc81856128ac565b9695505050505050565b848152608060208201525f612cee6080830186612928565b65ffffffffffff851660408401528281036060840152612c3781856128ac565b606081525f612d2060608301866128ac565b6020830194909452506040015291905056fea164736f6c6343000818000a","sourceMap":"980:1514:119:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;984:308:53;;;;;;:::i;:::-;;:::i;:::-;;;611:14:126;;604:22;586:41;;574:2;559:18;984:308:53;;;;;;;;1262:121:57;;;:::i;:::-;;;-1:-1:-1;;;;;802:55:126;;;784:74;;772:2;757:18;1262:121:57;638:226:126;1243:1249:119;;;;;;:::i;:::-;;:::i;:::-;;1624:110:57;;;-1:-1:-1;;3808:14:57;3804:25;3791:39;2189:25:126;;2177:2;2162:18;1624:110:57;2043:177:126;1142:97:119;;;;;;:::i;:::-;;:::i;1950:98:57:-;;;:::i;984:308:53:-;1108:4;1133:40;;;1148:25;1133:40;;:104;;-1:-1:-1;1183:54:53;;;1198:39;1183:54;1133:104;:154;;;-1:-1:-1;1247:40:53;;;1262:25;1247:40;1133:154;1120:167;984:308;-1:-1:-1;;984:308:53:o;1262:121:57:-;1313:14;1342:36;:34;:36::i;:::-;1335:43;;1262:121;:::o;1243:1249:119:-;1402:33;1422:6;1430:4;1402:19;:33::i;:::-;1442:16;1472:8;:6;:8::i;:::-;1442:39;-1:-1:-1;2954:74:58;1559:32:119;2954:74:58;1559:21:119;:32::i;:::-;1554:88;;1601:34;;;;;;;;2189:25:126;;;-1:-1:-1;;;;;1601:23:119;;;;;2162:18:126;;1601:34:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1554:88;1647:52;1674:9;1693:4;1647:26;:52::i;:::-;1711:43;1166:66:122;1711:21:119;:43::i;:::-;1706:87;;1764:22;:20;:22::i;:::-;1799:27;1829:110;1862:15;1885:24;:9;451:5:20;2637:44:58;;2539:148;1885:24:119;1829:110;:25;:110::i;:::-;1799:140;;2035:39;2057:16;2035:21;:39::i;:::-;2030:403;;2084:60;;;;;;;;2689:25:126;;;-1:-1:-1;;;;;2123:14:119;2750:55:126;;2730:18;;;2723:83;2139:4:119;2822:18:126;;;2815:50;2084:20:119;;;;;2662:18:126;;2084:60:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2152:83:119;;;;;;;;;3119:25:126;;;3160:18;;;3153:30;;;;3219:2;3199:18;;;3192:30;3258:33;3238:18;;;3231:61;-1:-1:-1;;;;;2152:30:119;;;-1:-1:-1;2152:30:119;;-1:-1:-1;3309:19:126;;2152:83:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;2243:89:119;;;;;;;;;3836:25:126;;;3877:18;;;3870:30;;;;3936:2;3916:18;;;3909:30;3975:34;3955:18;;;3948:62;4047:7;4026:19;;;4019:36;-1:-1:-1;;;;;2243:30:119;;;;;4072:19:126;;2243:89:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;2340:86:119;;;;;;;;;4345:25:126;;;4386:18;;;4379:30;;;;4445:2;4425:18;;;4418:30;4484:34;4464:18;;;4457:62;4556:4;4535:19;;;4528:33;-1:-1:-1;;;;;2340:30:119;;;;;4578:19:126;;2340:86:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2030:403;2439:5;-1:-1:-1;;;;;2439:23:119;;2463:9;2474:12;:10;:12::i;:::-;2439:48;;;;;;;;;;;;;4813:25:126;;;;-1:-1:-1;;;;;4874:55:126;4854:18;;;4847:83;4786:18;;2439:48:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1286:1206;;;1243:1249;:::o;1142:97::-;1202:32;;;;;;;;;;;;;;1950:98:57;1989:7;2011:32;:30;:32::i;3000:383::-;3286:34;3290:14;3286:34;3273:48;3267:4;3263:59;;3333:45;;-1:-1:-1;3368:10:57;3333:45;3000:383;:::o;1990:194:53:-;2092:39;2104:13;2119:11;2092;:39::i;:::-;2088:92;;;2148:25;;;;;;;;;;;;;;2088:92;1990:194;;:::o;2500:315:30:-;2613:16;;;2627:1;2613:16;;;;;;;;;2565:11;;;;2613:16;;;;;;;;;;;;-1:-1:-1;2613:16:30;2584:45;;2668:10;2635:9;2645:1;2635:12;;;;;;;;:::i;:::-;;;;;;;;;;:44;2686:13;2702:64;971:66;2739:9;2686:13;-1:-1:-1;;;2702:26:30;:64::i;:::-;2686:80;;2780:29;2801:5;2788:20;;7167:5;7081:97;2780:29;2772:38;2500:315;-1:-1:-1;;;;2500:315:30:o;3522:232:41:-;-1:-1:-1;;;;;3607:57:41;;:47;696:18:98;578:36:58;2955:46;;2954:74;3607:18:41;:47::i;:::-;-1:-1:-1;;;;;3607:57:41;;3603:147;;3713:21;:10;:19;:21::i;:::-;3736:6;3681:62;;;;;;;;;;;;:::i;:::-;;;;;;;;2328:147:122;2363:107;1166:66;1295;1458;1613;2439:13;:11;:13::i;:::-;2454:15;:13;:15::i;:::-;2363:25;:107::i;:::-;2328:147::o;1046:257:58:-;1133:10;1262:26;438:6;451:5:20;1262:26:58;:::i;:::-;1189:15;;;1208:31;451:5:20;1208:31:58;;;;1189:51;-1:-1:-1;;1244:13:58;;:45;;;1189:101;;-1:-1:-1;1046:257:58;;;;;:::o;4056:97:57:-;4097:7;4119:29;:27;:29::i;1579:176:53:-;1672:4;1691:59;1712:13;1737:11;1727:22;;;;;;1691:20;:59::i;:::-;1684:66;1579:176;-1:-1:-1;;;1579:176:53:o;17775:457:27:-;17932:7;17947:21;17971:17;:15;:17::i;:::-;17947:41;-1:-1:-1;18023:4:27;-1:-1:-1;;;;;17998:30:27;;;17994:234;;18045:68;18070:7;18079:8;18089:10;18101:11;18045:24;:68::i;:::-;18038:75;;;;;17994:234;18141:80;;;;;-1:-1:-1;;;;;18141:36:27;;;;;:80;;18178:7;;18187:8;;18197:10;;18209:11;;18141:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;3403:307:72:-;3513:16;;;3527:1;3513:16;;;;;;;;;3463:13;;;;3513:16;;;;;;;;;;;;-1:-1:-1;3513:16:72;3484:45;;3568:11;3535:9;3545:1;3535:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;3587:13;3603:64;1169:66;3640:9;3587:13;1298:66;3603:26;:64::i;:::-;3681:23;;;3403:307;-1:-1:-1;;;;3403:307:72:o;3486:592:58:-;3550:13;3620:10;451:5:20;2637:44:58;;;3571:19;3718;3620:10;3718:7;:19::i;:::-;3695:42;-1:-1:-1;3800:12:58;3839:35;;;;:102;;3888:53;;;;:34;:53::i;:::-;3839:102;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3968:25:58;;;:87;;4007:48;4042:12;4007:34;:48::i;:::-;3968:87;;;;;;;;;;;;;;;;;;;;;3772:293;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3743:330;;;;;3486:592;;;:::o;1815:164:122:-;1904:15;;;1917:1;1904:15;;;1861:24;1904:15;;;;;;;;;;;;;;;;;;;;;;;;;;1893:26;;1925:24;;;;;;;;;;;;;;;;;:8;1934:1;1925:11;;;;;;;;:::i;:::-;;;;;;:24;;;;1955:19;;;;;;;;;;;;;;;;;:8;1964:1;1955:11;;;;;;;;:::i;:::-;;;;;;:19;;;;1815:164;:::o;2119:144::-;2214:15;;;2227:1;2214:15;;;;;;;;;2167:26;;2214:15;;;;;;;;;;;;;;;;;;;;2201:28;;2235:23;;;;;;;;;;;;;;;;;:10;2246:1;2235:13;;;;;;;;:::i;5644:520:27:-;5847:21;5871:17;:15;:17::i;:::-;5847:41;-1:-1:-1;5923:4:27;-1:-1:-1;;;;;5898:30:27;;;5894:266;;5938:91;5962:7;5971:11;5984:9;5995:11;6008:8;6018:10;5938:23;:91::i;:::-;5894:266;;;6050:103;;;;;-1:-1:-1;;;;;6050:35:27;;;;;:103;;6086:7;;6095:11;;6108:9;;6119:11;;6132:8;;6142:10;;6050:103;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5894:266;5841:323;5644:520;;;;;;:::o;1836:227::-;1066:42;1925:22;1886:7;;-1:-1:-1;;;;;1925:22:27;;1953:106;;2001:10;1994:17;;;1836:227;:::o;1953:106::-;2039:13;1836:227;-1:-1:-1;1836:227:27:o;3547:382:70:-;3682:16;;;3696:1;3682:16;;;;;;;;3629;;;;3682;3696:1;3682:16;;;;;;;;;;-1:-1:-1;3682:16:70;3653:45;;3743:13;-1:-1:-1;;;;;3727:31:70;3719:40;;3704:9;3714:1;3704:12;;;;;;;;:::i;:::-;;;;;;:55;;;;;3780:13;3765:9;3775:1;3765:12;;;;;;;;:::i;:::-;;;;;;;;;;:28;3800:13;3816:64;1084:66;3853:9;3800:13;-1:-1:-1;;;3816:26:70;:64::i;:::-;3800:80;;3894:29;3915:5;3902:20;;7167:5:30;7081:97;3894:29:70;3886:38;3547:382;-1:-1:-1;;;;;3547:382:70:o;36171:541:24:-;36328:7;36465:242;36509:59;36550:7;36559:8;36509:40;:59::i;:::-;36586:31;;;;4323:19:4;:27;579:1:33;4322:44:4;4288:79;;;4275:93;36635:63:24;36674:11;36687:10;36635:38;:63::i;:::-;36465:17;:242::i;3165:160:58:-;3228:7;3292:26;438:6;451:5:20;3292:26:58;:::i;:::-;3258:61;;;;;3165:160;-1:-1:-1;3165:160:58:o;1862:325::-;1932:13;1953:14;1973:83;1989:2;1980:6;:11;1973:83;;;-1:-1:-1;;2007:37:58;;3261:1:2;3257:13;;3253:24;2007:42:58;;2003:53;2051:5;2003:53;1993:8;;1973:83;;;2092:30;;;-1:-1:-1;;10214:79:126;;2092:30:58;;;10202:92:126;2092:30:58;;10310:12:126;;;;2092:30:58;;;875:21:2;;;2092:30:58;2142:39;760:164:2;6637:2917:24;6945:14;6924:7;:35;;;;;;:83;;-1:-1:-1;;;;6963:7:24;:44;;;;6924:83;6920:209;;;7063:14;7079:7;7112;7095:25;;;;;;10493:19:126;;10537:2;10528:12;;10333:213;7095:25:24;;;;-1:-1:-1;;7095:25:24;;;;;;;;;;7024:98;;;;;;;;;;:::i;6920:209::-;7175:22;:11;:20;:22::i;:::-;7238:40;:9;7271:4;7238:18;:40::i;:::-;7284:43;:11;7319:5;7284:20;:43::i;:::-;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;7415:8:24;:15;:40;7411:148;;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;7536:15:24;;7472:80;;;;;;;;11194:25:126;;;;11235:18;;;11228:34;11167:18;;7472:80:24;11020:248:126;7411:148:24;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;7609:10:24;:17;:44;7605:158;;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;7738:17:24;;7670:86;;;;;;;;11194:25:126;;;;11235:18;;;11228:34;11167:18;;7670:86:24;11020:248:126;7605:158:24;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;7820:50:24;7816:171;;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;7887:93:24;;;;;;;;11194:25:126;;;;11235:18;;;11228:34;11167:18;;7887:93:24;11020:248:126;7816:171:24;8029:29;:11;:27;:29::i;:::-;7996;:11;:27;:29::i;:::-;:62;7992:225;;8134:29;:11;:27;:29::i;:::-;8173;:11;:27;:29::i;:::-;8075:135;;;;;;;;11194:25:126;;;;11235:18;;;11228:34;11167:18;;8075:135:24;11020:248:126;7992:225:24;8260:30;:11;:28;:30::i;:::-;8226;:11;:28;:30::i;:::-;:64;8222:230;;8367:30;:11;:28;:30::i;:::-;8407;:11;:28;:30::i;:::-;8307:138;;;;;;;;11194:25:126;;;;11235:18;;;11228:34;11167:18;;8307:138:24;11020:248:126;8222:230:24;8549:9;8544:314;8564:29;:11;:27;:29::i;:::-;8560:1;:33;8544:314;;;8638:44;:22;:11;8658:1;8638:19;:22::i;:::-;:42;;;;;;;;:::i;:::-;;:44::i;:::-;579:1:33;4323:19:4;:27;;;4322:44;4288:79;;;4275:93;;8612:70:24;8608:244;;579:1:33;4323:19:4;:27;;;4322:44;4288:79;;;4275:93;;8789:44:24;:22;:11;8809:1;8789:19;:22::i;:44::-;8701:142;;;;;;;;11194:25:126;;;;11235:18;;;11228:34;11167:18;;8701:142:24;11020:248:126;8608:244:24;8595:3;;8544:314;;;;8938:25;8966:63;8987:14;9003:25;:7;451:5:20;2637:44:58;;2539:148;9003:25:24;451:5:20;1080:26;1061:15;;;;;:46;;952:161;8966:63:24;8938:91;;9035:26;9064:72;-1:-1:-1;;;9110:25:24;:7;451:5:20;2637:44:58;;2539:148;9064:72:24;9035:101;;9146:38;9169:14;9146:22;:38::i;:::-;:81;;;;9188:39;9211:15;9188:22;:39::i;:::-;9142:190;;;9282:7;9315;9298:25;;;;;;10493:19:126;;10537:2;10528:12;;10333:213;9298:25:24;;;;-1:-1:-1;;9298:25:24;;;;;;;;;;9244:81;;;;;;;;;:::i;9142:190::-;9373:103;9385:7;9394:11;9407:9;9418:11;9442:8;9431:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;9464:10;9453:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;9373:11;:103::i;:::-;9512:37;9535:7;9544:4;9512:22;:37::i;50806:191::-;50908:7;50972;50981:8;50955:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;50955:35:24;;;;;;;;;50945:46;;50955:35;50945:46;;;;42361:22;50938:53;;50806:191;-1:-1:-1;;;50806:191:24:o;51823:242::-;51919:7;;;51958:84;51978:10;51974:14;;:1;:14;51958:84;;;52003:32;4275:93:4;4323:19;:27;;;579:1:33;4322:44:4;4288:79;;;4275:93;52003:32:24;;:::i;:::-;;-1:-1:-1;51990:3:24;;51958:84;;;-1:-1:-1;52054:6:24;51823:242;-1:-1:-1;;;51823:242:24:o;8945:812:23:-;9043:14;9079:2;9069:6;:12;9065:112;;9138:2;9129:6;:11;9111:29;;;;9160:2;9150:12;;;;;;:::i;:::-;;;;9065:112;-1:-1:-1;9368:21:23;;9353:12;9341:25;;9337:53;9516:2;:11;;;9598:22;;;9594:159;;;9734:1;9718:14;9714:22;9708:29;9693:12;9678:13;9674:32;9670:68;9662:6;9659:80;9649:90;;9059:698;8945:812;;;;;:::o;6618:1665:4:-;6301:45;6681:87;;6723:38;;;;;;;;;;;;;;6681:87;6774:25;6802:30;:11;:28;:30::i;:::-;6774:58;;943:1:33;6842:17:4;:38;6838:156;;;6897:90;;;;;;;;11194:25:126;;;943:1:33;11235:18:126;;;11228:34;11167:18;;6897:90:4;11020:248:126;6838:156:4;7000:24;7027:29;:11;:27;:29::i;:::-;7000:56;-1:-1:-1;7062:23:4;7088:36;7107:17;7000:56;7088:36;:::i;:::-;7062:62;;689:2:33;7134:15:4;:34;7130:141;;;7185:79;;;;;;;;11194:25:126;;;689:2:33;11235:18:126;;;11228:34;11167:18;;7185:79:4;11020:248:126;7130:141:4;7313:25;7349:9;7344:429;7364:16;7360:1;:20;7344:429;;;4275:93;4323:19;:27;;;579:1:33;4322:44:4;4288:79;;;4275:93;7392:24;7453:21;;;7449:234;;7493:52;;;;;;;;2189:25:126;;;2162:18;;7493:52:4;2043:177:126;7449:234:4;376:2:33;7564:16:4;:28;7560:123;;;7611:63;;;;;;;;2189:25:126;;;2162:18;;7611:63:4;2043:177:126;7560:123:4;7690:37;7711:16;7690:37;;:::i;:::-;;-1:-1:-1;;7755:3:4;;7344:429;;;;7840:30;:11;:28;:30::i;:::-;7819:17;:51;7815:184;;7942:30;:11;:28;:30::i;:::-;7887:105;;;;;;;;11194:25:126;;;;11235:18;;;11228:34;;;11167:18;;7887:105:4;11020:248:126;7815:184:4;8055:16;8038:241;689:2:33;8073:1:4;:20;8038:241;;;4275:93;4323:19;:27;;;579:1:33;4322:44:4;4288:79;;;4275:93;8169:21;;8165:108;;8209:55;;;;;;;;2189:25:126;;;2162:18;;8209:55:4;2043:177:126;8165:108:4;-1:-1:-1;8095:3:4;;8038:241;;;;6675:1608;;;;6618:1665;:::o;5760:1635:21:-;5867:10;5866:11;:31;;;;-1:-1:-1;6301:45:4;;5881:16:21;5862:81;;;5906:37;;-1:-1:-1;;;5906:37:21;;5941:1;5906:37;;;2189:25:126;2162:18;;5906:37:21;2043:177:126;5862:81:21;6006:25;6034;:6;:23;:25::i;:::-;6006:53;;943:1:33;6069:17:21;:38;6065:104;;;6116:53;;-1:-1:-1;;;6116:53:21;;;;;2189:25:126;;;2162:18;;6116:53:21;2043:177:126;6065:104:21;6176:24;6203;:6;:22;:24::i;:::-;6176:51;-1:-1:-1;6297:23:21;6323:36;6342:17;6176:51;6323:36;:::i;:::-;6297:62;;689:2:33;6369:15:21;:34;6365:98;;;6412:51;;-1:-1:-1;;;6412:51:21;;;;;2189:25:126;;;2162:18;;6412:51:21;2043:177:126;6365:98:21;6524:25;6560:9;6555:314;6575:16;6571:1;:20;6555:314;;;6603:24;6630:39;:17;:6;6645:1;6630:14;:17::i;:39::-;6603:66;;6681:16;6701:1;6681:21;6677:102;;6721:49;;;;;;;;;;;;;;6677:102;6786:37;6807:16;6786:37;;:::i;:::-;;-1:-1:-1;;6851:3:21;;6555:314;;;;6937:25;:6;:23;:25::i;:::-;6916:17;:46;6912:135;;7014:25;:6;:23;:25::i;:::-;6979:61;;-1:-1:-1;;;6979:61:21;;;;;;2189:25:126;;2177:2;2162:18;;2043:177;6912:135:21;7122:16;7105:286;7144:15;7140:1;:19;7105:286;;;7171:24;7198:39;:17;:6;7213:1;7198:14;:17::i;:39::-;7171:66;-1:-1:-1;7249:20:21;;7245:101;;7288:49;;;;;;;;;;;;;;7245:101;-1:-1:-1;7373:3:21;;7105:286;;4979:171:4;5052:7;579:1:33;1532;1516:13;1528:1;376:2;1516:13;:::i;:::-;:17;;;;:::i;:::-;1515:34;;;;:::i;:::-;5088:11:4;5067:78;5080:64;;5067:78;;4979:171;-1:-1:-1;;4979:171:4:o;5377:173::-;5451:7;579:1:33;1704;;1684:13;1696:1;376:2;1684:13;:::i;:::-;:17;;;;:::i;4019:206:21:-;4089:10;4179:19;:27;;;4210:1;4178:33;4157:6;4132:82;4149:63;;4132:82;;;;;;;;;:::i;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;2856:314:30:-;2970:16;;;2984:1;2970:16;;;;;;;;;2922:11;;;;2970:16;;;;;;;;;;;;-1:-1:-1;2970:16:30;2941:45;;3025:10;2992:9;3002:1;2992:12;;;;;;;;:::i;:::-;;;;;;;;;;:44;3043:13;3059:62;971:66;3094:9;3043:13;-1:-1:-1;;;3059:24:30;:62::i;19791:677:32:-;24359:53;;;;;;13880:19:126;;;13915:12;;;13908:28;;;24332:12:32;13952::126;;;13945:28;;;24359:53:32;;;;;;;;;;13989:12:126;;;;24359:53:32;;;20082:30;20115:55;20129:18;20149:20;20115:13;:55::i;:::-;20082:88;;20176:25;20204:55;20218:18;20238:20;20204:13;:55::i;:::-;20295:16;;;20309:1;20295:16;;;;;;;;;20176:83;;-1:-1:-1;20266:26:32;;20295:16;;;;;;;;;;;;-1:-1:-1;20295:16:32;20266:45;;20350:7;20317:9;20327:1;20317:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;20365:98;1207:66;20395:9;20406:11;20419:15;20436:12;1336:66;20365:19;:98::i;:::-;19993:475;;;;19791:677;;;;;;:::o;4220:268:30:-;4320:16;;;4334:1;4320:16;;;;;;;;;4291:26;;4320:16;;;;;;;;;;;-1:-1:-1;4320:16:30;4291:45;;4375:10;4342:9;4352:1;4342:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;4393:90;971:66;955:83;;4428:9;4439:1;4460:6;4442:26;;;;;;13554:14:126;13547:22;13542:3;13538:32;13526:45;;13596:1;13587:11;;13403:201;4442:26:30;;;;-1:-1:-1;;4442:26:30;;;;;;;;;-1:-1:-1;;;4393:24:30;:90::i;:::-;4285:203;4220:268;;:::o;4598:171:4:-;4672:7;579:1:33;1354:13;1366:1;376:2;1354:13;:::i;:::-;1353:30;;;;:::i;:::-;4694:70:4;;;;;4598:171;-1:-1:-1;4598:171:4:o;24608:390:32:-;24918:32;;24952:34;;24734:30;;2662:5:3;;;975:16;2694:39;;;;2675:59;2776:23;2761:39;;;;2742:59;24895:92:32;2518:351:3;25163:234:32;25289:12;25340:18;25369:20;25316:76;;;;;;;;;:::i;:::-;;;;;;;;;;;;;25309:83;;25163:234;;;;:::o;13212:3165:24:-;-1:-1:-1;;;13486:7:24;:44;;;13482:211;;13613:7;13584:88;13622:8;13632:10;13644:14;13660:11;13584:88;;;;;;;;;:::i;:::-;;;;;;;;13680:7;;13482:211;13831:22;13856:24;13872:7;13856:15;:24::i;:::-;13831:49;;13891:9;13886:340;13906:5;:12;13902:1;:16;13886:340;;;13933:9;13955:5;13961:1;13955:8;;;;;;;;:::i;:::-;;;;;;;13933:31;;13976:33;409:6:35;13976:4:24;:14;;;;;:33;;;;:::i;:::-;13972:248;;;14021:190;;;;;3536:35:5;;;;;14021:47:24;;:190;;14080:7;;14099:8;;14119:10;;14141:14;;14167:11;;14190;;14021:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13972:248;-1:-1:-1;13920:3:24;;13886:340;;;;14303:7;14274:88;14312:8;14322:10;14334:14;14350:11;14274:88;;;;;;;;;:::i;:::-;;;;;;;;14426:26;14455:59;14496:7;14505:8;14455:40;:59::i;:::-;14426:88;-1:-1:-1;14520:21:24;894:4:19;884:15;;14520:54:24;;14580:149;14618:18;14652:1;14669:10;:17;14709:13;14580;:149::i;:::-;14829:1;14796:30;:11;:28;:30::i;:::-;:34;14792:1174;;;14915:33;14951:66;14999:7;15008:8;14951:47;:66::i;:::-;695:28:23;;;14915:102:24;-1:-1:-1;894:4:19;884:15;;15191:47:24;;15347:27;15382:25;15420:7;15415:545;15433:30;:11;:28;:30::i;:::-;15429:1;:34;;;15415:545;;;15499:63;15541:7;15550:8;15560:1;15499:41;:63::i;:::-;15477:85;-1:-1:-1;15592:25:24;:14;15615:1;7070:16:3;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;15592:25:24;15572:45;;15627:170;15669:19;15708:1;15729:17;15773:13;15627;:170::i;:::-;15807:34;15824:17;15807:34;;:::i;:::-;;-1:-1:-1;15938:3:24;;15415:545;;;;14832:1134;;;14792:1174;16040:9;16035:338;16055:5;:12;16051:1;:16;16035:338;;;16082:9;16104:5;16110:1;16104:8;;;;;;;;:::i;:::-;;;;;;;16082:31;;16125:32;503:6:35;16125:4:24;:14;;;;;:32;;;;:::i;:::-;16121:246;;;16169:189;;;;;3536:35:5;;;;;16169:46:24;;:189;;16227:7;;16246:8;;16266:10;;16288:14;;16314:11;;16337;;16169:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16121:246;-1:-1:-1;16069:3:24;;16035:338;;23107:355;23279:178;23313:7;23338:8;23368:63;23407:11;23420:10;23368:38;:63::i;:::-;23446:4;23279:16;:178::i;:::-;23107:355;;;;;:::o;3656:342:31:-;3772:16;;;3786:1;3772:16;;;;;;;;;3713:22;;3743:26;;3772:16;;;;;;;;;;;;-1:-1:-1;3772:16:31;3743:45;;3827:7;3794:9;3804:1;3794:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;3842:18;3863:49;969:66;3899:9;3842:18;3863:25;:49::i;:::-;3842:70;;3926:66;:44;3947:5;3954:1;3957:5;:12;3926:20;:44::i;:::-;:64;:66::i;3035:136:5:-;3105:4;3157:9;3124:42;;3143:9;3125:15;3135:4;3934:26;;;3804:162;3125:15;:27;3124:42;;;3117:49;;3035:136;;;;:::o;1489:2340:23:-;1602:10;;1598:1504;;1755:2;1745:6;:12;1741:122;;1818:2;1809:6;:11;1791:29;;;;1842:2;1832:12;;;;;;:::i;:::-;;;;1741:122;1953:10;;1949:1147;;2161:2;:11;;;2035:21;-1:-1:-1;;579:1:33;804:25:34;;782:48;2208:18:23;2193:33;;2395:12;2387:6;2383:25;2442:4;2431:9;2427:20;2419:28;;2497:13;2491:20;2480:9;2476:36;2458:54;;2745:4;2741:9;2724:14;2718:21;2714:37;2645:4;2633:10;2629:21;2572:193;2544:14;2524:253;;2836:13;2826:6;:23;2822:36;;2851:7;;;;2822:36;-1:-1:-1;2999:1:23;2981:19;;;;;3054:23;;;;;3012:30;1949:1147;3132:253;3149:2;3139:6;:12;3132:253;;3244:20;;3221:44;;3318:1;3300:19;;;;-1:-1:-1;;3358:12:23;;;;3346:2;3329:19;3132:253;;;3453:10;;3449:376;;3761:21;;3672:20;;-1:-1:-1;;579:1:33;804:25:34;;782:48;3757:32:23;;;3694:9;;3668:36;3617:184;3573:238;;3449:376;1489:2340;;;;:::o;53371:230:24:-;53492:7;53576;53585:8;53559:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;53559:35:24;;;;;;;;;53549:46;;53559:35;53549:46;;;;42524:40;53522:73;;53371:230;-1:-1:-1;;;53371:230:24:o;52742:274::-;52886:7;52991;53000:8;52974:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;52964:46;;;;;;52943:17;52936:25;;52916:45;;;42433:34;52916:45;:94;52908:103;;52901:110;;52742:274;;;;;:::o;17013:1682::-;-1:-1:-1;;;17192:7:24;:44;;;17188:235;;17346:7;17299:103;17365:8;17382:5;17395:4;17299:103;;;;;;;;:::i;:::-;;;;;;;;17410:7;;17188:235;17429:16;17448:59;17489:7;17498:8;17448:40;:59::i;:::-;17429:78;;17653:22;17678:24;17694:7;17678:15;:24::i;:::-;17653:49;;17713:9;17708:328;17728:5;:12;17724:1;:16;17708:328;;;17755:9;17777:5;17783:1;17777:8;;;;;;;;:::i;:::-;;;;;;;17755:31;;17798:41;614:6:35;17798:4:24;:14;;;;;:41;;;;:::i;:::-;17794:236;;;17851:170;;;;;3536:35:5;;;;;17851:54:24;;:170;;17927:7;;17956:8;;17983:5;;18006:4;;17851:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17794:236;-1:-1:-1;17742:3:24;;17708:328;;;;18140:7;18093:103;18159:8;18176:5;18189:4;18093:103;;;;;;;;:::i;:::-;;;;;;;;18246:70;18278:8;18296:5;18246:70;;18309:4;18246:13;:70::i;:::-;18370:9;18365:326;18385:5;:12;18381:1;:16;18365:326;;;18412:9;18434:5;18440:1;18434:8;;;;;;;;:::i;:::-;;;;;;;18412:31;;18455:40;723:6:35;18455:4:24;:14;;;;;:40;;;;:::i;:::-;18451:234;;;18507:169;;;;;3536:35:5;;;;;18507:53:24;;:169;;18582:7;;18611:8;;18638:5;;18661:4;;18507:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18451:234;-1:-1:-1;18399:3:24;;18365:326;;37180:522;37316:12;37440:257;37479:79;37521:7;37530:8;37540:17;37479:41;:79::i;:::-;37576:1;37595:93;37670:17;37595:66;37643:7;37652:8;37595:47;:66::i;:::-;:74;7070:16:3;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;37595:93:24;37440:12;:257::i;2003:574:22:-;2094:5;2189:3;2181:5;:11;:32;;;;2202:4;:11;2196:3;:17;2181:32;2177:93;;;2253:4;2259:5;2266:3;2222:48;;;;;;;;;;;;;:::i;2177:93::-;2336:4;2326:15;;2383:16;2394:5;2326:15;2383:16;:::i;:::-;;-1:-1:-1;2405:12:22;2420:11;2426:5;2420:3;:11;:::i;:::-;692:17;2555:15;2547:3;2536:14;;;;2535:36;;;;;;-1:-1:-1;;;;;2003:574:22:o;40103:220:37:-;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;966:162:23:-;1055:68;1061:14;1077:6;1085:4;:11;1098:24;1117:4;894::19;884:15;;758:151;1098:24:23;1055:5;:68::i;53939:303:24:-;54060:14;54154:82;54185:48;54215:7;54224:8;54185:29;:48::i;:::-;4711:21:23;;4605:137;5042:669;5458:4;5452:11;5499:4;5487:17;;-1:-1:-1;;5373:16:23;5546:26;;;5373:16;5369:32;5518:4;5511:63;5618:6;5610;5603:22;5636:51;5641:14;5657:6;5665;5673:13;5636:4;:51::i;2681:1129:39:-;2801:22;2831:21;2855;:11;2997:3:22;2975:25;;2901:104;2855:21:39;2831:45;-1:-1:-1;692:17:22;3238:38;;2882:20:39;3044:11;3238:38:22;3044:11:39;3029:26;;;;:::i;:::-;;3015:40;;3164:4;3158:11;3149:20;;3207:4;3200:5;3196:16;3267:4;3254:11;3250:22;3236:12;3232:41;3226:4;3219:55;3317:11;3310:5;3303:26;3360:1;3337:463;3376:11;3373:1;3370:18;3337:463;;;3770:20;;3749:42;;3728:64;;3642:31;;;;3555:4;3537:23;;;;3463:1;3456:9;3337:463;;;3341:28;;3116:690;;;2681:1129;;;;;:::o;6076:2380:23:-;6193:10;;6189:1542;;6346:2;6336:6;:12;6332:122;;6409:2;6400:6;:11;6382:29;;;;6433:2;6423:12;;;;;;:::i;:::-;;;;6332:122;6544:10;;6540:1185;;6752:2;:11;;;6626:21;6810:22;;;6806:135;;;-1:-1:-1;;;579:1:33;804:25:34;;782:48;6806:135:23;;;-1:-1:-1;;;579:1:33;804:25:34;;782:48;6806:135:23;7135:14;7129:21;7114:12;7106:6;7102:25;7098:53;7375:4;7359:13;7353:20;7349:31;7285:4;7281:9;7269:10;7265:26;7210:184;7183:13;7163:243;;7465:13;7455:6;:23;7451:36;;7480:7;;;;7451:36;-1:-1:-1;7628:1:23;7610:19;;;;;7683:23;;;;;7641:30;6540:1185;7760:253;7777:2;7767:6;:12;7760:253;;7871:21;;7849:44;;7946:1;7928:19;;;;-1:-1:-1;;7986:12:23;;;;7974:2;7957:19;7760:253;;;8081:10;;8077:375;;8101:12;-1:-1:-1;;579:1:33;804:25:34;;782:48;8389:20:23;;8299:21;;8322:9;;8295:37;8385:31;;8244:184;8201:237;;-1:-1:-1;6076:2380:23;;;;:::o;14:177:126:-;99:66;92:5;88:78;81:5;78:89;68:117;;181:1;178;171:12;68:117;14:177;:::o;196:245::-;254:6;307:2;295:9;286:7;282:23;278:32;275:52;;;323:1;320;313:12;275:52;362:9;349:23;381:30;405:5;381:30;:::i;869:184::-;-1:-1:-1;;;918:1:126;911:88;1018:4;1015:1;1008:15;1042:4;1039:1;1032:15;1058:980;1126:6;1179:2;1167:9;1158:7;1154:23;1150:32;1147:52;;;1195:1;1192;1185:12;1147:52;1235:9;1222:23;1264:18;1305:2;1297:6;1294:14;1291:34;;;1321:1;1318;1311:12;1291:34;1359:6;1348:9;1344:22;1334:32;;1404:7;1397:4;1393:2;1389:13;1385:27;1375:55;;1426:1;1423;1416:12;1375:55;1462:2;1449:16;1484:2;1480;1477:10;1474:36;;;1490:18;;:::i;:::-;1624:2;1618:9;1686:4;1678:13;;-1:-1:-1;;1674:22:126;;;1698:2;1670:31;1666:40;1654:53;;;1722:18;;;1742:22;;;1719:46;1716:72;;;1768:18;;:::i;:::-;1808:10;1804:2;1797:22;1843:2;1835:6;1828:18;1883:7;1878:2;1873;1869;1865:11;1861:20;1858:33;1855:53;;;1904:1;1901;1894:12;1855:53;1960:2;1955;1951;1947:11;1942:2;1934:6;1930:15;1917:46;2005:1;1983:15;;;2000:2;1979:24;1972:35;;;;-1:-1:-1;1987:6:126;1058:980;-1:-1:-1;;;;;1058:980:126:o;3339:249::-;3408:6;3461:2;3449:9;3440:7;3436:23;3432:32;3429:52;;;3477:1;3474;3467:12;3429:52;3509:9;3503:16;3528:30;3552:5;3528:30;:::i;4941:184::-;-1:-1:-1;;;4990:1:126;4983:88;5090:4;5087:1;5080:15;5114:4;5111:1;5104:15;5130:250;5215:1;5225:113;5239:6;5236:1;5233:13;5225:113;;;5315:11;;;5309:18;5296:11;;;5289:39;5261:2;5254:10;5225:113;;;-1:-1:-1;;5372:1:126;5354:16;;5347:27;5130:250::o;5385:330::-;5427:3;5465:5;5459:12;5492:6;5487:3;5480:19;5508:76;5577:6;5570:4;5565:3;5561:14;5554:4;5547:5;5543:16;5508:76;:::i;:::-;5629:2;5617:15;-1:-1:-1;;5613:88:126;5604:98;;;;5704:4;5600:109;;5385:330;-1:-1:-1;;5385:330:126:o;5720:340::-;5897:2;5886:9;5879:21;5860:4;5917:45;5958:2;5947:9;5943:18;5935:6;5917:45;:::i;:::-;5909:53;;-1:-1:-1;;;;;6002:6:126;5998:55;5993:2;5982:9;5978:18;5971:83;5720:340;;;;;:::o;6065:184::-;-1:-1:-1;;;6114:1:126;6107:88;6214:4;6211:1;6204:15;6238:4;6235:1;6228:15;6254:125;6319:9;;;6340:10;;;6337:36;;;6353:18;;:::i;6384:439::-;6437:3;6475:5;6469:12;6502:6;6497:3;6490:19;6528:4;6557;6552:3;6548:14;6541:21;;6596:4;6589:5;6585:16;6619:1;6629:169;6643:6;6640:1;6637:13;6629:169;;;6704:13;;6692:26;;6738:12;;;;6773:15;;;;6665:1;6658:9;6629:169;;;-1:-1:-1;6814:3:126;;6384:439;-1:-1:-1;;;;;6384:439:126:o;6828:546::-;7150:6;7139:9;7132:25;7193:3;7188:2;7177:9;7173:18;7166:31;7113:4;7214:57;7266:3;7255:9;7251:19;7243:6;7214:57;:::i;:::-;7319:4;7307:17;;;;7302:2;7287:18;;7280:45;-1:-1:-1;7356:2:126;7341:18;7334:34;7206:65;6828:546;-1:-1:-1;;6828:546:126:o;7379:184::-;7449:6;7502:2;7490:9;7481:7;7477:23;7473:32;7470:52;;;7518:1;7515;7508:12;7470:52;-1:-1:-1;7541:16:126;;7379:184;-1:-1:-1;7379:184:126:o;7568:925::-;8017:66;8009:6;8005:79;8000:3;7993:92;7975:3;8104;8136:2;8132:1;8127:3;8123:11;8116:23;8168:6;8162:13;8184:74;8251:6;8247:1;8242:3;8238:11;8231:4;8223:6;8219:17;8184:74;:::i;:::-;8286:6;8281:3;8277:16;8267:26;;8321:2;8317:1;8313:2;8309:10;8302:22;8355:6;8349:13;8333:29;;8371:75;8437:8;8433:1;8429:2;8425:10;8418:4;8410:6;8406:17;8371:75;:::i;:::-;8466:17;8485:1;8462:25;;7568:925;-1:-1:-1;;;;;7568:925:126:o;8498:657::-;8550:3;8581;8613:5;8607:12;8640:6;8635:3;8628:19;8666:4;8695;8690:3;8686:14;8679:21;;8753:4;8743:6;8740:1;8736:14;8729:5;8725:26;8721:37;8792:4;8785:5;8781:16;8815:1;8825:304;8839:6;8836:1;8833:13;8825:304;;;-1:-1:-1;;8914:5:126;8908:4;8904:16;8900:89;8895:3;8888:102;9011:38;9044:4;9035:6;9029:13;9011:38;:::i;:::-;9107:12;;;;9003:46;-1:-1:-1;9072:15:126;;;;8861:1;8854:9;8825:304;;;-1:-1:-1;9145:4:126;;8498:657;-1:-1:-1;;;;;;;8498:657:126:o;9160:908::-;9686:6;9675:9;9668:25;9729:6;9724:2;9713:9;9709:18;9702:34;9772:6;9767:2;9756:9;9752:18;9745:34;9815:6;9810:2;9799:9;9795:18;9788:34;9859:3;9853;9842:9;9838:19;9831:32;9649:4;9886:56;9937:3;9926:9;9922:19;9914:6;9886:56;:::i;:::-;9991:9;9983:6;9979:22;9973:3;9962:9;9958:19;9951:51;10019:43;10055:6;10047;10019:43;:::i;:::-;10011:51;9160:908;-1:-1:-1;;;;;;;;;9160:908:126:o;10551:464::-;10797:66;10789:6;10785:79;10774:9;10767:98;10901:6;10896:2;10885:9;10881:18;10874:34;10944:2;10939;10928:9;10924:18;10917:30;10748:4;10964:45;11005:2;10994:9;10990:18;10982:6;10964:45;:::i;11273:184::-;-1:-1:-1;;;11322:1:126;11315:88;11422:4;11419:1;11412:15;11446:4;11443:1;11436:15;11462:322;11670:6;11659:9;11652:25;11713:2;11708;11697:9;11693:18;11686:30;11633:4;11733:45;11774:2;11763:9;11759:18;11751:6;11733:45;:::i;11789:280::-;11988:2;11977:9;11970:21;11951:4;12008:55;12059:2;12048:9;12044:18;12036:6;12008:55;:::i;12074:639::-;12324:6;12319:3;12312:19;12294:3;12350:2;12383;12378:3;12374:12;12415:6;12409:13;12480:2;12472:6;12468:15;12501:1;12511:175;12525:6;12522:1;12519:13;12511:175;;;12588:13;;12574:28;;12624:14;;;;12661:15;;;;12547:1;12540:9;12511:175;;;-1:-1:-1;12702:5:126;;12074:639;-1:-1:-1;;;;;;;12074:639:126:o;12718:184::-;-1:-1:-1;;;12767:1:126;12760:88;12867:4;12864:1;12857:15;12891:4;12888:1;12881:15;13097:128;13164:9;;;13185:11;;;13182:37;;;13199:18;;:::i;13230:168::-;13303:9;;;13334;;13351:15;;;13345:22;;13331:37;13321:71;;13372:18;;:::i;14012:492::-;14187:3;14225:6;14219:13;14241:66;14300:6;14295:3;14288:4;14280:6;14276:17;14241:66;:::i;:::-;14370:13;;14329:16;;;;14392:70;14370:13;14329:16;14439:4;14427:17;;14392:70;:::i;:::-;14478:20;;14012:492;-1:-1:-1;;;;14012:492:126:o;14509:691::-;14843:3;14832:9;14825:22;14806:4;14870:57;14922:3;14911:9;14907:19;14899:6;14870:57;:::i;:::-;14975:9;14967:6;14963:22;14958:2;14947:9;14943:18;14936:50;15009:33;15035:6;15027;15009:33;:::i;:::-;14995:47;;15078:6;15073:2;15062:9;15058:18;15051:34;15133:9;15125:6;15121:22;15116:2;15105:9;15101:18;15094:50;15161:33;15187:6;15179;15161:33;:::i;:::-;15153:41;14509:691;-1:-1:-1;;;;;;;14509:691:126:o;15205:898::-;15658:6;15647:9;15640:25;15701:3;15696:2;15685:9;15681:18;15674:31;15621:4;15728:57;15780:3;15769:9;15765:19;15757:6;15728:57;:::i;:::-;15833:9;15825:6;15821:22;15816:2;15805:9;15801:18;15794:50;15867:33;15893:6;15885;15867:33;:::i;:::-;15853:47;;15936:6;15931:2;15920:9;15916:18;15909:34;15992:9;15984:6;15980:22;15974:3;15963:9;15959:19;15952:51;16020:33;16046:6;16038;16020:33;:::i;:::-;16012:41;;;16090:6;16084:3;16073:9;16069:19;16062:35;15205:898;;;;;;;;;:::o;16108:512::-;16359:2;16348:9;16341:21;16322:4;16385:56;16437:2;16426:9;16422:18;16414:6;16385:56;:::i;:::-;16489:14;16481:6;16477:27;16472:2;16461:9;16457:18;16450:55;16553:9;16545:6;16541:22;16536:2;16525:9;16521:18;16514:50;16581:33;16607:6;16599;16581:33;:::i;:::-;16573:41;16108:512;-1:-1:-1;;;;;;16108:512:126:o;16625:616::-;16935:6;16924:9;16917:25;16978:3;16973:2;16962:9;16958:18;16951:31;16898:4;17005:57;17057:3;17046:9;17042:19;17034:6;17005:57;:::i;:::-;17110:14;17102:6;17098:27;17093:2;17082:9;17078:18;17071:55;17174:9;17166:6;17162:22;17157:2;17146:9;17142:18;17135:50;17202:33;17228:6;17220;17202:33;:::i;17246:360::-;17449:2;17438:9;17431:21;17412:4;17469:45;17510:2;17499:9;17495:18;17487:6;17469:45;:::i;:::-;17545:2;17530:18;;17523:34;;;;-1:-1:-1;17588:2:126;17573:18;17566:34;17461:53;17246:360;-1:-1:-1;17246:360:126:o","linkReferences":{},"immutableReferences":{"21837":[{"start":501,"length":32}],"79525":[{"start":924,"length":32}]}},"methodIdentifiers":{"_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","install(bytes)":"13861fb5","installRoot(bytes)":"7c5b0335","supportsInterface(bytes4)":"01ffc9a7"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"FieldLayout_Empty\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"staticDataLength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"computedStaticDataLength\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_StaticLengthDoesNotFitInAWord\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_StaticLengthIsNotZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_StaticLengthIsZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_TooManyDynamicFields\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_TooManyFields\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_AlreadyInstalled\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"dependency\",\"type\":\"address\"}],\"name\":\"Module_MissingDependency\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_NonRootInstallNotSupported\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_RootInstallNotSupported\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"Schema_InvalidLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Schema_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\":\"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\":\"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\":\"string\",\"name\":\"resource\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"World_AccessDenied\",\"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\":\"EncodedLengths\",\"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\":\"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\":\"bytes\",\"name\":\"args\",\"type\":\"bytes\"}],\"name\":\"install\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"installRoot\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"MUD (https://mud.dev) by Lattice (https://lattice.xyz)\",\"details\":\"Adds metadata tables and systems for annotating data in MUD apps. For example, tagging resources with labels for better UX when reconstructing a MUD project from a world using onchain state.\",\"errors\":{\"FieldLayout_InvalidStaticDataLength(uint256,uint256)\":[{\"params\":{\"computedStaticDataLength\":\"The computed static data length.\",\"staticDataLength\":\"The static data length of the field layout.\"}}],\"FieldLayout_StaticLengthDoesNotFitInAWord(uint256)\":[{\"params\":{\"index\":\"The index of the field.\"}}],\"FieldLayout_StaticLengthIsNotZero(uint256)\":[{\"params\":{\"index\":\"The index of the field.\"}}],\"FieldLayout_StaticLengthIsZero(uint256)\":[{\"params\":{\"index\":\"The index of the field.\"}}],\"FieldLayout_TooManyDynamicFields(uint256,uint256)\":[{\"params\":{\"maxFields\":\"The maximum number of fields a Schema can handle.\",\"numFields\":\"The total number of fields in the field layout.\"}}],\"FieldLayout_TooManyFields(uint256,uint256)\":[{\"params\":{\"maxFields\":\"The maximum number of fields a Schema can handle.\",\"numFields\":\"The total number of fields in the field layout.\"}}],\"Module_MissingDependency(address)\":[{\"params\":{\"dependency\":\"The address of the dependency.\"}}],\"Schema_InvalidLength(uint256)\":[{\"params\":{\"length\":\"The length of the schema.\"}}],\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"details\":\"Raised if `start` is greater than `end` or `end` greater than the length of `data`.\",\"params\":{\"data\":\"The bytes array to subslice.\",\"end\":\"The end index for the subslice.\",\"start\":\"The start index for the subslice.\"}}],\"Store_InvalidFieldNamesLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidKeyNamesLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The resource ID.\",\"resourceIdString\":\"The stringified resource ID (for easier debugging).\"}}],\"Store_InvalidStaticDataLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidValueSchemaDynamicLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidValueSchemaLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidValueSchemaStaticLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_TableAlreadyExists(bytes32,string)\":[{\"params\":{\"tableId\":\"The ID of the table.\",\"tableIdString\":\"The stringified ID of the table (for easier debugging if cleartext tableIds are used).\"}}],\"World_AccessDenied(string,address)\":[{\"params\":{\"caller\":\"The address of the user trying to access the resource.\",\"resource\":\"The resource's identifier.\"}}]},\"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_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.\"}},\"supportsInterface(bytes4)\":{\"details\":\"Overrides the functionality from IERC165 and WorldContextConsumer to check for supported interfaces.\",\"params\":{\"interfaceId\":\"The bytes4 identifier for the interface.\"},\"returns\":{\"_0\":\"true if the interface is supported, false otherwise.\"}}},\"title\":\"MetadataModule\",\"version\":1},\"userdoc\":{\"errors\":{\"FieldLayout_Empty()\":[{\"notice\":\"Error raised when the provided field layout is empty.\"}],\"FieldLayout_InvalidStaticDataLength(uint256,uint256)\":[{\"notice\":\"Error raised when the provided field layout has an invalid static data length.\"}],\"FieldLayout_StaticLengthDoesNotFitInAWord(uint256)\":[{\"notice\":\"Error raised when the provided field layout has a static data length that does not fit in a word (32 bytes).\"}],\"FieldLayout_StaticLengthIsNotZero(uint256)\":[{\"notice\":\"Error raised when the provided field layout has a nonzero static data length.\"}],\"FieldLayout_StaticLengthIsZero(uint256)\":[{\"notice\":\"Error raised when the provided field layout has a static data length of zero.\"}],\"FieldLayout_TooManyDynamicFields(uint256,uint256)\":[{\"notice\":\"Error raised when the provided field layout has too many dynamic fields.\"}],\"FieldLayout_TooManyFields(uint256,uint256)\":[{\"notice\":\"Error raised when the provided field layout has too many fields.\"}],\"Module_AlreadyInstalled()\":[{\"notice\":\"Error raised if the provided module is already installed.\"}],\"Module_MissingDependency(address)\":[{\"notice\":\"Error raised if the provided module is missing a dependency.\"}],\"Module_NonRootInstallNotSupported()\":[{\"notice\":\"Error raised if installing in non-root is not supported.\"}],\"Module_RootInstallNotSupported()\":[{\"notice\":\"Error raised if installing in root is not supported.\"}],\"Schema_InvalidLength(uint256)\":[{\"notice\":\"Error raised when the provided schema has an invalid length.\"}],\"Schema_StaticTypeAfterDynamicType()\":[{\"notice\":\"Error raised when a static type is placed after a dynamic type in a schema.\"}],\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"notice\":\"Error raised when the provided slice is out of bounds.\"}],\"Store_InvalidFieldNamesLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided field names length is invalid.\"}],\"Store_InvalidKeyNamesLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided key names length is invalid.\"}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Error raised if the provided resource ID cannot be found.\"}],\"Store_InvalidStaticDataLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided static data length is invalid.\"}],\"Store_InvalidValueSchemaDynamicLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided schema dynamic length is invalid.\"}],\"Store_InvalidValueSchemaLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided value schema length is invalid.\"}],\"Store_InvalidValueSchemaStaticLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided schema static length is invalid.\"}],\"Store_TableAlreadyExists(bytes32,string)\":[{\"notice\":\"Error raised if the provided table already exists.\"}],\"World_AccessDenied(string,address)\":[{\"notice\":\"Raised when a user tries to access a resource they don't have permission for.\"}]},\"events\":{\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"notice\":\"Emitted when a new record is set in the store.\"},\"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.\"},\"supportsInterface(bytes4)\":{\"notice\":\"Checks if the given interfaceId is supported by this contract.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/MetadataModule.sol\":\"MetadataModule\"},\"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\":\"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35\",\"dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6\"]},\"node_modules/@latticexyz/store/src/EncodedLengths.sol\":{\"keccak256\":\"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09\",\"dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7\",\"dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT\"]},\"node_modules/@latticexyz/store/src/Hook.sol\":{\"keccak256\":\"0xd016a2e1260f5a81ff9a8dfac58d7947e114414df8cce7302a2629908ea5f18e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0c558a6f3a5f540c0190fa6d642a094a185c5db1acfc2437c7dbde0340f00ac3\",\"dweb:/ipfs/QmViAHvR7U7HNfBiBZEMFiy1TTSHDFNiDzBfQSeLBShCky\"]},\"node_modules/@latticexyz/store/src/IERC165.sol\":{\"keccak256\":\"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2\",\"dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg\"]},\"node_modules/@latticexyz/store/src/IEncodedLengthsErrors.sol\":{\"keccak256\":\"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba\",\"dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1\"]},\"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol\":{\"keccak256\":\"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817\",\"dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8\"]},\"node_modules/@latticexyz/store/src/ISchemaErrors.sol\":{\"keccak256\":\"0x0ac3de36c9d0058a17fcd7f1a905132215fd16ea3ed3b5109de1de04ddd7c441\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f83fa2546009cfd16b3b3969dcec1d67c9d818d910177b885ba263b6a948c65d\",\"dweb:/ipfs/QmehywHdvFYBL9BTtoPsVVwJXsEA4Xjk8aPWoHw1R45KeY\"]},\"node_modules/@latticexyz/store/src/ISliceErrors.sol\":{\"keccak256\":\"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883\",\"dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0x42515d1410333a3573f78a460576271ef62c16edad5cf771ef6287b83ca1c706\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a58d03c4cf420df57d2b2e2e7932daad877e46e89561b46e1fa9f593a701bdc\",\"dweb:/ipfs/QmeFmKS7J1WqqBAgXkyxxx2fGA8JzuGszUmVsV2T6DYtsL\"]},\"node_modules/@latticexyz/store/src/IStoreErrors.sol\":{\"keccak256\":\"0x37e4d2f015dd4005ff9b3f711257c891027804bc268db1791984af4989951912\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a4a566ea96b69211f503707f69a9f9012d5873a3fd57b3f221549f46a7518df6\",\"dweb:/ipfs/QmVgcE3JufJr3iyeV6xqkvS4YtDcy6Eqyram2yzWUhwoB4\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08\",\"dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562\",\"dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p\"]},\"node_modules/@latticexyz/store/src/IStoreKernel.sol\":{\"keccak256\":\"0x37a23dcbabc5937a717f2fda636b6a97963ed4b5a96870a62dfb199a8b692f89\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac9741ea6daf21f39699be11afd919ae3ec07df24d948aaaa6549456fefd7fc0\",\"dweb:/ipfs/QmeiPQkZitM4Pc3i6L87thU71Fs1JVWAgMqXnSK8VrCq75\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xdcf28b3293d4d6c1fe2808a8918c1b2122e4e0e49f2793c79ebd2b9ae210ff7b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb3d9cc80f549ed0c5b768aea69fb1b3c364bd4f85d193a3040c411b594d94db\",\"dweb:/ipfs/QmYYdY5CjPHiW5ucXihTva1eHsCPNqBsvL6zYYafH3ap4p\"]},\"node_modules/@latticexyz/store/src/IStoreRegistration.sol\":{\"keccak256\":\"0x9e91a73f93cc9ebc00c265c83177f6a3f8a156749a9261202e2845e12aeaa96b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a39280d87d22dd0a959d8f55925cb092dba1fee2f11d3dd8e3ffabed45a9ab6a\",\"dweb:/ipfs/QmRMBFLJtT2KN43Xz9P3vUNWxXrP8rLTNBFw2P6Z7EGeaS\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890\",\"dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392\",\"dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x842b07f2ff9df2e1ecf9bf424b0e5a77e1471c983d674cf86b76c365178d6cc5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f4c2df8853b020aef1bb8615ac69d5512a9b5385b82c88e03b27dc521c9d007b\",\"dweb:/ipfs/QmWEDiJn69DvHsdrikrMWY8DERWPSeWwVYgPcunfq3yiT7\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x0d2a08030d21292ecbcc850d9111f3817d03f17cd5e02186894848a9152d79d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f30024c1613fb587aaba4c1dcb8e4e46ed765a2cebd5b63fbebd327d1bf13d3\",\"dweb:/ipfs/QmZzqSnPMYKDYwbFNvUFrvuazMUyQHzQ59w3A9x6juHAm7\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4\",\"dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7\"]},\"node_modules/@latticexyz/store/src/Storage.sol\":{\"keccak256\":\"0x7e735a4c7fa8b8a5fe2371d90801e3287ddb78efed69b31e1a76f0b7b153c4c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9e6db36bd52144b6feeecd91a58fc311127a3892fc96c4171db5b570fe9876ee\",\"dweb:/ipfs/QmS6LqnTZvpMc4eiz5JowBoNnh3RYemG6JHjqtYucT1rQi\"]},\"node_modules/@latticexyz/store/src/StoreCore.sol\":{\"keccak256\":\"0x9513dc38e5baadde0ba9b08320a324043b0e88a10702be5c3507da8c3d45e861\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://99c80c65a394763668e4aed69220fec6bb3ed847fb277ddd1ff1d4bfdf452da2\",\"dweb:/ipfs/QmRT2BATKtrYmixWMuWo9Cz8g8oscfLNSmvjxTyiTNA1pc\"]},\"node_modules/@latticexyz/store/src/StoreSwitch.sol\":{\"keccak256\":\"0x7edf7c1641408f3a580eb28bda58054583cb846f875608612671c6d40712ba40\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4146adef610d1daab085a81aa9f2d4fd8c4e5f459b9ef184f3ef23465573cf91\",\"dweb:/ipfs/QmQqZMsbkzSNG6VfYzQLdRCBCsNohBSVQmWoTP6QvKmKUP\"]},\"node_modules/@latticexyz/store/src/codegen/index.sol\":{\"keccak256\":\"0x094a6f1e2910b345b6b254e0fc2c8882b3190c673f7ee19742e857057a4d3f85\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18908e2e7e878635abea72ef99851fddd204371e6b641f010e831ebfa0b1bfd4\",\"dweb:/ipfs/QmSNAxXqxTrzPkZ4rSAQgBnuer1yLPq74hoqnzrZV3WGsb\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol\":{\"keccak256\":\"0xcc0fa969a57724e7a9184009e2b1ea8ecb209a06e283c6d2b6a15cabff35f39d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d91985b8f48fcb8259b776c10bc17a1656e8dbeaa15c0c0e73368af38e6cfc8a\",\"dweb:/ipfs/QmRiYbrXqqWcTrvwz95kN6ZiMhUBfLiUycxQiSGeZFDkuo\"]},\"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol\":{\"keccak256\":\"0xa52e8323cc7227d69a3c6b2e244b4e0face106eeaa5cf23e759b0278b0f4a7ab\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bf5d3ede2d114c26abe7b5268ed17aedb56d6ded91af19019ecebb75edf48b36\",\"dweb:/ipfs/QmWwqNFjqWFhfv8ABRXV9mbZBGumz741YCmVuQPqtiVZaD\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol\":{\"keccak256\":\"0x155aa0e073774674596a28371a3a863ad1d6c44d418140269d2982a45e40734b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c849ad6563c4afbdd7eec40042c9afa0d9919ece10c2acab390e358095ddd160\",\"dweb:/ipfs/QmbB7eVhKe3simEvugH18e1fBJKmwqionms3YWbWuRBDYV\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol\":{\"keccak256\":\"0x7930483bedccb95dd73447108e67d576924c83ec591cb70c699cdea7ebaabccc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5c23093bf098e8e1f224a0e20beb6860d461a5f8d33265d382e3d43bdc431080\",\"dweb:/ipfs/QmSQwjDCEgTUgUWajjETvCRJd18ZPRhYPyS6Rcg6wDizXw\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168\",\"dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu\"]},\"node_modules/@latticexyz/store/src/rightMask.sol\":{\"keccak256\":\"0x28887aab8ad5ca598927e59d702999ca6e3b3128f1cddd2b995a381c8d04b275\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7710847f4689b7f5b81436c7d52ae4395f244a2eebf8d398b2edd43accb06754\",\"dweb:/ipfs/QmTD2wYqryXTynHAn5Vf9wtjUUSGeCJWENZTnWtBAK38pa\"]},\"node_modules/@latticexyz/store/src/storeHookTypes.sol\":{\"keccak256\":\"0x4f29001e53690ce74fe405a6d0376a564c9c743d1631d36fab04331865e4d572\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://138c80abd63225a3eeb01ebfa1f9288e188a7ee5b2266b275fb4ed31b5aa30e3\",\"dweb:/ipfs/QmdEx9uHgCCbTcetGwFH5a66Ft7ajmrMDXvP1fW7WjnnE2\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0x1c4cb6b3ecf76f614479ab304d7de3ade0e99c7ccfd07717b57c92f699a27261\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2c9b0e0c9b3b5610d6fd65a8ffd7c54df390a34ccc70d58f4a055c49ad1ea586\",\"dweb:/ipfs/QmP6ffpnR7aRyvq9AiUkVNH6LbGfFP3NDq7E2n2PVcHhp2\"]},\"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol\":{\"keccak256\":\"0x310523f7f3acca841e62fe50be8d8b042cad5b3c239cb1105d6623cf83e63152\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1cc40ca233acf6502bc65677b381c05331dd7323953e54b5df969051e47f851e\",\"dweb:/ipfs/QmTxy9mhodT8drezB5K1kPR78AMaARomoJqDyaWpLuCKui\"]},\"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol\":{\"keccak256\":\"0x259ee545fd9dfd4767f0b7fef31f52fd3c54c4a1c6657d6fbda4927800c937b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0a4e31efa9f476cd267af7c3e11fe0151252206a1f6407a80a4092444c2de8ea\",\"dweb:/ipfs/QmRF4gWYw33mFTMh7nX8DJ1qzx3Ko6yMsnxubzYTRppdyo\"]},\"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol\":{\"keccak256\":\"0x0e74ff88ec94cb33f79d8afc1497c4fdccf02db40ab47f3701c7d02fc305d4d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://36b7cd0c2a3f2dcdc83ab7ac5a93f123746ce29c0f1000f2b275ad2c647ff0f3\",\"dweb:/ipfs/QmYdipHYUhHhS78wLdtmKZUK14FEwpto5mFy3rNeZssMLz\"]},\"node_modules/@latticexyz/store/src/version.sol\":{\"keccak256\":\"0x78c571906ee999ee7e56d4f7702b8a93c3a9e55e6b552aca115b5f6ac7f1c80a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a9f141b2d556b2a2545e7db5606e8a038679a995a22aeaf1702cb3a60320b60a\",\"dweb:/ipfs/QmY7x258Fhj3TT3RT4sNyyfiRphVYdZXhtAnSYpasJ4xVQ\"]},\"node_modules/@latticexyz/world/src/AccessControl.sol\":{\"keccak256\":\"0xad63bcf6f989720278b4b941cb3baca953d7da8064454323b99fb444c32e821e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://37d43a10ec0972a2e9a939f22542dda802aa0124e6ee46a60ec59749de88d54b\",\"dweb:/ipfs/QmVe6ALUGg7xzVUjgsYW25ANPeCaLZwL3tJW6t8pGZejA1\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7\",\"dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr\"]},\"node_modules/@latticexyz/world/src/IModule.sol\":{\"keccak256\":\"0xbb926cf64e685bbf2770d60124664cc84ab70bd3038e17a074f2d472c3fc2c57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://143c3dcbdf1702dd4f9c869629609386c12f7c0247e88a6d062dc4d519ebe0d2\",\"dweb:/ipfs/QmQJSDd8uFL4sssw9fb9NHo4s6zjuDUgmrLHj3zsJuhMo1\"]},\"node_modules/@latticexyz/world/src/IModuleErrors.sol\":{\"keccak256\":\"0x60917e029779c81cfea1f5140c389269e51d7adb78987f39101b9e0d7bdad12d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://513f41920d67ca28c3e0fe247403c28a4d342785192df449c99d5f92db04fcea\",\"dweb:/ipfs/QmeAG2TtxAgcJQR4QxftuSvQrxisYQ1i1GZoyd7oeFQBDJ\"]},\"node_modules/@latticexyz/world/src/ISystemHook.sol\":{\"keccak256\":\"0x81f1743d7ca6a9c7efc4997cf95e603ccb2070885265ca0e540f461aa7430721\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://93d99e78b541b33ecd501bf0cd407a78cef490fec8eaef2f188bddb9e293a99f\",\"dweb:/ipfs/QmPrcMDxwhvBZTr2AxoGqJA9L3Mjx27KBc98h3gXSsa3PM\"]},\"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol\":{\"keccak256\":\"0xb39e9d8cff4162e255f6c460ef9f9f0ad5b804627f745d967b2f10d0dd509299\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18d957cd87febccc00d82b9454047f0f5236250c9245befc0f57978671675255\",\"dweb:/ipfs/QmdZ1eXBd15vLpLVqTNJDAAaTzzucpRLD8GPJahLKT4J7x\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0x0abae6f4ed1b3070bddd0ed194c08b83a948b61ae959396202cf627bf1056a2b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a7037954f281cc0188a5aafc1d0cca0aabc110fd0234e6c43dca35ad69ed3baf\",\"dweb:/ipfs/Qmbv2nfK1qPpnoAbqNJFqWwo7AuyaX2ZEgZMFspMv7DR5B\"]},\"node_modules/@latticexyz/world/src/IWorldEvents.sol\":{\"keccak256\":\"0x39f6d8930db431c04158b85cc2a612c48d43dc81ec998f267076b12293c5d243\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d68f1543e5e166d639372d1aec57e3e193b5bb3b37270b6cb0488fab2c0ebe57\",\"dweb:/ipfs/QmdJUFDx87AHWFKP3jVrYg8xqAkiPfuT1M3tEotNt7KUoy\"]},\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":{\"keccak256\":\"0xdaa1e92439036e392fe79892819ae165732f416b831f84d38050ca3d958e549b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ea8dc52e31a62e8971322ea9ed8f2e83d562ec199d7f93a392c293e96ff7f092\",\"dweb:/ipfs/QmSbM8MgHbrJLYP7uzemfZeC4xctqdyKDbspwHUsgeeVJC\"]},\"node_modules/@latticexyz/world/src/Module.sol\":{\"keccak256\":\"0xd99e81434439567e123dbade39850ea3e439ed7a33fe9a609ca6f1e08214908d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a00f6f27be952688d8db4ed77667d55219a56a04973db4d421a2776eb46da88b\",\"dweb:/ipfs/QmRqDmtDwZ8pXCcJFzwP7JDtUk86LmhWDrZBKy6q9UK9rz\"]},\"node_modules/@latticexyz/world/src/System.sol\":{\"keccak256\":\"0xadcb32bdc444a4420909b738d81fa662dc63739455fe93d5aa89c93a3ccfd2dd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d303094c84ebfb0f9f114c54ff4dfc68bfa1e526d0ebe304be6fbeb7cb2f0d3f\",\"dweb:/ipfs/QmYvUx1mNDhkxZFqxLeswW3w9HkvVqeoJiJKj1HN1SB7Gi\"]},\"node_modules/@latticexyz/world/src/WorldContext.sol\":{\"keccak256\":\"0x82d853e8bb41328181ee04b5d2e2e9bb26ec4b167d698c46ca51832448c8aa66\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f805f13f57058c4f611c63a1b8176c59f333ee133677335bc323b22be4ab3a7a\",\"dweb:/ipfs/QmVEdRtdxBZuJo4K3WW9tSHiTLw1TS3r6Kfhn4YRu69KAx\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xaff9a22fac8a0f6eee5763b07a7ccb623c829d37922b85e42e914aad2ad417ee\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e598f0274d6d97c0a09806bf4fd1f0d054c310cf51b2123f5ce6380d6f3186ea\",\"dweb:/ipfs/QmaaVvqm21YsCgxozDyShcM17jKUXJhf2y26bk2YzPYZoM\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol\":{\"keccak256\":\"0xfae8c0039cbe627d30c1d3c96d5b5c979ea05ac744472a63c345e030be8773e3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42e034310f09682a2b52de0083f40e0aca75746bc4d4a738a72043c49ed2f52a\",\"dweb:/ipfs/QmTU2iSwXrJvLcLErmkBKxESxxpXhCAwUXxvG3AaHymJFy\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol\":{\"keccak256\":\"0xe57042e82311847c56fa569377ed84459bf55afccdd3123312a5dff90c1d06f4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://baf3258c9118bf16ba68ebcfecdb5e5ffc85d5c0cdc2815ca298283dfcff2c83\",\"dweb:/ipfs/QmcBVyUBR3PVejz7249VrEBMCMKHi72KoUXQ8DFmMmY48F\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol\":{\"keccak256\":\"0x6a4ef8460a4ba4acfa28f257578fef89bf0ad191d593b3499158e73138760bd9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1512d379b35f90288a7834389a2913a78a42b86a7052346e2ad82c0adbd4f895\",\"dweb:/ipfs/QmaUQjrXFQXR8F4LJqcBRgh5r3Q6KHmff3PrU2DVH8jEhv\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol\":{\"keccak256\":\"0x064f8e5de1d33dc43f8960c4511ab978f4f203db5be60b16455a33f81a44777b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7ad396e3c7f780a924ab1e908f1713c7fbb3a734ecdd65f4cd82cd8414d3fa02\",\"dweb:/ipfs/QmSRacmErXTjGpfdsS1AdjbAXjpxj1GgnXEsA1FFJuvx2q\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol\":{\"keccak256\":\"0x3e0400cba77c74f53f16357b20449cda64468b519c9bac437564af127766d45a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://75387dc13d9d87e76bd3df827494c0288f48899c77dcfca0eaaac6cf45dd630b\",\"dweb:/ipfs/QmVK2tDx8q6XxttCZheEdEcLpTdKkLxgw446vyv1ToN2p2\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol\":{\"keccak256\":\"0xe08d3af994098120b5507c71a1c3558763b8c1a88c6eae506aa438c2af78f800\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb0c47b16ff524140388765fe9ef99211dd7d9b9374dae09144a9956138de00c\",\"dweb:/ipfs/Qma8ibVu6WZs1hFW3hMnUykV3pPXGZhZ3xJwJXNj6Xu7aL\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol\":{\"keccak256\":\"0x4feb9f14aee9c9f94fc6df55d34c0c0e3994a3e6432817c07712cef729dee867\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f2878a201cda27f77091becd4591bf0d868c3b7e7a80cae852778b85a374a3b8\",\"dweb:/ipfs/QmcMoHjHjeKK5sqsa9ddJL63Dzy9ZLQ2gyNoyirKpsxkSh\"]},\"node_modules/@latticexyz/world/src/codegen/tables/InstalledModules.sol\":{\"keccak256\":\"0x50a1f277a00f01e3cb97a85f0fc624ae2192a726136720b6a900b465a7aecc05\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8f3cd87cc0b905d5b75d134d95176630404e76c0f0a343cbd17b8338e1492c0b\",\"dweb:/ipfs/QmURFDNBdUWgh57apX9n7VF68rSQeQrpc5to4FFV6bbJgN\"]},\"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol\":{\"keccak256\":\"0x3a53f395fc56398b4095c1e4016ad5f87d06236fc00f1fb85b9cfe138575b614\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9d91d30c8506a2d07bcafe0f8feff002bbc7764060d7e7bef7f15b9c4a97c597\",\"dweb:/ipfs/QmVTAxSh1JSMpKD1jmJSTvXbDZQubdJW2DQDoePWecJskH\"]},\"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol\":{\"keccak256\":\"0xb857dd63073a6469f5bb8deb6c0617763cd42c484821e247572c6b53bb1da3cc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://07c710d67440b98b145c1991623b7c8cc7f0805b4e6fa37a7d54afcece31239e\",\"dweb:/ipfs/Qmb368QqzbQGUttbDS7eVBGQ8KcXhiai2F9vy3Thyyk2vx\"]},\"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/types.sol\":{\"keccak256\":\"0x81b75eb286ec515bde6cbb16c3d089054abb530b744865bbace68343d23177bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://afc77bd51e24da666260bb48c44ff611869fb2e550921d732e5aac84a1f09525\",\"dweb:/ipfs/QmeU5N4yeRh5nEA65pvGtQQJNv1GvEPy4PkhMVRYRMoMvh\"]},\"node_modules/@latticexyz/world/src/revertWithBytes.sol\":{\"keccak256\":\"0xa1147f218a0152b153d4e8bada0f606bfed40ac1f184fd16a941c2d0033c53f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f5e0f6d1b51a3a04d4bd84537b2ced373b32824898cf6fbfd13ae1cbdf06359\",\"dweb:/ipfs/QmayYRmBZRUV9m4UnFxuC62VvHriXhkYXeH3HibZ3Gmxxf\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea\",\"dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk\"]},\"src/MetadataModule.sol\":{\"keccak256\":\"0x6aadc31c7e6be09cbe3001861c3c28e6c990a77ac655df5be04f371835598606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://aacd548d14af4c08d785f2b3202d3a0789502815118d6542681462303e49bfad\",\"dweb:/ipfs/QmRNk8z4e1qjRLEBEzgDkzgeFqVcRzBquKLY42UzVdt4cu\"]},\"src/MetadataSystem.sol\":{\"keccak256\":\"0xa4ec3efeba4847707e677eb3315500373f7b9252898215c3d353cf72847cf3ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://29598508154acbc8b441cfc055ce11359d06b7f3d2959e7cf776584520e957cb\",\"dweb:/ipfs/QmfBNnVmw1kEcUeKtMsxXoudyvT4TWoGruALqRv963GzM4\"]},\"src/codegen/tables/ResourceTag.sol\":{\"keccak256\":\"0x1f0fa370e9c2af0e8ad09d85f8bdb6420c52cbcd6f3c1230d97c8d723dcc4678\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4deb7ea138d8626db70e3455d888354045979ed5810f9238f6c76843749c256c\",\"dweb:/ipfs/QmaukZ2P4HCpg1nQCo8oBKPCnEwDi1rPcZkquxT3aARDyD\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"FieldLayout_Empty"},{"inputs":[{"internalType":"uint256","name":"staticDataLength","type":"uint256"},{"internalType":"uint256","name":"computedStaticDataLength","type":"uint256"}],"type":"error","name":"FieldLayout_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayout_StaticLengthDoesNotFitInAWord"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayout_StaticLengthIsNotZero"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayout_StaticLengthIsZero"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayout_TooManyDynamicFields"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayout_TooManyFields"},{"inputs":[],"type":"error","name":"Module_AlreadyInstalled"},{"inputs":[{"internalType":"address","name":"dependency","type":"address"}],"type":"error","name":"Module_MissingDependency"},{"inputs":[],"type":"error","name":"Module_NonRootInstallNotSupported"},{"inputs":[],"type":"error","name":"Module_RootInstallNotSupported"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"Schema_InvalidLength"},{"inputs":[],"type":"error","name":"Schema_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":"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":"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":"string","name":"resource","type":"string"},{"internalType":"address","name":"caller","type":"address"}],"type":"error","name":"World_AccessDenied"},{"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":"EncodedLengths","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":"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":"bytes","name":"args","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"install"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function","name":"installRoot"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"pure","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"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."}},"supportsInterface(bytes4)":{"details":"Overrides the functionality from IERC165 and WorldContextConsumer to check for supported interfaces.","params":{"interfaceId":"The bytes4 identifier for the interface."},"returns":{"_0":"true if the interface is supported, false otherwise."}}},"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."},"supportsInterface(bytes4)":{"notice":"Checks if the given interfaceId is supported by this contract."}},"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":{"src/MetadataModule.sol":"MetadataModule"},"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":"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8","urls":["bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35","dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6"],"license":"MIT"},"node_modules/@latticexyz/store/src/EncodedLengths.sol":{"keccak256":"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774","urls":["bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09","dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK"],"license":"MIT"},"node_modules/@latticexyz/store/src/FieldLayout.sol":{"keccak256":"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658","urls":["bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7","dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT"],"license":"MIT"},"node_modules/@latticexyz/store/src/Hook.sol":{"keccak256":"0xd016a2e1260f5a81ff9a8dfac58d7947e114414df8cce7302a2629908ea5f18e","urls":["bzz-raw://0c558a6f3a5f540c0190fa6d642a094a185c5db1acfc2437c7dbde0340f00ac3","dweb:/ipfs/QmViAHvR7U7HNfBiBZEMFiy1TTSHDFNiDzBfQSeLBShCky"],"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/IEncodedLengthsErrors.sol":{"keccak256":"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa","urls":["bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba","dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1"],"license":"MIT"},"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol":{"keccak256":"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53","urls":["bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817","dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8"],"license":"MIT"},"node_modules/@latticexyz/store/src/ISchemaErrors.sol":{"keccak256":"0x0ac3de36c9d0058a17fcd7f1a905132215fd16ea3ed3b5109de1de04ddd7c441","urls":["bzz-raw://f83fa2546009cfd16b3b3969dcec1d67c9d818d910177b885ba263b6a948c65d","dweb:/ipfs/QmehywHdvFYBL9BTtoPsVVwJXsEA4Xjk8aPWoHw1R45KeY"],"license":"MIT"},"node_modules/@latticexyz/store/src/ISliceErrors.sol":{"keccak256":"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c","urls":["bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883","dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStore.sol":{"keccak256":"0x42515d1410333a3573f78a460576271ef62c16edad5cf771ef6287b83ca1c706","urls":["bzz-raw://6a58d03c4cf420df57d2b2e2e7932daad877e46e89561b46e1fa9f593a701bdc","dweb:/ipfs/QmeFmKS7J1WqqBAgXkyxxx2fGA8JzuGszUmVsV2T6DYtsL"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreErrors.sol":{"keccak256":"0x37e4d2f015dd4005ff9b3f711257c891027804bc268db1791984af4989951912","urls":["bzz-raw://a4a566ea96b69211f503707f69a9f9012d5873a3fd57b3f221549f46a7518df6","dweb:/ipfs/QmVgcE3JufJr3iyeV6xqkvS4YtDcy6Eqyram2yzWUhwoB4"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreEvents.sol":{"keccak256":"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a","urls":["bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08","dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreHook.sol":{"keccak256":"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4","urls":["bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562","dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreKernel.sol":{"keccak256":"0x37a23dcbabc5937a717f2fda636b6a97963ed4b5a96870a62dfb199a8b692f89","urls":["bzz-raw://ac9741ea6daf21f39699be11afd919ae3ec07df24d948aaaa6549456fefd7fc0","dweb:/ipfs/QmeiPQkZitM4Pc3i6L87thU71Fs1JVWAgMqXnSK8VrCq75"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRead.sol":{"keccak256":"0xdcf28b3293d4d6c1fe2808a8918c1b2122e4e0e49f2793c79ebd2b9ae210ff7b","urls":["bzz-raw://bb3d9cc80f549ed0c5b768aea69fb1b3c364bd4f85d193a3040c411b594d94db","dweb:/ipfs/QmYYdY5CjPHiW5ucXihTva1eHsCPNqBsvL6zYYafH3ap4p"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRegistration.sol":{"keccak256":"0x9e91a73f93cc9ebc00c265c83177f6a3f8a156749a9261202e2845e12aeaa96b","urls":["bzz-raw://a39280d87d22dd0a959d8f55925cb092dba1fee2f11d3dd8e3ffabed45a9ab6a","dweb:/ipfs/QmRMBFLJtT2KN43Xz9P3vUNWxXrP8rLTNBFw2P6Z7EGeaS"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreWrite.sol":{"keccak256":"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba","urls":["bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890","dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ"],"license":"MIT"},"node_modules/@latticexyz/store/src/Memory.sol":{"keccak256":"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811","urls":["bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392","dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0x842b07f2ff9df2e1ecf9bf424b0e5a77e1471c983d674cf86b76c365178d6cc5","urls":["bzz-raw://f4c2df8853b020aef1bb8615ac69d5512a9b5385b82c88e03b27dc521c9d007b","dweb:/ipfs/QmWEDiJn69DvHsdrikrMWY8DERWPSeWwVYgPcunfq3yiT7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Schema.sol":{"keccak256":"0x0d2a08030d21292ecbcc850d9111f3817d03f17cd5e02186894848a9152d79d7","urls":["bzz-raw://3f30024c1613fb587aaba4c1dcb8e4e46ed765a2cebd5b63fbebd327d1bf13d3","dweb:/ipfs/QmZzqSnPMYKDYwbFNvUFrvuazMUyQHzQ59w3A9x6juHAm7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Slice.sol":{"keccak256":"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345","urls":["bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4","dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Storage.sol":{"keccak256":"0x7e735a4c7fa8b8a5fe2371d90801e3287ddb78efed69b31e1a76f0b7b153c4c3","urls":["bzz-raw://9e6db36bd52144b6feeecd91a58fc311127a3892fc96c4171db5b570fe9876ee","dweb:/ipfs/QmS6LqnTZvpMc4eiz5JowBoNnh3RYemG6JHjqtYucT1rQi"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreCore.sol":{"keccak256":"0x9513dc38e5baadde0ba9b08320a324043b0e88a10702be5c3507da8c3d45e861","urls":["bzz-raw://99c80c65a394763668e4aed69220fec6bb3ed847fb277ddd1ff1d4bfdf452da2","dweb:/ipfs/QmRT2BATKtrYmixWMuWo9Cz8g8oscfLNSmvjxTyiTNA1pc"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreSwitch.sol":{"keccak256":"0x7edf7c1641408f3a580eb28bda58054583cb846f875608612671c6d40712ba40","urls":["bzz-raw://4146adef610d1daab085a81aa9f2d4fd8c4e5f459b9ef184f3ef23465573cf91","dweb:/ipfs/QmQqZMsbkzSNG6VfYzQLdRCBCsNohBSVQmWoTP6QvKmKUP"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/index.sol":{"keccak256":"0x094a6f1e2910b345b6b254e0fc2c8882b3190c673f7ee19742e857057a4d3f85","urls":["bzz-raw://18908e2e7e878635abea72ef99851fddd204371e6b641f010e831ebfa0b1bfd4","dweb:/ipfs/QmSNAxXqxTrzPkZ4rSAQgBnuer1yLPq74hoqnzrZV3WGsb"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol":{"keccak256":"0xcc0fa969a57724e7a9184009e2b1ea8ecb209a06e283c6d2b6a15cabff35f39d","urls":["bzz-raw://d91985b8f48fcb8259b776c10bc17a1656e8dbeaa15c0c0e73368af38e6cfc8a","dweb:/ipfs/QmRiYbrXqqWcTrvwz95kN6ZiMhUBfLiUycxQiSGeZFDkuo"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol":{"keccak256":"0xa52e8323cc7227d69a3c6b2e244b4e0face106eeaa5cf23e759b0278b0f4a7ab","urls":["bzz-raw://bf5d3ede2d114c26abe7b5268ed17aedb56d6ded91af19019ecebb75edf48b36","dweb:/ipfs/QmWwqNFjqWFhfv8ABRXV9mbZBGumz741YCmVuQPqtiVZaD"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol":{"keccak256":"0x155aa0e073774674596a28371a3a863ad1d6c44d418140269d2982a45e40734b","urls":["bzz-raw://c849ad6563c4afbdd7eec40042c9afa0d9919ece10c2acab390e358095ddd160","dweb:/ipfs/QmbB7eVhKe3simEvugH18e1fBJKmwqionms3YWbWuRBDYV"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol":{"keccak256":"0x7930483bedccb95dd73447108e67d576924c83ec591cb70c699cdea7ebaabccc","urls":["bzz-raw://5c23093bf098e8e1f224a0e20beb6860d461a5f8d33265d382e3d43bdc431080","dweb:/ipfs/QmSQwjDCEgTUgUWajjETvCRJd18ZPRhYPyS6Rcg6wDizXw"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6","urls":["bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168","dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu"],"license":"MIT"},"node_modules/@latticexyz/store/src/rightMask.sol":{"keccak256":"0x28887aab8ad5ca598927e59d702999ca6e3b3128f1cddd2b995a381c8d04b275","urls":["bzz-raw://7710847f4689b7f5b81436c7d52ae4395f244a2eebf8d398b2edd43accb06754","dweb:/ipfs/QmTD2wYqryXTynHAn5Vf9wtjUUSGeCJWENZTnWtBAK38pa"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeHookTypes.sol":{"keccak256":"0x4f29001e53690ce74fe405a6d0376a564c9c743d1631d36fab04331865e4d572","urls":["bzz-raw://138c80abd63225a3eeb01ebfa1f9288e188a7ee5b2266b275fb4ed31b5aa30e3","dweb:/ipfs/QmdEx9uHgCCbTcetGwFH5a66Ft7ajmrMDXvP1fW7WjnnE2"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeResourceTypes.sol":{"keccak256":"0x1c4cb6b3ecf76f614479ab304d7de3ade0e99c7ccfd07717b57c92f699a27261","urls":["bzz-raw://2c9b0e0c9b3b5610d6fd65a8ffd7c54df390a34ccc70d58f4a055c49ad1ea586","dweb:/ipfs/QmP6ffpnR7aRyvq9AiUkVNH6LbGfFP3NDq7E2n2PVcHhp2"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol":{"keccak256":"0x310523f7f3acca841e62fe50be8d8b042cad5b3c239cb1105d6623cf83e63152","urls":["bzz-raw://1cc40ca233acf6502bc65677b381c05331dd7323953e54b5df969051e47f851e","dweb:/ipfs/QmTxy9mhodT8drezB5K1kPR78AMaARomoJqDyaWpLuCKui"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol":{"keccak256":"0x259ee545fd9dfd4767f0b7fef31f52fd3c54c4a1c6657d6fbda4927800c937b3","urls":["bzz-raw://0a4e31efa9f476cd267af7c3e11fe0151252206a1f6407a80a4092444c2de8ea","dweb:/ipfs/QmRF4gWYw33mFTMh7nX8DJ1qzx3Ko6yMsnxubzYTRppdyo"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol":{"keccak256":"0x0e74ff88ec94cb33f79d8afc1497c4fdccf02db40ab47f3701c7d02fc305d4d8","urls":["bzz-raw://36b7cd0c2a3f2dcdc83ab7ac5a93f123746ce29c0f1000f2b275ad2c647ff0f3","dweb:/ipfs/QmYdipHYUhHhS78wLdtmKZUK14FEwpto5mFy3rNeZssMLz"],"license":"MIT"},"node_modules/@latticexyz/store/src/version.sol":{"keccak256":"0x78c571906ee999ee7e56d4f7702b8a93c3a9e55e6b552aca115b5f6ac7f1c80a","urls":["bzz-raw://a9f141b2d556b2a2545e7db5606e8a038679a995a22aeaf1702cb3a60320b60a","dweb:/ipfs/QmY7x258Fhj3TT3RT4sNyyfiRphVYdZXhtAnSYpasJ4xVQ"],"license":"MIT"},"node_modules/@latticexyz/world/src/AccessControl.sol":{"keccak256":"0xad63bcf6f989720278b4b941cb3baca953d7da8064454323b99fb444c32e821e","urls":["bzz-raw://37d43a10ec0972a2e9a939f22542dda802aa0124e6ee46a60ec59749de88d54b","dweb:/ipfs/QmVe6ALUGg7xzVUjgsYW25ANPeCaLZwL3tJW6t8pGZejA1"],"license":"MIT"},"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d","urls":["bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7","dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr"],"license":"MIT"},"node_modules/@latticexyz/world/src/IModule.sol":{"keccak256":"0xbb926cf64e685bbf2770d60124664cc84ab70bd3038e17a074f2d472c3fc2c57","urls":["bzz-raw://143c3dcbdf1702dd4f9c869629609386c12f7c0247e88a6d062dc4d519ebe0d2","dweb:/ipfs/QmQJSDd8uFL4sssw9fb9NHo4s6zjuDUgmrLHj3zsJuhMo1"],"license":"MIT"},"node_modules/@latticexyz/world/src/IModuleErrors.sol":{"keccak256":"0x60917e029779c81cfea1f5140c389269e51d7adb78987f39101b9e0d7bdad12d","urls":["bzz-raw://513f41920d67ca28c3e0fe247403c28a4d342785192df449c99d5f92db04fcea","dweb:/ipfs/QmeAG2TtxAgcJQR4QxftuSvQrxisYQ1i1GZoyd7oeFQBDJ"],"license":"MIT"},"node_modules/@latticexyz/world/src/ISystemHook.sol":{"keccak256":"0x81f1743d7ca6a9c7efc4997cf95e603ccb2070885265ca0e540f461aa7430721","urls":["bzz-raw://93d99e78b541b33ecd501bf0cd407a78cef490fec8eaef2f188bddb9e293a99f","dweb:/ipfs/QmPrcMDxwhvBZTr2AxoGqJA9L3Mjx27KBc98h3gXSsa3PM"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol":{"keccak256":"0xb39e9d8cff4162e255f6c460ef9f9f0ad5b804627f745d967b2f10d0dd509299","urls":["bzz-raw://18d957cd87febccc00d82b9454047f0f5236250c9245befc0f57978671675255","dweb:/ipfs/QmdZ1eXBd15vLpLVqTNJDAAaTzzucpRLD8GPJahLKT4J7x"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldErrors.sol":{"keccak256":"0x0abae6f4ed1b3070bddd0ed194c08b83a948b61ae959396202cf627bf1056a2b","urls":["bzz-raw://a7037954f281cc0188a5aafc1d0cca0aabc110fd0234e6c43dca35ad69ed3baf","dweb:/ipfs/Qmbv2nfK1qPpnoAbqNJFqWwo7AuyaX2ZEgZMFspMv7DR5B"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldEvents.sol":{"keccak256":"0x39f6d8930db431c04158b85cc2a612c48d43dc81ec998f267076b12293c5d243","urls":["bzz-raw://d68f1543e5e166d639372d1aec57e3e193b5bb3b37270b6cb0488fab2c0ebe57","dweb:/ipfs/QmdJUFDx87AHWFKP3jVrYg8xqAkiPfuT1M3tEotNt7KUoy"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldKernel.sol":{"keccak256":"0xdaa1e92439036e392fe79892819ae165732f416b831f84d38050ca3d958e549b","urls":["bzz-raw://ea8dc52e31a62e8971322ea9ed8f2e83d562ec199d7f93a392c293e96ff7f092","dweb:/ipfs/QmSbM8MgHbrJLYP7uzemfZeC4xctqdyKDbspwHUsgeeVJC"],"license":"MIT"},"node_modules/@latticexyz/world/src/Module.sol":{"keccak256":"0xd99e81434439567e123dbade39850ea3e439ed7a33fe9a609ca6f1e08214908d","urls":["bzz-raw://a00f6f27be952688d8db4ed77667d55219a56a04973db4d421a2776eb46da88b","dweb:/ipfs/QmRqDmtDwZ8pXCcJFzwP7JDtUk86LmhWDrZBKy6q9UK9rz"],"license":"MIT"},"node_modules/@latticexyz/world/src/System.sol":{"keccak256":"0xadcb32bdc444a4420909b738d81fa662dc63739455fe93d5aa89c93a3ccfd2dd","urls":["bzz-raw://d303094c84ebfb0f9f114c54ff4dfc68bfa1e526d0ebe304be6fbeb7cb2f0d3f","dweb:/ipfs/QmYvUx1mNDhkxZFqxLeswW3w9HkvVqeoJiJKj1HN1SB7Gi"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldContext.sol":{"keccak256":"0x82d853e8bb41328181ee04b5d2e2e9bb26ec4b167d698c46ca51832448c8aa66","urls":["bzz-raw://f805f13f57058c4f611c63a1b8176c59f333ee133677335bc323b22be4ab3a7a","dweb:/ipfs/QmVEdRtdxBZuJo4K3WW9tSHiTLw1TS3r6Kfhn4YRu69KAx"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldResourceId.sol":{"keccak256":"0xaff9a22fac8a0f6eee5763b07a7ccb623c829d37922b85e42e914aad2ad417ee","urls":["bzz-raw://e598f0274d6d97c0a09806bf4fd1f0d054c310cf51b2123f5ce6380d6f3186ea","dweb:/ipfs/QmaaVvqm21YsCgxozDyShcM17jKUXJhf2y26bk2YzPYZoM"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol":{"keccak256":"0xfae8c0039cbe627d30c1d3c96d5b5c979ea05ac744472a63c345e030be8773e3","urls":["bzz-raw://42e034310f09682a2b52de0083f40e0aca75746bc4d4a738a72043c49ed2f52a","dweb:/ipfs/QmTU2iSwXrJvLcLErmkBKxESxxpXhCAwUXxvG3AaHymJFy"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol":{"keccak256":"0xe57042e82311847c56fa569377ed84459bf55afccdd3123312a5dff90c1d06f4","urls":["bzz-raw://baf3258c9118bf16ba68ebcfecdb5e5ffc85d5c0cdc2815ca298283dfcff2c83","dweb:/ipfs/QmcBVyUBR3PVejz7249VrEBMCMKHi72KoUXQ8DFmMmY48F"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol":{"keccak256":"0x6a4ef8460a4ba4acfa28f257578fef89bf0ad191d593b3499158e73138760bd9","urls":["bzz-raw://1512d379b35f90288a7834389a2913a78a42b86a7052346e2ad82c0adbd4f895","dweb:/ipfs/QmaUQjrXFQXR8F4LJqcBRgh5r3Q6KHmff3PrU2DVH8jEhv"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol":{"keccak256":"0x064f8e5de1d33dc43f8960c4511ab978f4f203db5be60b16455a33f81a44777b","urls":["bzz-raw://7ad396e3c7f780a924ab1e908f1713c7fbb3a734ecdd65f4cd82cd8414d3fa02","dweb:/ipfs/QmSRacmErXTjGpfdsS1AdjbAXjpxj1GgnXEsA1FFJuvx2q"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol":{"keccak256":"0x3e0400cba77c74f53f16357b20449cda64468b519c9bac437564af127766d45a","urls":["bzz-raw://75387dc13d9d87e76bd3df827494c0288f48899c77dcfca0eaaac6cf45dd630b","dweb:/ipfs/QmVK2tDx8q6XxttCZheEdEcLpTdKkLxgw446vyv1ToN2p2"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol":{"keccak256":"0xe08d3af994098120b5507c71a1c3558763b8c1a88c6eae506aa438c2af78f800","urls":["bzz-raw://bb0c47b16ff524140388765fe9ef99211dd7d9b9374dae09144a9956138de00c","dweb:/ipfs/Qma8ibVu6WZs1hFW3hMnUykV3pPXGZhZ3xJwJXNj6Xu7aL"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol":{"keccak256":"0x4feb9f14aee9c9f94fc6df55d34c0c0e3994a3e6432817c07712cef729dee867","urls":["bzz-raw://f2878a201cda27f77091becd4591bf0d868c3b7e7a80cae852778b85a374a3b8","dweb:/ipfs/QmcMoHjHjeKK5sqsa9ddJL63Dzy9ZLQ2gyNoyirKpsxkSh"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/InstalledModules.sol":{"keccak256":"0x50a1f277a00f01e3cb97a85f0fc624ae2192a726136720b6a900b465a7aecc05","urls":["bzz-raw://8f3cd87cc0b905d5b75d134d95176630404e76c0f0a343cbd17b8338e1492c0b","dweb:/ipfs/QmURFDNBdUWgh57apX9n7VF68rSQeQrpc5to4FFV6bbJgN"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol":{"keccak256":"0x3a53f395fc56398b4095c1e4016ad5f87d06236fc00f1fb85b9cfe138575b614","urls":["bzz-raw://9d91d30c8506a2d07bcafe0f8feff002bbc7764060d7e7bef7f15b9c4a97c597","dweb:/ipfs/QmVTAxSh1JSMpKD1jmJSTvXbDZQubdJW2DQDoePWecJskH"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol":{"keccak256":"0xb857dd63073a6469f5bb8deb6c0617763cd42c484821e247572c6b53bb1da3cc","urls":["bzz-raw://07c710d67440b98b145c1991623b7c8cc7f0805b4e6fa37a7d54afcece31239e","dweb:/ipfs/Qmb368QqzbQGUttbDS7eVBGQ8KcXhiai2F9vy3Thyyk2vx"],"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/types.sol":{"keccak256":"0x81b75eb286ec515bde6cbb16c3d089054abb530b744865bbace68343d23177bc","urls":["bzz-raw://afc77bd51e24da666260bb48c44ff611869fb2e550921d732e5aac84a1f09525","dweb:/ipfs/QmeU5N4yeRh5nEA65pvGtQQJNv1GvEPy4PkhMVRYRMoMvh"],"license":"MIT"},"node_modules/@latticexyz/world/src/revertWithBytes.sol":{"keccak256":"0xa1147f218a0152b153d4e8bada0f606bfed40ac1f184fd16a941c2d0033c53f5","urls":["bzz-raw://3f5e0f6d1b51a3a04d4bd84537b2ced373b32824898cf6fbfd13ae1cbdf06359","dweb:/ipfs/QmayYRmBZRUV9m4UnFxuC62VvHriXhkYXeH3HibZ3Gmxxf"],"license":"MIT"},"node_modules/@latticexyz/world/src/worldResourceTypes.sol":{"keccak256":"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465","urls":["bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea","dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk"],"license":"MIT"},"src/MetadataModule.sol":{"keccak256":"0x6aadc31c7e6be09cbe3001861c3c28e6c990a77ac655df5be04f371835598606","urls":["bzz-raw://aacd548d14af4c08d785f2b3202d3a0789502815118d6542681462303e49bfad","dweb:/ipfs/QmRNk8z4e1qjRLEBEzgDkzgeFqVcRzBquKLY42UzVdt4cu"],"license":"MIT"},"src/MetadataSystem.sol":{"keccak256":"0xa4ec3efeba4847707e677eb3315500373f7b9252898215c3d353cf72847cf3ef","urls":["bzz-raw://29598508154acbc8b441cfc055ce11359d06b7f3d2959e7cf776584520e957cb","dweb:/ipfs/QmfBNnVmw1kEcUeKtMsxXoudyvT4TWoGruALqRv963GzM4"],"license":"MIT"},"src/codegen/tables/ResourceTag.sol":{"keccak256":"0x1f0fa370e9c2af0e8ad09d85f8bdb6420c52cbcd6f3c1230d97c8d723dcc4678","urls":["bzz-raw://4deb7ea138d8626db70e3455d888354045979ed5810f9238f6c76843749c256c","dweb:/ipfs/QmaukZ2P4HCpg1nQCo8oBKPCnEwDi1rPcZkquxT3aARDyD"],"license":"MIT"}},"version":1},"id":119}
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":"install","inputs":[{"name":"args","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"installRoot","inputs":[{"name":"encodedArgs","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"pure"},{"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":"EncodedLengths"},{"name":"dynamicData","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":"FieldLayout_Empty","inputs":[]},{"type":"error","name":"FieldLayout_InvalidStaticDataLength","inputs":[{"name":"staticDataLength","type":"uint256","internalType":"uint256"},{"name":"computedStaticDataLength","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_StaticLengthDoesNotFitInAWord","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_StaticLengthIsNotZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_StaticLengthIsZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_TooManyDynamicFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_TooManyFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Module_AlreadyInstalled","inputs":[]},{"type":"error","name":"Module_MissingDependency","inputs":[{"name":"dependency","type":"address","internalType":"address"}]},{"type":"error","name":"Module_NonRootInstallNotSupported","inputs":[]},{"type":"error","name":"Module_RootInstallNotSupported","inputs":[]},{"type":"error","name":"Schema_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Schema_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_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_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":"World_AccessDenied","inputs":[{"name":"resource","type":"string","internalType":"string"},{"name":"caller","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60c060408190523060805262000015906200004f565b604051809103905ff0801580156200002f573d5f803e3d5ffd5b506001600160a01b031660a05234801562000048575f80fd5b506200005d565b6120aa8062002dbe83390190565b60805160a051612d3f6200007f5f395f61039c01525f6101f50152612d3f5ff3fe608060405234801561000f575f80fd5b506004361061006f575f3560e01c806345ec93541161004d57806345ec9354146100d05780637c5b0335146100e3578063e1af802c146100f6575f80fd5b806301ffc9a714610073578063119df25f1461009b57806313861fb5146100bb575b5f80fd5b610086610081366004612781565b6100fe565b60405190151581526020015b60405180910390f35b6100a36101e2565b6040516001600160a01b039091168152602001610092565b6100ce6100c93660046127b0565b6101f0565b005b604051601f193601358152602001610092565b6100ce6100f13660046127b0565b610707565b6100a3610739565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f6fdd1c8000000000000000000000000000000000000000000000000000000000148061019057507fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000145b806101dc57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b5f6101eb610742565b905090565b61021a7f000000000000000000000000000000000000000000000000000000000000000082610774565b5f610223610739565b90507f6e736d657461646174610000000000000000000000000000000000000000000061024f816107b9565b6102c2576040517fb29e4089000000000000000000000000000000000000000000000000000000008152600481018290526001600160a01b0383169063b29e4089906024015f604051808303815f87803b1580156102ab575f80fd5b505af11580156102bd573d5f803e3d5ffd5b505050505b6102cc8130610843565b6102f57f74626d657461646174610000000000005265736f7572636554616700000000006107b9565b610301576103016108ed565b5f6103567f73790000000000000000000000000000000000000000000000000000000000006103308460101b90565b7f4d6574616461746153797374656d000000000000000000000000000000000000610984565b9050610361816107b9565b610677576040517f3350b6a9000000000000000000000000000000000000000000000000000000008152600481018290526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116602483015260016044830152841690633350b6a9906064015f604051808303815f87803b1580156103ec575f80fd5b505af11580156103fe573d5f803e3d5ffd5b5050604080517f26d98102000000000000000000000000000000000000000000000000000000008152600481018590526024810191909152601f60448201527f6765745265736f7572636554616728627974657333322c62797465733332290060648201526001600160a01b03861692506326d9810291506084016020604051808303815f875af1158015610495573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104b9919061285b565b50604080517f26d98102000000000000000000000000000000000000000000000000000000008152600481018390526024810191909152602560448201527f7365745265736f7572636554616728627974657333322c627974657333322c6260648201527f797465732900000000000000000000000000000000000000000000000000000060848201526001600160a01b038416906326d981029060a4016020604051808303815f875af1158015610573573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610597919061285b565b50604080517f26d98102000000000000000000000000000000000000000000000000000000008152600481018390526024810191909152602260448201527f64656c6574655265736f7572636554616728627974657333322c62797465733360648201527f322900000000000000000000000000000000000000000000000000000000000060848201526001600160a01b038416906326d981029060a4016020604051808303815f875af1158015610651573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610675919061285b565b505b826001600160a01b031663ef5d6bbb8361068f6101e2565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b031660248201526044015f604051808303815f87803b1580156106eb575f80fd5b505af11580156106fd573d5f803e3d5ffd5b5050505050505050565b6040517fb6622fc000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6101eb6109fb565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806107715750335b90565b61077e8282610a04565b156107b5576040517f1401206800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f815181106107f0576107f0612876565b60209081029190910101525f61082f7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610a1d565b905061083b8160f81c90565b949350505050565b6001600160a01b0381166108987f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617610ad7565b6001600160a01b0316146107b5576108af82610b70565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016108e49291906128d7565b60405180910390fd5b6109827f74626d657461646174610000000000005265736f7572636554616700000000007c01000000000000000000000000000000000000000000000000000000007e4002005f5f00000000000000000000000000000000000000000000000000007c01c4000000000000000000000000000000000000000000000000000000610975610c9d565b61097d610d74565b610dea565b565b5f61099160706010612915565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16176fffffffffffffffffffffffffffffffff19841690911c1790509392505050565b5f6101eb610e9e565b5f610a16838380519060200120610edc565b9392505050565b5f80610a27610e9e565b9050306001600160a01b03821603610a4d57610a4586868686610f92565b91505061083b565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990610a98908990899089908990600401612962565b602060405180830381865afa158015610ab3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a459190612990565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110610b0e57610b0e612876565b60209081029190910101525f610b657f7462776f726c640000000000000000004e616d6573706163654f776e6572000083837e14010014000000000000000000000000000000000000000000000000000000610a1d565b60601c949350505050565b606081601081901b5f610b8283610fbe565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615610bdd57610bd87fffffffffffffffffffffffffffff0000000000000000000000000000000000008416610fd4565b610c14565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff19831615610c3b57610c3683610fd4565b610c72565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001610c84939291906129a7565b6040516020818303038152906040529350505050919050565b6040805160028082526060828101909352816020015b6060815260200190600190039081610cb35790505090506040518060400160405280600881526020017f7265736f75726365000000000000000000000000000000000000000000000000815250815f81518110610d1257610d12612876565b60200260200101819052506040518060400160405280600381526020017f746167000000000000000000000000000000000000000000000000000000000081525081600181518110610d6657610d66612876565b602002602001018190525090565b604080516001808252818301909252606091816020015b6060815260200190600190039081610d8b5790505090506040518060400160405280600581526020017f76616c7565000000000000000000000000000000000000000000000000000000815250815f81518110610d6657610d66612876565b5f610df3610e9e565b9050306001600160a01b03821603610e1857610e13878787878787611059565b610e95565b6040517f0ba51f490000000000000000000000000000000000000000000000000000000081526001600160a01b03821690630ba51f4990610e67908a908a908a908a908a908a90600401612a8c565b5f604051808303815f87803b158015610e7e575f80fd5b505af1158015610e90573d5f803e3d5ffd5b505050505b50505050505050565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f906001600160a01b031680610ed7573391505090565b919050565b6040805160028082526060820183525f9283929190602083019080368337019050509050836001600160a01b03165f1b815f81518110610f1e57610f1e612876565b6020026020010181815250508281600181518110610f3e57610f3e612876565b60209081029190910101525f610f7d7f7462776f726c64000000000000000000496e7374616c6c65644d6f64756c65738383630101000160d81b610a1d565b9050610f898160f81c90565b95945050505050565b5f610f89610fa0868661154f565b60ff858116601b0360080285901c16610fb985876115a4565b6115dc565b5f610fcb60706010612915565b9190911b919050565b60605f5b6010811015611029576fffffffffffffffffffffffffffffffff198316600882021b7fff00000000000000000000000000000000000000000000000000000000000000161561102957600101610fd8565b604080516fffffffffffffffffffffffffffffffff1985166020820152815160309091019091528181528061083b565b7f7462000000000000000000000000000000000000000000000000000000000000867fffff00000000000000000000000000000000000000000000000000000000000016148015906110d25750611bdd60f21b867fffff0000000000000000000000000000000000000000000000000000000000001614155b1561114e577f7462000000000000000000000000000000000000000000000000000000000000868760405160200161110c91815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526108e4939291600401612ad5565b6111578561162c565b611162846001611876565b61116c835f611876565b60e084901c60e885901c0160ff168251146111cc5760e084901c60e885901c0160ff1682516040517f0f72cb98000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b60e085901c60e886901c0160ff1681511461122c5760e085901c60e886901c0160ff1681516040517f7dec4c00000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146112a45760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d88000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b6112ad85611a0a565b6112b684611a0a565b14611308576112c485611a0a565b6112cd84611a0a565b6040517f65cc0adf000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b61131185611a3b565b61131a84611a3b565b1461136c5761132885611a3b565b61133184611a3b565b6040517fedea9587000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b5f5b61137786611a0a565b811015611412576113a161138b8583611a57565b60c581111561139c5761139c612b15565b611a77565b6008601b8390030287901c60ff161461140a576008601b8290030286901c60ff166113cf61138b8684611a57565b6040517f254c7db4000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b60010161136e565b505f61146e7f74620000000000000000000000000000000000000000000000000000000000006114428960101b90565b60101c7fffff000000000000000000000000000000000000000000000000000000000000919091161790565b90505f611484611bdd60f21b6114428a60101b90565b905061148f82611acf565b8061149e575061149e81611acf565b156114f85787886040516020016114b791815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526108e49291600401612b29565b61154488888888886040516020016115109190612b41565b604051602081830303815290604052886040516020016115309190612b41565b604051602081830303815290604052611b45565b6106fd886001611c24565b5f8282604051602001611563929190612b53565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff168110156115d4576115ca60ff601b83900360080287901c1683612915565b91506001016115a8565b509392505050565b5f60208210611601576020820484019350602082816115fd576115fd612b8d565b0691505b508254600882021b6020829003808411156115d4576001850154600882021c82179150509392505050565b80611663576040517fa019e4da00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f61166d82611a3b565b905060058111156116b4576040517f6793df6200000000000000000000000000000000000000000000000000000000815260048101829052600560248201526044016108e4565b5f6116be83611a0a565b90505f6116cb8383612915565b9050601c811115611712576040517fecd893b900000000000000000000000000000000000000000000000000000000815260048101829052601c60248201526044016108e4565b5f805b838110156117bb5760ff601b82900360080287901c165f819003611768576040517f53b2dd05000000000000000000000000000000000000000000000000000000008152600481018390526024016108e4565b60208111156117a6576040517f7237f237000000000000000000000000000000000000000000000000000000008152600481018390526024016108e4565b6117b08184612915565b925050600101611715565b506117c585611cc6565b8114611811576117d485611cc6565b6040517feba964de0000000000000000000000000000000000000000000000000000000081526004810191909152602481018290526044016108e4565b825b601c81101561186e5760ff601b82900360080287901c168015611865576040517f1d8d44db000000000000000000000000000000000000000000000000000000008152600481018390526024016108e4565b50600101611813565b505050505050565b80158015611882575081155b156118a25760405163d498615960e01b81525f60048201526024016108e4565b5f6118ac83611a3b565b905060058111156118d35760405163d498615960e01b8152600481018290526024016108e4565b5f6118dd84611a0a565b90505f6118ea8383612915565b9050601c8111156119115760405163d498615960e01b8152600481018290526024016108e4565b5f805b8381101561197a575f61192a61138b8984611a57565b9050805f03611965576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61196f8184612915565b925050600101611914565b5061198486611cc6565b81146119af5761199386611cc6565b60405163d498615960e01b81526004016108e491815260200190565b825b82811015610e95575f6119c761138b8984611a57565b90508015611a01576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b506001016119b1565b5f60086001611a1b60026020612ba1565b611a259190612ba1565b611a2f9190612bb4565b8260ff911c1692915050565b5f6008600180611a4d60026020612ba1565b611a1b9190612ba1565b5f601b8290036008028360ff911c1660c5811115610a1657610a16612b15565b5f808260c5811115611a8b57611a8b612b15565b60ff1690506061811015611aa557601f1660010192915050565b60618360c5811115611ab957611ab9612b15565b03611ac75750601492915050565b505f92915050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110611b0657611b06612876565b60209081029190910101525f61082f7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610f92565b604080516020810187905280820186905260608082018690528251808303909101815260809091019091525f611b7b8484611ce8565b90505f611b888585611d04565b6040805160018082528183019092529192505f91906020808301908036833701905050905089815f81518110611bc057611bc0612876565b6020908102919091010152611c187f746273746f72650000000000000000005461626c657300000000000000000000828686867e60030220202000000000000000000000000000000000000000000000000000611d30565b50505050505050505050565b6040805160018082528183019092525f916020808301908036833701905050905082815f81518110611c5857611c58612876565b602002602001018181525050611cc17f746273746f72650000000000000000005265736f7572636549647300000000005f1b825f85604051602001611ca491151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b612037565b505050565b5f6008611cd560026020612ba1565b611cdf9190612bb4565b9190911c919050565b815181515f9181810160389190911b1760609190911b17610a16565b60608282604051602001611d19929190612bcb565b604051602081830303815290604052905092915050565b611bdd60f21b867fffff0000000000000000000000000000000000000000000000000000000000001603611da157857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051611d949493929190612bf9565b60405180910390a261186e565b5f611dab87612053565b90505f5b8151811015611e7d575f828281518110611dcb57611dcb612876565b60200260200101519050611df76001826affffffffffffffffffffff19166120d890919063ffffffff16565b15611e74576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611e46908c908c908c908c908c908c90600401612c42565b5f604051808303815f87803b158015611e5d575f80fd5b505af1158015611e6f573d5f803e3d5ffd5b505050505b50600101611daf565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611eb49493929190612bf9565b60405180910390a25f611ec7888861154f565b90505f602087019050611edd825f8951846120f5565b5f611ee785611a3b565b1115611f67575f611ef88a8a6121b0565b87815590506020860191505f805f5b611f1088611a3b565b8160ff161015611f6257611f258d8d83612205565b9250611f408a8260ff166028026038011c64ffffffffff1690565b9150611f4e835f84886120f5565b611f588286612915565b9450600101611f07565b505050505b5f5b8351811015611c18575f848281518110611f8557611f85612876565b60200260200101519050611fb16002826affffffffffffffffffffff19166120d890919063ffffffff16565b1561202e576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90612000908e908e908e908e908e908e90600401612c42565b5f604051808303815f87803b158015612017575f80fd5b505af1158015612029573d5f803e3d5ffd5b505050505b50600101611f69565b61204c858561204684876115a4565b85612283565b5050505050565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f8151811061208b5761208b612876565b60209081029190910101525f6120c27f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836124f3565b905061083b6120d3825f845161252c565b6125b8565b5f8160ff16826120e88560581c90565b1660ff1614905092915050565b821561216d576020831061211f5760208304840193506020838161211b5761211b612b8d565b0692505b821561216d5760208390035f5f19600885021c1990506008850281811c91508351811c905081198754168282161787555081841161215e5750506121aa565b50600194909401939182900391015b5b6020821061218f5780518455600190930192601f199091019060200161216e565b81156121aa57835481515f19600885021c9182169119161784555b50505050565b5f82826040516020016121c4929190612b53565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f8383604051602001612219929190612b53565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b611bdd60f21b847fffff00000000000000000000000000000000000000000000000000000000000016036122f257837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516122e593929190612c9a565b60405180910390a26121aa565b5f6122fd858561154f565b90505f61230986612053565b90505f5b81518110156123d7575f82828151811061232957612329612876565b602002602001015190506123556004826affffffffffffffffffffff19166120d890919063ffffffff16565b156123ce576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906123a0908b908b908b908b90600401612cd6565b5f604051808303815f87803b1580156123b7575f80fd5b505af11580156123c9573d5f803e3d5ffd5b505050505b5060010161230d565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161240c93929190612c9a565b60405180910390a2612427828565ffffffffffff16856125c7565b5f5b8151811015610e95575f82828151811061244557612445612876565b602002602001015190506124716008826affffffffffffffffffffff19166120d890919063ffffffff16565b156124ea576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba8721906124bc908b908b908b908b90600401612cd6565b5f604051808303815f87803b1580156124d3575f80fd5b505af11580156124e5573d5f803e3d5ffd5b505050505b50600101612429565b606061083b612503858585612205565b5f6125278561251289896125dd565b9060ff166028026038011c64ffffffffff1690565b6125ef565b5f8183118061253b5750835182115b15612578578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016108e493929190612d0e565b602084016125868482612915565b90505f6125938585612ba1565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f610a168360155f612612565b611cc1838383516125d88560200190565b6120f5565b5f610a166125eb84846121b0565b5490565b60405160208101601f19603f84840101166040528282526115d48585858461268a565b60605f61261f8560801c90565b90506fffffffffffffffffffffffffffffffff85165f85828161264457612644612b8d565b0490506040519350602084016020820281016040528185525f5b8281101561267e578451871c82529387019360209091019060010161265e565b50505050509392505050565b821561270e57602083106126b4576020830484019350602083816126b0576126b0612b8d565b0692505b821561270e5760208390035f818410156126d557505f19600884021c6126de565b505f19600882021c5b8554600886021b8184511682198216178452508184116126ff5750506121aa565b50600194909401939182900391015b5b602082106127305783548152600190930192601f199091019060200161270f565b81156121aa575f5f19600884021c8251865482191691161782525050505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461277e575f80fd5b50565b5f60208284031215612791575f80fd5b8135610a1681612751565b634e487b7160e01b5f52604160045260245ffd5b5f602082840312156127c0575f80fd5b813567ffffffffffffffff808211156127d7575f80fd5b818401915084601f8301126127ea575f80fd5b8135818111156127fc576127fc61279c565b604051601f8201601f19908116603f011681019083821181831017156128245761282461279c565b8160405282815287602084870101111561283c575f80fd5b826020860160208301375f928101602001929092525095945050505050565b5f6020828403121561286b575f80fd5b8151610a1681612751565b634e487b7160e01b5f52603260045260245ffd5b5f5b838110156128a457818101518382015260200161288c565b50505f910152565b5f81518084526128c381602086016020860161288a565b601f01601f19169290920160200192915050565b604081525f6128e960408301856128ac565b90506001600160a01b03831660208301529392505050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156101dc576101dc612901565b5f815180845260208085019450602084015f5b838110156129575781518752958201959082019060010161293b565b509495945050505050565b848152608060208201525f61297a6080830186612928565b60ff949094166040830152506060015292915050565b5f602082840312156129a0575f80fd5b5051919050565b7fffff000000000000000000000000000000000000000000000000000000000000841681525f7f3a000000000000000000000000000000000000000000000000000000000000008060028401528451612a0781600386016020890161288a565b808401905081600382015284519150612a2782600483016020880161288a565b0160040195945050505050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015612a7f57601f19868403018952612a6d8383516128ac565b98840198925090830190600101612a51565b5090979650505050505050565b86815285602082015284604082015283606082015260c060808201525f612ab660c0830185612a34565b82810360a0840152612ac88185612a34565b9998505050505050505050565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201525f610f8960608301846128ac565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61083b60408301846128ac565b602081525f610a166020830184612a34565b8281525f60208083018451602086015f5b82811015612b8057815184529284019290840190600101612b64565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b818103818111156101dc576101dc612901565b80820281158282048414176101dc576101dc612901565b5f8351612bdc81846020880161288a565b835190830190612bf081836020880161288a565b01949350505050565b608081525f612c0b6080830187612928565b8281036020840152612c1d81876128ac565b90508460408401528281036060840152612c3781856128ac565b979650505050505050565b86815260c060208201525f612c5a60c0830188612928565b8281036040840152612c6c81886128ac565b90508560608401528281036080840152612c8681866128ac565b9150508260a0830152979650505050505050565b606081525f612cac6060830186612928565b65ffffffffffff851660208401528281036040840152612ccc81856128ac565b9695505050505050565b848152608060208201525f612cee6080830186612928565b65ffffffffffff851660408401528281036060840152612c3781856128ac565b606081525f612d2060608301866128ac565b6020830194909452506040015291905056fea164736f6c6343000818000a608060405234801561000f575f80fd5b5061208d8061001d5f395ff3fe608060405234801561000f575f80fd5b506004361061007a575f3560e01c806345ec93541161005857806345ec9354146100db578063c6972e93146100ee578063e1af802c1461010e578063f128760214610116575f80fd5b806301ffc9a71461007e578063116e68f2146100a6578063119df25f146100bb575b5f80fd5b61009161008c366004611a45565b610129565b60405190151581526020015b60405180910390f35b6100b96100b4366004611af0565b6101c1565b005b6100c36101eb565b6040516001600160a01b03909116815260200161009d565b604051601f19360135815260200161009d565b6101016100fc366004611b7c565b6101f9565b60405161009d9190611be9565b6100c361020c565b6100b9610124366004611b7c565b610215565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806101bb57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b6101ca83610238565b6101db836101d66101eb565b61028f565b6101e6838383610330565b505050565b5f6101f46103c0565b905090565b606061020583836103f2565b9392505050565b5f6101f4610489565b61021e82610238565b61022a826101d66101eb565b6102348282610492565b5050565b6102418161051a565b61028c578061024f826105bc565b6040517ffbf10ce6000000000000000000000000000000000000000000000000000000008152600401610283929190611bfb565b60405180910390fd5b50565b6001600160a01b0381166102e47f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff000000000000000000000000000000008516176106f8565b6001600160a01b031614610234576102fb826105bc565b816040517fd787b737000000000000000000000000000000000000000000000000000000008152600401610283929190611c13565b6040805160028082526060820183525f9260208301908036833701905050905083815f8151811061036357610363611c3d565b602002602001018181525050828160018151811061038357610383611c3d565b60209081029190910101526103ba7f74626d657461646174610000000000005265736f757263655461670000000000825f85610791565b50505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806103ef5750335b90565b60408051600280825260608083018452925f92919060208301908036833701905050905083815f8151811061042957610429611c3d565b602002602001018181525050828160018151811061044957610449611c3d565b60209081029190910101525f6104807f74626d657461646174610000000000005265736f757263655461670000000000838361083d565b95945050505050565b5f6101f46108ff565b6040805160028082526060820183525f9260208301908036833701905050905082815f815181106104c5576104c5611c3d565b60200260200101818152505081816001815181106104e5576104e5611c3d565b60209081029190910101526101e67f74626d657461646174610000000000005265736f7572636554616700000000008261093d565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061055157610551611c3d565b60209081029190910101525f6105a87f746273746f72650000000000000000005265736f75726365496473000000000083837e010100010000000000000000000000000000000000000000000000000000006109db565b90506105b48160f81c90565b949350505050565b606081601081901b5f6105ce83610a95565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615610629576106247fffffffffffffffffffffffffffff0000000000000000000000000000000000008416610aab565b610660565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b7fffffffffffffffffffffffffffffffff000000000000000000000000000000008316156106965761069183610aab565b6106cd565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6040516020016106df93929190611c51565b6040516020818303038152906040529350505050919050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061072f5761072f611c3d565b60209081029190910101525f6107867f7462776f726c640000000000000000004e616d6573706163654f776e6572000083837e140100140000000000000000000000000000000000000000000000000000006109db565b60601c949350505050565b5f61079a6108ff565b9050306001600160a01b038216036107bd576107b885858585610b4e565b610836565b6040517fef6ea8620000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063ef6ea86290610808908890889088908890600401611d18565b5f604051808303815f87803b15801561081f575f80fd5b505af1158015610831573d5f803e3d5ffd5b505050505b5050505050565b60605f6108486108ff565b9050306001600160a01b0382160361086d57610865858585610b8e565b915050610205565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e788977906108b690889088908890600401611d56565b5f60405180830381865afa1580156108d0573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526108659190810190611d81565b509392505050565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f906001600160a01b031680610938573391505090565b919050565b5f6109466108ff565b9050306001600160a01b03821603610962576101e68383610bc7565b6040517f505a181d0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063505a181d906109a99086908690600401611dea565b5f604051808303815f87803b1580156109c0575f80fd5b505af11580156109d2573d5f803e3d5ffd5b50505050505050565b5f806109e56108ff565b9050306001600160a01b03821603610a0b57610a0386868686610bda565b9150506105b4565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990610a56908990899089908990600401611e02565b602060405180830381865afa158015610a71573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a039190611e30565b5f610aa260706010611e5b565b9190911b919050565b60605f5b6010811015610b0f577fffffffffffffffffffffffffffffffff000000000000000000000000000000008316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615610b0f57600101610aaf565b604080517fffffffffffffffffffffffffffffffff000000000000000000000000000000008516602082015281516030909101909152818152806105b4565b5f610b598585610c06565b90505f610b75828560ff166028026038011c64ffffffffff1690565b9050610b868686865f858888610c18565b505050505050565b60606105b4610b9e85858561103d565b5f610bc285610bad8989610c06565b9060ff166028026038011c64ffffffffff1690565b6110bb565b6102348282610bd5856110de565b611161565b5f610480610be8868661144d565b60ff858116601b0360080285901c16610c0185876114a2565b6114d2565b5f610205610c148484611522565b5490565b7f7462000000000000000000000000000000000000000000000000000000000000877fffff0000000000000000000000000000000000000000000000000000000000001614610cd8577f74620000000000000000000000000000000000000000000000000000000000008788604051602001610c9691815260200190565b60408051601f19818403018152908290527f31b46683000000000000000000000000000000000000000000000000000000008252610283939291600401611e6e565b5f610cf2828760ff166028026038011c64ffffffffff1690565b90505f83518564ffffffffff1683610d0a9190611eae565b610d149190611e5b565b9050808214158015610d36575081610d2c8688611ec1565b64ffffffffff1614155b15610d86576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610283565b818664ffffffffff161115610dd7576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610283565b5f610de3848984611577565b90505f610def8b611644565b90505f5b8151811015610eb3575f828281518110610e0f57610e0f611c3d565b60200260200101519050610e3b6010826affffffffffffffffffffff19166116c990919063ffffffff16565b15610eaa57606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b8152600401610e7c9796959493929190611ee6565b5f604051808303815f87803b158015610e93575f80fd5b505af1158015610ea5573d5f803e3d5ffd5b505050505b50600101610df3565b5064ffffffffff88165f5b8a60ff168160ff161015610ef157610ee5878260ff166028026038011c64ffffffffff1690565b90910190600101610ebe565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d604051610f2c96959493929190611f43565b60405180910390a250828414610f4c575f610f478c8c611522565b839055505b5f610f588c8c8c61103d565b9050610f6c818a64ffffffffff16896116e6565b505f5b815181101561102f575f828281518110610f8b57610f8b611c3d565b60200260200101519050610fb76020826affffffffffffffffffffff19166116c990919063ffffffff16565b1561102657606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b8152600401610ff89796959493929190611ee6565b5f604051808303815f87803b15801561100f575f80fd5b505af1158015611021573d5f803e3d5ffd5b505050505b50600101610f6f565b505050505050505050505050565b5f8383604051602001611051929190611f9e565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b60405160208101601f19603f84840101166040528282526108f7858585846116fc565b5f7f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161112c57507e60030220202000000000000000000000000000000000000000000000000000919050565b6101bb6111597f746273746f72650000000000000000005461626c657300000000000000000000846117c3565b60205f6114d2565b7f6f74000000000000000000000000000000000000000000000000000000000000837fffff00000000000000000000000000000000000000000000000000000000000016036111e757827f0e1f72f429eb97e64878619984a91e687ae91610348b9ff4216782cc96e49d07836040516111da9190611fd8565b60405180910390a2505050565b5f6111f184611644565b90505f5b81518110156112bd575f82828151811061121157611211611c3d565b6020026020010151905061123d6040826affffffffffffffffffffff19166116c990919063ffffffff16565b156112b4576040517f9faeaf45000000000000000000000000000000000000000000000000000000008152606082901c90639faeaf459061128690899089908990600401611fea565b5f604051808303815f87803b15801561129d575f80fd5b505af11580156112af573d5f803e3d5ffd5b505050505b506001016111f5565b50837f0e1f72f429eb97e64878619984a91e687ae91610348b9ff4216782cc96e49d07846040516112ee9190611fd8565b60405180910390a25f611301858561144d565b9050611359815f611311866117de565b67ffffffffffffffff81111561132957611329611a84565b6040519080825280601f01601f191660200182016040528015611353576020820181803683370190505b506116e6565b5f61136384611800565b1115611383575f6113748686611522565b905061138181602061183c565b505b5f5b8251811015610b86575f8382815181106113a1576113a1611c3d565b602002602001015190506113cd6080826affffffffffffffffffffff19166116c990919063ffffffff16565b15611444576040517f83b5c95b000000000000000000000000000000000000000000000000000000008152606082901c906383b5c95b90611416908a908a908a90600401611fea565b5f604051808303815f87803b15801561142d575f80fd5b505af115801561143f573d5f803e3d5ffd5b505050505b50600101611385565b5f8282604051602001611461929190611f9e565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff168110156108f7576114c860ff601b83900360080287901c1683611e5b565b91506001016114a6565b5f602082106114f7576020820484019350602082816114f3576114f3612012565b0691505b508254600882021b6020829003808411156108f7576001850154600882021c82179150509392505050565b5f8282604051602001611536929190611f9e565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f64ffffffffff8211156115ba576040517f7149a3c100000000000000000000000000000000000000000000000000000000815260048101839052602401610283565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff168085106115ec57808503820191506115f4565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f8151811061167c5761167c611c3d565b60209081029190910101525f6116b37f746273746f726500000000000000000053746f7265486f6f6b730000000000008383610b8e565b90506105b46116c4825f8451611877565b611903565b5f8160ff16826116d98560581c90565b1660ff1614905092915050565b6101e6838383516116f78560200190565b611912565b821561178057602083106117265760208304840193506020838161172257611722612012565b0692505b82156117805760208390035f8184101561174757505f19600884021c611750565b505f19600882021c5b8554600886021b8184511682198216178452508184116117715750506103ba565b50600194909401939182900391015b5b602082106117a25783548152600190930192601f1990910190602001611781565b81156103ba575f5f19600884021c8251865482191691161782525050505050565b60408051602081018490529081018290525f90606001611461565b5f60086117ed60026020611eae565b6117f79190612026565b9190911c919050565b5f600860018061181260026020611eae565b61181c9190611eae565b6118269190611eae565b6118309190612026565b8260ff911c1692915050565b5f602061184a83601f611e5b565b611854919061203d565b61185e9084611e5b565b90505b808310156101e6575f8355600183019250611861565b5f818311806118865750835182115b156118c3578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016102839392919061205c565b602084016118d18482611e5b565b90505f6118de8585611eae565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f6102058360155f6119cd565b821561198a576020831061193c5760208304840193506020838161193857611938612012565b0692505b821561198a5760208390035f5f19600885021c1990506008850281811c91508351811c905081198754168282161787555081841161197b5750506103ba565b50600194909401939182900391015b5b602082106119ac5780518455600190930192601f199091019060200161198b565b81156103ba575f5f19600884021c8554835182191691161785555050505050565b60605f6119da8560801c90565b90506fffffffffffffffffffffffffffffffff85165f8582816119ff576119ff612012565b0490506040519350602084016020820281016040528185525f5b82811015611a39578451871c825293870193602090910190600101611a19565b50505050509392505050565b5f60208284031215611a55575f80fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610205575f80fd5b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611ac157611ac1611a84565b604052919050565b5f67ffffffffffffffff821115611ae257611ae2611a84565b50601f01601f191660200190565b5f805f60608486031215611b02575f80fd5b8335925060208401359150604084013567ffffffffffffffff811115611b26575f80fd5b8401601f81018613611b36575f80fd5b8035611b49611b4482611ac9565b611a98565b818152876020838501011115611b5d575f80fd5b816020840160208301375f602083830101528093505050509250925092565b5f8060408385031215611b8d575f80fd5b50508035926020909101359150565b5f5b83811015611bb6578181015183820152602001611b9e565b50505f910152565b5f8151808452611bd5816020860160208601611b9c565b601f01601f19169290920160200192915050565b602081525f6102056020830184611bbe565b828152604060208201525f6105b46040830184611bbe565b604081525f611c256040830185611bbe565b90506001600160a01b03831660208301529392505050565b634e487b7160e01b5f52603260045260245ffd5b7fffff000000000000000000000000000000000000000000000000000000000000841681525f7f3a000000000000000000000000000000000000000000000000000000000000008060028401528451611cb1816003860160208901611b9c565b808401905081600382015284519150611cd1826004830160208801611b9c565b0160040195945050505050565b5f815180845260208085019450602084015f5b83811015611d0d57815187529582019590820190600101611cf1565b509495945050505050565b848152608060208201525f611d306080830186611cde565b60ff851660408401528281036060840152611d4b8185611bbe565b979650505050505050565b838152606060208201525f611d6e6060830185611cde565b905060ff83166040830152949350505050565b5f60208284031215611d91575f80fd5b815167ffffffffffffffff811115611da7575f80fd5b8201601f81018413611db7575f80fd5b8051611dc5611b4482611ac9565b818152856020838501011115611dd9575f80fd5b610480826020830160208601611b9c565b828152604060208201525f6105b46040830184611cde565b848152608060208201525f611e1a6080830186611cde565b60ff949094166040830152506060015292915050565b5f60208284031215611e40575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156101bb576101bb611e47565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201525f6104806060830184611bbe565b818103818111156101bb576101bb611e47565b64ffffffffff818116838216019080821115611edf57611edf611e47565b5092915050565b87815260e060208201525f611efe60e0830189611cde565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c0840152611f358185611bbe565b9a9950505050505050505050565b60c081525f611f5560c0830189611cde565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a0840152611f918185611bbe565b9998505050505050505050565b8281525f60208083018451602086015f5b82811015611fcb57815184529284019290840190600101611faf565b5091979650505050505050565b602081525f6102056020830184611cde565b838152606060208201525f6120026060830185611cde565b9050826040830152949350505050565b634e487b7160e01b5f52601260045260245ffd5b80820281158282048414176101bb576101bb611e47565b5f8261205757634e487b7160e01b5f52601260045260245ffd5b500490565b606081525f61206e6060830186611bbe565b6020830194909452506040015291905056fea164736f6c6343000818000a","sourceMap":"980:1422:119:-:0;;;;;644:4:53;600:49;;1117:20:119;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;1067:70:119;;;980:1422;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561000f575f80fd5b506004361061006f575f3560e01c806345ec93541161004d57806345ec9354146100d05780637c5b0335146100e3578063e1af802c146100f6575f80fd5b806301ffc9a714610073578063119df25f1461009b57806313861fb5146100bb575b5f80fd5b610086610081366004612781565b6100fe565b60405190151581526020015b60405180910390f35b6100a36101e2565b6040516001600160a01b039091168152602001610092565b6100ce6100c93660046127b0565b6101f0565b005b604051601f193601358152602001610092565b6100ce6100f13660046127b0565b610707565b6100a3610739565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f6fdd1c8000000000000000000000000000000000000000000000000000000000148061019057507fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000145b806101dc57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b5f6101eb610742565b905090565b61021a7f000000000000000000000000000000000000000000000000000000000000000082610774565b5f610223610739565b90507f6e736d657461646174610000000000000000000000000000000000000000000061024f816107b9565b6102c2576040517fb29e4089000000000000000000000000000000000000000000000000000000008152600481018290526001600160a01b0383169063b29e4089906024015f604051808303815f87803b1580156102ab575f80fd5b505af11580156102bd573d5f803e3d5ffd5b505050505b6102cc8130610843565b6102f57f74626d657461646174610000000000005265736f7572636554616700000000006107b9565b610301576103016108ed565b5f6103567f73790000000000000000000000000000000000000000000000000000000000006103308460101b90565b7f4d6574616461746153797374656d000000000000000000000000000000000000610984565b9050610361816107b9565b610677576040517f3350b6a9000000000000000000000000000000000000000000000000000000008152600481018290526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116602483015260016044830152841690633350b6a9906064015f604051808303815f87803b1580156103ec575f80fd5b505af11580156103fe573d5f803e3d5ffd5b5050604080517f26d98102000000000000000000000000000000000000000000000000000000008152600481018590526024810191909152601f60448201527f6765745265736f7572636554616728627974657333322c62797465733332290060648201526001600160a01b03861692506326d9810291506084016020604051808303815f875af1158015610495573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104b9919061285b565b50604080517f26d98102000000000000000000000000000000000000000000000000000000008152600481018390526024810191909152602560448201527f7365745265736f7572636554616728627974657333322c627974657333322c6260648201527f797465732900000000000000000000000000000000000000000000000000000060848201526001600160a01b038416906326d981029060a4016020604051808303815f875af1158015610573573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610597919061285b565b50604080517f26d98102000000000000000000000000000000000000000000000000000000008152600481018390526024810191909152602260448201527f64656c6574655265736f7572636554616728627974657333322c62797465733360648201527f322900000000000000000000000000000000000000000000000000000000000060848201526001600160a01b038416906326d981029060a4016020604051808303815f875af1158015610651573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610675919061285b565b505b826001600160a01b031663ef5d6bbb8361068f6101e2565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b031660248201526044015f604051808303815f87803b1580156106eb575f80fd5b505af11580156106fd573d5f803e3d5ffd5b5050505050505050565b6040517fb6622fc000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6101eb6109fb565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806107715750335b90565b61077e8282610a04565b156107b5576040517f1401206800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f815181106107f0576107f0612876565b60209081029190910101525f61082f7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610a1d565b905061083b8160f81c90565b949350505050565b6001600160a01b0381166108987f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617610ad7565b6001600160a01b0316146107b5576108af82610b70565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016108e49291906128d7565b60405180910390fd5b6109827f74626d657461646174610000000000005265736f7572636554616700000000007c01000000000000000000000000000000000000000000000000000000007e4002005f5f00000000000000000000000000000000000000000000000000007c01c4000000000000000000000000000000000000000000000000000000610975610c9d565b61097d610d74565b610dea565b565b5f61099160706010612915565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16176fffffffffffffffffffffffffffffffff19841690911c1790509392505050565b5f6101eb610e9e565b5f610a16838380519060200120610edc565b9392505050565b5f80610a27610e9e565b9050306001600160a01b03821603610a4d57610a4586868686610f92565b91505061083b565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990610a98908990899089908990600401612962565b602060405180830381865afa158015610ab3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a459190612990565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110610b0e57610b0e612876565b60209081029190910101525f610b657f7462776f726c640000000000000000004e616d6573706163654f776e6572000083837e14010014000000000000000000000000000000000000000000000000000000610a1d565b60601c949350505050565b606081601081901b5f610b8283610fbe565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615610bdd57610bd87fffffffffffffffffffffffffffff0000000000000000000000000000000000008416610fd4565b610c14565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff19831615610c3b57610c3683610fd4565b610c72565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001610c84939291906129a7565b6040516020818303038152906040529350505050919050565b6040805160028082526060828101909352816020015b6060815260200190600190039081610cb35790505090506040518060400160405280600881526020017f7265736f75726365000000000000000000000000000000000000000000000000815250815f81518110610d1257610d12612876565b60200260200101819052506040518060400160405280600381526020017f746167000000000000000000000000000000000000000000000000000000000081525081600181518110610d6657610d66612876565b602002602001018190525090565b604080516001808252818301909252606091816020015b6060815260200190600190039081610d8b5790505090506040518060400160405280600581526020017f76616c7565000000000000000000000000000000000000000000000000000000815250815f81518110610d6657610d66612876565b5f610df3610e9e565b9050306001600160a01b03821603610e1857610e13878787878787611059565b610e95565b6040517f0ba51f490000000000000000000000000000000000000000000000000000000081526001600160a01b03821690630ba51f4990610e67908a908a908a908a908a908a90600401612a8c565b5f604051808303815f87803b158015610e7e575f80fd5b505af1158015610e90573d5f803e3d5ffd5b505050505b50505050505050565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f906001600160a01b031680610ed7573391505090565b919050565b6040805160028082526060820183525f9283929190602083019080368337019050509050836001600160a01b03165f1b815f81518110610f1e57610f1e612876565b6020026020010181815250508281600181518110610f3e57610f3e612876565b60209081029190910101525f610f7d7f7462776f726c64000000000000000000496e7374616c6c65644d6f64756c65738383630101000160d81b610a1d565b9050610f898160f81c90565b95945050505050565b5f610f89610fa0868661154f565b60ff858116601b0360080285901c16610fb985876115a4565b6115dc565b5f610fcb60706010612915565b9190911b919050565b60605f5b6010811015611029576fffffffffffffffffffffffffffffffff198316600882021b7fff00000000000000000000000000000000000000000000000000000000000000161561102957600101610fd8565b604080516fffffffffffffffffffffffffffffffff1985166020820152815160309091019091528181528061083b565b7f7462000000000000000000000000000000000000000000000000000000000000867fffff00000000000000000000000000000000000000000000000000000000000016148015906110d25750611bdd60f21b867fffff0000000000000000000000000000000000000000000000000000000000001614155b1561114e577f7462000000000000000000000000000000000000000000000000000000000000868760405160200161110c91815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526108e4939291600401612ad5565b6111578561162c565b611162846001611876565b61116c835f611876565b60e084901c60e885901c0160ff168251146111cc5760e084901c60e885901c0160ff1682516040517f0f72cb98000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b60e085901c60e886901c0160ff1681511461122c5760e085901c60e886901c0160ff1681516040517f7dec4c00000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146112a45760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d88000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b6112ad85611a0a565b6112b684611a0a565b14611308576112c485611a0a565b6112cd84611a0a565b6040517f65cc0adf000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b61131185611a3b565b61131a84611a3b565b1461136c5761132885611a3b565b61133184611a3b565b6040517fedea9587000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b5f5b61137786611a0a565b811015611412576113a161138b8583611a57565b60c581111561139c5761139c612b15565b611a77565b6008601b8390030287901c60ff161461140a576008601b8290030286901c60ff166113cf61138b8684611a57565b6040517f254c7db4000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016108e4565b60010161136e565b505f61146e7f74620000000000000000000000000000000000000000000000000000000000006114428960101b90565b60101c7fffff000000000000000000000000000000000000000000000000000000000000919091161790565b90505f611484611bdd60f21b6114428a60101b90565b905061148f82611acf565b8061149e575061149e81611acf565b156114f85787886040516020016114b791815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526108e49291600401612b29565b61154488888888886040516020016115109190612b41565b604051602081830303815290604052886040516020016115309190612b41565b604051602081830303815290604052611b45565b6106fd886001611c24565b5f8282604051602001611563929190612b53565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff168110156115d4576115ca60ff601b83900360080287901c1683612915565b91506001016115a8565b509392505050565b5f60208210611601576020820484019350602082816115fd576115fd612b8d565b0691505b508254600882021b6020829003808411156115d4576001850154600882021c82179150509392505050565b80611663576040517fa019e4da00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f61166d82611a3b565b905060058111156116b4576040517f6793df6200000000000000000000000000000000000000000000000000000000815260048101829052600560248201526044016108e4565b5f6116be83611a0a565b90505f6116cb8383612915565b9050601c811115611712576040517fecd893b900000000000000000000000000000000000000000000000000000000815260048101829052601c60248201526044016108e4565b5f805b838110156117bb5760ff601b82900360080287901c165f819003611768576040517f53b2dd05000000000000000000000000000000000000000000000000000000008152600481018390526024016108e4565b60208111156117a6576040517f7237f237000000000000000000000000000000000000000000000000000000008152600481018390526024016108e4565b6117b08184612915565b925050600101611715565b506117c585611cc6565b8114611811576117d485611cc6565b6040517feba964de0000000000000000000000000000000000000000000000000000000081526004810191909152602481018290526044016108e4565b825b601c81101561186e5760ff601b82900360080287901c168015611865576040517f1d8d44db000000000000000000000000000000000000000000000000000000008152600481018390526024016108e4565b50600101611813565b505050505050565b80158015611882575081155b156118a25760405163d498615960e01b81525f60048201526024016108e4565b5f6118ac83611a3b565b905060058111156118d35760405163d498615960e01b8152600481018290526024016108e4565b5f6118dd84611a0a565b90505f6118ea8383612915565b9050601c8111156119115760405163d498615960e01b8152600481018290526024016108e4565b5f805b8381101561197a575f61192a61138b8984611a57565b9050805f03611965576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61196f8184612915565b925050600101611914565b5061198486611cc6565b81146119af5761199386611cc6565b60405163d498615960e01b81526004016108e491815260200190565b825b82811015610e95575f6119c761138b8984611a57565b90508015611a01576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b506001016119b1565b5f60086001611a1b60026020612ba1565b611a259190612ba1565b611a2f9190612bb4565b8260ff911c1692915050565b5f6008600180611a4d60026020612ba1565b611a1b9190612ba1565b5f601b8290036008028360ff911c1660c5811115610a1657610a16612b15565b5f808260c5811115611a8b57611a8b612b15565b60ff1690506061811015611aa557601f1660010192915050565b60618360c5811115611ab957611ab9612b15565b03611ac75750601492915050565b505f92915050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110611b0657611b06612876565b60209081029190910101525f61082f7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610f92565b604080516020810187905280820186905260608082018690528251808303909101815260809091019091525f611b7b8484611ce8565b90505f611b888585611d04565b6040805160018082528183019092529192505f91906020808301908036833701905050905089815f81518110611bc057611bc0612876565b6020908102919091010152611c187f746273746f72650000000000000000005461626c657300000000000000000000828686867e60030220202000000000000000000000000000000000000000000000000000611d30565b50505050505050505050565b6040805160018082528183019092525f916020808301908036833701905050905082815f81518110611c5857611c58612876565b602002602001018181525050611cc17f746273746f72650000000000000000005265736f7572636549647300000000005f1b825f85604051602001611ca491151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b612037565b505050565b5f6008611cd560026020612ba1565b611cdf9190612bb4565b9190911c919050565b815181515f9181810160389190911b1760609190911b17610a16565b60608282604051602001611d19929190612bcb565b604051602081830303815290604052905092915050565b611bdd60f21b867fffff0000000000000000000000000000000000000000000000000000000000001603611da157857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051611d949493929190612bf9565b60405180910390a261186e565b5f611dab87612053565b90505f5b8151811015611e7d575f828281518110611dcb57611dcb612876565b60200260200101519050611df76001826affffffffffffffffffffff19166120d890919063ffffffff16565b15611e74576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611e46908c908c908c908c908c908c90600401612c42565b5f604051808303815f87803b158015611e5d575f80fd5b505af1158015611e6f573d5f803e3d5ffd5b505050505b50600101611daf565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611eb49493929190612bf9565b60405180910390a25f611ec7888861154f565b90505f602087019050611edd825f8951846120f5565b5f611ee785611a3b565b1115611f67575f611ef88a8a6121b0565b87815590506020860191505f805f5b611f1088611a3b565b8160ff161015611f6257611f258d8d83612205565b9250611f408a8260ff166028026038011c64ffffffffff1690565b9150611f4e835f84886120f5565b611f588286612915565b9450600101611f07565b505050505b5f5b8351811015611c18575f848281518110611f8557611f85612876565b60200260200101519050611fb16002826affffffffffffffffffffff19166120d890919063ffffffff16565b1561202e576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90612000908e908e908e908e908e908e90600401612c42565b5f604051808303815f87803b158015612017575f80fd5b505af1158015612029573d5f803e3d5ffd5b505050505b50600101611f69565b61204c858561204684876115a4565b85612283565b5050505050565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f8151811061208b5761208b612876565b60209081029190910101525f6120c27f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836124f3565b905061083b6120d3825f845161252c565b6125b8565b5f8160ff16826120e88560581c90565b1660ff1614905092915050565b821561216d576020831061211f5760208304840193506020838161211b5761211b612b8d565b0692505b821561216d5760208390035f5f19600885021c1990506008850281811c91508351811c905081198754168282161787555081841161215e5750506121aa565b50600194909401939182900391015b5b6020821061218f5780518455600190930192601f199091019060200161216e565b81156121aa57835481515f19600885021c9182169119161784555b50505050565b5f82826040516020016121c4929190612b53565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f8383604051602001612219929190612b53565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b611bdd60f21b847fffff00000000000000000000000000000000000000000000000000000000000016036122f257837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516122e593929190612c9a565b60405180910390a26121aa565b5f6122fd858561154f565b90505f61230986612053565b90505f5b81518110156123d7575f82828151811061232957612329612876565b602002602001015190506123556004826affffffffffffffffffffff19166120d890919063ffffffff16565b156123ce576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906123a0908b908b908b908b90600401612cd6565b5f604051808303815f87803b1580156123b7575f80fd5b505af11580156123c9573d5f803e3d5ffd5b505050505b5060010161230d565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161240c93929190612c9a565b60405180910390a2612427828565ffffffffffff16856125c7565b5f5b8151811015610e95575f82828151811061244557612445612876565b602002602001015190506124716008826affffffffffffffffffffff19166120d890919063ffffffff16565b156124ea576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba8721906124bc908b908b908b908b90600401612cd6565b5f604051808303815f87803b1580156124d3575f80fd5b505af11580156124e5573d5f803e3d5ffd5b505050505b50600101612429565b606061083b612503858585612205565b5f6125278561251289896125dd565b9060ff166028026038011c64ffffffffff1690565b6125ef565b5f8183118061253b5750835182115b15612578578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016108e493929190612d0e565b602084016125868482612915565b90505f6125938585612ba1565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f610a168360155f612612565b611cc1838383516125d88560200190565b6120f5565b5f610a166125eb84846121b0565b5490565b60405160208101601f19603f84840101166040528282526115d48585858461268a565b60605f61261f8560801c90565b90506fffffffffffffffffffffffffffffffff85165f85828161264457612644612b8d565b0490506040519350602084016020820281016040528185525f5b8281101561267e578451871c82529387019360209091019060010161265e565b50505050509392505050565b821561270e57602083106126b4576020830484019350602083816126b0576126b0612b8d565b0692505b821561270e5760208390035f818410156126d557505f19600884021c6126de565b505f19600882021c5b8554600886021b8184511682198216178452508184116126ff5750506121aa565b50600194909401939182900391015b5b602082106127305783548152600190930192601f199091019060200161270f565b81156121aa575f5f19600884021c8251865482191691161782525050505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461277e575f80fd5b50565b5f60208284031215612791575f80fd5b8135610a1681612751565b634e487b7160e01b5f52604160045260245ffd5b5f602082840312156127c0575f80fd5b813567ffffffffffffffff808211156127d7575f80fd5b818401915084601f8301126127ea575f80fd5b8135818111156127fc576127fc61279c565b604051601f8201601f19908116603f011681019083821181831017156128245761282461279c565b8160405282815287602084870101111561283c575f80fd5b826020860160208301375f928101602001929092525095945050505050565b5f6020828403121561286b575f80fd5b8151610a1681612751565b634e487b7160e01b5f52603260045260245ffd5b5f5b838110156128a457818101518382015260200161288c565b50505f910152565b5f81518084526128c381602086016020860161288a565b601f01601f19169290920160200192915050565b604081525f6128e960408301856128ac565b90506001600160a01b03831660208301529392505050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156101dc576101dc612901565b5f815180845260208085019450602084015f5b838110156129575781518752958201959082019060010161293b565b509495945050505050565b848152608060208201525f61297a6080830186612928565b60ff949094166040830152506060015292915050565b5f602082840312156129a0575f80fd5b5051919050565b7fffff000000000000000000000000000000000000000000000000000000000000841681525f7f3a000000000000000000000000000000000000000000000000000000000000008060028401528451612a0781600386016020890161288a565b808401905081600382015284519150612a2782600483016020880161288a565b0160040195945050505050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015612a7f57601f19868403018952612a6d8383516128ac565b98840198925090830190600101612a51565b5090979650505050505050565b86815285602082015284604082015283606082015260c060808201525f612ab660c0830185612a34565b82810360a0840152612ac88185612a34565b9998505050505050505050565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201525f610f8960608301846128ac565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61083b60408301846128ac565b602081525f610a166020830184612a34565b8281525f60208083018451602086015f5b82811015612b8057815184529284019290840190600101612b64565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b818103818111156101dc576101dc612901565b80820281158282048414176101dc576101dc612901565b5f8351612bdc81846020880161288a565b835190830190612bf081836020880161288a565b01949350505050565b608081525f612c0b6080830187612928565b8281036020840152612c1d81876128ac565b90508460408401528281036060840152612c3781856128ac565b979650505050505050565b86815260c060208201525f612c5a60c0830188612928565b8281036040840152612c6c81886128ac565b90508560608401528281036080840152612c8681866128ac565b9150508260a0830152979650505050505050565b606081525f612cac6060830186612928565b65ffffffffffff851660208401528281036040840152612ccc81856128ac565b9695505050505050565b848152608060208201525f612cee6080830186612928565b65ffffffffffff851660408401528281036060840152612c3781856128ac565b606081525f612d2060608301866128ac565b6020830194909452506040015291905056fea164736f6c6343000818000a","sourceMap":"980:1422:119:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;984:308:53;;;;;;:::i;:::-;;:::i;:::-;;;611:14:126;;604:22;586:41;;574:2;559:18;984:308:53;;;;;;;;1262:121:57;;;:::i;:::-;;;-1:-1:-1;;;;;802:55:126;;;784:74;;772:2;757:18;1262:121:57;638:226:126;1142:1258:119;;;;;;:::i;:::-;;:::i;:::-;;1624:110:57;;;-1:-1:-1;;3808:14:57;3804:25;3791:39;2189:25:126;;2177:2;2162:18;1624:110:57;2043:177:126;2552:112:53;;;;;;:::i;:::-;;:::i;1950:98:57:-;;;:::i;984:308:53:-;1108:4;1133:40;;;1148:25;1133:40;;:104;;-1:-1:-1;1183:54:53;;;1198:39;1183:54;1133:104;:154;;;-1:-1:-1;1247:40:53;;;1262:25;1247:40;1133:154;1120:167;984:308;-1:-1:-1;;984:308:53:o;1262:121:57:-;1313:14;1342:36;:34;:36::i;:::-;1335:43;;1262:121;:::o;1142:1258:119:-;1310:33;1330:6;1338:4;1310:19;:33::i;:::-;1350:16;1380:8;:6;:8::i;:::-;1350:39;-1:-1:-1;2954:74:58;1467:32:119;2954:74:58;1467:21:119;:32::i;:::-;1462:88;;1509:34;;;;;;;;2189:25:126;;;-1:-1:-1;;;;;1509:23:119;;;;;2162:18:126;;1509:34:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1462:88;1555:52;1582:9;1601:4;1555:26;:52::i;:::-;1619:43;1166:66:122;1619:21:119;:43::i;:::-;1614:87;;1672:22;:20;:22::i;:::-;1707:27;1737:110;1770:15;1793:24;:9;451:5:20;2637:44:58;;2539:148;1793:24:119;1737:110;:25;:110::i;:::-;1707:140;;1943:39;1965:16;1943:21;:39::i;:::-;1938:403;;1992:60;;;;;;;;2689:25:126;;;-1:-1:-1;;;;;2031:14:119;2750:55:126;;2730:18;;;2723:83;2047:4:119;2822:18:126;;;2815:50;1992:20:119;;;;;2662:18:126;;1992:60:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2060:83:119;;;;;;;;;3119:25:126;;;3160:18;;;3153:30;;;;3219:2;3199:18;;;3192:30;3258:33;3238:18;;;3231:61;-1:-1:-1;;;;;2060:30:119;;;-1:-1:-1;2060:30:119;;-1:-1:-1;3309:19:126;;2060:83:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;2151:89:119;;;;;;;;;3836:25:126;;;3877:18;;;3870:30;;;;3936:2;3916:18;;;3909:30;3975:34;3955:18;;;3948:62;4047:7;4026:19;;;4019:36;-1:-1:-1;;;;;2151:30:119;;;;;4072:19:126;;2151:89:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;2248:86:119;;;;;;;;;4345:25:126;;;4386:18;;;4379:30;;;;4445:2;4425:18;;;4418:30;4484:34;4464:18;;;4457:62;4556:4;4535:19;;;4528:33;-1:-1:-1;;;;;2248:30:119;;;;;4578:19:126;;2248:86:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1938:403;2347:5;-1:-1:-1;;;;;2347:23:119;;2371:9;2382:12;:10;:12::i;:::-;2347:48;;;;;;;;;;;;;4813:25:126;;;;-1:-1:-1;;;;;4874:55:126;4854:18;;;4847:83;4786:18;;2347:48:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1194:1206;;;1142:1258;:::o;2552:112:53:-;2627:32;;;;;;;;;;;;;;1950:98:57;1989:7;2011:32;:30;:32::i;3000:383::-;3286:34;3290:14;3286:34;3273:48;3267:4;3263:59;;3333:45;;-1:-1:-1;3368:10:57;3333:45;3000:383;:::o;1990:194:53:-;2092:39;2104:13;2119:11;2092;:39::i;:::-;2088:92;;;2148:25;;;;;;;;;;;;;;2088:92;1990:194;;:::o;2500:315:30:-;2613:16;;;2627:1;2613:16;;;;;;;;;2565:11;;;;2613:16;;;;;;;;;;;;-1:-1:-1;2613:16:30;2584:45;;2668:10;2635:9;2645:1;2635:12;;;;;;;;:::i;:::-;;;;;;;;;;:44;2686:13;2702:64;971:66;2739:9;2686:13;-1:-1:-1;;;2702:26:30;:64::i;:::-;2686:80;;2780:29;2801:5;2788:20;;7167:5;7081:97;2780:29;2772:38;2500:315;-1:-1:-1;;;;2500:315:30:o;3522:232:41:-;-1:-1:-1;;;;;3607:57:41;;:47;696:18:98;578:36:58;2955:46;;2954:74;3607:18:41;:47::i;:::-;-1:-1:-1;;;;;3607:57:41;;3603:147;;3713:21;:10;:19;:21::i;:::-;3736:6;3681:62;;;;;;;;;;;;:::i;:::-;;;;;;;;2328:147:122;2363:107;1166:66;1295;1458;1613;2439:13;:11;:13::i;:::-;2454:15;:13;:15::i;:::-;2363:25;:107::i;:::-;2328:147::o;1046:257:58:-;1133:10;1262:26;438:6;451:5:20;1262:26:58;:::i;:::-;1189:15;;;1208:31;451:5:20;1208:31:58;;;;1189:51;-1:-1:-1;;1244:13:58;;:45;;;1189:101;;-1:-1:-1;1046:257:58;;;;;:::o;4056:97:57:-;4097:7;4119:29;:27;:29::i;1579:176:53:-;1672:4;1691:59;1712:13;1737:11;1727:22;;;;;;1691:20;:59::i;:::-;1684:66;1579:176;-1:-1:-1;;;1579:176:53:o;17775:457:27:-;17932:7;17947:21;17971:17;:15;:17::i;:::-;17947:41;-1:-1:-1;18023:4:27;-1:-1:-1;;;;;17998:30:27;;;17994:234;;18045:68;18070:7;18079:8;18089:10;18101:11;18045:24;:68::i;:::-;18038:75;;;;;17994:234;18141:80;;;;;-1:-1:-1;;;;;18141:36:27;;;;;:80;;18178:7;;18187:8;;18197:10;;18209:11;;18141:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;3403:307:72:-;3513:16;;;3527:1;3513:16;;;;;;;;;3463:13;;;;3513:16;;;;;;;;;;;;-1:-1:-1;3513:16:72;3484:45;;3568:11;3535:9;3545:1;3535:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;3587:13;3603:64;1169:66;3640:9;3587:13;1298:66;3603:26;:64::i;:::-;3681:23;;;3403:307;-1:-1:-1;;;;3403:307:72:o;3486:592:58:-;3550:13;3620:10;451:5:20;2637:44:58;;;3571:19;3718;3620:10;3718:7;:19::i;:::-;3695:42;-1:-1:-1;3800:12:58;3839:35;;;;:102;;3888:53;;;;:34;:53::i;:::-;3839:102;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3968:25:58;;;:87;;4007:48;4042:12;4007:34;:48::i;:::-;3968:87;;;;;;;;;;;;;;;;;;;;;3772:293;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3743:330;;;;;3486:592;;;:::o;1815:164:122:-;1904:15;;;1917:1;1904:15;;;1861:24;1904:15;;;;;;;;;;;;;;;;;;;;;;;;;;1893:26;;1925:24;;;;;;;;;;;;;;;;;:8;1934:1;1925:11;;;;;;;;:::i;:::-;;;;;;:24;;;;1955:19;;;;;;;;;;;;;;;;;:8;1964:1;1955:11;;;;;;;;:::i;:::-;;;;;;:19;;;;1815:164;:::o;2119:144::-;2214:15;;;2227:1;2214:15;;;;;;;;;2167:26;;2214:15;;;;;;;;;;;;;;;;;;;;2201:28;;2235:23;;;;;;;;;;;;;;;;;:10;2246:1;2235:13;;;;;;;;:::i;5644:520:27:-;5847:21;5871:17;:15;:17::i;:::-;5847:41;-1:-1:-1;5923:4:27;-1:-1:-1;;;;;5898:30:27;;;5894:266;;5938:91;5962:7;5971:11;5984:9;5995:11;6008:8;6018:10;5938:23;:91::i;:::-;5894:266;;;6050:103;;;;;-1:-1:-1;;;;;6050:35:27;;;;;:103;;6086:7;;6095:11;;6108:9;;6119:11;;6132:8;;6142:10;;6050:103;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5894:266;5841:323;5644:520;;;;;;:::o;1836:227::-;1066:42;1925:22;1886:7;;-1:-1:-1;;;;;1925:22:27;;1953:106;;2001:10;1994:17;;;1836:227;:::o;1953:106::-;2039:13;1836:227;-1:-1:-1;1836:227:27:o;3547:382:70:-;3682:16;;;3696:1;3682:16;;;;;;;;3629;;;;3682;3696:1;3682:16;;;;;;;;;;-1:-1:-1;3682:16:70;3653:45;;3743:13;-1:-1:-1;;;;;3727:31:70;3719:40;;3704:9;3714:1;3704:12;;;;;;;;:::i;:::-;;;;;;:55;;;;;3780:13;3765:9;3775:1;3765:12;;;;;;;;:::i;:::-;;;;;;;;;;:28;3800:13;3816:64;1084:66;3853:9;3800:13;-1:-1:-1;;;3816:26:70;:64::i;:::-;3800:80;;3894:29;3915:5;3902:20;;7167:5:30;7081:97;3894:29:70;3886:38;3547:382;-1:-1:-1;;;;;3547:382:70:o;36171:541:24:-;36328:7;36465:242;36509:59;36550:7;36559:8;36509:40;:59::i;:::-;36586:31;;;;4323:19:4;:27;579:1:33;4322:44:4;4288:79;;;4275:93;36635:63:24;36674:11;36687:10;36635:38;:63::i;:::-;36465:17;:242::i;3165:160:58:-;3228:7;3292:26;438:6;451:5:20;3292:26:58;:::i;:::-;3258:61;;;;;3165:160;-1:-1:-1;3165:160:58:o;1862:325::-;1932:13;1953:14;1973:83;1989:2;1980:6;:11;1973:83;;;-1:-1:-1;;2007:37:58;;3261:1:2;3257:13;;3253:24;2007:42:58;;2003:53;2051:5;2003:53;1993:8;;1973:83;;;2092:30;;;-1:-1:-1;;10214:79:126;;2092:30:58;;;10202:92:126;2092:30:58;;10310:12:126;;;;2092:30:58;;;875:21:2;;;2092:30:58;2142:39;760:164:2;6637:2917:24;6945:14;6924:7;:35;;;;;;:83;;-1:-1:-1;;;;6963:7:24;:44;;;;6924:83;6920:209;;;7063:14;7079:7;7112;7095:25;;;;;;10493:19:126;;10537:2;10528:12;;10333:213;7095:25:24;;;;-1:-1:-1;;7095:25:24;;;;;;;;;;7024:98;;;;;;;;;;:::i;6920:209::-;7175:22;:11;:20;:22::i;:::-;7238:40;:9;7271:4;7238:18;:40::i;:::-;7284:43;:11;7319:5;7284:20;:43::i;:::-;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;7415:8:24;:15;:40;7411:148;;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;7536:15:24;;7472:80;;;;;;;;11194:25:126;;;;11235:18;;;11228:34;11167:18;;7472:80:24;11020:248:126;7411:148:24;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;7609:10:24;:17;:44;7605:158;;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;7738:17:24;;7670:86;;;;;;;;11194:25:126;;;;11235:18;;;11228:34;11167:18;;7670:86:24;11020:248:126;7605:158:24;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;7820:50:24;7816:171;;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;1683:38:33;5236:60:21;;;1515:34:33;5159:59:21;;;5153:144;5138:159;;7887:93:24;;;;;;;;11194:25:126;;;;11235:18;;;11228:34;11167:18;;7887:93:24;11020:248:126;7816:171:24;8029:29;:11;:27;:29::i;:::-;7996;:11;:27;:29::i;:::-;:62;7992:225;;8134:29;:11;:27;:29::i;:::-;8173;:11;:27;:29::i;:::-;8075:135;;;;;;;;11194:25:126;;;;11235:18;;;11228:34;11167:18;;8075:135:24;11020:248:126;7992:225:24;8260:30;:11;:28;:30::i;:::-;8226;:11;:28;:30::i;:::-;:64;8222:230;;8367:30;:11;:28;:30::i;:::-;8407;:11;:28;:30::i;:::-;8307:138;;;;;;;;11194:25:126;;;;11235:18;;;11228:34;11167:18;;8307:138:24;11020:248:126;8222:230:24;8549:9;8544:314;8564:29;:11;:27;:29::i;:::-;8560:1;:33;8544:314;;;8638:44;:22;:11;8658:1;8638:19;:22::i;:::-;:42;;;;;;;;:::i;:::-;;:44::i;:::-;579:1:33;4323:19:4;:27;;;4322:44;4288:79;;;4275:93;;8612:70:24;8608:244;;579:1:33;4323:19:4;:27;;;4322:44;4288:79;;;4275:93;;8789:44:24;:22;:11;8809:1;8789:19;:22::i;:44::-;8701:142;;;;;;;;11194:25:126;;;;11235:18;;;11228:34;11167:18;;8701:142:24;11020:248:126;8608:244:24;8595:3;;8544:314;;;;8938:25;8966:63;8987:14;9003:25;:7;451:5:20;2637:44:58;;2539:148;9003:25:24;451:5:20;1080:26;1061:15;;;;;:46;;952:161;8966:63:24;8938:91;;9035:26;9064:72;-1:-1:-1;;;9110:25:24;:7;451:5:20;2637:44:58;;2539:148;9064:72:24;9035:101;;9146:38;9169:14;9146:22;:38::i;:::-;:81;;;;9188:39;9211:15;9188:22;:39::i;:::-;9142:190;;;9282:7;9315;9298:25;;;;;;10493:19:126;;10537:2;10528:12;;10333:213;9298:25:24;;;;-1:-1:-1;;9298:25:24;;;;;;;;;;9244:81;;;;;;;;;:::i;9142:190::-;9373:103;9385:7;9394:11;9407:9;9418:11;9442:8;9431:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;9464:10;9453:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;9373:11;:103::i;:::-;9512:37;9535:7;9544:4;9512:22;:37::i;50806:191::-;50908:7;50972;50981:8;50955:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;50955:35:24;;;;;;;;;50945:46;;50955:35;50945:46;;;;42361:22;50938:53;;50806:191;-1:-1:-1;;;50806:191:24:o;51823:242::-;51919:7;;;51958:84;51978:10;51974:14;;:1;:14;51958:84;;;52003:32;4275:93:4;4323:19;:27;;;579:1:33;4322:44:4;4288:79;;;4275:93;52003:32:24;;:::i;:::-;;-1:-1:-1;51990:3:24;;51958:84;;;-1:-1:-1;52054:6:24;51823:242;-1:-1:-1;;;51823:242:24:o;8945:812:23:-;9043:14;9079:2;9069:6;:12;9065:112;;9138:2;9129:6;:11;9111:29;;;;9160:2;9150:12;;;;;;:::i;:::-;;;;9065:112;-1:-1:-1;9368:21:23;;9353:12;9341:25;;9337:53;9516:2;:11;;;9598:22;;;9594:159;;;9734:1;9718:14;9714:22;9708:29;9693:12;9678:13;9674:32;9670:68;9662:6;9659:80;9649:90;;9059:698;8945:812;;;;;:::o;6618:1665:4:-;6301:45;6681:87;;6723:38;;;;;;;;;;;;;;6681:87;6774:25;6802:30;:11;:28;:30::i;:::-;6774:58;;943:1:33;6842:17:4;:38;6838:156;;;6897:90;;;;;;;;11194:25:126;;;943:1:33;11235:18:126;;;11228:34;11167:18;;6897:90:4;11020:248:126;6838:156:4;7000:24;7027:29;:11;:27;:29::i;:::-;7000:56;-1:-1:-1;7062:23:4;7088:36;7107:17;7000:56;7088:36;:::i;:::-;7062:62;;689:2:33;7134:15:4;:34;7130:141;;;7185:79;;;;;;;;11194:25:126;;;689:2:33;11235:18:126;;;11228:34;11167:18;;7185:79:4;11020:248:126;7130:141:4;7313:25;7349:9;7344:429;7364:16;7360:1;:20;7344:429;;;4275:93;4323:19;:27;;;579:1:33;4322:44:4;4288:79;;;4275:93;7392:24;7453:21;;;7449:234;;7493:52;;;;;;;;2189:25:126;;;2162:18;;7493:52:4;2043:177:126;7449:234:4;376:2:33;7564:16:4;:28;7560:123;;;7611:63;;;;;;;;2189:25:126;;;2162:18;;7611:63:4;2043:177:126;7560:123:4;7690:37;7711:16;7690:37;;:::i;:::-;;-1:-1:-1;;7755:3:4;;7344:429;;;;7840:30;:11;:28;:30::i;:::-;7819:17;:51;7815:184;;7942:30;:11;:28;:30::i;:::-;7887:105;;;;;;;;11194:25:126;;;;11235:18;;;11228:34;;;11167:18;;7887:105:4;11020:248:126;7815:184:4;8055:16;8038:241;689:2:33;8073:1:4;:20;8038:241;;;4275:93;4323:19;:27;;;579:1:33;4322:44:4;4288:79;;;4275:93;8169:21;;8165:108;;8209:55;;;;;;;;2189:25:126;;;2162:18;;8209:55:4;2043:177:126;8165:108:4;-1:-1:-1;8095:3:4;;8038:241;;;;6675:1608;;;;6618:1665;:::o;5760:1635:21:-;5867:10;5866:11;:31;;;;-1:-1:-1;6301:45:4;;5881:16:21;5862:81;;;5906:37;;-1:-1:-1;;;5906:37:21;;5941:1;5906:37;;;2189:25:126;2162:18;;5906:37:21;2043:177:126;5862:81:21;6006:25;6034;:6;:23;:25::i;:::-;6006:53;;943:1:33;6069:17:21;:38;6065:104;;;6116:53;;-1:-1:-1;;;6116:53:21;;;;;2189:25:126;;;2162:18;;6116:53:21;2043:177:126;6065:104:21;6176:24;6203;:6;:22;:24::i;:::-;6176:51;-1:-1:-1;6297:23:21;6323:36;6342:17;6176:51;6323:36;:::i;:::-;6297:62;;689:2:33;6369:15:21;:34;6365:98;;;6412:51;;-1:-1:-1;;;6412:51:21;;;;;2189:25:126;;;2162:18;;6412:51:21;2043:177:126;6365:98:21;6524:25;6560:9;6555:314;6575:16;6571:1;:20;6555:314;;;6603:24;6630:39;:17;:6;6645:1;6630:14;:17::i;:39::-;6603:66;;6681:16;6701:1;6681:21;6677:102;;6721:49;;;;;;;;;;;;;;6677:102;6786:37;6807:16;6786:37;;:::i;:::-;;-1:-1:-1;;6851:3:21;;6555:314;;;;6937:25;:6;:23;:25::i;:::-;6916:17;:46;6912:135;;7014:25;:6;:23;:25::i;:::-;6979:61;;-1:-1:-1;;;6979:61:21;;;;;;2189:25:126;;2177:2;2162:18;;2043:177;6912:135:21;7122:16;7105:286;7144:15;7140:1;:19;7105:286;;;7171:24;7198:39;:17;:6;7213:1;7198:14;:17::i;:39::-;7171:66;-1:-1:-1;7249:20:21;;7245:101;;7288:49;;;;;;;;;;;;;;7245:101;-1:-1:-1;7373:3:21;;7105:286;;4979:171:4;5052:7;579:1:33;1532;1516:13;1528:1;376:2;1516:13;:::i;:::-;:17;;;;:::i;:::-;1515:34;;;;:::i;:::-;5088:11:4;5067:78;5080:64;;5067:78;;4979:171;-1:-1:-1;;4979:171:4:o;5377:173::-;5451:7;579:1:33;1704;;1684:13;1696:1;376:2;1684:13;:::i;:::-;:17;;;;:::i;4019:206:21:-;4089:10;4179:19;:27;;;4210:1;4178:33;4157:6;4132:82;4149:63;;4132:82;;;;;;;;;:::i;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;2856:314:30:-;2970:16;;;2984:1;2970:16;;;;;;;;;2922:11;;;;2970:16;;;;;;;;;;;;-1:-1:-1;2970:16:30;2941:45;;3025:10;2992:9;3002:1;2992:12;;;;;;;;:::i;:::-;;;;;;;;;;:44;3043:13;3059:62;971:66;3094:9;3043:13;-1:-1:-1;;;3059:24:30;:62::i;19791:677:32:-;24359:53;;;;;;13880:19:126;;;13915:12;;;13908:28;;;24332:12:32;13952::126;;;13945:28;;;24359:53:32;;;;;;;;;;13989:12:126;;;;24359:53:32;;;20082:30;20115:55;20129:18;20149:20;20115:13;:55::i;:::-;20082:88;;20176:25;20204:55;20218:18;20238:20;20204:13;:55::i;:::-;20295:16;;;20309:1;20295:16;;;;;;;;;20176:83;;-1:-1:-1;20266:26:32;;20295:16;;;;;;;;;;;;-1:-1:-1;20295:16:32;20266:45;;20350:7;20317:9;20327:1;20317:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;20365:98;1207:66;20395:9;20406:11;20419:15;20436:12;1336:66;20365:19;:98::i;:::-;19993:475;;;;19791:677;;;;;;:::o;4220:268:30:-;4320:16;;;4334:1;4320:16;;;;;;;;;4291:26;;4320:16;;;;;;;;;;;-1:-1:-1;4320:16:30;4291:45;;4375:10;4342:9;4352:1;4342:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;4393:90;971:66;955:83;;4428:9;4439:1;4460:6;4442:26;;;;;;13554:14:126;13547:22;13542:3;13538:32;13526:45;;13596:1;13587:11;;13403:201;4442:26:30;;;;-1:-1:-1;;4442:26:30;;;;;;;;;-1:-1:-1;;;4393:24:30;:90::i;:::-;4285:203;4220:268;;:::o;4598:171:4:-;4672:7;579:1:33;1354:13;1366:1;376:2;1354:13;:::i;:::-;1353:30;;;;:::i;:::-;4694:70:4;;;;;4598:171;-1:-1:-1;4598:171:4:o;24608:390:32:-;24918:32;;24952:34;;24734:30;;2662:5:3;;;975:16;2694:39;;;;2675:59;2776:23;2761:39;;;;2742:59;24895:92:32;2518:351:3;25163:234:32;25289:12;25340:18;25369:20;25316:76;;;;;;;;;:::i;:::-;;;;;;;;;;;;;25309:83;;25163:234;;;;:::o;13212:3165:24:-;-1:-1:-1;;;13486:7:24;:44;;;13482:211;;13613:7;13584:88;13622:8;13632:10;13644:14;13660:11;13584:88;;;;;;;;;:::i;:::-;;;;;;;;13680:7;;13482:211;13831:22;13856:24;13872:7;13856:15;:24::i;:::-;13831:49;;13891:9;13886:340;13906:5;:12;13902:1;:16;13886:340;;;13933:9;13955:5;13961:1;13955:8;;;;;;;;:::i;:::-;;;;;;;13933:31;;13976:33;409:6:35;13976:4:24;:14;;;;;:33;;;;:::i;:::-;13972:248;;;14021:190;;;;;3536:35:5;;;;;14021:47:24;;:190;;14080:7;;14099:8;;14119:10;;14141:14;;14167:11;;14190;;14021:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13972:248;-1:-1:-1;13920:3:24;;13886:340;;;;14303:7;14274:88;14312:8;14322:10;14334:14;14350:11;14274:88;;;;;;;;;:::i;:::-;;;;;;;;14426:26;14455:59;14496:7;14505:8;14455:40;:59::i;:::-;14426:88;-1:-1:-1;14520:21:24;894:4:19;884:15;;14520:54:24;;14580:149;14618:18;14652:1;14669:10;:17;14709:13;14580;:149::i;:::-;14829:1;14796:30;:11;:28;:30::i;:::-;:34;14792:1174;;;14915:33;14951:66;14999:7;15008:8;14951:47;:66::i;:::-;695:28:23;;;14915:102:24;-1:-1:-1;894:4:19;884:15;;15191:47:24;;15347:27;15382:25;15420:7;15415:545;15433:30;:11;:28;:30::i;:::-;15429:1;:34;;;15415:545;;;15499:63;15541:7;15550:8;15560:1;15499:41;:63::i;:::-;15477:85;-1:-1:-1;15592:25:24;:14;15615:1;7070:16:3;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;15592:25:24;15572:45;;15627:170;15669:19;15708:1;15729:17;15773:13;15627;:170::i;:::-;15807:34;15824:17;15807:34;;:::i;:::-;;-1:-1:-1;15938:3:24;;15415:545;;;;14832:1134;;;14792:1174;16040:9;16035:338;16055:5;:12;16051:1;:16;16035:338;;;16082:9;16104:5;16110:1;16104:8;;;;;;;;:::i;:::-;;;;;;;16082:31;;16125:32;503:6:35;16125:4:24;:14;;;;;:32;;;;:::i;:::-;16121:246;;;16169:189;;;;;3536:35:5;;;;;16169:46:24;;:189;;16227:7;;16246:8;;16266:10;;16288:14;;16314:11;;16337;;16169:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16121:246;-1:-1:-1;16069:3:24;;16035:338;;23107:355;23279:178;23313:7;23338:8;23368:63;23407:11;23420:10;23368:38;:63::i;:::-;23446:4;23279:16;:178::i;:::-;23107:355;;;;;:::o;3656:342:31:-;3772:16;;;3786:1;3772:16;;;;;;;;;3713:22;;3743:26;;3772:16;;;;;;;;;;;;-1:-1:-1;3772:16:31;3743:45;;3827:7;3794:9;3804:1;3794:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;3842:18;3863:49;969:66;3899:9;3842:18;3863:25;:49::i;:::-;3842:70;;3926:66;:44;3947:5;3954:1;3957:5;:12;3926:20;:44::i;:::-;:64;:66::i;3035:136:5:-;3105:4;3157:9;3124:42;;3143:9;3125:15;3135:4;3934:26;;;3804:162;3125:15;:27;3124:42;;;3117:49;;3035:136;;;;:::o;1489:2340:23:-;1602:10;;1598:1504;;1755:2;1745:6;:12;1741:122;;1818:2;1809:6;:11;1791:29;;;;1842:2;1832:12;;;;;;:::i;:::-;;;;1741:122;1953:10;;1949:1147;;2161:2;:11;;;2035:21;-1:-1:-1;;579:1:33;804:25:34;;782:48;2208:18:23;2193:33;;2395:12;2387:6;2383:25;2442:4;2431:9;2427:20;2419:28;;2497:13;2491:20;2480:9;2476:36;2458:54;;2745:4;2741:9;2724:14;2718:21;2714:37;2645:4;2633:10;2629:21;2572:193;2544:14;2524:253;;2836:13;2826:6;:23;2822:36;;2851:7;;;;2822:36;-1:-1:-1;2999:1:23;2981:19;;;;;3054:23;;;;;3012:30;1949:1147;3132:253;3149:2;3139:6;:12;3132:253;;3244:20;;3221:44;;3318:1;3300:19;;;;-1:-1:-1;;3358:12:23;;;;3346:2;3329:19;3132:253;;;3453:10;;3449:376;;3761:21;;3672:20;;-1:-1:-1;;579:1:33;804:25:34;;782:48;3757:32:23;;;3694:9;;3668:36;3617:184;3573:238;;3449:376;1489:2340;;;;:::o;53371:230:24:-;53492:7;53576;53585:8;53559:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;53559:35:24;;;;;;;;;53549:46;;53559:35;53549:46;;;;42524:40;53522:73;;53371:230;-1:-1:-1;;;53371:230:24:o;52742:274::-;52886:7;52991;53000:8;52974:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;52964:46;;;;;;52943:17;52936:25;;52916:45;;;42433:34;52916:45;:94;52908:103;;52901:110;;52742:274;;;;;:::o;17013:1682::-;-1:-1:-1;;;17192:7:24;:44;;;17188:235;;17346:7;17299:103;17365:8;17382:5;17395:4;17299:103;;;;;;;;:::i;:::-;;;;;;;;17410:7;;17188:235;17429:16;17448:59;17489:7;17498:8;17448:40;:59::i;:::-;17429:78;;17653:22;17678:24;17694:7;17678:15;:24::i;:::-;17653:49;;17713:9;17708:328;17728:5;:12;17724:1;:16;17708:328;;;17755:9;17777:5;17783:1;17777:8;;;;;;;;:::i;:::-;;;;;;;17755:31;;17798:41;614:6:35;17798:4:24;:14;;;;;:41;;;;:::i;:::-;17794:236;;;17851:170;;;;;3536:35:5;;;;;17851:54:24;;:170;;17927:7;;17956:8;;17983:5;;18006:4;;17851:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17794:236;-1:-1:-1;17742:3:24;;17708:328;;;;18140:7;18093:103;18159:8;18176:5;18189:4;18093:103;;;;;;;;:::i;:::-;;;;;;;;18246:70;18278:8;18296:5;18246:70;;18309:4;18246:13;:70::i;:::-;18370:9;18365:326;18385:5;:12;18381:1;:16;18365:326;;;18412:9;18434:5;18440:1;18434:8;;;;;;;;:::i;:::-;;;;;;;18412:31;;18455:40;723:6:35;18455:4:24;:14;;;;;:40;;;;:::i;:::-;18451:234;;;18507:169;;;;;3536:35:5;;;;;18507:53:24;;:169;;18582:7;;18611:8;;18638:5;;18661:4;;18507:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18451:234;-1:-1:-1;18399:3:24;;18365:326;;37180:522;37316:12;37440:257;37479:79;37521:7;37530:8;37540:17;37479:41;:79::i;:::-;37576:1;37595:93;37670:17;37595:66;37643:7;37652:8;37595:47;:66::i;:::-;:74;7070:16:3;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;37595:93:24;37440:12;:257::i;2003:574:22:-;2094:5;2189:3;2181:5;:11;:32;;;;2202:4;:11;2196:3;:17;2181:32;2177:93;;;2253:4;2259:5;2266:3;2222:48;;;;;;;;;;;;;:::i;2177:93::-;2336:4;2326:15;;2383:16;2394:5;2326:15;2383:16;:::i;:::-;;-1:-1:-1;2405:12:22;2420:11;2426:5;2420:3;:11;:::i;:::-;692:17;2555:15;2547:3;2536:14;;;;2535:36;;;;;;-1:-1:-1;;;;;2003:574:22:o;40103:220:37:-;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;966:162:23:-;1055:68;1061:14;1077:6;1085:4;:11;1098:24;1117:4;894::19;884:15;;758:151;1098:24:23;1055:5;:68::i;53939:303:24:-;54060:14;54154:82;54185:48;54215:7;54224:8;54185:29;:48::i;:::-;4711:21:23;;4605:137;5042:669;5458:4;5452:11;5499:4;5487:17;;-1:-1:-1;;5373:16:23;5546:26;;;5373:16;5369:32;5518:4;5511:63;5618:6;5610;5603:22;5636:51;5641:14;5657:6;5665;5673:13;5636:4;:51::i;2681:1129:39:-;2801:22;2831:21;2855;:11;2997:3:22;2975:25;;2901:104;2855:21:39;2831:45;-1:-1:-1;692:17:22;3238:38;;2882:20:39;3044:11;3238:38:22;3044:11:39;3029:26;;;;:::i;:::-;;3015:40;;3164:4;3158:11;3149:20;;3207:4;3200:5;3196:16;3267:4;3254:11;3250:22;3236:12;3232:41;3226:4;3219:55;3317:11;3310:5;3303:26;3360:1;3337:463;3376:11;3373:1;3370:18;3337:463;;;3770:20;;3749:42;;3728:64;;3642:31;;;;3555:4;3537:23;;;;3463:1;3456:9;3337:463;;;3341:28;;3116:690;;;2681:1129;;;;;:::o;6076:2380:23:-;6193:10;;6189:1542;;6346:2;6336:6;:12;6332:122;;6409:2;6400:6;:11;6382:29;;;;6433:2;6423:12;;;;;;:::i;:::-;;;;6332:122;6544:10;;6540:1185;;6752:2;:11;;;6626:21;6810:22;;;6806:135;;;-1:-1:-1;;;579:1:33;804:25:34;;782:48;6806:135:23;;;-1:-1:-1;;;579:1:33;804:25:34;;782:48;6806:135:23;7135:14;7129:21;7114:12;7106:6;7102:25;7098:53;7375:4;7359:13;7353:20;7349:31;7285:4;7281:9;7269:10;7265:26;7210:184;7183:13;7163:243;;7465:13;7455:6;:23;7451:36;;7480:7;;;;7451:36;-1:-1:-1;7628:1:23;7610:19;;;;;7683:23;;;;;7641:30;6540:1185;7760:253;7777:2;7767:6;:12;7760:253;;7871:21;;7849:44;;7946:1;7928:19;;;;-1:-1:-1;;7986:12:23;;;;7974:2;7957:19;7760:253;;;8081:10;;8077:375;;8101:12;-1:-1:-1;;579:1:33;804:25:34;;782:48;8389:20:23;;8299:21;;8322:9;;8295:37;8385:31;;8244:184;8201:237;;-1:-1:-1;6076:2380:23;;;;:::o;14:177:126:-;99:66;92:5;88:78;81:5;78:89;68:117;;181:1;178;171:12;68:117;14:177;:::o;196:245::-;254:6;307:2;295:9;286:7;282:23;278:32;275:52;;;323:1;320;313:12;275:52;362:9;349:23;381:30;405:5;381:30;:::i;869:184::-;-1:-1:-1;;;918:1:126;911:88;1018:4;1015:1;1008:15;1042:4;1039:1;1032:15;1058:980;1126:6;1179:2;1167:9;1158:7;1154:23;1150:32;1147:52;;;1195:1;1192;1185:12;1147:52;1235:9;1222:23;1264:18;1305:2;1297:6;1294:14;1291:34;;;1321:1;1318;1311:12;1291:34;1359:6;1348:9;1344:22;1334:32;;1404:7;1397:4;1393:2;1389:13;1385:27;1375:55;;1426:1;1423;1416:12;1375:55;1462:2;1449:16;1484:2;1480;1477:10;1474:36;;;1490:18;;:::i;:::-;1624:2;1618:9;1686:4;1678:13;;-1:-1:-1;;1674:22:126;;;1698:2;1670:31;1666:40;1654:53;;;1722:18;;;1742:22;;;1719:46;1716:72;;;1768:18;;:::i;:::-;1808:10;1804:2;1797:22;1843:2;1835:6;1828:18;1883:7;1878:2;1873;1869;1865:11;1861:20;1858:33;1855:53;;;1904:1;1901;1894:12;1855:53;1960:2;1955;1951;1947:11;1942:2;1934:6;1930:15;1917:46;2005:1;1983:15;;;2000:2;1979:24;1972:35;;;;-1:-1:-1;1987:6:126;1058:980;-1:-1:-1;;;;;1058:980:126:o;3339:249::-;3408:6;3461:2;3449:9;3440:7;3436:23;3432:32;3429:52;;;3477:1;3474;3467:12;3429:52;3509:9;3503:16;3528:30;3552:5;3528:30;:::i;4941:184::-;-1:-1:-1;;;4990:1:126;4983:88;5090:4;5087:1;5080:15;5114:4;5111:1;5104:15;5130:250;5215:1;5225:113;5239:6;5236:1;5233:13;5225:113;;;5315:11;;;5309:18;5296:11;;;5289:39;5261:2;5254:10;5225:113;;;-1:-1:-1;;5372:1:126;5354:16;;5347:27;5130:250::o;5385:330::-;5427:3;5465:5;5459:12;5492:6;5487:3;5480:19;5508:76;5577:6;5570:4;5565:3;5561:14;5554:4;5547:5;5543:16;5508:76;:::i;:::-;5629:2;5617:15;-1:-1:-1;;5613:88:126;5604:98;;;;5704:4;5600:109;;5385:330;-1:-1:-1;;5385:330:126:o;5720:340::-;5897:2;5886:9;5879:21;5860:4;5917:45;5958:2;5947:9;5943:18;5935:6;5917:45;:::i;:::-;5909:53;;-1:-1:-1;;;;;6002:6:126;5998:55;5993:2;5982:9;5978:18;5971:83;5720:340;;;;;:::o;6065:184::-;-1:-1:-1;;;6114:1:126;6107:88;6214:4;6211:1;6204:15;6238:4;6235:1;6228:15;6254:125;6319:9;;;6340:10;;;6337:36;;;6353:18;;:::i;6384:439::-;6437:3;6475:5;6469:12;6502:6;6497:3;6490:19;6528:4;6557;6552:3;6548:14;6541:21;;6596:4;6589:5;6585:16;6619:1;6629:169;6643:6;6640:1;6637:13;6629:169;;;6704:13;;6692:26;;6738:12;;;;6773:15;;;;6665:1;6658:9;6629:169;;;-1:-1:-1;6814:3:126;;6384:439;-1:-1:-1;;;;;6384:439:126:o;6828:546::-;7150:6;7139:9;7132:25;7193:3;7188:2;7177:9;7173:18;7166:31;7113:4;7214:57;7266:3;7255:9;7251:19;7243:6;7214:57;:::i;:::-;7319:4;7307:17;;;;7302:2;7287:18;;7280:45;-1:-1:-1;7356:2:126;7341:18;7334:34;7206:65;6828:546;-1:-1:-1;;6828:546:126:o;7379:184::-;7449:6;7502:2;7490:9;7481:7;7477:23;7473:32;7470:52;;;7518:1;7515;7508:12;7470:52;-1:-1:-1;7541:16:126;;7379:184;-1:-1:-1;7379:184:126:o;7568:925::-;8017:66;8009:6;8005:79;8000:3;7993:92;7975:3;8104;8136:2;8132:1;8127:3;8123:11;8116:23;8168:6;8162:13;8184:74;8251:6;8247:1;8242:3;8238:11;8231:4;8223:6;8219:17;8184:74;:::i;:::-;8286:6;8281:3;8277:16;8267:26;;8321:2;8317:1;8313:2;8309:10;8302:22;8355:6;8349:13;8333:29;;8371:75;8437:8;8433:1;8429:2;8425:10;8418:4;8410:6;8406:17;8371:75;:::i;:::-;8466:17;8485:1;8462:25;;7568:925;-1:-1:-1;;;;;7568:925:126:o;8498:657::-;8550:3;8581;8613:5;8607:12;8640:6;8635:3;8628:19;8666:4;8695;8690:3;8686:14;8679:21;;8753:4;8743:6;8740:1;8736:14;8729:5;8725:26;8721:37;8792:4;8785:5;8781:16;8815:1;8825:304;8839:6;8836:1;8833:13;8825:304;;;-1:-1:-1;;8914:5:126;8908:4;8904:16;8900:89;8895:3;8888:102;9011:38;9044:4;9035:6;9029:13;9011:38;:::i;:::-;9107:12;;;;9003:46;-1:-1:-1;9072:15:126;;;;8861:1;8854:9;8825:304;;;-1:-1:-1;9145:4:126;;8498:657;-1:-1:-1;;;;;;;8498:657:126:o;9160:908::-;9686:6;9675:9;9668:25;9729:6;9724:2;9713:9;9709:18;9702:34;9772:6;9767:2;9756:9;9752:18;9745:34;9815:6;9810:2;9799:9;9795:18;9788:34;9859:3;9853;9842:9;9838:19;9831:32;9649:4;9886:56;9937:3;9926:9;9922:19;9914:6;9886:56;:::i;:::-;9991:9;9983:6;9979:22;9973:3;9962:9;9958:19;9951:51;10019:43;10055:6;10047;10019:43;:::i;:::-;10011:51;9160:908;-1:-1:-1;;;;;;;;;9160:908:126:o;10551:464::-;10797:66;10789:6;10785:79;10774:9;10767:98;10901:6;10896:2;10885:9;10881:18;10874:34;10944:2;10939;10928:9;10924:18;10917:30;10748:4;10964:45;11005:2;10994:9;10990:18;10982:6;10964:45;:::i;11273:184::-;-1:-1:-1;;;11322:1:126;11315:88;11422:4;11419:1;11412:15;11446:4;11443:1;11436:15;11462:322;11670:6;11659:9;11652:25;11713:2;11708;11697:9;11693:18;11686:30;11633:4;11733:45;11774:2;11763:9;11759:18;11751:6;11733:45;:::i;11789:280::-;11988:2;11977:9;11970:21;11951:4;12008:55;12059:2;12048:9;12044:18;12036:6;12008:55;:::i;12074:639::-;12324:6;12319:3;12312:19;12294:3;12350:2;12383;12378:3;12374:12;12415:6;12409:13;12480:2;12472:6;12468:15;12501:1;12511:175;12525:6;12522:1;12519:13;12511:175;;;12588:13;;12574:28;;12624:14;;;;12661:15;;;;12547:1;12540:9;12511:175;;;-1:-1:-1;12702:5:126;;12074:639;-1:-1:-1;;;;;;;12074:639:126:o;12718:184::-;-1:-1:-1;;;12767:1:126;12760:88;12867:4;12864:1;12857:15;12891:4;12888:1;12881:15;13097:128;13164:9;;;13185:11;;;13182:37;;;13199:18;;:::i;13230:168::-;13303:9;;;13334;;13351:15;;;13345:22;;13331:37;13321:71;;13372:18;;:::i;14012:492::-;14187:3;14225:6;14219:13;14241:66;14300:6;14295:3;14288:4;14280:6;14276:17;14241:66;:::i;:::-;14370:13;;14329:16;;;;14392:70;14370:13;14329:16;14439:4;14427:17;;14392:70;:::i;:::-;14478:20;;14012:492;-1:-1:-1;;;;14012:492:126:o;14509:691::-;14843:3;14832:9;14825:22;14806:4;14870:57;14922:3;14911:9;14907:19;14899:6;14870:57;:::i;:::-;14975:9;14967:6;14963:22;14958:2;14947:9;14943:18;14936:50;15009:33;15035:6;15027;15009:33;:::i;:::-;14995:47;;15078:6;15073:2;15062:9;15058:18;15051:34;15133:9;15125:6;15121:22;15116:2;15105:9;15101:18;15094:50;15161:33;15187:6;15179;15161:33;:::i;:::-;15153:41;14509:691;-1:-1:-1;;;;;;;14509:691:126:o;15205:898::-;15658:6;15647:9;15640:25;15701:3;15696:2;15685:9;15681:18;15674:31;15621:4;15728:57;15780:3;15769:9;15765:19;15757:6;15728:57;:::i;:::-;15833:9;15825:6;15821:22;15816:2;15805:9;15801:18;15794:50;15867:33;15893:6;15885;15867:33;:::i;:::-;15853:47;;15936:6;15931:2;15920:9;15916:18;15909:34;15992:9;15984:6;15980:22;15974:3;15963:9;15959:19;15952:51;16020:33;16046:6;16038;16020:33;:::i;:::-;16012:41;;;16090:6;16084:3;16073:9;16069:19;16062:35;15205:898;;;;;;;;;:::o;16108:512::-;16359:2;16348:9;16341:21;16322:4;16385:56;16437:2;16426:9;16422:18;16414:6;16385:56;:::i;:::-;16489:14;16481:6;16477:27;16472:2;16461:9;16457:18;16450:55;16553:9;16545:6;16541:22;16536:2;16525:9;16521:18;16514:50;16581:33;16607:6;16599;16581:33;:::i;:::-;16573:41;16108:512;-1:-1:-1;;;;;;16108:512:126:o;16625:616::-;16935:6;16924:9;16917:25;16978:3;16973:2;16962:9;16958:18;16951:31;16898:4;17005:57;17057:3;17046:9;17042:19;17034:6;17005:57;:::i;:::-;17110:14;17102:6;17098:27;17093:2;17082:9;17078:18;17071:55;17174:9;17166:6;17162:22;17157:2;17146:9;17142:18;17135:50;17202:33;17228:6;17220;17202:33;:::i;17246:360::-;17449:2;17438:9;17431:21;17412:4;17469:45;17510:2;17499:9;17495:18;17487:6;17469:45;:::i;:::-;17545:2;17530:18;;17523:34;;;;-1:-1:-1;17588:2:126;17573:18;17566:34;17461:53;17246:360;-1:-1:-1;17246:360:126:o","linkReferences":{},"immutableReferences":{"21837":[{"start":501,"length":32}],"79535":[{"start":924,"length":32}]}},"methodIdentifiers":{"_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","install(bytes)":"13861fb5","installRoot(bytes)":"7c5b0335","supportsInterface(bytes4)":"01ffc9a7"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"FieldLayout_Empty\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"staticDataLength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"computedStaticDataLength\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_StaticLengthDoesNotFitInAWord\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_StaticLengthIsNotZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_StaticLengthIsZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_TooManyDynamicFields\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_TooManyFields\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_AlreadyInstalled\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"dependency\",\"type\":\"address\"}],\"name\":\"Module_MissingDependency\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_NonRootInstallNotSupported\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_RootInstallNotSupported\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"Schema_InvalidLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Schema_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\":\"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\":\"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\":\"string\",\"name\":\"resource\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"World_AccessDenied\",\"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\":\"EncodedLengths\",\"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\":\"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\":\"bytes\",\"name\":\"args\",\"type\":\"bytes\"}],\"name\":\"install\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"encodedArgs\",\"type\":\"bytes\"}],\"name\":\"installRoot\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"MUD (https://mud.dev) by Lattice (https://lattice.xyz)\",\"details\":\"Adds metadata tables and systems for annotating data in MUD apps. For example, tagging resources with labels for better UX when reconstructing a MUD project from a world using onchain state.\",\"errors\":{\"FieldLayout_InvalidStaticDataLength(uint256,uint256)\":[{\"params\":{\"computedStaticDataLength\":\"The computed static data length.\",\"staticDataLength\":\"The static data length of the field layout.\"}}],\"FieldLayout_StaticLengthDoesNotFitInAWord(uint256)\":[{\"params\":{\"index\":\"The index of the field.\"}}],\"FieldLayout_StaticLengthIsNotZero(uint256)\":[{\"params\":{\"index\":\"The index of the field.\"}}],\"FieldLayout_StaticLengthIsZero(uint256)\":[{\"params\":{\"index\":\"The index of the field.\"}}],\"FieldLayout_TooManyDynamicFields(uint256,uint256)\":[{\"params\":{\"maxFields\":\"The maximum number of fields a Schema can handle.\",\"numFields\":\"The total number of fields in the field layout.\"}}],\"FieldLayout_TooManyFields(uint256,uint256)\":[{\"params\":{\"maxFields\":\"The maximum number of fields a Schema can handle.\",\"numFields\":\"The total number of fields in the field layout.\"}}],\"Module_MissingDependency(address)\":[{\"params\":{\"dependency\":\"The address of the dependency.\"}}],\"Schema_InvalidLength(uint256)\":[{\"params\":{\"length\":\"The length of the schema.\"}}],\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"details\":\"Raised if `start` is greater than `end` or `end` greater than the length of `data`.\",\"params\":{\"data\":\"The bytes array to subslice.\",\"end\":\"The end index for the subslice.\",\"start\":\"The start index for the subslice.\"}}],\"Store_InvalidFieldNamesLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidKeyNamesLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The resource ID.\",\"resourceIdString\":\"The stringified resource ID (for easier debugging).\"}}],\"Store_InvalidStaticDataLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidValueSchemaDynamicLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidValueSchemaLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidValueSchemaStaticLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_TableAlreadyExists(bytes32,string)\":[{\"params\":{\"tableId\":\"The ID of the table.\",\"tableIdString\":\"The stringified ID of the table (for easier debugging if cleartext tableIds are used).\"}}],\"World_AccessDenied(string,address)\":[{\"params\":{\"caller\":\"The address of the user trying to access the resource.\",\"resource\":\"The resource's identifier.\"}}]},\"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_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.\"}},\"installRoot(bytes)\":{\"details\":\"This function is invoked by the World contract during `installRootModule` process. The module expects to be called via the World contract and thus installs itself on the `msg.sender`.\",\"params\":{\"encodedArgs\":\"The ABI encoded arguments that may be needed during the installation process.\"}},\"supportsInterface(bytes4)\":{\"details\":\"Overrides the functionality from IERC165 and WorldContextConsumer to check for supported interfaces.\",\"params\":{\"interfaceId\":\"The bytes4 identifier for the interface.\"},\"returns\":{\"_0\":\"true if the interface is supported, false otherwise.\"}}},\"title\":\"MetadataModule\",\"version\":1},\"userdoc\":{\"errors\":{\"FieldLayout_Empty()\":[{\"notice\":\"Error raised when the provided field layout is empty.\"}],\"FieldLayout_InvalidStaticDataLength(uint256,uint256)\":[{\"notice\":\"Error raised when the provided field layout has an invalid static data length.\"}],\"FieldLayout_StaticLengthDoesNotFitInAWord(uint256)\":[{\"notice\":\"Error raised when the provided field layout has a static data length that does not fit in a word (32 bytes).\"}],\"FieldLayout_StaticLengthIsNotZero(uint256)\":[{\"notice\":\"Error raised when the provided field layout has a nonzero static data length.\"}],\"FieldLayout_StaticLengthIsZero(uint256)\":[{\"notice\":\"Error raised when the provided field layout has a static data length of zero.\"}],\"FieldLayout_TooManyDynamicFields(uint256,uint256)\":[{\"notice\":\"Error raised when the provided field layout has too many dynamic fields.\"}],\"FieldLayout_TooManyFields(uint256,uint256)\":[{\"notice\":\"Error raised when the provided field layout has too many fields.\"}],\"Module_AlreadyInstalled()\":[{\"notice\":\"Error raised if the provided module is already installed.\"}],\"Module_MissingDependency(address)\":[{\"notice\":\"Error raised if the provided module is missing a dependency.\"}],\"Module_NonRootInstallNotSupported()\":[{\"notice\":\"Error raised if installing in non-root is not supported.\"}],\"Module_RootInstallNotSupported()\":[{\"notice\":\"Error raised if installing in root is not supported.\"}],\"Schema_InvalidLength(uint256)\":[{\"notice\":\"Error raised when the provided schema has an invalid length.\"}],\"Schema_StaticTypeAfterDynamicType()\":[{\"notice\":\"Error raised when a static type is placed after a dynamic type in a schema.\"}],\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"notice\":\"Error raised when the provided slice is out of bounds.\"}],\"Store_InvalidFieldNamesLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided field names length is invalid.\"}],\"Store_InvalidKeyNamesLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided key names length is invalid.\"}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Error raised if the provided resource ID cannot be found.\"}],\"Store_InvalidStaticDataLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided static data length is invalid.\"}],\"Store_InvalidValueSchemaDynamicLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided schema dynamic length is invalid.\"}],\"Store_InvalidValueSchemaLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided value schema length is invalid.\"}],\"Store_InvalidValueSchemaStaticLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided schema static length is invalid.\"}],\"Store_TableAlreadyExists(bytes32,string)\":[{\"notice\":\"Error raised if the provided table already exists.\"}],\"World_AccessDenied(string,address)\":[{\"notice\":\"Raised when a user tries to access a resource they don't have permission for.\"}]},\"events\":{\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"notice\":\"Emitted when a new record is set in the store.\"},\"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.\"},\"installRoot(bytes)\":{\"notice\":\"Installs the module as a root module.\"},\"supportsInterface(bytes4)\":{\"notice\":\"Checks if the given interfaceId is supported by this contract.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/MetadataModule.sol\":\"MetadataModule\"},\"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\":\"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35\",\"dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6\"]},\"node_modules/@latticexyz/store/src/EncodedLengths.sol\":{\"keccak256\":\"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09\",\"dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7\",\"dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT\"]},\"node_modules/@latticexyz/store/src/Hook.sol\":{\"keccak256\":\"0xd016a2e1260f5a81ff9a8dfac58d7947e114414df8cce7302a2629908ea5f18e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0c558a6f3a5f540c0190fa6d642a094a185c5db1acfc2437c7dbde0340f00ac3\",\"dweb:/ipfs/QmViAHvR7U7HNfBiBZEMFiy1TTSHDFNiDzBfQSeLBShCky\"]},\"node_modules/@latticexyz/store/src/IERC165.sol\":{\"keccak256\":\"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2\",\"dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg\"]},\"node_modules/@latticexyz/store/src/IEncodedLengthsErrors.sol\":{\"keccak256\":\"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba\",\"dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1\"]},\"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol\":{\"keccak256\":\"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817\",\"dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8\"]},\"node_modules/@latticexyz/store/src/ISchemaErrors.sol\":{\"keccak256\":\"0x0ac3de36c9d0058a17fcd7f1a905132215fd16ea3ed3b5109de1de04ddd7c441\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f83fa2546009cfd16b3b3969dcec1d67c9d818d910177b885ba263b6a948c65d\",\"dweb:/ipfs/QmehywHdvFYBL9BTtoPsVVwJXsEA4Xjk8aPWoHw1R45KeY\"]},\"node_modules/@latticexyz/store/src/ISliceErrors.sol\":{\"keccak256\":\"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883\",\"dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0x42515d1410333a3573f78a460576271ef62c16edad5cf771ef6287b83ca1c706\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a58d03c4cf420df57d2b2e2e7932daad877e46e89561b46e1fa9f593a701bdc\",\"dweb:/ipfs/QmeFmKS7J1WqqBAgXkyxxx2fGA8JzuGszUmVsV2T6DYtsL\"]},\"node_modules/@latticexyz/store/src/IStoreErrors.sol\":{\"keccak256\":\"0x37e4d2f015dd4005ff9b3f711257c891027804bc268db1791984af4989951912\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a4a566ea96b69211f503707f69a9f9012d5873a3fd57b3f221549f46a7518df6\",\"dweb:/ipfs/QmVgcE3JufJr3iyeV6xqkvS4YtDcy6Eqyram2yzWUhwoB4\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08\",\"dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562\",\"dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p\"]},\"node_modules/@latticexyz/store/src/IStoreKernel.sol\":{\"keccak256\":\"0x37a23dcbabc5937a717f2fda636b6a97963ed4b5a96870a62dfb199a8b692f89\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac9741ea6daf21f39699be11afd919ae3ec07df24d948aaaa6549456fefd7fc0\",\"dweb:/ipfs/QmeiPQkZitM4Pc3i6L87thU71Fs1JVWAgMqXnSK8VrCq75\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xdcf28b3293d4d6c1fe2808a8918c1b2122e4e0e49f2793c79ebd2b9ae210ff7b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb3d9cc80f549ed0c5b768aea69fb1b3c364bd4f85d193a3040c411b594d94db\",\"dweb:/ipfs/QmYYdY5CjPHiW5ucXihTva1eHsCPNqBsvL6zYYafH3ap4p\"]},\"node_modules/@latticexyz/store/src/IStoreRegistration.sol\":{\"keccak256\":\"0x9e91a73f93cc9ebc00c265c83177f6a3f8a156749a9261202e2845e12aeaa96b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a39280d87d22dd0a959d8f55925cb092dba1fee2f11d3dd8e3ffabed45a9ab6a\",\"dweb:/ipfs/QmRMBFLJtT2KN43Xz9P3vUNWxXrP8rLTNBFw2P6Z7EGeaS\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890\",\"dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392\",\"dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x842b07f2ff9df2e1ecf9bf424b0e5a77e1471c983d674cf86b76c365178d6cc5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f4c2df8853b020aef1bb8615ac69d5512a9b5385b82c88e03b27dc521c9d007b\",\"dweb:/ipfs/QmWEDiJn69DvHsdrikrMWY8DERWPSeWwVYgPcunfq3yiT7\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x0d2a08030d21292ecbcc850d9111f3817d03f17cd5e02186894848a9152d79d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f30024c1613fb587aaba4c1dcb8e4e46ed765a2cebd5b63fbebd327d1bf13d3\",\"dweb:/ipfs/QmZzqSnPMYKDYwbFNvUFrvuazMUyQHzQ59w3A9x6juHAm7\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4\",\"dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7\"]},\"node_modules/@latticexyz/store/src/Storage.sol\":{\"keccak256\":\"0x7e735a4c7fa8b8a5fe2371d90801e3287ddb78efed69b31e1a76f0b7b153c4c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9e6db36bd52144b6feeecd91a58fc311127a3892fc96c4171db5b570fe9876ee\",\"dweb:/ipfs/QmS6LqnTZvpMc4eiz5JowBoNnh3RYemG6JHjqtYucT1rQi\"]},\"node_modules/@latticexyz/store/src/StoreCore.sol\":{\"keccak256\":\"0x9513dc38e5baadde0ba9b08320a324043b0e88a10702be5c3507da8c3d45e861\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://99c80c65a394763668e4aed69220fec6bb3ed847fb277ddd1ff1d4bfdf452da2\",\"dweb:/ipfs/QmRT2BATKtrYmixWMuWo9Cz8g8oscfLNSmvjxTyiTNA1pc\"]},\"node_modules/@latticexyz/store/src/StoreSwitch.sol\":{\"keccak256\":\"0x7edf7c1641408f3a580eb28bda58054583cb846f875608612671c6d40712ba40\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4146adef610d1daab085a81aa9f2d4fd8c4e5f459b9ef184f3ef23465573cf91\",\"dweb:/ipfs/QmQqZMsbkzSNG6VfYzQLdRCBCsNohBSVQmWoTP6QvKmKUP\"]},\"node_modules/@latticexyz/store/src/codegen/index.sol\":{\"keccak256\":\"0x094a6f1e2910b345b6b254e0fc2c8882b3190c673f7ee19742e857057a4d3f85\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18908e2e7e878635abea72ef99851fddd204371e6b641f010e831ebfa0b1bfd4\",\"dweb:/ipfs/QmSNAxXqxTrzPkZ4rSAQgBnuer1yLPq74hoqnzrZV3WGsb\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol\":{\"keccak256\":\"0xcc0fa969a57724e7a9184009e2b1ea8ecb209a06e283c6d2b6a15cabff35f39d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d91985b8f48fcb8259b776c10bc17a1656e8dbeaa15c0c0e73368af38e6cfc8a\",\"dweb:/ipfs/QmRiYbrXqqWcTrvwz95kN6ZiMhUBfLiUycxQiSGeZFDkuo\"]},\"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol\":{\"keccak256\":\"0xa52e8323cc7227d69a3c6b2e244b4e0face106eeaa5cf23e759b0278b0f4a7ab\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bf5d3ede2d114c26abe7b5268ed17aedb56d6ded91af19019ecebb75edf48b36\",\"dweb:/ipfs/QmWwqNFjqWFhfv8ABRXV9mbZBGumz741YCmVuQPqtiVZaD\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol\":{\"keccak256\":\"0x155aa0e073774674596a28371a3a863ad1d6c44d418140269d2982a45e40734b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c849ad6563c4afbdd7eec40042c9afa0d9919ece10c2acab390e358095ddd160\",\"dweb:/ipfs/QmbB7eVhKe3simEvugH18e1fBJKmwqionms3YWbWuRBDYV\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol\":{\"keccak256\":\"0x7930483bedccb95dd73447108e67d576924c83ec591cb70c699cdea7ebaabccc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5c23093bf098e8e1f224a0e20beb6860d461a5f8d33265d382e3d43bdc431080\",\"dweb:/ipfs/QmSQwjDCEgTUgUWajjETvCRJd18ZPRhYPyS6Rcg6wDizXw\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168\",\"dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu\"]},\"node_modules/@latticexyz/store/src/rightMask.sol\":{\"keccak256\":\"0x28887aab8ad5ca598927e59d702999ca6e3b3128f1cddd2b995a381c8d04b275\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7710847f4689b7f5b81436c7d52ae4395f244a2eebf8d398b2edd43accb06754\",\"dweb:/ipfs/QmTD2wYqryXTynHAn5Vf9wtjUUSGeCJWENZTnWtBAK38pa\"]},\"node_modules/@latticexyz/store/src/storeHookTypes.sol\":{\"keccak256\":\"0x4f29001e53690ce74fe405a6d0376a564c9c743d1631d36fab04331865e4d572\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://138c80abd63225a3eeb01ebfa1f9288e188a7ee5b2266b275fb4ed31b5aa30e3\",\"dweb:/ipfs/QmdEx9uHgCCbTcetGwFH5a66Ft7ajmrMDXvP1fW7WjnnE2\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0x1c4cb6b3ecf76f614479ab304d7de3ade0e99c7ccfd07717b57c92f699a27261\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2c9b0e0c9b3b5610d6fd65a8ffd7c54df390a34ccc70d58f4a055c49ad1ea586\",\"dweb:/ipfs/QmP6ffpnR7aRyvq9AiUkVNH6LbGfFP3NDq7E2n2PVcHhp2\"]},\"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol\":{\"keccak256\":\"0x310523f7f3acca841e62fe50be8d8b042cad5b3c239cb1105d6623cf83e63152\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1cc40ca233acf6502bc65677b381c05331dd7323953e54b5df969051e47f851e\",\"dweb:/ipfs/QmTxy9mhodT8drezB5K1kPR78AMaARomoJqDyaWpLuCKui\"]},\"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol\":{\"keccak256\":\"0x259ee545fd9dfd4767f0b7fef31f52fd3c54c4a1c6657d6fbda4927800c937b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0a4e31efa9f476cd267af7c3e11fe0151252206a1f6407a80a4092444c2de8ea\",\"dweb:/ipfs/QmRF4gWYw33mFTMh7nX8DJ1qzx3Ko6yMsnxubzYTRppdyo\"]},\"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol\":{\"keccak256\":\"0x0e74ff88ec94cb33f79d8afc1497c4fdccf02db40ab47f3701c7d02fc305d4d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://36b7cd0c2a3f2dcdc83ab7ac5a93f123746ce29c0f1000f2b275ad2c647ff0f3\",\"dweb:/ipfs/QmYdipHYUhHhS78wLdtmKZUK14FEwpto5mFy3rNeZssMLz\"]},\"node_modules/@latticexyz/store/src/version.sol\":{\"keccak256\":\"0x78c571906ee999ee7e56d4f7702b8a93c3a9e55e6b552aca115b5f6ac7f1c80a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a9f141b2d556b2a2545e7db5606e8a038679a995a22aeaf1702cb3a60320b60a\",\"dweb:/ipfs/QmY7x258Fhj3TT3RT4sNyyfiRphVYdZXhtAnSYpasJ4xVQ\"]},\"node_modules/@latticexyz/world/src/AccessControl.sol\":{\"keccak256\":\"0xad63bcf6f989720278b4b941cb3baca953d7da8064454323b99fb444c32e821e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://37d43a10ec0972a2e9a939f22542dda802aa0124e6ee46a60ec59749de88d54b\",\"dweb:/ipfs/QmVe6ALUGg7xzVUjgsYW25ANPeCaLZwL3tJW6t8pGZejA1\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7\",\"dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr\"]},\"node_modules/@latticexyz/world/src/IModule.sol\":{\"keccak256\":\"0xbb926cf64e685bbf2770d60124664cc84ab70bd3038e17a074f2d472c3fc2c57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://143c3dcbdf1702dd4f9c869629609386c12f7c0247e88a6d062dc4d519ebe0d2\",\"dweb:/ipfs/QmQJSDd8uFL4sssw9fb9NHo4s6zjuDUgmrLHj3zsJuhMo1\"]},\"node_modules/@latticexyz/world/src/IModuleErrors.sol\":{\"keccak256\":\"0x60917e029779c81cfea1f5140c389269e51d7adb78987f39101b9e0d7bdad12d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://513f41920d67ca28c3e0fe247403c28a4d342785192df449c99d5f92db04fcea\",\"dweb:/ipfs/QmeAG2TtxAgcJQR4QxftuSvQrxisYQ1i1GZoyd7oeFQBDJ\"]},\"node_modules/@latticexyz/world/src/ISystemHook.sol\":{\"keccak256\":\"0x81f1743d7ca6a9c7efc4997cf95e603ccb2070885265ca0e540f461aa7430721\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://93d99e78b541b33ecd501bf0cd407a78cef490fec8eaef2f188bddb9e293a99f\",\"dweb:/ipfs/QmPrcMDxwhvBZTr2AxoGqJA9L3Mjx27KBc98h3gXSsa3PM\"]},\"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol\":{\"keccak256\":\"0xb39e9d8cff4162e255f6c460ef9f9f0ad5b804627f745d967b2f10d0dd509299\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18d957cd87febccc00d82b9454047f0f5236250c9245befc0f57978671675255\",\"dweb:/ipfs/QmdZ1eXBd15vLpLVqTNJDAAaTzzucpRLD8GPJahLKT4J7x\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0x0abae6f4ed1b3070bddd0ed194c08b83a948b61ae959396202cf627bf1056a2b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a7037954f281cc0188a5aafc1d0cca0aabc110fd0234e6c43dca35ad69ed3baf\",\"dweb:/ipfs/Qmbv2nfK1qPpnoAbqNJFqWwo7AuyaX2ZEgZMFspMv7DR5B\"]},\"node_modules/@latticexyz/world/src/IWorldEvents.sol\":{\"keccak256\":\"0x39f6d8930db431c04158b85cc2a612c48d43dc81ec998f267076b12293c5d243\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d68f1543e5e166d639372d1aec57e3e193b5bb3b37270b6cb0488fab2c0ebe57\",\"dweb:/ipfs/QmdJUFDx87AHWFKP3jVrYg8xqAkiPfuT1M3tEotNt7KUoy\"]},\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":{\"keccak256\":\"0xdaa1e92439036e392fe79892819ae165732f416b831f84d38050ca3d958e549b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ea8dc52e31a62e8971322ea9ed8f2e83d562ec199d7f93a392c293e96ff7f092\",\"dweb:/ipfs/QmSbM8MgHbrJLYP7uzemfZeC4xctqdyKDbspwHUsgeeVJC\"]},\"node_modules/@latticexyz/world/src/Module.sol\":{\"keccak256\":\"0xa9d4361a51e59d1fbcebd8aad3539e89867156bd3826583765a5f3a5c93d71b8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be561f2913bf2c73039d2b168fe763371f7cd096951f5633e448f3825b30327a\",\"dweb:/ipfs/QmNM6zcZWiLg1BZKjj2VokU95ukWg1Ay6X1Mge8c1zc1jR\"]},\"node_modules/@latticexyz/world/src/System.sol\":{\"keccak256\":\"0xadcb32bdc444a4420909b738d81fa662dc63739455fe93d5aa89c93a3ccfd2dd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d303094c84ebfb0f9f114c54ff4dfc68bfa1e526d0ebe304be6fbeb7cb2f0d3f\",\"dweb:/ipfs/QmYvUx1mNDhkxZFqxLeswW3w9HkvVqeoJiJKj1HN1SB7Gi\"]},\"node_modules/@latticexyz/world/src/WorldContext.sol\":{\"keccak256\":\"0x82d853e8bb41328181ee04b5d2e2e9bb26ec4b167d698c46ca51832448c8aa66\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f805f13f57058c4f611c63a1b8176c59f333ee133677335bc323b22be4ab3a7a\",\"dweb:/ipfs/QmVEdRtdxBZuJo4K3WW9tSHiTLw1TS3r6Kfhn4YRu69KAx\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xaff9a22fac8a0f6eee5763b07a7ccb623c829d37922b85e42e914aad2ad417ee\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e598f0274d6d97c0a09806bf4fd1f0d054c310cf51b2123f5ce6380d6f3186ea\",\"dweb:/ipfs/QmaaVvqm21YsCgxozDyShcM17jKUXJhf2y26bk2YzPYZoM\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol\":{\"keccak256\":\"0xfae8c0039cbe627d30c1d3c96d5b5c979ea05ac744472a63c345e030be8773e3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42e034310f09682a2b52de0083f40e0aca75746bc4d4a738a72043c49ed2f52a\",\"dweb:/ipfs/QmTU2iSwXrJvLcLErmkBKxESxxpXhCAwUXxvG3AaHymJFy\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol\":{\"keccak256\":\"0xe57042e82311847c56fa569377ed84459bf55afccdd3123312a5dff90c1d06f4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://baf3258c9118bf16ba68ebcfecdb5e5ffc85d5c0cdc2815ca298283dfcff2c83\",\"dweb:/ipfs/QmcBVyUBR3PVejz7249VrEBMCMKHi72KoUXQ8DFmMmY48F\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol\":{\"keccak256\":\"0x6a4ef8460a4ba4acfa28f257578fef89bf0ad191d593b3499158e73138760bd9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1512d379b35f90288a7834389a2913a78a42b86a7052346e2ad82c0adbd4f895\",\"dweb:/ipfs/QmaUQjrXFQXR8F4LJqcBRgh5r3Q6KHmff3PrU2DVH8jEhv\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol\":{\"keccak256\":\"0x064f8e5de1d33dc43f8960c4511ab978f4f203db5be60b16455a33f81a44777b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7ad396e3c7f780a924ab1e908f1713c7fbb3a734ecdd65f4cd82cd8414d3fa02\",\"dweb:/ipfs/QmSRacmErXTjGpfdsS1AdjbAXjpxj1GgnXEsA1FFJuvx2q\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol\":{\"keccak256\":\"0x3e0400cba77c74f53f16357b20449cda64468b519c9bac437564af127766d45a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://75387dc13d9d87e76bd3df827494c0288f48899c77dcfca0eaaac6cf45dd630b\",\"dweb:/ipfs/QmVK2tDx8q6XxttCZheEdEcLpTdKkLxgw446vyv1ToN2p2\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol\":{\"keccak256\":\"0xe08d3af994098120b5507c71a1c3558763b8c1a88c6eae506aa438c2af78f800\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb0c47b16ff524140388765fe9ef99211dd7d9b9374dae09144a9956138de00c\",\"dweb:/ipfs/Qma8ibVu6WZs1hFW3hMnUykV3pPXGZhZ3xJwJXNj6Xu7aL\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol\":{\"keccak256\":\"0x4feb9f14aee9c9f94fc6df55d34c0c0e3994a3e6432817c07712cef729dee867\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f2878a201cda27f77091becd4591bf0d868c3b7e7a80cae852778b85a374a3b8\",\"dweb:/ipfs/QmcMoHjHjeKK5sqsa9ddJL63Dzy9ZLQ2gyNoyirKpsxkSh\"]},\"node_modules/@latticexyz/world/src/codegen/tables/InstalledModules.sol\":{\"keccak256\":\"0x50a1f277a00f01e3cb97a85f0fc624ae2192a726136720b6a900b465a7aecc05\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8f3cd87cc0b905d5b75d134d95176630404e76c0f0a343cbd17b8338e1492c0b\",\"dweb:/ipfs/QmURFDNBdUWgh57apX9n7VF68rSQeQrpc5to4FFV6bbJgN\"]},\"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol\":{\"keccak256\":\"0x3a53f395fc56398b4095c1e4016ad5f87d06236fc00f1fb85b9cfe138575b614\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9d91d30c8506a2d07bcafe0f8feff002bbc7764060d7e7bef7f15b9c4a97c597\",\"dweb:/ipfs/QmVTAxSh1JSMpKD1jmJSTvXbDZQubdJW2DQDoePWecJskH\"]},\"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol\":{\"keccak256\":\"0xb857dd63073a6469f5bb8deb6c0617763cd42c484821e247572c6b53bb1da3cc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://07c710d67440b98b145c1991623b7c8cc7f0805b4e6fa37a7d54afcece31239e\",\"dweb:/ipfs/Qmb368QqzbQGUttbDS7eVBGQ8KcXhiai2F9vy3Thyyk2vx\"]},\"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/types.sol\":{\"keccak256\":\"0x81b75eb286ec515bde6cbb16c3d089054abb530b744865bbace68343d23177bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://afc77bd51e24da666260bb48c44ff611869fb2e550921d732e5aac84a1f09525\",\"dweb:/ipfs/QmeU5N4yeRh5nEA65pvGtQQJNv1GvEPy4PkhMVRYRMoMvh\"]},\"node_modules/@latticexyz/world/src/revertWithBytes.sol\":{\"keccak256\":\"0xa1147f218a0152b153d4e8bada0f606bfed40ac1f184fd16a941c2d0033c53f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f5e0f6d1b51a3a04d4bd84537b2ced373b32824898cf6fbfd13ae1cbdf06359\",\"dweb:/ipfs/QmayYRmBZRUV9m4UnFxuC62VvHriXhkYXeH3HibZ3Gmxxf\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea\",\"dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk\"]},\"src/MetadataModule.sol\":{\"keccak256\":\"0xaf57ba3c94ab158fa0e676bef3f76c746a58306de3fa666ea7400d3ea15c9ba3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://918d4ff21eaa16de7e59ac7e0e405689240399b5b0eb9b47ad32daaca4b1c450\",\"dweb:/ipfs/Qme6aV4UktmxbcxnpBbgTQuGRBYpvbBDfP3AoYEmxRqxkw\"]},\"src/MetadataSystem.sol\":{\"keccak256\":\"0xa4ec3efeba4847707e677eb3315500373f7b9252898215c3d353cf72847cf3ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://29598508154acbc8b441cfc055ce11359d06b7f3d2959e7cf776584520e957cb\",\"dweb:/ipfs/QmfBNnVmw1kEcUeKtMsxXoudyvT4TWoGruALqRv963GzM4\"]},\"src/codegen/tables/ResourceTag.sol\":{\"keccak256\":\"0x1f0fa370e9c2af0e8ad09d85f8bdb6420c52cbcd6f3c1230d97c8d723dcc4678\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4deb7ea138d8626db70e3455d888354045979ed5810f9238f6c76843749c256c\",\"dweb:/ipfs/QmaukZ2P4HCpg1nQCo8oBKPCnEwDi1rPcZkquxT3aARDyD\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"FieldLayout_Empty"},{"inputs":[{"internalType":"uint256","name":"staticDataLength","type":"uint256"},{"internalType":"uint256","name":"computedStaticDataLength","type":"uint256"}],"type":"error","name":"FieldLayout_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayout_StaticLengthDoesNotFitInAWord"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayout_StaticLengthIsNotZero"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayout_StaticLengthIsZero"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayout_TooManyDynamicFields"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayout_TooManyFields"},{"inputs":[],"type":"error","name":"Module_AlreadyInstalled"},{"inputs":[{"internalType":"address","name":"dependency","type":"address"}],"type":"error","name":"Module_MissingDependency"},{"inputs":[],"type":"error","name":"Module_NonRootInstallNotSupported"},{"inputs":[],"type":"error","name":"Module_RootInstallNotSupported"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"Schema_InvalidLength"},{"inputs":[],"type":"error","name":"Schema_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":"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":"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":"string","name":"resource","type":"string"},{"internalType":"address","name":"caller","type":"address"}],"type":"error","name":"World_AccessDenied"},{"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":"EncodedLengths","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":"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":"bytes","name":"args","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"install"},{"inputs":[{"internalType":"bytes","name":"encodedArgs","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"installRoot"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"pure","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"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."}},"installRoot(bytes)":{"details":"This function is invoked by the World contract during `installRootModule` process. The module expects to be called via the World contract and thus installs itself on the `msg.sender`.","params":{"encodedArgs":"The ABI encoded arguments that may be needed during the installation process."}},"supportsInterface(bytes4)":{"details":"Overrides the functionality from IERC165 and WorldContextConsumer to check for supported interfaces.","params":{"interfaceId":"The bytes4 identifier for the interface."},"returns":{"_0":"true if the interface is supported, false otherwise."}}},"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."},"installRoot(bytes)":{"notice":"Installs the module as a root module."},"supportsInterface(bytes4)":{"notice":"Checks if the given interfaceId is supported by this contract."}},"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":{"src/MetadataModule.sol":"MetadataModule"},"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":"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8","urls":["bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35","dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6"],"license":"MIT"},"node_modules/@latticexyz/store/src/EncodedLengths.sol":{"keccak256":"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774","urls":["bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09","dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK"],"license":"MIT"},"node_modules/@latticexyz/store/src/FieldLayout.sol":{"keccak256":"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658","urls":["bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7","dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT"],"license":"MIT"},"node_modules/@latticexyz/store/src/Hook.sol":{"keccak256":"0xd016a2e1260f5a81ff9a8dfac58d7947e114414df8cce7302a2629908ea5f18e","urls":["bzz-raw://0c558a6f3a5f540c0190fa6d642a094a185c5db1acfc2437c7dbde0340f00ac3","dweb:/ipfs/QmViAHvR7U7HNfBiBZEMFiy1TTSHDFNiDzBfQSeLBShCky"],"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/IEncodedLengthsErrors.sol":{"keccak256":"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa","urls":["bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba","dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1"],"license":"MIT"},"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol":{"keccak256":"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53","urls":["bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817","dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8"],"license":"MIT"},"node_modules/@latticexyz/store/src/ISchemaErrors.sol":{"keccak256":"0x0ac3de36c9d0058a17fcd7f1a905132215fd16ea3ed3b5109de1de04ddd7c441","urls":["bzz-raw://f83fa2546009cfd16b3b3969dcec1d67c9d818d910177b885ba263b6a948c65d","dweb:/ipfs/QmehywHdvFYBL9BTtoPsVVwJXsEA4Xjk8aPWoHw1R45KeY"],"license":"MIT"},"node_modules/@latticexyz/store/src/ISliceErrors.sol":{"keccak256":"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c","urls":["bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883","dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStore.sol":{"keccak256":"0x42515d1410333a3573f78a460576271ef62c16edad5cf771ef6287b83ca1c706","urls":["bzz-raw://6a58d03c4cf420df57d2b2e2e7932daad877e46e89561b46e1fa9f593a701bdc","dweb:/ipfs/QmeFmKS7J1WqqBAgXkyxxx2fGA8JzuGszUmVsV2T6DYtsL"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreErrors.sol":{"keccak256":"0x37e4d2f015dd4005ff9b3f711257c891027804bc268db1791984af4989951912","urls":["bzz-raw://a4a566ea96b69211f503707f69a9f9012d5873a3fd57b3f221549f46a7518df6","dweb:/ipfs/QmVgcE3JufJr3iyeV6xqkvS4YtDcy6Eqyram2yzWUhwoB4"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreEvents.sol":{"keccak256":"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a","urls":["bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08","dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreHook.sol":{"keccak256":"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4","urls":["bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562","dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreKernel.sol":{"keccak256":"0x37a23dcbabc5937a717f2fda636b6a97963ed4b5a96870a62dfb199a8b692f89","urls":["bzz-raw://ac9741ea6daf21f39699be11afd919ae3ec07df24d948aaaa6549456fefd7fc0","dweb:/ipfs/QmeiPQkZitM4Pc3i6L87thU71Fs1JVWAgMqXnSK8VrCq75"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRead.sol":{"keccak256":"0xdcf28b3293d4d6c1fe2808a8918c1b2122e4e0e49f2793c79ebd2b9ae210ff7b","urls":["bzz-raw://bb3d9cc80f549ed0c5b768aea69fb1b3c364bd4f85d193a3040c411b594d94db","dweb:/ipfs/QmYYdY5CjPHiW5ucXihTva1eHsCPNqBsvL6zYYafH3ap4p"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRegistration.sol":{"keccak256":"0x9e91a73f93cc9ebc00c265c83177f6a3f8a156749a9261202e2845e12aeaa96b","urls":["bzz-raw://a39280d87d22dd0a959d8f55925cb092dba1fee2f11d3dd8e3ffabed45a9ab6a","dweb:/ipfs/QmRMBFLJtT2KN43Xz9P3vUNWxXrP8rLTNBFw2P6Z7EGeaS"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreWrite.sol":{"keccak256":"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba","urls":["bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890","dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ"],"license":"MIT"},"node_modules/@latticexyz/store/src/Memory.sol":{"keccak256":"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811","urls":["bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392","dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0x842b07f2ff9df2e1ecf9bf424b0e5a77e1471c983d674cf86b76c365178d6cc5","urls":["bzz-raw://f4c2df8853b020aef1bb8615ac69d5512a9b5385b82c88e03b27dc521c9d007b","dweb:/ipfs/QmWEDiJn69DvHsdrikrMWY8DERWPSeWwVYgPcunfq3yiT7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Schema.sol":{"keccak256":"0x0d2a08030d21292ecbcc850d9111f3817d03f17cd5e02186894848a9152d79d7","urls":["bzz-raw://3f30024c1613fb587aaba4c1dcb8e4e46ed765a2cebd5b63fbebd327d1bf13d3","dweb:/ipfs/QmZzqSnPMYKDYwbFNvUFrvuazMUyQHzQ59w3A9x6juHAm7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Slice.sol":{"keccak256":"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345","urls":["bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4","dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Storage.sol":{"keccak256":"0x7e735a4c7fa8b8a5fe2371d90801e3287ddb78efed69b31e1a76f0b7b153c4c3","urls":["bzz-raw://9e6db36bd52144b6feeecd91a58fc311127a3892fc96c4171db5b570fe9876ee","dweb:/ipfs/QmS6LqnTZvpMc4eiz5JowBoNnh3RYemG6JHjqtYucT1rQi"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreCore.sol":{"keccak256":"0x9513dc38e5baadde0ba9b08320a324043b0e88a10702be5c3507da8c3d45e861","urls":["bzz-raw://99c80c65a394763668e4aed69220fec6bb3ed847fb277ddd1ff1d4bfdf452da2","dweb:/ipfs/QmRT2BATKtrYmixWMuWo9Cz8g8oscfLNSmvjxTyiTNA1pc"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreSwitch.sol":{"keccak256":"0x7edf7c1641408f3a580eb28bda58054583cb846f875608612671c6d40712ba40","urls":["bzz-raw://4146adef610d1daab085a81aa9f2d4fd8c4e5f459b9ef184f3ef23465573cf91","dweb:/ipfs/QmQqZMsbkzSNG6VfYzQLdRCBCsNohBSVQmWoTP6QvKmKUP"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/index.sol":{"keccak256":"0x094a6f1e2910b345b6b254e0fc2c8882b3190c673f7ee19742e857057a4d3f85","urls":["bzz-raw://18908e2e7e878635abea72ef99851fddd204371e6b641f010e831ebfa0b1bfd4","dweb:/ipfs/QmSNAxXqxTrzPkZ4rSAQgBnuer1yLPq74hoqnzrZV3WGsb"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol":{"keccak256":"0xcc0fa969a57724e7a9184009e2b1ea8ecb209a06e283c6d2b6a15cabff35f39d","urls":["bzz-raw://d91985b8f48fcb8259b776c10bc17a1656e8dbeaa15c0c0e73368af38e6cfc8a","dweb:/ipfs/QmRiYbrXqqWcTrvwz95kN6ZiMhUBfLiUycxQiSGeZFDkuo"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol":{"keccak256":"0xa52e8323cc7227d69a3c6b2e244b4e0face106eeaa5cf23e759b0278b0f4a7ab","urls":["bzz-raw://bf5d3ede2d114c26abe7b5268ed17aedb56d6ded91af19019ecebb75edf48b36","dweb:/ipfs/QmWwqNFjqWFhfv8ABRXV9mbZBGumz741YCmVuQPqtiVZaD"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol":{"keccak256":"0x155aa0e073774674596a28371a3a863ad1d6c44d418140269d2982a45e40734b","urls":["bzz-raw://c849ad6563c4afbdd7eec40042c9afa0d9919ece10c2acab390e358095ddd160","dweb:/ipfs/QmbB7eVhKe3simEvugH18e1fBJKmwqionms3YWbWuRBDYV"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol":{"keccak256":"0x7930483bedccb95dd73447108e67d576924c83ec591cb70c699cdea7ebaabccc","urls":["bzz-raw://5c23093bf098e8e1f224a0e20beb6860d461a5f8d33265d382e3d43bdc431080","dweb:/ipfs/QmSQwjDCEgTUgUWajjETvCRJd18ZPRhYPyS6Rcg6wDizXw"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6","urls":["bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168","dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu"],"license":"MIT"},"node_modules/@latticexyz/store/src/rightMask.sol":{"keccak256":"0x28887aab8ad5ca598927e59d702999ca6e3b3128f1cddd2b995a381c8d04b275","urls":["bzz-raw://7710847f4689b7f5b81436c7d52ae4395f244a2eebf8d398b2edd43accb06754","dweb:/ipfs/QmTD2wYqryXTynHAn5Vf9wtjUUSGeCJWENZTnWtBAK38pa"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeHookTypes.sol":{"keccak256":"0x4f29001e53690ce74fe405a6d0376a564c9c743d1631d36fab04331865e4d572","urls":["bzz-raw://138c80abd63225a3eeb01ebfa1f9288e188a7ee5b2266b275fb4ed31b5aa30e3","dweb:/ipfs/QmdEx9uHgCCbTcetGwFH5a66Ft7ajmrMDXvP1fW7WjnnE2"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeResourceTypes.sol":{"keccak256":"0x1c4cb6b3ecf76f614479ab304d7de3ade0e99c7ccfd07717b57c92f699a27261","urls":["bzz-raw://2c9b0e0c9b3b5610d6fd65a8ffd7c54df390a34ccc70d58f4a055c49ad1ea586","dweb:/ipfs/QmP6ffpnR7aRyvq9AiUkVNH6LbGfFP3NDq7E2n2PVcHhp2"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol":{"keccak256":"0x310523f7f3acca841e62fe50be8d8b042cad5b3c239cb1105d6623cf83e63152","urls":["bzz-raw://1cc40ca233acf6502bc65677b381c05331dd7323953e54b5df969051e47f851e","dweb:/ipfs/QmTxy9mhodT8drezB5K1kPR78AMaARomoJqDyaWpLuCKui"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol":{"keccak256":"0x259ee545fd9dfd4767f0b7fef31f52fd3c54c4a1c6657d6fbda4927800c937b3","urls":["bzz-raw://0a4e31efa9f476cd267af7c3e11fe0151252206a1f6407a80a4092444c2de8ea","dweb:/ipfs/QmRF4gWYw33mFTMh7nX8DJ1qzx3Ko6yMsnxubzYTRppdyo"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol":{"keccak256":"0x0e74ff88ec94cb33f79d8afc1497c4fdccf02db40ab47f3701c7d02fc305d4d8","urls":["bzz-raw://36b7cd0c2a3f2dcdc83ab7ac5a93f123746ce29c0f1000f2b275ad2c647ff0f3","dweb:/ipfs/QmYdipHYUhHhS78wLdtmKZUK14FEwpto5mFy3rNeZssMLz"],"license":"MIT"},"node_modules/@latticexyz/store/src/version.sol":{"keccak256":"0x78c571906ee999ee7e56d4f7702b8a93c3a9e55e6b552aca115b5f6ac7f1c80a","urls":["bzz-raw://a9f141b2d556b2a2545e7db5606e8a038679a995a22aeaf1702cb3a60320b60a","dweb:/ipfs/QmY7x258Fhj3TT3RT4sNyyfiRphVYdZXhtAnSYpasJ4xVQ"],"license":"MIT"},"node_modules/@latticexyz/world/src/AccessControl.sol":{"keccak256":"0xad63bcf6f989720278b4b941cb3baca953d7da8064454323b99fb444c32e821e","urls":["bzz-raw://37d43a10ec0972a2e9a939f22542dda802aa0124e6ee46a60ec59749de88d54b","dweb:/ipfs/QmVe6ALUGg7xzVUjgsYW25ANPeCaLZwL3tJW6t8pGZejA1"],"license":"MIT"},"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d","urls":["bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7","dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr"],"license":"MIT"},"node_modules/@latticexyz/world/src/IModule.sol":{"keccak256":"0xbb926cf64e685bbf2770d60124664cc84ab70bd3038e17a074f2d472c3fc2c57","urls":["bzz-raw://143c3dcbdf1702dd4f9c869629609386c12f7c0247e88a6d062dc4d519ebe0d2","dweb:/ipfs/QmQJSDd8uFL4sssw9fb9NHo4s6zjuDUgmrLHj3zsJuhMo1"],"license":"MIT"},"node_modules/@latticexyz/world/src/IModuleErrors.sol":{"keccak256":"0x60917e029779c81cfea1f5140c389269e51d7adb78987f39101b9e0d7bdad12d","urls":["bzz-raw://513f41920d67ca28c3e0fe247403c28a4d342785192df449c99d5f92db04fcea","dweb:/ipfs/QmeAG2TtxAgcJQR4QxftuSvQrxisYQ1i1GZoyd7oeFQBDJ"],"license":"MIT"},"node_modules/@latticexyz/world/src/ISystemHook.sol":{"keccak256":"0x81f1743d7ca6a9c7efc4997cf95e603ccb2070885265ca0e540f461aa7430721","urls":["bzz-raw://93d99e78b541b33ecd501bf0cd407a78cef490fec8eaef2f188bddb9e293a99f","dweb:/ipfs/QmPrcMDxwhvBZTr2AxoGqJA9L3Mjx27KBc98h3gXSsa3PM"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol":{"keccak256":"0xb39e9d8cff4162e255f6c460ef9f9f0ad5b804627f745d967b2f10d0dd509299","urls":["bzz-raw://18d957cd87febccc00d82b9454047f0f5236250c9245befc0f57978671675255","dweb:/ipfs/QmdZ1eXBd15vLpLVqTNJDAAaTzzucpRLD8GPJahLKT4J7x"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldErrors.sol":{"keccak256":"0x0abae6f4ed1b3070bddd0ed194c08b83a948b61ae959396202cf627bf1056a2b","urls":["bzz-raw://a7037954f281cc0188a5aafc1d0cca0aabc110fd0234e6c43dca35ad69ed3baf","dweb:/ipfs/Qmbv2nfK1qPpnoAbqNJFqWwo7AuyaX2ZEgZMFspMv7DR5B"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldEvents.sol":{"keccak256":"0x39f6d8930db431c04158b85cc2a612c48d43dc81ec998f267076b12293c5d243","urls":["bzz-raw://d68f1543e5e166d639372d1aec57e3e193b5bb3b37270b6cb0488fab2c0ebe57","dweb:/ipfs/QmdJUFDx87AHWFKP3jVrYg8xqAkiPfuT1M3tEotNt7KUoy"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldKernel.sol":{"keccak256":"0xdaa1e92439036e392fe79892819ae165732f416b831f84d38050ca3d958e549b","urls":["bzz-raw://ea8dc52e31a62e8971322ea9ed8f2e83d562ec199d7f93a392c293e96ff7f092","dweb:/ipfs/QmSbM8MgHbrJLYP7uzemfZeC4xctqdyKDbspwHUsgeeVJC"],"license":"MIT"},"node_modules/@latticexyz/world/src/Module.sol":{"keccak256":"0xa9d4361a51e59d1fbcebd8aad3539e89867156bd3826583765a5f3a5c93d71b8","urls":["bzz-raw://be561f2913bf2c73039d2b168fe763371f7cd096951f5633e448f3825b30327a","dweb:/ipfs/QmNM6zcZWiLg1BZKjj2VokU95ukWg1Ay6X1Mge8c1zc1jR"],"license":"MIT"},"node_modules/@latticexyz/world/src/System.sol":{"keccak256":"0xadcb32bdc444a4420909b738d81fa662dc63739455fe93d5aa89c93a3ccfd2dd","urls":["bzz-raw://d303094c84ebfb0f9f114c54ff4dfc68bfa1e526d0ebe304be6fbeb7cb2f0d3f","dweb:/ipfs/QmYvUx1mNDhkxZFqxLeswW3w9HkvVqeoJiJKj1HN1SB7Gi"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldContext.sol":{"keccak256":"0x82d853e8bb41328181ee04b5d2e2e9bb26ec4b167d698c46ca51832448c8aa66","urls":["bzz-raw://f805f13f57058c4f611c63a1b8176c59f333ee133677335bc323b22be4ab3a7a","dweb:/ipfs/QmVEdRtdxBZuJo4K3WW9tSHiTLw1TS3r6Kfhn4YRu69KAx"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldResourceId.sol":{"keccak256":"0xaff9a22fac8a0f6eee5763b07a7ccb623c829d37922b85e42e914aad2ad417ee","urls":["bzz-raw://e598f0274d6d97c0a09806bf4fd1f0d054c310cf51b2123f5ce6380d6f3186ea","dweb:/ipfs/QmaaVvqm21YsCgxozDyShcM17jKUXJhf2y26bk2YzPYZoM"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol":{"keccak256":"0xfae8c0039cbe627d30c1d3c96d5b5c979ea05ac744472a63c345e030be8773e3","urls":["bzz-raw://42e034310f09682a2b52de0083f40e0aca75746bc4d4a738a72043c49ed2f52a","dweb:/ipfs/QmTU2iSwXrJvLcLErmkBKxESxxpXhCAwUXxvG3AaHymJFy"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol":{"keccak256":"0xe57042e82311847c56fa569377ed84459bf55afccdd3123312a5dff90c1d06f4","urls":["bzz-raw://baf3258c9118bf16ba68ebcfecdb5e5ffc85d5c0cdc2815ca298283dfcff2c83","dweb:/ipfs/QmcBVyUBR3PVejz7249VrEBMCMKHi72KoUXQ8DFmMmY48F"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol":{"keccak256":"0x6a4ef8460a4ba4acfa28f257578fef89bf0ad191d593b3499158e73138760bd9","urls":["bzz-raw://1512d379b35f90288a7834389a2913a78a42b86a7052346e2ad82c0adbd4f895","dweb:/ipfs/QmaUQjrXFQXR8F4LJqcBRgh5r3Q6KHmff3PrU2DVH8jEhv"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol":{"keccak256":"0x064f8e5de1d33dc43f8960c4511ab978f4f203db5be60b16455a33f81a44777b","urls":["bzz-raw://7ad396e3c7f780a924ab1e908f1713c7fbb3a734ecdd65f4cd82cd8414d3fa02","dweb:/ipfs/QmSRacmErXTjGpfdsS1AdjbAXjpxj1GgnXEsA1FFJuvx2q"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol":{"keccak256":"0x3e0400cba77c74f53f16357b20449cda64468b519c9bac437564af127766d45a","urls":["bzz-raw://75387dc13d9d87e76bd3df827494c0288f48899c77dcfca0eaaac6cf45dd630b","dweb:/ipfs/QmVK2tDx8q6XxttCZheEdEcLpTdKkLxgw446vyv1ToN2p2"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol":{"keccak256":"0xe08d3af994098120b5507c71a1c3558763b8c1a88c6eae506aa438c2af78f800","urls":["bzz-raw://bb0c47b16ff524140388765fe9ef99211dd7d9b9374dae09144a9956138de00c","dweb:/ipfs/Qma8ibVu6WZs1hFW3hMnUykV3pPXGZhZ3xJwJXNj6Xu7aL"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol":{"keccak256":"0x4feb9f14aee9c9f94fc6df55d34c0c0e3994a3e6432817c07712cef729dee867","urls":["bzz-raw://f2878a201cda27f77091becd4591bf0d868c3b7e7a80cae852778b85a374a3b8","dweb:/ipfs/QmcMoHjHjeKK5sqsa9ddJL63Dzy9ZLQ2gyNoyirKpsxkSh"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/InstalledModules.sol":{"keccak256":"0x50a1f277a00f01e3cb97a85f0fc624ae2192a726136720b6a900b465a7aecc05","urls":["bzz-raw://8f3cd87cc0b905d5b75d134d95176630404e76c0f0a343cbd17b8338e1492c0b","dweb:/ipfs/QmURFDNBdUWgh57apX9n7VF68rSQeQrpc5to4FFV6bbJgN"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol":{"keccak256":"0x3a53f395fc56398b4095c1e4016ad5f87d06236fc00f1fb85b9cfe138575b614","urls":["bzz-raw://9d91d30c8506a2d07bcafe0f8feff002bbc7764060d7e7bef7f15b9c4a97c597","dweb:/ipfs/QmVTAxSh1JSMpKD1jmJSTvXbDZQubdJW2DQDoePWecJskH"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol":{"keccak256":"0xb857dd63073a6469f5bb8deb6c0617763cd42c484821e247572c6b53bb1da3cc","urls":["bzz-raw://07c710d67440b98b145c1991623b7c8cc7f0805b4e6fa37a7d54afcece31239e","dweb:/ipfs/Qmb368QqzbQGUttbDS7eVBGQ8KcXhiai2F9vy3Thyyk2vx"],"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/types.sol":{"keccak256":"0x81b75eb286ec515bde6cbb16c3d089054abb530b744865bbace68343d23177bc","urls":["bzz-raw://afc77bd51e24da666260bb48c44ff611869fb2e550921d732e5aac84a1f09525","dweb:/ipfs/QmeU5N4yeRh5nEA65pvGtQQJNv1GvEPy4PkhMVRYRMoMvh"],"license":"MIT"},"node_modules/@latticexyz/world/src/revertWithBytes.sol":{"keccak256":"0xa1147f218a0152b153d4e8bada0f606bfed40ac1f184fd16a941c2d0033c53f5","urls":["bzz-raw://3f5e0f6d1b51a3a04d4bd84537b2ced373b32824898cf6fbfd13ae1cbdf06359","dweb:/ipfs/QmayYRmBZRUV9m4UnFxuC62VvHriXhkYXeH3HibZ3Gmxxf"],"license":"MIT"},"node_modules/@latticexyz/world/src/worldResourceTypes.sol":{"keccak256":"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465","urls":["bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea","dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk"],"license":"MIT"},"src/MetadataModule.sol":{"keccak256":"0xaf57ba3c94ab158fa0e676bef3f76c746a58306de3fa666ea7400d3ea15c9ba3","urls":["bzz-raw://918d4ff21eaa16de7e59ac7e0e405689240399b5b0eb9b47ad32daaca4b1c450","dweb:/ipfs/Qme6aV4UktmxbcxnpBbgTQuGRBYpvbBDfP3AoYEmxRqxkw"],"license":"MIT"},"src/MetadataSystem.sol":{"keccak256":"0xa4ec3efeba4847707e677eb3315500373f7b9252898215c3d353cf72847cf3ef","urls":["bzz-raw://29598508154acbc8b441cfc055ce11359d06b7f3d2959e7cf776584520e957cb","dweb:/ipfs/QmfBNnVmw1kEcUeKtMsxXoudyvT4TWoGruALqRv963GzM4"],"license":"MIT"},"src/codegen/tables/ResourceTag.sol":{"keccak256":"0x1f0fa370e9c2af0e8ad09d85f8bdb6420c52cbcd6f3c1230d97c8d723dcc4678","urls":["bzz-raw://4deb7ea138d8626db70e3455d888354045979ed5810f9238f6c76843749c256c","dweb:/ipfs/QmaukZ2P4HCpg1nQCo8oBKPCnEwDi1rPcZkquxT3aARDyD"],"license":"MIT"}},"version":1},"id":119}