{"abi":[{"type":"constructor","inputs":[],"stateMutability":"nonpayable"},{"type":"fallback","stateMutability":"payable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"call","inputs":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"callData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"payable"},{"type":"function","name":"callFrom","inputs":[{"name":"delegator","type":"address","internalType":"address"},{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"callData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"payable"},{"type":"function","name":"callStatic","inputs":[{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"callData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"creator","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"deleteRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"data","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getDynamicFieldLength","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getDynamicFieldSlice","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"data","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"data","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getFieldLayout","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"}],"outputs":[{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"stateMutability":"view"},{"type":"function","name":"getFieldLength","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getFieldLength","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getKeySchema","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"}],"outputs":[{"name":"keySchema","type":"bytes32","internalType":"Schema"}],"stateMutability":"view"},{"type":"function","name":"getRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"staticData","type":"bytes","internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[{"name":"staticData","type":"bytes","internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getStaticField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"data","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getValueSchema","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"}],"outputs":[{"name":"valueSchema","type":"bytes32","internalType":"Schema"}],"stateMutability":"view"},{"type":"function","name":"getWorldCallContext","inputs":[{"name":"callCount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bytes32","internalType":"ResourceId"},{"name":"","type":"bytes4","internalType":"bytes4"},{"name":"","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getWorldCallContext","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"ResourceId"},{"name":"","type":"bytes4","internalType":"bytes4"},{"name":"","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getWorldCallCount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"initModule","type":"address","internalType":"contract IModule"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"installRootModule","inputs":[{"name":"module","type":"address","internalType":"contract IModule"},{"name":"encodedArgs","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"popFromDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"byteLengthToPop","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"pushToDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"dataToPush","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"staticData","type":"bytes","internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStaticField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"spliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"spliceStaticData","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"start","type":"uint48","internalType":"uint48"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"staticCallCheck","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"storeVersion","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"pure"},{"type":"function","name":"worldVersion","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"pure"},{"type":"event","name":"HelloStore","inputs":[{"name":"storeVersion","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"HelloWorld","inputs":[{"name":"worldVersion","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"Store_DeleteRecord","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"}],"anonymous":false},{"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_SpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","indexed":false,"internalType":"uint8"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"deleteCount","type":"uint40","indexed":false,"internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"EncodedLengths"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Store_SpliceStaticData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"error","name":"EncodedLengths_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"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_IndexOutOfBounds","inputs":[{"name":"length","type":"uint256","internalType":"uint256"},{"name":"accessedIndex","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidBounds","inputs":[{"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_InvalidSplice","inputs":[{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"fieldLength","type":"uint40","internalType":"uint40"}]},{"type":"error","name":"Store_InvalidStaticDataLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaDynamicLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaStaticLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_TableAlreadyExists","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"tableIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_TableNotFound","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"tableIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_AccessDenied","inputs":[{"name":"resource","type":"string","internalType":"string"},{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"World_AlreadyInitialized","inputs":[]},{"type":"error","name":"World_CallbackNotAllowed","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_DelegationNotFound","inputs":[{"name":"delegator","type":"address","internalType":"address"},{"name":"delegatee","type":"address","internalType":"address"}]},{"type":"error","name":"World_FunctionSelectorAlreadyExists","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_FunctionSelectorNotFound","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_InsufficientBalance","inputs":[{"name":"balance","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"World_InterfaceNotSupported","inputs":[{"name":"contractAddress","type":"address","internalType":"address"},{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_InvalidNamespace","inputs":[{"name":"namespace","type":"bytes14","internalType":"bytes14"}]},{"type":"error","name":"World_InvalidResourceId","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_ResourceAlreadyExists","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_ResourceNotFound","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_SystemAlreadyExists","inputs":[{"name":"system","type":"address","internalType":"address"}]},{"type":"error","name":"World_UnlimitedDelegationNotAllowed","inputs":[]}],"bytecode":{"object":"0x60a060405234801561000f575f80fd5b506100467f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e17580546001600160a01b03191630179055565b60405164191718171960d91b907fc7f5fdc8526b76f54916701bc910876243ffff2a40b0bb8d59eea8151c52c005905f90a23360805260405164191718171960d91b907f7f8f36afe3fb61c459c1a54a60b8a477eab02cc58e49f547561a40906239cb82905f90a2608051614f15620000ce5f395f81816103f1015261164f0152614f155ff3fe608060405260043610610207575f3560e01c8063894ecc5811610117578063c11222291161009f578063d4285dc21161006e578063d4285dc2146107eb578063d9c03a041461080a578063dbbf0e2114610829578063e228a4a314610848578063ef6ea862146108675761028f565b8063c1122229146105e9578063c4d66de81461078e578063cc49db7e146107ad578063d03edb8c146107cc5761028f565b8063a53417ed116100e6578063a53417ed146106e3578063af068c9e14610702578063afdb73d414610721578063b047c1eb14610750578063c0a2895a1461076f5761028f565b8063894ecc58146106735780638c364d591461068657806396f0f0cd146106a55780639f1fcf0a146106c45761028f565b8063390baae01161019a578063489f6a9211610169578063489f6a92146105985780634dc77d97146105ab578063505a181d146105ca5780636951955d146105e957806387ce4598146106035761028f565b8063390baae01461050b5780633a77c2c21461052a5780633ae7af0814610557578063419b58fd1461056a5761028f565b80631e788977116101d65780631e7889771461049a5780631e8545ff146104b9578063298314fb146104cd5780633708196e146104ec5761028f565b806302d05d3f146103e057806305242d2f14610430578063114a72661461045c578063150f32621461047b5761028f565b3661028f575f610247616e7360f01b5f8060405160200161022a93929190614084565b604051602081830303815290604052610242906140ba565b610886565b905061028d616e7360f01b5f8060405160200161026693929190614084565b60405160208183030381529060405261027e906140ba565b61028834846140f4565b6108ff565b005b3033036102c1576040516327a1460b60e21b81526001600160e01b03195f351660048201526024015b60405180910390fd5b5f806102d75f356001600160e01b031916610997565b91509150815f801b0361030a57604051637eef2a7160e11b81526001600160e01b03195f351660048201526024016102b8565b5f61034b5f368080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509250869150610a389050565b90506060306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b158015610387575f80fd5b505af1925050508015610398575060015b6103af576103a833858434610a56565b90506103d8565b6103c233856103bd85614107565b610a82565b6103ce33858434610a56565b90506103d8610ac7565b805160208201f35b3480156103eb575f80fd5b506104137f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561043b575f80fd5b5061044f61044a366004614195565b610aef565b6040516104279190614242565b348015610467575f80fd5b5061028d610476366004614291565b610b31565b348015610486575f80fd5b5061028d610495366004614291565b610be1565b3480156104a5575f80fd5b5061044f6104b4366004614317565b610c89565b3480156104c4575f80fd5b5061028d610cd2565b3480156104d8575f80fd5b5061028d6104e7366004614370565b610cda565b3480156104f7575f80fd5b5061028d610506366004614414565b610dbf565b348015610516575f80fd5b5061028d610525366004614414565b610e72565b348015610535575f80fd5b506105496105443660046144a2565b610f1c565b604051908152602001610427565b61044f610565366004614568565b610f2c565b348015610575575f80fd5b506105896105843660046145ab565b610fe0565b604051610427939291906145f9565b3480156105a3575f80fd5b505f5c610549565b3480156105b6575f80fd5b5061044f6105c5366004614694565b611033565b3480156105d5575f80fd5b5061028d6105e43660046146f7565b611042565b3480156105f4575f80fd5b5064191718171960d91b610549565b34801561060e575f80fd5b5061063c61061d3660046144a2565b5f19016004908102600181015c92600282015c92600383015c92015c90565b604080519485526001600160e01b031990931660208501526001600160a01b03909116918301919091526060820152608001610427565b61044f610681366004614752565b6110b5565b348015610691575f80fd5b506105496106a0366004614195565b6113ba565b3480156106b0575f80fd5b5061044f6106bf366004614568565b6113fb565b3480156106cf575f80fd5b506105496106de3660046147a6565b611435565b3480156106ee575f80fd5b506105496106fd366004614800565b611442565b34801561070d575f80fd5b5061028d61071c366004614852565b61144e565b34801561072c575f80fd5b505f195f5c016004908102600181015c91600282015c91600381015c91015c61063c565b34801561075b575f80fd5b5061028d61076a366004614888565b6114c4565b34801561077a575f80fd5b5061028d61078936600461490e565b61156c565b348015610799575f80fd5b5061028d6107a8366004614993565b611617565b3480156107b8575f80fd5b506105896107c73660046146f7565b61171f565b3480156107d7575f80fd5b5061044f6107e6366004614317565b61176f565b3480156107f6575f80fd5b506105496108053660046144a2565b6117af565b348015610815575f80fd5b5061028d610824366004614195565b6117b9565b348015610834575f80fd5b50610549610843366004614800565b611837565b348015610853575f80fd5b506105496108623660046144a2565b611843565b348015610872575f80fd5b5061028d610881366004614291565b61184d565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f815181106108bd576108bd6149ae565b60209081029190910101525f6108f7777462776f726c6400000000000000000042616c616e63657360401b8383630100080160dd1b6118f5565b949350505050565b6040805160018082528183019092525f916020808301908036833701905050905082815f81518110610933576109336149ae565b602002602001018181525050610992777462776f726c6400000000000000000042616c616e63657360401b5f1b825f8560405160200161097591815260200190565b60408051601f19818403018152919052630100080160dd1b611921565b505050565b6040805160018082528183019092525f918291829160208083019080368337019050509050836001600160e01b031916815f815181106109d9576109d96149ae565b60209081029190910101525f8080610a1a7f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f728564090080080160d21b611936565b925092509250610a2b838383611a36565b9550955050505050915091565b82820160200180516001600160e01b031682179052825b9392505050565b60605f80610a6687878787611a4d565b9150915081610a7857610a7881611bd3565b9695505050505050565b816001600160a01b038416345f5c60048082026001810191600282019160038101910187845d88835d86825d85815d50505050600181019050805f5d50505050505050565b5f5c8060021b5f600182015d5f600282015d5f600382015d5f600482015d505f1981015f5d50565b6060610a78868686808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250889250879150611bdb9050565b303303610b5e576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610b688633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f92019190915250611c5392505050565b505050505050565b303303610c0e576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610c188633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f92019190915250611c6e92505050565b6060610cc9858585808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250879250611ca6915050565b95945050505050565b5f195f815d50565b303303610d07576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610d118833611c20565b610db5888888808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8c018190048102820181019092528a815292508a91508990819084018382808284375f9201919091525050604080516020601f8a018190048102820181019092528881528a9350915088908890819084018382808284375f92019190915250611cdf92505050565b5050505050505050565b303303610dec576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610df68733611c20565b610e69878787808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8a018190048102820181019092528881528a9350915088908890819084018382808284375f92019190915250889250611cf5915050565b50505050505050565b303303610e9f576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610ea98733611c20565b610e69878787808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8a018190048102820181019092528881528a9350915088908890819084018382808284375f92019190915250889250611921915050565b5f610f2682611d38565b92915050565b6060303303610f5b576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b158015610f93575f80fd5b505af1925050508015610fa4575060015b610fbb57610fb433848434610a56565b9050610f26565b610fc933846103bd85614107565b5f610fd633858534610a56565b9050610a4f610ac7565b60605f6060611023878787808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250899250611936915050565b9250925092509450945094915050565b6060610a788686868686611d9e565b30330361106f576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6110798333611c20565b610992838383808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250611e6c92505050565b60603033036110e4576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b336001600160a01b0385160361117957306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b15801561112c575f80fd5b505af192505050801561113d575060015b6111545761114d33848434610a56565b9050610a4f565b61116233846103bd85614107565b5f61116f33858534610a56565b905061114d610ac7565b5f6111848533611e7f565b90506111938186338787611f2b565b1561122757306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b1580156111d0575f80fd5b505af19250505080156111e1575060015b6111f9576111f185858534610a56565b915050610a4f565b61120785856103bd86614107565b5f61121486868634610a56565b905061121e610ac7565b9150610a4f9050565b5f611232865f611e7f565b90506112418187338888611f2b565b156112d757306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b15801561127e575f80fd5b505af192505050801561128f575060015b6112a85761129f86868634610a56565b92505050610a4f565b6112b686866103bd87614107565b5f6112c387878734610a56565b90506112cd610ac7565b9250610a4f915050565b5f6112e96112e487611fcd565b611fea565b90506112f88188338989611f2b565b1561139057306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b158015611335575f80fd5b505af1925050508015611346575060015b6113605761135687878734610a56565b9350505050610a4f565b61136e87876103bd88614107565b5f61137b88888834610a56565b9050611385610ac7565b9350610a4f92505050565b60405163c86745f960e01b81526001600160a01b03881660048201523360248201526044016102b8565b5f610a78868686808060200260200160405190810160405280939291908181526020018383602002808284375f920191909152508892508791506118f59050565b606030330361142a576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610a4f338484612060565b5f610cc985858585612081565b5f6108f78484846120c8565b30330361147b576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6114b6616e7360f01b5f8060405160200161149893929190614084565b6040516020818303038152906040526114b0906140ba565b336120dd565b6114c0828261210f565b5050565b3033036114f1576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6114fb8633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f9201919091525061217992505050565b303303611599576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6115a38833611c20565b610db5888888808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f89018190048102820181019092528781528b93508a9250899189908990819084018382808284375f9201919091525061239792505050565b303303611644576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146116ca576116ae616e7360f01b5f8060405160200161169193929190614084565b6040516020818303038152906040526116a9906140ba565b6123af565b3360405163d787b73760e01b81526004016102b89291906149c2565b5f6116d3612475565b6001600160a01b0316146116fa576040516302bc694960e31b815260040160405180910390fd5b611703816124c2565b604080515f81526020810190915261171c90829061210f565b50565b60605f6060611760868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525061253192505050565b92509250925093509350939050565b6060610cc9858585808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250879250612556915050565b5f610f268261256c565b3033036117e6576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6117f08533611c20565b611830858585808060200260200160405190810160405280939291908181526020018383602002808284375f920191909152508792508691506125c69050565b5050505050565b5f6108f784848461261c565b5f610f268261262b565b30330361187a576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6118848633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f9201919091525061265092505050565b5f610cc96119038686612688565b60ff858116601b0360080285901c1661191c85876126dd565b612715565b611830858561193084876126dd565b85612179565b60605f60605f61194585612765565b9050611952878783612787565b93505f61195e866127bc565b90508015611a2b5761197088886127f8565b935066ffffffffffffff84166001600160401b03811115611993576119936144b9565b6040519080825280601f01601f1916602001820160405280156119bd576020820181803683370190505b509250602083015f5b828160ff161015611a28575f6119dd8b8b8461280a565b90505f6119f9888460ff166028026038011c64ffffffffff1690565b9050611a07825f8387612870565b611a1181856140f4565b935050508080611a20906149ec565b9150506119c6565b50505b505093509350939050565b5f80611a4185612937565b90969095509350505050565b5f60605f611a5a8661294b565b90505f5b8151811015611b09575f828281518110611a7a57611a7a6149ae565b60200260200101519050611aa26001826001600160581b0319166129d090919063ffffffff16565b15611b005760405163c332303160e01b8152606082901c9063c332303190611ad2908c908c908c90600401614a0a565b5f604051808303815f87803b158015611ae9575f80fd5b505af1158015611afb573d5f803e3d5ffd5b505050505b50600101611a5e565b50611b16878588886129ed565b90935091505f5b8151811015611bc8575f828281518110611b3957611b396149ae565b60200260200101519050611b616002826001600160581b0319166129d090919063ffffffff16565b15611bbf5760405163973d8f9960e01b8152606082901c9063973d8f9990611b91908c908c908c90600401614a0a565b5f604051808303815f87803b158015611ba8575f80fd5b505af1158015611bba573d5f803e3d5ffd5b505050505b50600101611b1d565b505094509492505050565b805160208201fd5b6060611be682612ab7565b8360ff161015611c0357611bfc85858585612ac8565b90506108f7565b611bfc8585611c1185612ab7565b611c1b9087614a31565b611ca6565b611c2a8282612af5565b6114c057611c37826123af565b8160405163d787b73760e01b81526004016102b89291906149c2565b611c6884848484611c6389611d38565b611cf5565b50505050565b5f611c7985856127f8565b90505f611c95828560ff166028026038011c64ffffffffff1690565b9050610bd9868686845f8888612b18565b60606108f7611cb685858561280a565b5f611cda85611cc589896127f8565b9060ff166028026038011c64ffffffffff1690565b612e9c565b6118308585858585611cf08b611d38565b612ebf565b611cfe81612ab7565b8360ff161015611d1a57611d158585858585611921565b611830565b6118308585611d2884612ab7565b611d329087614a31565b85612650565b5f7f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d000000000000000000008201611d7057506503001811010160cd1b919050565b610f26611d9675746273746f72650000000000000000005461626c657360501b84613180565b60205f612715565b606081831115611dcb57604051635462a3c160e11b815260048101849052602481018390526044016102b8565b5f611dd687876127f8565b90505f611df2828760ff166028026038011c64ffffffffff1690565b90508085101580611e0257508084115b15611e44578081861015611e2057611e1b600186614a4a565b611e22565b855b604051637e8578d360e01b8152600481019290925260248201526044016102b8565b5f611e5089898961280a565b9050611e5f8187888803612e9c565b9998505050505050505050565b6114c08282611e7a85611d38565b61319b565b6040805160028082526060820183525f9283929190602083019080368337019050509050836001600160a01b03165f1b815f81518110611ec157611ec16149ae565b602002602001018181525050826001600160a01b03165f1b81600181518110611eec57611eec6149ae565b60209081029190910101525f610cc97f7462776f726c640000000000000000005573657244656c65676174696f6e436f8383630100080160dd1b6118f5565b5f611f3586613419565b15611f4257506001610cc9565b85611f4e57505f610cc9565b5f80611f9a865f8a8a8989604051602401611f6b93929190614a0a565b60408051601f198184030181529190526020810180516001600160e01b03166301a86b5560e41b1790526129ed565b9150915081611fad575f92505050610cc9565b80806020019051810190611fc19190614a5d565b98975050505050505050565b6dffffffffffffffffffffffffffff60801b16616e7360f01b1790565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110612021576120216149ae565b60209081029190910101525f6108f77f7462776f726c640000000000000000004e616d65737061636544656c656761748383630100080160dd1b6118f5565b60605f8061206f868686613460565b9150915081610cc957610cc981611bd3565b5f8061208c83612ab7565b90508060ff168460ff1610156120b45760ff848116601b0360080284901c165b9150506108f7565b6120ac86866120c38488614a31565b61261c565b5f6108f78484846120d888611d38565b612081565b806001600160a01b03166120f86120f384611fcd565b6134b3565b6001600160a01b0316146114c057611c37826123af565b61211f8262dfba3960e71b613534565b612165335f84846040516024016121369190614242565b60408051601f198184030181529190526020810180516001600160e01b0316637c5b033560e01b179052613576565b506114c08282805190602001206001613586565b611bdd60f21b846001600160f01b031916036121d057837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516121c393929190614ab6565b60405180910390a2611c68565b5f6121db8585612688565b90505f6121e78661364d565b90505f5b8151811015612298575f828281518110612207576122076149ae565b6020026020010151905061222f6004826001600160581b0319166129d090919063ffffffff16565b1561228f5760405163964f667d60e01b8152606082901c9063964f667d90612261908b908b908b908b90600401614ae8565b5f604051808303815f87803b158015612278575f80fd5b505af115801561228a573d5f803e3d5ffd5b505050505b506001016121eb565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516122cd93929190614ab6565b60405180910390a26122e8828565ffffffffffff16856136bc565b5f5b8151811015610e69575f828281518110612306576123066149ae565b6020026020010151905061232e6008826001600160581b0319166129d090919063ffffffff16565b1561238e5760405163a8ba872160e01b8152606082901c9063a8ba872190612360908b908b908b908b90600401614ae8565b5f604051808303815f87803b158015612377575f80fd5b505af1158015612389573d5f803e3d5ffd5b505050505b506001016122ea565b610bd98686868686866123aa8d8d6127f8565b612b18565b606081601081901b5f6123c1836136d2565b9050826001600160901b03198316156123ec576123e76001600160901b031984166136e8565b61240c565b604051806040016040528060068152602001651e3937b7ba1f60d11b8152505b6001600160801b031983161561242a57612425836136e8565b61244a565b604051806040016040528060068152602001651e3937b7ba1f60d11b8152505b60405160200161245c93929190614b20565b6040516020818303038152906040529350505050919050565b604080515f808252602082019092525f6124b87f7462776f726c64000000000000000000496e69744d6f64756c654164647265738383630500400560da1b613743565b60601c9392505050565b604080515f808252602082018352606084901b6bffffffffffffffffffffffff191682840152825180830360340181526054830190935290916114c0917f7462776f726c64000000000000000000496e69744d6f64756c6541646472657391849190630500400560da1b6137dc565b60605f6060612549858561254488611d38565b611936565b9250925092509250925092565b60606108f784848461256788611d38565b611bdb565b5f61257682613866565b9050612581826138d8565b6125c157818260405160200161259991815260200190565b60408051601f19818403018152908290526341e713ad60e01b82526102b89291600401614b76565b919050565b5f6125d185856127f8565b90505f6125ed828560ff166028026038011c64ffffffffff1690565b9050610bd98686866126068764ffffffffff8716614a4a565b604080515f815260208101909152889088612b18565b5f6108f782611cc586866127f8565b5f6126358261395a565b9050806125c157818260405160200161259991815260200190565b5f61265b85856127f8565b90505f612677828560ff166028026038011c64ffffffffff1690565b9050610bd98686865f858888612b18565b5f828260405160200161269c929190614b8e565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff1681101561270d5761270360ff601b83900360080287901c16836140f4565b91506001016126e1565b509392505050565b5f6020821061273a5760208204840193506020828161273657612736614bc8565b0691505b508254600882021b60208290038084111561270d576001850154600882021c82179150509392505050565b5f600861277460026020614a4a565b61277e9190614bdc565b9190911c919050565b6060815f036127a4575060408051602081019091525f8152610a4f565b5f6127af8585612688565b9050610cc9815f85612e9c565b5f60086001806127ce60026020614a4a565b6127d89190614a4a565b6127e29190614a4a565b6127ec9190614bdc565b8260ff911c1692915050565b5f610a4f61280684846139cc565b5490565b5f838360405160200161281e929190614b8e565b604051602081830303815290604052805190602001208260f81b6001600160f81b0319167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b82156128f4576020831061289a5760208304840193506020838161289657612896614bc8565b0692505b82156128f45760208390035f818410156128bb57505f19600884021c6128c4565b505f19600882021c5b8554600886021b8184511682198216178452508184116128e5575050611c68565b50600194909401939182900391015b5b602082106129165783548152600190930192601f19909101906020016128f5565b8115611c68575f5f19600884021c8251865482191691161782525050505050565b602081015160408201515f905b9050915091565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110612983576129836149ae565b60209081029190910101525f6129ba7f7462776f726c6400000000000000000053797374656d486f6f6b7300000000008383611ca6565b90506108f76129cb825f8451613a21565b613a94565b5f8160ff16826129e08560581c90565b1660ff1614905092915050565b5f60605f806129fb86613aa3565b90925090506001600160a01b038216612a335785612a18876123af565b604051637df8867360e11b81526004016102b8929190614b76565b80612a4257612a428689611c20565b8615612a71575f612a5287611fcd565b90505f612a5e82610886565b9050612a6e826102888b846140f4565b50505b5f612a7c8760101b90565b6001600160901b03191614612a9c57612a9788888488613b2d565b612aa8565b612aa888888488613ba0565b90999098509650505050505050565b5f600860016127d860026020614a4a565b6060610cc9612ad78686612688565b612ae184866126dd565b60ff868116601b0360080286901c16612e9c565b5f612b08612b0284611fcd565b83613bfd565b80610a4f5750610a4f8383613bfd565b613a3160f11b876001600160f01b03191614612b7157613a3160f11b8788604051602001612b4891815260200190565b60408051601f19818403018152908290526331b4668360e01b82526102b8939291600401614bf3565b5f612b8b828760ff166028026038011c64ffffffffff1690565b90505f83518564ffffffffff1683612ba39190614a4a565b612bad91906140f4565b9050808214158015612bcf575081612bc58688614c18565b64ffffffffff1614155b15612c0657604051632994042d60e21b815264ffffffffff80881660048301528087166024830152831660448201526064016102b8565b818664ffffffffff161115612c3e57604051637e8578d360e01b81526004810183905264ffffffffff871660248201526044016102b8565b5f612c4a848984613caa565b90505f612c568b61364d565b90505f5b8151811015612d16575f828281518110612c7657612c766149ae565b60200260200101519050612c9e6010826001600160581b0319166129d090919063ffffffff16565b15612d0d57606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b8152600401612cdf9796959493929190614c3d565b5f604051808303815f87803b158015612cf6575f80fd5b505af1158015612d08573d5f803e3d5ffd5b505050505b50600101612c5a565b5064ffffffffff88165f5b8a60ff168160ff161015612d5457612d48878260ff166028026038011c64ffffffffff1690565b90910190600101612d21565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d604051612d8f96959493929190614c9a565b60405180910390a250828414612daf575f612daa8c8c6139cc565b839055505b5f612dbb8c8c8c61280a565b9050612dcf818a64ffffffffff16896136bc565b505f5b8151811015612e8e575f828281518110612dee57612dee6149ae565b60200260200101519050612e166020826001600160581b0319166129d090919063ffffffff16565b15612e8557606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b8152600401612e579796959493929190614c3d565b5f604051808303815f87803b158015612e6e575f80fd5b505af1158015612e80573d5f803e3d5ffd5b505050505b50600101612dd2565b505050505050505050505050565b60405160208101601f19603f848401011660405282825261270d85858584612870565b611bdd60f21b866001600160f01b03191603612f1857857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051612f0b9493929190614ce8565b60405180910390a2610bd9565b5f612f228761364d565b90505f5b8151811015612fd7575f828281518110612f4257612f426149ae565b60200260200101519050612f6a6001826001600160581b0319166129d090919063ffffffff16565b15612fce576040516315c19b2760e21b8152606082901c906357066c9c90612fa0908c908c908c908c908c908c90600401614d26565b5f604051808303815f87803b158015612fb7575f80fd5b505af1158015612fc9573d5f803e3d5ffd5b505050505b50600101612f26565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98787878760405161300e9493929190614ce8565b60405180910390a25f6130218888612688565b90505f602087019050613037825f895184613d46565b5f613041856127bc565b11156130c1575f6130528a8a6139cc565b87815590506020860191505f805f5b61306a886127bc565b8160ff1610156130bc5761307f8d8d8361280a565b925061309a8a8260ff166028026038011c64ffffffffff1690565b91506130a8835f8488613d46565b6130b282866140f4565b9450600101613061565b505050505b5f5b8351811015613174575f8482815181106130df576130df6149ae565b602002602001015190506131076002826001600160581b0319166129d090919063ffffffff16565b1561316b57604051635b28cdaf60e01b8152606082901c90635b28cdaf9061313d908e908e908e908e908e908e90600401614d26565b5f604051808303815f87803b158015613154575f80fd5b505af1158015613166573d5f803e3d5ffd5b505050505b506001016130c3565b50505050505050505050565b60408051602081018490529081018290525f9060600161269c565b611bdd60f21b836001600160f01b031916036131ee57827f0e1f72f429eb97e64878619984a91e687ae91610348b9ff4216782cc96e49d07836040516131e19190614d7e565b60405180910390a2505050565b5f6131f88461364d565b90505f5b81518110156132a7575f828281518110613218576132186149ae565b602002602001015190506132406040826001600160581b0319166129d090919063ffffffff16565b1561329e57604051639faeaf4560e01b8152606082901c90639faeaf459061327090899089908990600401614d90565b5f604051808303815f87803b158015613287575f80fd5b505af1158015613299573d5f803e3d5ffd5b505050505b506001016131fc565b50837f0e1f72f429eb97e64878619984a91e687ae91610348b9ff4216782cc96e49d07846040516132d89190614d7e565b60405180910390a25f6132eb8585612688565b9050613342815f6132fb86612765565b6001600160401b03811115613312576133126144b9565b6040519080825280601f01601f19166020018201604052801561333c576020820181803683370190505b506136bc565b5f61334c846127bc565b111561336c575f61335d86866139cc565b905061336a816020613e01565b505b5f5b8251811015610bd9575f83828151811061338a5761338a6149ae565b602002602001015190506133b26080826001600160581b0319166129d090919063ffffffff16565b15613410576040516383b5c95b60e01b8152606082901c906383b5c95b906133e2908a908a908a90600401614d90565b5f604051808303815f87803b1580156133f9575f80fd5b505af115801561340b573d5f803e3d5ffd5b505050505b5060010161336e565b5f61737960f01b5f681d5b9b1a5b5a5d195960ba1b60405160200161344093929190614084565b604051602081830303815290604052613458906140ba565b909114919050565b5f60605f8061346e86613aa3565b90925090506001600160a01b03821661348b5785612a18876123af565b8061349a5761349a8688611c20565b6134a5878387613e3c565b909890975095505050505050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f815181106134ea576134ea6149ae565b60209081029190910101525f6135297f7462776f726c640000000000000000004e616d6573706163654f776e657200008383630500400560da1b6118f5565b60601c949350505050565b61353e8282613eab565b6114c0576040516374b5e6ff60e01b81526001600160a01b03831660048201526001600160e01b0319821660248201526044016102b8565b60605f80610a6687878787613ba0565b6040805160028082526060820183525f92602083019080368337019050509050836001600160a01b03165f1b815f815181106135c4576135c46149ae565b60200260200101818152505082816001815181106135e4576135e46149ae565b602002602001018181525050611c687f7462776f726c64000000000000000000496e7374616c6c65644d6f64756c65735f1b825f8560405160200161363091151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b611921565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110613685576136856149ae565b60209081029190910101525f6129ba7f746273746f726500000000000000000053746f7265486f6f6b730000000000008383611ca6565b610992838383516136cd8560200190565b613d46565b5f6136df607060106140f4565b9190911b919050565b60605f5b601081101561371c576001600160801b03198316600882021b6001600160f81b0319161561371c576001016136ec565b604080516001600160801b03198516602082015281516030909101909152818152806108f7565b5f8061374d613ec6565b9050306001600160a01b0382160361376b576120ac868686866118f5565b604051638c364d5960e01b81526001600160a01b03821690638c364d599061379d908990899089908990600401614db8565b602060405180830381865afa1580156137b8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120ac9190614de6565b5f6137e5613ec6565b9050306001600160a01b03821603613809576138048686868686611921565b610bd9565b6040516301c85d5760e51b81526001600160a01b0382169063390baae09061383d9089908990899089908990600401614dfd565b5f604051808303815f87803b158015613854575f80fd5b505af1158015613174573d5f803e3d5ffd5b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061389d5761389d6149ae565b60209081029190910101525f6108f775746273746f72650000000000000000005461626c657360501b8360016503001811010160cd1b6118f5565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061390f5761390f6149ae565b60209081029190910101525f61394e7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b6118f5565b90506108f78160f81c90565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110613991576139916149ae565b60209081029190910101525f6108f775746273746f72650000000000000000005461626c657360501b8360026503001811010160cd1b6118f5565b5f82826040516020016139e0929190614b8e565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f81831180613a305750835182115b15613a54578383836040516323230fa360e01b81526004016102b893929190614e43565b60208401613a6284826140f4565b90505f613a6f8585614a4a565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f610a4f8360155f613eff565b6040805160018082528183019092525f91829182916020808301908036833701905050905083815f81518110613adb57613adb6149ae565b60209081029190910101525f8080613b1c7f7462776f726c6400000000000000000053797374656d730000000000000000008564150200140160d01b611936565b925092509250610a2b838383613f77565b5f6060836001600160a01b03165f613b46858989613f82565b604051613b539190614e67565b5f6040518083038185875af1925050503d805f8114613b8d576040519150601f19603f3d011682016040523d82523d5f602084013e613b92565b606091505b509097909650945050505050565b5f6060836001600160a01b0316613bb8848888613f82565b604051613bc59190614e67565b5f60405180830381855af49150503d805f8114613b8d576040519150601f19603f3d011682016040523d82523d5f602084013e613b92565b6040805160028082526060820183525f928392919060208301908036833701905050905083815f81518110613c3457613c346149ae565b602002602001018181525050826001600160a01b03165f1b81600181518110613c5f57613c5f6149ae565b60209081029190910101525f613c9e7f7462776f726c640000000000000000005265736f7572636541636365737300008383630101000160d81b6118f5565b9050610cc98160f81c90565b5f64ffffffffff821115613cd457604051637149a3c160e01b8152600481018390526024016102b8565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff16808510613d065780850382019150613d0e565b848103820391505b5064ffffffffff6038602860ff8816020181811b1966ffffffffffffff199490941690921792909216918416901b1790509392505050565b8215613dbe5760208310613d7057602083048401935060208381613d6c57613d6c614bc8565b0692505b8215613dbe5760208390035f5f19600885021c1990506008850281811c91508351811c9050811987541682821617875550818411613daf575050611c68565b50600194909401939182900391015b5b60208210613de05780518455600190930192601f1990910190602001613dbf565b8115611c68575f5f19600884021c8554835182191691161785555050505050565b5f6020613e0f83601f6140f4565b613e199190614e82565b613e2390846140f4565b90505b80831015610992575f8355600183019250613e26565b5f6060836001600160a01b0316613e5484875f613f82565b604051613e619190614e67565b5f60405180830381855afa9150503d805f8114613e99576040519150601f19603f3d011682016040523d82523d5f602084013e613e9e565b606091505b5090969095509350505050565b5f613eb583613fb1565b8015610a4f5750610a4f8383613fe3565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f906001600160a01b0316806125c1573391505090565b60605f613f0c8560801c90565b90506fffffffffffffffffffffffffffffffff85165f858281613f3157613f31614bc8565b0490506040519350602084016020820281016040528185525f5b82811015613f6b578451871c825293870193602090910190600101613f4b565b50505050509392505050565b5f80611a4185614069565b6060838383604051602001613f9993929190614ea1565b60405160208183030381529060405290509392505050565b5f613fc3826301ffc9a760e01b613fe3565b8015610f265750613fdc826001600160e01b0319613fe3565b1592915050565b6040516001600160e01b0319821660248201525f90819060440160408051601f19818403018152919052602080820180516001600160e01b03166301ffc9a760e01b17815282519293505f9283928392909183918a617530fa92503d91505f519050828015614053575060208210155b801561405e57505f81115b979650505050505050565b6020810151603482015160609190911c905f9060f81c612944565b6001600160f01b03199390931683526001600160901b03199190911660028301526001600160801b031916601082015260200190565b805160208083015191908110156140da575f198160200360031b1b821691505b50919050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610f2657610f266140e0565b805160208201516001600160e01b031980821692919060048310156141365780818460040360031b1b83161693505b505050919050565b5f8083601f84011261414e575f80fd5b5081356001600160401b03811115614164575f80fd5b6020830191508360208260051b850101111561417e575f80fd5b9250929050565b803560ff811681146125c1575f80fd5b5f805f805f608086880312156141a9575f80fd5b8535945060208601356001600160401b038111156141c5575f80fd5b6141d18882890161413e565b90955093506141e4905060408701614185565b949793965091946060013592915050565b5f5b8381101561420f5781810151838201526020016141f7565b50505f910152565b5f815180845261422e8160208601602086016141f5565b601f01601f19169290920160200192915050565b602081525f610a4f6020830184614217565b5f8083601f840112614264575f80fd5b5081356001600160401b0381111561427a575f80fd5b60208301915083602082850101111561417e575f80fd5b5f805f805f80608087890312156142a6575f80fd5b8635955060208701356001600160401b03808211156142c3575f80fd5b6142cf8a838b0161413e565b90975095508591506142e360408a01614185565b945060608901359150808211156142f8575f80fd5b5061430589828a01614254565b979a9699509497509295939492505050565b5f805f806060858703121561432a575f80fd5b8435935060208501356001600160401b03811115614346575f80fd5b6143528782880161413e565b9094509250614365905060408601614185565b905092959194509250565b5f805f805f805f8060a0898b031215614387575f80fd5b8835975060208901356001600160401b03808211156143a4575f80fd5b6143b08c838d0161413e565b909950975060408b01359150808211156143c8575f80fd5b6143d48c838d01614254565b909750955060608b0135945060808b01359150808211156143f3575f80fd5b506144008b828c01614254565b999c989b5096995094979396929594505050565b5f805f805f805f60a0888a03121561442a575f80fd5b8735965060208801356001600160401b0380821115614447575f80fd5b6144538b838c0161413e565b909850965086915061446760408b01614185565b955060608a013591508082111561447c575f80fd5b506144898a828b01614254565b989b979a50959894979596608090950135949350505050565b5f602082840312156144b2575f80fd5b5035919050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156144f5576144f56144b9565b604052919050565b5f82601f83011261450c575f80fd5b81356001600160401b03811115614525576145256144b9565b614538601f8201601f19166020016144cd565b81815284602083860101111561454c575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8060408385031215614579575f80fd5b8235915060208301356001600160401b03811115614595575f80fd5b6145a1858286016144fd565b9150509250929050565b5f805f80606085870312156145be575f80fd5b8435935060208501356001600160401b038111156145da575f80fd5b6145e68782880161413e565b9598909750949560400135949350505050565b606081525f61460b6060830186614217565b8460208401528281036040840152610a788185614217565b5f82601f830112614632575f80fd5b813560206001600160401b0382111561464d5761464d6144b9565b8160051b61465c8282016144cd565b9283528481018201928281019087851115614675575f80fd5b83870192505b8483101561405e5782358252918301919083019061467b565b5f805f805f60a086880312156146a8575f80fd5b8535945060208601356001600160401b038111156146c4575f80fd5b6146d088828901614623565b9450506146df60408701614185565b94979396509394606081013594506080013592915050565b5f805f60408486031215614709575f80fd5b8335925060208401356001600160401b03811115614725575f80fd5b6147318682870161413e565b9497909650939450505050565b6001600160a01b038116811461171c575f80fd5b5f805f60608486031215614764575f80fd5b833561476f8161473e565b92506020840135915060408401356001600160401b03811115614790575f80fd5b61479c868287016144fd565b9150509250925092565b5f805f80608085870312156147b9575f80fd5b8435935060208501356001600160401b038111156147d5575f80fd5b6147e187828801614623565b9350506147f060408601614185565b9396929550929360600135925050565b5f805f60608486031215614812575f80fd5b8335925060208401356001600160401b0381111561482e575f80fd5b61483a86828701614623565b92505061484960408501614185565b90509250925092565b5f8060408385031215614863575f80fd5b823561486e8161473e565b915060208301356001600160401b03811115614595575f80fd5b5f805f805f806080878903121561489d575f80fd5b8635955060208701356001600160401b03808211156148ba575f80fd5b6148c68a838b0161413e565b90975095506040890135915065ffffffffffff821682146148e5575f80fd5b909350606088013590808211156142f8575f80fd5b803564ffffffffff811681146125c1575f80fd5b5f805f805f805f8060c0898b031215614925575f80fd5b8835975060208901356001600160401b0380821115614942575f80fd5b61494e8c838d0161413e565b909950975087915061496260408c01614185565b965061497060608c016148fa565b955061497e60808c016148fa565b945060a08b01359150808211156143f3575f80fd5b5f602082840312156149a3575f80fd5b8135610a4f8161473e565b634e487b7160e01b5f52603260045260245ffd5b604081525f6149d46040830185614217565b90506001600160a01b03831660208301529392505050565b5f60ff821660ff8103614a0157614a016140e0565b60010192915050565b6001600160a01b0384168152826020820152606060408201525f610cc96060830184614217565b60ff8281168282160390811115610f2657610f266140e0565b81810381811115610f2657610f266140e0565b5f60208284031215614a6d575f80fd5b81518015158114610a4f575f80fd5b5f815180845260208085019450602084015f5b83811015614aab57815187529582019590820190600101614a8f565b509495945050505050565b606081525f614ac86060830186614a7c565b65ffffffffffff851660208401528281036040840152610a788185614217565b848152608060208201525f614b006080830186614a7c565b65ffffffffffff85166040840152828103606084015261405e8185614217565b61ffff60f01b841681525f601d60f91b8060028401528451614b498160038601602089016141f5565b808401905081600382015284519150614b698260048301602088016141f5565b0160040195945050505050565b828152604060208201525f6108f76040830184614217565b8281525f60208083018451602086015f5b82811015614bbb57815184529284019290840190600101614b9f565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b8082028115828204841417610f2657610f266140e0565b61ffff60f01b84168152826020820152606060408201525f610cc96060830184614217565b64ffffffffff818116838216019080821115614c3657614c366140e0565b5092915050565b87815260e060208201525f614c5560e0830189614a7c565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c0840152614c8c8185614217565b9a9950505050505050505050565b60c081525f614cac60c0830189614a7c565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a0840152611e5f8185614217565b608081525f614cfa6080830187614a7c565b8281036020840152614d0c8187614217565b9050846040840152828103606084015261405e8185614217565b86815260c060208201525f614d3e60c0830188614a7c565b8281036040840152614d508188614217565b90508560608401528281036080840152614d6a8186614217565b9150508260a0830152979650505050505050565b602081525f610a4f6020830184614a7c565b838152606060208201525f614da86060830185614a7c565b9050826040830152949350505050565b848152608060208201525f614dd06080830186614a7c565b60ff949094166040830152506060015292915050565b5f60208284031215614df6575f80fd5b5051919050565b85815260a060208201525f614e1560a0830187614a7c565b60ff861660408401528281036060840152614e308186614217565b9150508260808301529695505050505050565b606081525f614e556060830186614217565b60208301949094525060400152919050565b5f8251614e788184602087016141f5565b9190910192915050565b5f82614e9c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f8451614eb28184602089016141f5565b60609490941b6bffffffffffffffffffffffff19169190930190815260148101919091526034019291505056fea2646970667358221220df7a104a5ad98598737fc6581ea21ced5419257600f97d045cf980a0fe9b193464736f6c63430008180033","sourceMap":"2228:22169:3:-:0;;;2629:94;;;;;;;;;-1:-1:-1;895:22:87;1066:42:89;2374:38;;-1:-1:-1;;;;;;2374:38:89;1824:4:86;2374:38:89;;;1751:84:86;895:22:87;928:38;;-1:-1:-1;;;952:13:87;928:38;;;;;2659:10:3;2649:20;;2680:38;;-1:-1:-1;;;2704:13:3;2680:38;;;;;2228:22169;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610610207575f3560e01c8063894ecc5811610117578063c11222291161009f578063d4285dc21161006e578063d4285dc2146107eb578063d9c03a041461080a578063dbbf0e2114610829578063e228a4a314610848578063ef6ea862146108675761028f565b8063c1122229146105e9578063c4d66de81461078e578063cc49db7e146107ad578063d03edb8c146107cc5761028f565b8063a53417ed116100e6578063a53417ed146106e3578063af068c9e14610702578063afdb73d414610721578063b047c1eb14610750578063c0a2895a1461076f5761028f565b8063894ecc58146106735780638c364d591461068657806396f0f0cd146106a55780639f1fcf0a146106c45761028f565b8063390baae01161019a578063489f6a9211610169578063489f6a92146105985780634dc77d97146105ab578063505a181d146105ca5780636951955d146105e957806387ce4598146106035761028f565b8063390baae01461050b5780633a77c2c21461052a5780633ae7af0814610557578063419b58fd1461056a5761028f565b80631e788977116101d65780631e7889771461049a5780631e8545ff146104b9578063298314fb146104cd5780633708196e146104ec5761028f565b806302d05d3f146103e057806305242d2f14610430578063114a72661461045c578063150f32621461047b5761028f565b3661028f575f610247616e7360f01b5f8060405160200161022a93929190614084565b604051602081830303815290604052610242906140ba565b610886565b905061028d616e7360f01b5f8060405160200161026693929190614084565b60405160208183030381529060405261027e906140ba565b61028834846140f4565b6108ff565b005b3033036102c1576040516327a1460b60e21b81526001600160e01b03195f351660048201526024015b60405180910390fd5b5f806102d75f356001600160e01b031916610997565b91509150815f801b0361030a57604051637eef2a7160e11b81526001600160e01b03195f351660048201526024016102b8565b5f61034b5f368080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509250869150610a389050565b90506060306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b158015610387575f80fd5b505af1925050508015610398575060015b6103af576103a833858434610a56565b90506103d8565b6103c233856103bd85614107565b610a82565b6103ce33858434610a56565b90506103d8610ac7565b805160208201f35b3480156103eb575f80fd5b506104137f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561043b575f80fd5b5061044f61044a366004614195565b610aef565b6040516104279190614242565b348015610467575f80fd5b5061028d610476366004614291565b610b31565b348015610486575f80fd5b5061028d610495366004614291565b610be1565b3480156104a5575f80fd5b5061044f6104b4366004614317565b610c89565b3480156104c4575f80fd5b5061028d610cd2565b3480156104d8575f80fd5b5061028d6104e7366004614370565b610cda565b3480156104f7575f80fd5b5061028d610506366004614414565b610dbf565b348015610516575f80fd5b5061028d610525366004614414565b610e72565b348015610535575f80fd5b506105496105443660046144a2565b610f1c565b604051908152602001610427565b61044f610565366004614568565b610f2c565b348015610575575f80fd5b506105896105843660046145ab565b610fe0565b604051610427939291906145f9565b3480156105a3575f80fd5b505f5c610549565b3480156105b6575f80fd5b5061044f6105c5366004614694565b611033565b3480156105d5575f80fd5b5061028d6105e43660046146f7565b611042565b3480156105f4575f80fd5b5064191718171960d91b610549565b34801561060e575f80fd5b5061063c61061d3660046144a2565b5f19016004908102600181015c92600282015c92600383015c92015c90565b604080519485526001600160e01b031990931660208501526001600160a01b03909116918301919091526060820152608001610427565b61044f610681366004614752565b6110b5565b348015610691575f80fd5b506105496106a0366004614195565b6113ba565b3480156106b0575f80fd5b5061044f6106bf366004614568565b6113fb565b3480156106cf575f80fd5b506105496106de3660046147a6565b611435565b3480156106ee575f80fd5b506105496106fd366004614800565b611442565b34801561070d575f80fd5b5061028d61071c366004614852565b61144e565b34801561072c575f80fd5b505f195f5c016004908102600181015c91600282015c91600381015c91015c61063c565b34801561075b575f80fd5b5061028d61076a366004614888565b6114c4565b34801561077a575f80fd5b5061028d61078936600461490e565b61156c565b348015610799575f80fd5b5061028d6107a8366004614993565b611617565b3480156107b8575f80fd5b506105896107c73660046146f7565b61171f565b3480156107d7575f80fd5b5061044f6107e6366004614317565b61176f565b3480156107f6575f80fd5b506105496108053660046144a2565b6117af565b348015610815575f80fd5b5061028d610824366004614195565b6117b9565b348015610834575f80fd5b50610549610843366004614800565b611837565b348015610853575f80fd5b506105496108623660046144a2565b611843565b348015610872575f80fd5b5061028d610881366004614291565b61184d565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f815181106108bd576108bd6149ae565b60209081029190910101525f6108f7777462776f726c6400000000000000000042616c616e63657360401b8383630100080160dd1b6118f5565b949350505050565b6040805160018082528183019092525f916020808301908036833701905050905082815f81518110610933576109336149ae565b602002602001018181525050610992777462776f726c6400000000000000000042616c616e63657360401b5f1b825f8560405160200161097591815260200190565b60408051601f19818403018152919052630100080160dd1b611921565b505050565b6040805160018082528183019092525f918291829160208083019080368337019050509050836001600160e01b031916815f815181106109d9576109d96149ae565b60209081029190910101525f8080610a1a7f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f728564090080080160d21b611936565b925092509250610a2b838383611a36565b9550955050505050915091565b82820160200180516001600160e01b031682179052825b9392505050565b60605f80610a6687878787611a4d565b9150915081610a7857610a7881611bd3565b9695505050505050565b816001600160a01b038416345f5c60048082026001810191600282019160038101910187845d88835d86825d85815d50505050600181019050805f5d50505050505050565b5f5c8060021b5f600182015d5f600282015d5f600382015d5f600482015d505f1981015f5d50565b6060610a78868686808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250889250879150611bdb9050565b303303610b5e576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610b688633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f92019190915250611c5392505050565b505050505050565b303303610c0e576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610c188633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f92019190915250611c6e92505050565b6060610cc9858585808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250879250611ca6915050565b95945050505050565b5f195f815d50565b303303610d07576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610d118833611c20565b610db5888888808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8c018190048102820181019092528a815292508a91508990819084018382808284375f9201919091525050604080516020601f8a018190048102820181019092528881528a9350915088908890819084018382808284375f92019190915250611cdf92505050565b5050505050505050565b303303610dec576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610df68733611c20565b610e69878787808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8a018190048102820181019092528881528a9350915088908890819084018382808284375f92019190915250889250611cf5915050565b50505050505050565b303303610e9f576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610ea98733611c20565b610e69878787808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8a018190048102820181019092528881528a9350915088908890819084018382808284375f92019190915250889250611921915050565b5f610f2682611d38565b92915050565b6060303303610f5b576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b158015610f93575f80fd5b505af1925050508015610fa4575060015b610fbb57610fb433848434610a56565b9050610f26565b610fc933846103bd85614107565b5f610fd633858534610a56565b9050610a4f610ac7565b60605f6060611023878787808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250899250611936915050565b9250925092509450945094915050565b6060610a788686868686611d9e565b30330361106f576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6110798333611c20565b610992838383808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250611e6c92505050565b60603033036110e4576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b336001600160a01b0385160361117957306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b15801561112c575f80fd5b505af192505050801561113d575060015b6111545761114d33848434610a56565b9050610a4f565b61116233846103bd85614107565b5f61116f33858534610a56565b905061114d610ac7565b5f6111848533611e7f565b90506111938186338787611f2b565b1561122757306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b1580156111d0575f80fd5b505af19250505080156111e1575060015b6111f9576111f185858534610a56565b915050610a4f565b61120785856103bd86614107565b5f61121486868634610a56565b905061121e610ac7565b9150610a4f9050565b5f611232865f611e7f565b90506112418187338888611f2b565b156112d757306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b15801561127e575f80fd5b505af192505050801561128f575060015b6112a85761129f86868634610a56565b92505050610a4f565b6112b686866103bd87614107565b5f6112c387878734610a56565b90506112cd610ac7565b9250610a4f915050565b5f6112e96112e487611fcd565b611fea565b90506112f88188338989611f2b565b1561139057306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b158015611335575f80fd5b505af1925050508015611346575060015b6113605761135687878734610a56565b9350505050610a4f565b61136e87876103bd88614107565b5f61137b88888834610a56565b9050611385610ac7565b9350610a4f92505050565b60405163c86745f960e01b81526001600160a01b03881660048201523360248201526044016102b8565b5f610a78868686808060200260200160405190810160405280939291908181526020018383602002808284375f920191909152508892508791506118f59050565b606030330361142a576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610a4f338484612060565b5f610cc985858585612081565b5f6108f78484846120c8565b30330361147b576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6114b6616e7360f01b5f8060405160200161149893929190614084565b6040516020818303038152906040526114b0906140ba565b336120dd565b6114c0828261210f565b5050565b3033036114f1576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6114fb8633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f9201919091525061217992505050565b303303611599576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6115a38833611c20565b610db5888888808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f89018190048102820181019092528781528b93508a9250899189908990819084018382808284375f9201919091525061239792505050565b303303611644576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146116ca576116ae616e7360f01b5f8060405160200161169193929190614084565b6040516020818303038152906040526116a9906140ba565b6123af565b3360405163d787b73760e01b81526004016102b89291906149c2565b5f6116d3612475565b6001600160a01b0316146116fa576040516302bc694960e31b815260040160405180910390fd5b611703816124c2565b604080515f81526020810190915261171c90829061210f565b50565b60605f6060611760868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525061253192505050565b92509250925093509350939050565b6060610cc9858585808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250879250612556915050565b5f610f268261256c565b3033036117e6576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6117f08533611c20565b611830858585808060200260200160405190810160405280939291908181526020018383602002808284375f920191909152508792508691506125c69050565b5050505050565b5f6108f784848461261c565b5f610f268261262b565b30330361187a576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6118848633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f9201919091525061265092505050565b5f610cc96119038686612688565b60ff858116601b0360080285901c1661191c85876126dd565b612715565b611830858561193084876126dd565b85612179565b60605f60605f61194585612765565b9050611952878783612787565b93505f61195e866127bc565b90508015611a2b5761197088886127f8565b935066ffffffffffffff84166001600160401b03811115611993576119936144b9565b6040519080825280601f01601f1916602001820160405280156119bd576020820181803683370190505b509250602083015f5b828160ff161015611a28575f6119dd8b8b8461280a565b90505f6119f9888460ff166028026038011c64ffffffffff1690565b9050611a07825f8387612870565b611a1181856140f4565b935050508080611a20906149ec565b9150506119c6565b50505b505093509350939050565b5f80611a4185612937565b90969095509350505050565b5f60605f611a5a8661294b565b90505f5b8151811015611b09575f828281518110611a7a57611a7a6149ae565b60200260200101519050611aa26001826001600160581b0319166129d090919063ffffffff16565b15611b005760405163c332303160e01b8152606082901c9063c332303190611ad2908c908c908c90600401614a0a565b5f604051808303815f87803b158015611ae9575f80fd5b505af1158015611afb573d5f803e3d5ffd5b505050505b50600101611a5e565b50611b16878588886129ed565b90935091505f5b8151811015611bc8575f828281518110611b3957611b396149ae565b60200260200101519050611b616002826001600160581b0319166129d090919063ffffffff16565b15611bbf5760405163973d8f9960e01b8152606082901c9063973d8f9990611b91908c908c908c90600401614a0a565b5f604051808303815f87803b158015611ba8575f80fd5b505af1158015611bba573d5f803e3d5ffd5b505050505b50600101611b1d565b505094509492505050565b805160208201fd5b6060611be682612ab7565b8360ff161015611c0357611bfc85858585612ac8565b90506108f7565b611bfc8585611c1185612ab7565b611c1b9087614a31565b611ca6565b611c2a8282612af5565b6114c057611c37826123af565b8160405163d787b73760e01b81526004016102b89291906149c2565b611c6884848484611c6389611d38565b611cf5565b50505050565b5f611c7985856127f8565b90505f611c95828560ff166028026038011c64ffffffffff1690565b9050610bd9868686845f8888612b18565b60606108f7611cb685858561280a565b5f611cda85611cc589896127f8565b9060ff166028026038011c64ffffffffff1690565b612e9c565b6118308585858585611cf08b611d38565b612ebf565b611cfe81612ab7565b8360ff161015611d1a57611d158585858585611921565b611830565b6118308585611d2884612ab7565b611d329087614a31565b85612650565b5f7f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d000000000000000000008201611d7057506503001811010160cd1b919050565b610f26611d9675746273746f72650000000000000000005461626c657360501b84613180565b60205f612715565b606081831115611dcb57604051635462a3c160e11b815260048101849052602481018390526044016102b8565b5f611dd687876127f8565b90505f611df2828760ff166028026038011c64ffffffffff1690565b90508085101580611e0257508084115b15611e44578081861015611e2057611e1b600186614a4a565b611e22565b855b604051637e8578d360e01b8152600481019290925260248201526044016102b8565b5f611e5089898961280a565b9050611e5f8187888803612e9c565b9998505050505050505050565b6114c08282611e7a85611d38565b61319b565b6040805160028082526060820183525f9283929190602083019080368337019050509050836001600160a01b03165f1b815f81518110611ec157611ec16149ae565b602002602001018181525050826001600160a01b03165f1b81600181518110611eec57611eec6149ae565b60209081029190910101525f610cc97f7462776f726c640000000000000000005573657244656c65676174696f6e436f8383630100080160dd1b6118f5565b5f611f3586613419565b15611f4257506001610cc9565b85611f4e57505f610cc9565b5f80611f9a865f8a8a8989604051602401611f6b93929190614a0a565b60408051601f198184030181529190526020810180516001600160e01b03166301a86b5560e41b1790526129ed565b9150915081611fad575f92505050610cc9565b80806020019051810190611fc19190614a5d565b98975050505050505050565b6dffffffffffffffffffffffffffff60801b16616e7360f01b1790565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110612021576120216149ae565b60209081029190910101525f6108f77f7462776f726c640000000000000000004e616d65737061636544656c656761748383630100080160dd1b6118f5565b60605f8061206f868686613460565b9150915081610cc957610cc981611bd3565b5f8061208c83612ab7565b90508060ff168460ff1610156120b45760ff848116601b0360080284901c165b9150506108f7565b6120ac86866120c38488614a31565b61261c565b5f6108f78484846120d888611d38565b612081565b806001600160a01b03166120f86120f384611fcd565b6134b3565b6001600160a01b0316146114c057611c37826123af565b61211f8262dfba3960e71b613534565b612165335f84846040516024016121369190614242565b60408051601f198184030181529190526020810180516001600160e01b0316637c5b033560e01b179052613576565b506114c08282805190602001206001613586565b611bdd60f21b846001600160f01b031916036121d057837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516121c393929190614ab6565b60405180910390a2611c68565b5f6121db8585612688565b90505f6121e78661364d565b90505f5b8151811015612298575f828281518110612207576122076149ae565b6020026020010151905061222f6004826001600160581b0319166129d090919063ffffffff16565b1561228f5760405163964f667d60e01b8152606082901c9063964f667d90612261908b908b908b908b90600401614ae8565b5f604051808303815f87803b158015612278575f80fd5b505af115801561228a573d5f803e3d5ffd5b505050505b506001016121eb565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516122cd93929190614ab6565b60405180910390a26122e8828565ffffffffffff16856136bc565b5f5b8151811015610e69575f828281518110612306576123066149ae565b6020026020010151905061232e6008826001600160581b0319166129d090919063ffffffff16565b1561238e5760405163a8ba872160e01b8152606082901c9063a8ba872190612360908b908b908b908b90600401614ae8565b5f604051808303815f87803b158015612377575f80fd5b505af1158015612389573d5f803e3d5ffd5b505050505b506001016122ea565b610bd98686868686866123aa8d8d6127f8565b612b18565b606081601081901b5f6123c1836136d2565b9050826001600160901b03198316156123ec576123e76001600160901b031984166136e8565b61240c565b604051806040016040528060068152602001651e3937b7ba1f60d11b8152505b6001600160801b031983161561242a57612425836136e8565b61244a565b604051806040016040528060068152602001651e3937b7ba1f60d11b8152505b60405160200161245c93929190614b20565b6040516020818303038152906040529350505050919050565b604080515f808252602082019092525f6124b87f7462776f726c64000000000000000000496e69744d6f64756c654164647265738383630500400560da1b613743565b60601c9392505050565b604080515f808252602082018352606084901b6bffffffffffffffffffffffff191682840152825180830360340181526054830190935290916114c0917f7462776f726c64000000000000000000496e69744d6f64756c6541646472657391849190630500400560da1b6137dc565b60605f6060612549858561254488611d38565b611936565b9250925092509250925092565b60606108f784848461256788611d38565b611bdb565b5f61257682613866565b9050612581826138d8565b6125c157818260405160200161259991815260200190565b60408051601f19818403018152908290526341e713ad60e01b82526102b89291600401614b76565b919050565b5f6125d185856127f8565b90505f6125ed828560ff166028026038011c64ffffffffff1690565b9050610bd98686866126068764ffffffffff8716614a4a565b604080515f815260208101909152889088612b18565b5f6108f782611cc586866127f8565b5f6126358261395a565b9050806125c157818260405160200161259991815260200190565b5f61265b85856127f8565b90505f612677828560ff166028026038011c64ffffffffff1690565b9050610bd98686865f858888612b18565b5f828260405160200161269c929190614b8e565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff1681101561270d5761270360ff601b83900360080287901c16836140f4565b91506001016126e1565b509392505050565b5f6020821061273a5760208204840193506020828161273657612736614bc8565b0691505b508254600882021b60208290038084111561270d576001850154600882021c82179150509392505050565b5f600861277460026020614a4a565b61277e9190614bdc565b9190911c919050565b6060815f036127a4575060408051602081019091525f8152610a4f565b5f6127af8585612688565b9050610cc9815f85612e9c565b5f60086001806127ce60026020614a4a565b6127d89190614a4a565b6127e29190614a4a565b6127ec9190614bdc565b8260ff911c1692915050565b5f610a4f61280684846139cc565b5490565b5f838360405160200161281e929190614b8e565b604051602081830303815290604052805190602001208260f81b6001600160f81b0319167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b82156128f4576020831061289a5760208304840193506020838161289657612896614bc8565b0692505b82156128f45760208390035f818410156128bb57505f19600884021c6128c4565b505f19600882021c5b8554600886021b8184511682198216178452508184116128e5575050611c68565b50600194909401939182900391015b5b602082106129165783548152600190930192601f19909101906020016128f5565b8115611c68575f5f19600884021c8251865482191691161782525050505050565b602081015160408201515f905b9050915091565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110612983576129836149ae565b60209081029190910101525f6129ba7f7462776f726c6400000000000000000053797374656d486f6f6b7300000000008383611ca6565b90506108f76129cb825f8451613a21565b613a94565b5f8160ff16826129e08560581c90565b1660ff1614905092915050565b5f60605f806129fb86613aa3565b90925090506001600160a01b038216612a335785612a18876123af565b604051637df8867360e11b81526004016102b8929190614b76565b80612a4257612a428689611c20565b8615612a71575f612a5287611fcd565b90505f612a5e82610886565b9050612a6e826102888b846140f4565b50505b5f612a7c8760101b90565b6001600160901b03191614612a9c57612a9788888488613b2d565b612aa8565b612aa888888488613ba0565b90999098509650505050505050565b5f600860016127d860026020614a4a565b6060610cc9612ad78686612688565b612ae184866126dd565b60ff868116601b0360080286901c16612e9c565b5f612b08612b0284611fcd565b83613bfd565b80610a4f5750610a4f8383613bfd565b613a3160f11b876001600160f01b03191614612b7157613a3160f11b8788604051602001612b4891815260200190565b60408051601f19818403018152908290526331b4668360e01b82526102b8939291600401614bf3565b5f612b8b828760ff166028026038011c64ffffffffff1690565b90505f83518564ffffffffff1683612ba39190614a4a565b612bad91906140f4565b9050808214158015612bcf575081612bc58688614c18565b64ffffffffff1614155b15612c0657604051632994042d60e21b815264ffffffffff80881660048301528087166024830152831660448201526064016102b8565b818664ffffffffff161115612c3e57604051637e8578d360e01b81526004810183905264ffffffffff871660248201526044016102b8565b5f612c4a848984613caa565b90505f612c568b61364d565b90505f5b8151811015612d16575f828281518110612c7657612c766149ae565b60200260200101519050612c9e6010826001600160581b0319166129d090919063ffffffff16565b15612d0d57606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b8152600401612cdf9796959493929190614c3d565b5f604051808303815f87803b158015612cf6575f80fd5b505af1158015612d08573d5f803e3d5ffd5b505050505b50600101612c5a565b5064ffffffffff88165f5b8a60ff168160ff161015612d5457612d48878260ff166028026038011c64ffffffffff1690565b90910190600101612d21565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d604051612d8f96959493929190614c9a565b60405180910390a250828414612daf575f612daa8c8c6139cc565b839055505b5f612dbb8c8c8c61280a565b9050612dcf818a64ffffffffff16896136bc565b505f5b8151811015612e8e575f828281518110612dee57612dee6149ae565b60200260200101519050612e166020826001600160581b0319166129d090919063ffffffff16565b15612e8557606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b8152600401612e579796959493929190614c3d565b5f604051808303815f87803b158015612e6e575f80fd5b505af1158015612e80573d5f803e3d5ffd5b505050505b50600101612dd2565b505050505050505050505050565b60405160208101601f19603f848401011660405282825261270d85858584612870565b611bdd60f21b866001600160f01b03191603612f1857857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051612f0b9493929190614ce8565b60405180910390a2610bd9565b5f612f228761364d565b90505f5b8151811015612fd7575f828281518110612f4257612f426149ae565b60200260200101519050612f6a6001826001600160581b0319166129d090919063ffffffff16565b15612fce576040516315c19b2760e21b8152606082901c906357066c9c90612fa0908c908c908c908c908c908c90600401614d26565b5f604051808303815f87803b158015612fb7575f80fd5b505af1158015612fc9573d5f803e3d5ffd5b505050505b50600101612f26565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98787878760405161300e9493929190614ce8565b60405180910390a25f6130218888612688565b90505f602087019050613037825f895184613d46565b5f613041856127bc565b11156130c1575f6130528a8a6139cc565b87815590506020860191505f805f5b61306a886127bc565b8160ff1610156130bc5761307f8d8d8361280a565b925061309a8a8260ff166028026038011c64ffffffffff1690565b91506130a8835f8488613d46565b6130b282866140f4565b9450600101613061565b505050505b5f5b8351811015613174575f8482815181106130df576130df6149ae565b602002602001015190506131076002826001600160581b0319166129d090919063ffffffff16565b1561316b57604051635b28cdaf60e01b8152606082901c90635b28cdaf9061313d908e908e908e908e908e908e90600401614d26565b5f604051808303815f87803b158015613154575f80fd5b505af1158015613166573d5f803e3d5ffd5b505050505b506001016130c3565b50505050505050505050565b60408051602081018490529081018290525f9060600161269c565b611bdd60f21b836001600160f01b031916036131ee57827f0e1f72f429eb97e64878619984a91e687ae91610348b9ff4216782cc96e49d07836040516131e19190614d7e565b60405180910390a2505050565b5f6131f88461364d565b90505f5b81518110156132a7575f828281518110613218576132186149ae565b602002602001015190506132406040826001600160581b0319166129d090919063ffffffff16565b1561329e57604051639faeaf4560e01b8152606082901c90639faeaf459061327090899089908990600401614d90565b5f604051808303815f87803b158015613287575f80fd5b505af1158015613299573d5f803e3d5ffd5b505050505b506001016131fc565b50837f0e1f72f429eb97e64878619984a91e687ae91610348b9ff4216782cc96e49d07846040516132d89190614d7e565b60405180910390a25f6132eb8585612688565b9050613342815f6132fb86612765565b6001600160401b03811115613312576133126144b9565b6040519080825280601f01601f19166020018201604052801561333c576020820181803683370190505b506136bc565b5f61334c846127bc565b111561336c575f61335d86866139cc565b905061336a816020613e01565b505b5f5b8251811015610bd9575f83828151811061338a5761338a6149ae565b602002602001015190506133b26080826001600160581b0319166129d090919063ffffffff16565b15613410576040516383b5c95b60e01b8152606082901c906383b5c95b906133e2908a908a908a90600401614d90565b5f604051808303815f87803b1580156133f9575f80fd5b505af115801561340b573d5f803e3d5ffd5b505050505b5060010161336e565b5f61737960f01b5f681d5b9b1a5b5a5d195960ba1b60405160200161344093929190614084565b604051602081830303815290604052613458906140ba565b909114919050565b5f60605f8061346e86613aa3565b90925090506001600160a01b03821661348b5785612a18876123af565b8061349a5761349a8688611c20565b6134a5878387613e3c565b909890975095505050505050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f815181106134ea576134ea6149ae565b60209081029190910101525f6135297f7462776f726c640000000000000000004e616d6573706163654f776e657200008383630500400560da1b6118f5565b60601c949350505050565b61353e8282613eab565b6114c0576040516374b5e6ff60e01b81526001600160a01b03831660048201526001600160e01b0319821660248201526044016102b8565b60605f80610a6687878787613ba0565b6040805160028082526060820183525f92602083019080368337019050509050836001600160a01b03165f1b815f815181106135c4576135c46149ae565b60200260200101818152505082816001815181106135e4576135e46149ae565b602002602001018181525050611c687f7462776f726c64000000000000000000496e7374616c6c65644d6f64756c65735f1b825f8560405160200161363091151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b611921565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110613685576136856149ae565b60209081029190910101525f6129ba7f746273746f726500000000000000000053746f7265486f6f6b730000000000008383611ca6565b610992838383516136cd8560200190565b613d46565b5f6136df607060106140f4565b9190911b919050565b60605f5b601081101561371c576001600160801b03198316600882021b6001600160f81b0319161561371c576001016136ec565b604080516001600160801b03198516602082015281516030909101909152818152806108f7565b5f8061374d613ec6565b9050306001600160a01b0382160361376b576120ac868686866118f5565b604051638c364d5960e01b81526001600160a01b03821690638c364d599061379d908990899089908990600401614db8565b602060405180830381865afa1580156137b8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120ac9190614de6565b5f6137e5613ec6565b9050306001600160a01b03821603613809576138048686868686611921565b610bd9565b6040516301c85d5760e51b81526001600160a01b0382169063390baae09061383d9089908990899089908990600401614dfd565b5f604051808303815f87803b158015613854575f80fd5b505af1158015613174573d5f803e3d5ffd5b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061389d5761389d6149ae565b60209081029190910101525f6108f775746273746f72650000000000000000005461626c657360501b8360016503001811010160cd1b6118f5565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061390f5761390f6149ae565b60209081029190910101525f61394e7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b6118f5565b90506108f78160f81c90565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110613991576139916149ae565b60209081029190910101525f6108f775746273746f72650000000000000000005461626c657360501b8360026503001811010160cd1b6118f5565b5f82826040516020016139e0929190614b8e565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f81831180613a305750835182115b15613a54578383836040516323230fa360e01b81526004016102b893929190614e43565b60208401613a6284826140f4565b90505f613a6f8585614a4a565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f610a4f8360155f613eff565b6040805160018082528183019092525f91829182916020808301908036833701905050905083815f81518110613adb57613adb6149ae565b60209081029190910101525f8080613b1c7f7462776f726c6400000000000000000053797374656d730000000000000000008564150200140160d01b611936565b925092509250610a2b838383613f77565b5f6060836001600160a01b03165f613b46858989613f82565b604051613b539190614e67565b5f6040518083038185875af1925050503d805f8114613b8d576040519150601f19603f3d011682016040523d82523d5f602084013e613b92565b606091505b509097909650945050505050565b5f6060836001600160a01b0316613bb8848888613f82565b604051613bc59190614e67565b5f60405180830381855af49150503d805f8114613b8d576040519150601f19603f3d011682016040523d82523d5f602084013e613b92565b6040805160028082526060820183525f928392919060208301908036833701905050905083815f81518110613c3457613c346149ae565b602002602001018181525050826001600160a01b03165f1b81600181518110613c5f57613c5f6149ae565b60209081029190910101525f613c9e7f7462776f726c640000000000000000005265736f7572636541636365737300008383630101000160d81b6118f5565b9050610cc98160f81c90565b5f64ffffffffff821115613cd457604051637149a3c160e01b8152600481018390526024016102b8565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff16808510613d065780850382019150613d0e565b848103820391505b5064ffffffffff6038602860ff8816020181811b1966ffffffffffffff199490941690921792909216918416901b1790509392505050565b8215613dbe5760208310613d7057602083048401935060208381613d6c57613d6c614bc8565b0692505b8215613dbe5760208390035f5f19600885021c1990506008850281811c91508351811c9050811987541682821617875550818411613daf575050611c68565b50600194909401939182900391015b5b60208210613de05780518455600190930192601f1990910190602001613dbf565b8115611c68575f5f19600884021c8554835182191691161785555050505050565b5f6020613e0f83601f6140f4565b613e199190614e82565b613e2390846140f4565b90505b80831015610992575f8355600183019250613e26565b5f6060836001600160a01b0316613e5484875f613f82565b604051613e619190614e67565b5f60405180830381855afa9150503d805f8114613e99576040519150601f19603f3d011682016040523d82523d5f602084013e613e9e565b606091505b5090969095509350505050565b5f613eb583613fb1565b8015610a4f5750610a4f8383613fe3565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f906001600160a01b0316806125c1573391505090565b60605f613f0c8560801c90565b90506fffffffffffffffffffffffffffffffff85165f858281613f3157613f31614bc8565b0490506040519350602084016020820281016040528185525f5b82811015613f6b578451871c825293870193602090910190600101613f4b565b50505050509392505050565b5f80611a4185614069565b6060838383604051602001613f9993929190614ea1565b60405160208183030381529060405290509392505050565b5f613fc3826301ffc9a760e01b613fe3565b8015610f265750613fdc826001600160e01b0319613fe3565b1592915050565b6040516001600160e01b0319821660248201525f90819060440160408051601f19818403018152919052602080820180516001600160e01b03166301ffc9a760e01b17815282519293505f9283928392909183918a617530fa92503d91505f519050828015614053575060208210155b801561405e57505f81115b979650505050505050565b6020810151603482015160609190911c905f9060f81c612944565b6001600160f01b03199390931683526001600160901b03199190911660028301526001600160801b031916601082015260200190565b805160208083015191908110156140da575f198160200360031b1b821691505b50919050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610f2657610f266140e0565b805160208201516001600160e01b031980821692919060048310156141365780818460040360031b1b83161693505b505050919050565b5f8083601f84011261414e575f80fd5b5081356001600160401b03811115614164575f80fd5b6020830191508360208260051b850101111561417e575f80fd5b9250929050565b803560ff811681146125c1575f80fd5b5f805f805f608086880312156141a9575f80fd5b8535945060208601356001600160401b038111156141c5575f80fd5b6141d18882890161413e565b90955093506141e4905060408701614185565b949793965091946060013592915050565b5f5b8381101561420f5781810151838201526020016141f7565b50505f910152565b5f815180845261422e8160208601602086016141f5565b601f01601f19169290920160200192915050565b602081525f610a4f6020830184614217565b5f8083601f840112614264575f80fd5b5081356001600160401b0381111561427a575f80fd5b60208301915083602082850101111561417e575f80fd5b5f805f805f80608087890312156142a6575f80fd5b8635955060208701356001600160401b03808211156142c3575f80fd5b6142cf8a838b0161413e565b90975095508591506142e360408a01614185565b945060608901359150808211156142f8575f80fd5b5061430589828a01614254565b979a9699509497509295939492505050565b5f805f806060858703121561432a575f80fd5b8435935060208501356001600160401b03811115614346575f80fd5b6143528782880161413e565b9094509250614365905060408601614185565b905092959194509250565b5f805f805f805f8060a0898b031215614387575f80fd5b8835975060208901356001600160401b03808211156143a4575f80fd5b6143b08c838d0161413e565b909950975060408b01359150808211156143c8575f80fd5b6143d48c838d01614254565b909750955060608b0135945060808b01359150808211156143f3575f80fd5b506144008b828c01614254565b999c989b5096995094979396929594505050565b5f805f805f805f60a0888a03121561442a575f80fd5b8735965060208801356001600160401b0380821115614447575f80fd5b6144538b838c0161413e565b909850965086915061446760408b01614185565b955060608a013591508082111561447c575f80fd5b506144898a828b01614254565b989b979a50959894979596608090950135949350505050565b5f602082840312156144b2575f80fd5b5035919050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156144f5576144f56144b9565b604052919050565b5f82601f83011261450c575f80fd5b81356001600160401b03811115614525576145256144b9565b614538601f8201601f19166020016144cd565b81815284602083860101111561454c575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8060408385031215614579575f80fd5b8235915060208301356001600160401b03811115614595575f80fd5b6145a1858286016144fd565b9150509250929050565b5f805f80606085870312156145be575f80fd5b8435935060208501356001600160401b038111156145da575f80fd5b6145e68782880161413e565b9598909750949560400135949350505050565b606081525f61460b6060830186614217565b8460208401528281036040840152610a788185614217565b5f82601f830112614632575f80fd5b813560206001600160401b0382111561464d5761464d6144b9565b8160051b61465c8282016144cd565b9283528481018201928281019087851115614675575f80fd5b83870192505b8483101561405e5782358252918301919083019061467b565b5f805f805f60a086880312156146a8575f80fd5b8535945060208601356001600160401b038111156146c4575f80fd5b6146d088828901614623565b9450506146df60408701614185565b94979396509394606081013594506080013592915050565b5f805f60408486031215614709575f80fd5b8335925060208401356001600160401b03811115614725575f80fd5b6147318682870161413e565b9497909650939450505050565b6001600160a01b038116811461171c575f80fd5b5f805f60608486031215614764575f80fd5b833561476f8161473e565b92506020840135915060408401356001600160401b03811115614790575f80fd5b61479c868287016144fd565b9150509250925092565b5f805f80608085870312156147b9575f80fd5b8435935060208501356001600160401b038111156147d5575f80fd5b6147e187828801614623565b9350506147f060408601614185565b9396929550929360600135925050565b5f805f60608486031215614812575f80fd5b8335925060208401356001600160401b0381111561482e575f80fd5b61483a86828701614623565b92505061484960408501614185565b90509250925092565b5f8060408385031215614863575f80fd5b823561486e8161473e565b915060208301356001600160401b03811115614595575f80fd5b5f805f805f806080878903121561489d575f80fd5b8635955060208701356001600160401b03808211156148ba575f80fd5b6148c68a838b0161413e565b90975095506040890135915065ffffffffffff821682146148e5575f80fd5b909350606088013590808211156142f8575f80fd5b803564ffffffffff811681146125c1575f80fd5b5f805f805f805f8060c0898b031215614925575f80fd5b8835975060208901356001600160401b0380821115614942575f80fd5b61494e8c838d0161413e565b909950975087915061496260408c01614185565b965061497060608c016148fa565b955061497e60808c016148fa565b945060a08b01359150808211156143f3575f80fd5b5f602082840312156149a3575f80fd5b8135610a4f8161473e565b634e487b7160e01b5f52603260045260245ffd5b604081525f6149d46040830185614217565b90506001600160a01b03831660208301529392505050565b5f60ff821660ff8103614a0157614a016140e0565b60010192915050565b6001600160a01b0384168152826020820152606060408201525f610cc96060830184614217565b60ff8281168282160390811115610f2657610f266140e0565b81810381811115610f2657610f266140e0565b5f60208284031215614a6d575f80fd5b81518015158114610a4f575f80fd5b5f815180845260208085019450602084015f5b83811015614aab57815187529582019590820190600101614a8f565b509495945050505050565b606081525f614ac86060830186614a7c565b65ffffffffffff851660208401528281036040840152610a788185614217565b848152608060208201525f614b006080830186614a7c565b65ffffffffffff85166040840152828103606084015261405e8185614217565b61ffff60f01b841681525f601d60f91b8060028401528451614b498160038601602089016141f5565b808401905081600382015284519150614b698260048301602088016141f5565b0160040195945050505050565b828152604060208201525f6108f76040830184614217565b8281525f60208083018451602086015f5b82811015614bbb57815184529284019290840190600101614b9f565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b8082028115828204841417610f2657610f266140e0565b61ffff60f01b84168152826020820152606060408201525f610cc96060830184614217565b64ffffffffff818116838216019080821115614c3657614c366140e0565b5092915050565b87815260e060208201525f614c5560e0830189614a7c565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c0840152614c8c8185614217565b9a9950505050505050505050565b60c081525f614cac60c0830189614a7c565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a0840152611e5f8185614217565b608081525f614cfa6080830187614a7c565b8281036020840152614d0c8187614217565b9050846040840152828103606084015261405e8185614217565b86815260c060208201525f614d3e60c0830188614a7c565b8281036040840152614d508188614217565b90508560608401528281036080840152614d6a8186614217565b9150508260a0830152979650505050505050565b602081525f610a4f6020830184614a7c565b838152606060208201525f614da86060830185614a7c565b9050826040830152949350505050565b848152608060208201525f614dd06080830186614a7c565b60ff949094166040830152506060015292915050565b5f60208284031215614df6575f80fd5b5051919050565b85815260a060208201525f614e1560a0830187614a7c565b60ff861660408401528281036060840152614e308186614217565b9150508260808301529695505050505050565b606081525f614e556060830186614217565b60208301949094525060400152919050565b5f8251614e788184602087016141f5565b9190910192915050565b5f82614e9c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f8451614eb28184602089016141f5565b60609490941b6bffffffffffffffffffffffff19169190930190815260148101919091526034019291505056fea2646970667358221220df7a104a5ad98598737fc6581ea21ced5419257600f97d045cf980a0fe9b193464736f6c63430008180033","sourceMap":"2228:22169:3:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23211:19;23233:32;-1:-1:-1;;;662:14:162;678:9;625:63;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;617:72;;;:::i;:::-;23233:13:3;:32::i;:::-;23211:54;;23271:57;-1:-1:-1;;;662:14:162;678:9;625:63;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;617:72;;;:::i;:::-;23304:23:3;23318:9;23304:11;:23;:::i;:::-;23271:13;:57::i;:::-;23205:128;2228:22169;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;;;;;;;;3343:88;23474:19:::1;23495:29:::0;23528:31:::1;23551:7;;-1:-1:-1::0;;;;;;23551:7:3::1;23528:22;:31::i;:::-;23473:86;;;;23588:8;23601:1;23570:32:::0;::::1;::::0;23566:84:::1;;23611:39;::::0;-1:-1:-1;;;23611:39:3;;-1:-1:-1;;;;;;23642:7:3::1;;;23611:39;::::0;::::1;1154:52:316::0;1127:18;;23611:39:3::1;1010:202:316::0;23566:84:3::1;23740:21;23764:52;23780:8;;23764:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;-1:-1:-1;23764:52:3;-1:-1:-1;23793:22:3;;-1:-1:-1;23764:15:3::1;::::0;-1:-1:-1;23764:52:3:i:1;:::-;23740:76;;23874:23;23907:4;-1:-1:-1::0;;;;;23907:20:3::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;23903:353;;24174:75;24207:10;24219:8;24229;24239:9;24174:32;:75::i;:::-;24161:88;;23903:353;;;23938:68;23967:10;23979:8:::0;23989:16:::1;23996:8:::0;23989:16:::1;:::i;:::-;23938:28;:68::i;:::-;24027:75;24060:10;24072:8;24082;24092:9;24027:32;:75::i;:::-;24014:88;;24110:29;:27;:29::i;:::-;24373:10;24367:17;24360:4;24348:10;24344:21;24337:48;2385:32:::0;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1747:55:316;;;1729:74;;1717:2;1702:18;2385:32:3;;;;;;;;4012:258:88;;;;;;;;;;-1:-1:-1;4012:258:88;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;8642:350:3:-;;;;;;;;;;-1:-1:-1;8642:350:3;;;;;:::i;:::-;;:::i;11858:400::-;;;;;;;;;;-1:-1:-1;11858:400:3;;;;;:::i;:::-;;:::i;5279:244:88:-;;;;;;;;;;-1:-1:-1;5279:244:88;;;;;:::i;:::-;;:::i;18544:128:3:-;;;;;;;;;;;;;:::i;6140:431::-;;;;;;;;;;-1:-1:-1;6140:431:3;;;;;:::i;:::-;;:::i;9401:392::-;;;;;;;;;;-1:-1:-1;9401:392:3;;;;;:::i;:::-;;:::i;10325:404::-;;;;;;;;;;-1:-1:-1;10325:404:3;;;;;:::i;:::-;;:::i;779:156:88:-;;;;;;;;;;-1:-1:-1;779:156:88;;;;;:::i;:::-;;:::i;:::-;;;8360:25:316;;;8348:2;8333:18;779:156:88;8181:210:316;14154:536:3;;;;;;:::i;:::-;;:::i;2673:289:88:-;;;;;;;;;;-1:-1:-1;2673:289:88;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;21455:158:3:-;;;;;;;;;;-1:-1:-1;21505:7:3;21573:8;21455:158;;7802:295:88;;;;;;;;;;-1:-1:-1;7802:295:88;;;;;:::i;:::-;;:::i;13393:285:3:-;;;;;;;;;;-1:-1:-1;13393:285:3;;;;;:::i;:::-;;:::i;2479:85::-;;;;;;;;;;-1:-1:-1;;;;2479:85:3;;20403:804;;;;;;;;;;-1:-1:-1;20403:804:3;;;;;:::i;:::-;-1:-1:-1;;20692:17:3;20711:1;20688:25;;;20715:1;20684:33;;20678:40;;20789:1;20758:33;;20752:40;;20856:1;20825:33;;20819:40;;20891:33;20885:40;;20403:804;;;;;13630:25:316;;;-1:-1:-1;;;;;;13691:33:316;;;13686:2;13671:18;;13664:61;-1:-1:-1;;;;;13761:55:316;;;13741:18;;;13734:83;;;;13848:2;13833:18;;13826:34;13617:3;13602:19;20403:804:3;13369:497:316;15090:2990:3;;;;;;:::i;:::-;;:::i;4667:265:88:-;;;;;;;;;;-1:-1:-1;4667:265:88;;;;;:::i;:::-;;:::i;18084:229:3:-;;;;;;;;;;-1:-1:-1;18084:229:3;;;;;:::i;:::-;;:::i;6537:258:88:-;;;;;;;;;;-1:-1:-1;6537:258:88;;;;;:::i;:::-;;:::i;5985:216::-;;;;;;;;;;-1:-1:-1;5985:216:88;;;;;:::i;:::-;;:::i;4469:213:3:-;;;;;;;;;;-1:-1:-1;4469:213:3;;;;;:::i;:::-;;:::i;19081:819::-;;;;;;;;;;-1:-1:-1;;;19133:10:3;19337:8;19385:17;19404:1;19381:25;;;19408:1;19377:33;;19371:40;;19482:1;19451:33;;19445:40;;19549:1;19518:33;;19512:40;;19584:33;19578:40;19081:819;;6940:370;;;;;;;;;;-1:-1:-1;6940:370:3;;;;;:::i;:::-;;:::i;7834:480::-;;;;;;;;;;-1:-1:-1;7834:480:3;;;;;:::i;:::-;;:::i;3672:553::-;;;;;;;;;;-1:-1:-1;3672:553:3;;;;;:::i;:::-;;:::i;1974:247:88:-;;;;;;;;;;-1:-1:-1;1974:247:88;;;;;:::i;:::-;;:::i;3441:216::-;;;;;;;;;;-1:-1:-1;3441:216:88;;;;;:::i;:::-;;:::i;1454:143::-;;;;;;;;;;-1:-1:-1;1454:143:88;;;;;:::i;:::-;;:::i;12697:405:3:-;;;;;;;;;;-1:-1:-1;12697:405:3;;;;;:::i;:::-;;:::i;7118:244:88:-;;;;;;;;;;-1:-1:-1;7118:244:88;;;;;:::i;:::-;;:::i;1122:151::-;;;;;;;;;;-1:-1:-1;1122:151:88;;;;;:::i;:::-;;:::i;11095:378:3:-;;;;;;;;;;-1:-1:-1;11095:378:3;;;;;:::i;:::-;;:::i;3758:308:151:-;3871:16;;;3885:1;3871:16;;;;;;;;;3819:15;;;;3871:16;;;;;;;;;;;;-1:-1:-1;3871:16:151;3842:45;;3926:11;3893:9;3903:1;3893:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;3945:13;3961:62;-1:-1:-1;;;3996:9:151;3945:13;-1:-1:-1;;;3961:24:151;:62::i;:::-;3945:78;3758:308;-1:-1:-1;;;;3758:308:151:o;5057:269::-;5156:16;;;5170:1;5156:16;;;;;;;;;5127:26;;5156:16;;;;;;;;;;;-1:-1:-1;5156:16:151;5127:45;;5211:11;5178:9;5188:1;5178:12;;;;;;;;:::i;:::-;;;;;;:45;;;;;5230:91;-1:-1:-1;;;1141:83:151;;5265:9;5276:1;5297:7;5279:27;;;;;;19892:19:316;;19936:2;19927:12;;19763:182;5279:27:151;;;;-1:-1:-1;;5279:27:151;;;;;;;;;-1:-1:-1;;;5230:24:151;:91::i;:::-;5121:205;5057:269;;:::o;6324:470:152:-;6486:16;;;6500:1;6486:16;;;;;;;;;6399:19;;;;;;6486:16;;;;;;;;;;;-1:-1:-1;6486:16:152;6457:45;;6531:21;-1:-1:-1;;;;;6523:30:152;;6508:9;6518:1;6508:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;6561:24;;;6648:78;1174:66;6691:9;-1:-1:-1;;;6648:19:152;:78::i;:::-;6560:166;;;;;;6739:50;6746:11;6759:15;6776:12;6739:6;:50::i;:::-;6732:57;;;;;;;;6324:470;;;:::o;1563:492:64:-;1744:28;;;1759:4;1744:28;1738:35;;-1:-1:-1;;;;;1836:21:64;1903:20;;1961:43;;1752:5;1563:492;;;;;;:::o;7661:401:141:-;7805:17;7831:12;7845:23;7872:115;7902:6;7946:8;7972;7923:5;7872:13;:115::i;:::-;7830:157;;;;7998:7;7993:41;;8007:27;8023:10;8007:15;:27::i;:::-;8047:10;7661:401;-1:-1:-1;;;;;;7661:401:141:o;21617:783:3:-;21779:8;-1:-1:-1;;;;;21829:27:3;;21889:9;21735:23;21938:8;21989:1;21974:17;;;21993:1;21970:25;;;22044:1;22021:25;;;22097:1;22074:25;;;22126;21779:8;21970:25;22158:34;22219:16;22206:11;22199:37;22265:16;22250:13;22243:39;22310:15;22296:12;22289:37;;;;;22361:1;22350:9;22346:17;22333:30;;22380:9;22377:1;22370:20;;21913:483;;;21617:783;;;:::o;22404:492::-;22498:1;22492:8;22532:9;22528:17;;22498:1;22547;22528:17;22524:25;22712:20;22498:1;22528:17;22579;22575:25;22739:22;22498:1;22651;22632:17;22628:25;22768:24;22498:1;22543;22684:17;22680:25;22799:23;-1:-1:-1;;;22842:17:3;;;22866:20;;22404:492::o;4012:258:88:-;4171:17;4203:62;4222:7;4231:8;;4203:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4241:10:88;;-1:-1:-1;4253:11:88;;-1:-1:-1;4203:18:88;;-1:-1:-1;4203:62:88:i;8642:350:3:-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;1010:202:316;3343:88:3;8855:49:::1;8884:7;8893:10;8855:28;:49::i;:::-;8932:55;8951:7;8960:8;;8932:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;;8932:55:3::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;8970:10;;-1:-1:-1;8932:55:3;-1:-1:-1;8982:4:3;;;;;;8932:55;::::1;8982:4:::0;;;;8932:55;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;8932:18:3::1;::::0;-1:-1:-1;;;8932:55:3:i:1;:::-;8642:350:::0;;;;;;:::o;11858:400::-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;1010:202:316;3343:88:3;12094:49:::1;12123:7;12132:10;12094:28;:49::i;:::-;12175:78;12204:7;12213:8;;12175:78;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;;12175:78:3::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;12223:17;;-1:-1:-1;12175:78:3;-1:-1:-1;12242:10:3;;;;;;12175:78;::::1;12242:10:::0;;;;12175:78;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;12175:28:3::1;::::0;-1:-1:-1;;;12175:78:3:i:1;5279:244:88:-:0;5423:17;5455:63;5481:7;5490:8;;5455:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5500:17:88;;-1:-1:-1;5455:25:88;;-1:-1:-1;;5455:63:88:i;:::-;5448:70;5279:244;-1:-1:-1;;;;;5279:244:88:o;18544:128:3:-;-1:-1:-1;;18586:15:3;18604:17;18644:18;18636:32;18544:128::o;6140:431::-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;1010:202:316;3343:88:3;6409:49:::1;6438:7;6447:10;6409:28;:49::i;:::-;6487:79;6507:7;6516:8;;6487:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;;6487:79:3::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;;-1:-1:-1;6526:10:3;;-1:-1:-1;6526:10:3;;;;6487:79;::::1;6526:10:::0;;;;6487:79;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;;6487:79:3::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;6538:14;;-1:-1:-1;6487:79:3;-1:-1:-1;6554:11:3;;;;;;6487:79;::::1;6554:11:::0;;;;6487:79;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;6487:19:3::1;::::0;-1:-1:-1;;;6487:79:3:i:1;:::-;6140:431:::0;;;;;;;;:::o;9401:392::-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;1010:202:316;3343:88:3;9643:49:::1;9672:7;9681:10;9643:28;:49::i;:::-;9720:68;9739:7;9748:8;;9720:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;;9720:68:3::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;9758:10;;-1:-1:-1;9720:68:3;-1:-1:-1;9770:4:3;;;;;;9720:68;::::1;9770:4:::0;;;;9720:68;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;9776:11:3;;-1:-1:-1;9720:18:3::1;::::0;-1:-1:-1;;9720:68:3:i:1;:::-;9401:392:::0;;;;;;;:::o;10325:404::-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;1010:202:316;3343:88:3;10573:49:::1;10602:7;10611:10;10573:28;:49::i;:::-;10650:74;10675:7;10684:8;;10650:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;;10650:74:3::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;10694:10;;-1:-1:-1;10650:74:3;-1:-1:-1;10706:4:3;;;;;;10650:74;::::1;10706:4:::0;;;;10650:74;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;10712:11:3;;-1:-1:-1;10650:24:3::1;::::0;-1:-1:-1;;10650:74:3:i:1;779:156:88:-:0;852:23;897:33;922:7;897:24;:33::i;:::-;883:47;779:156;-1:-1:-1;;779:156:88:o;14154:536:3:-;14281:12;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;1010:202:316;3343:88:3;14305:4:::1;-1:-1:-1::0;;;;;14305:20:3::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;14301:385;;14604:75;14637:10;14649:8;14659;14669:9;14604:32;:75::i;:::-;14597:82;;;;14301:385;14336:68;14365:10;14377:8:::0;14387:16:::1;14394:8:::0;14387:16:::1;:::i;14336:68::-;14412:23;14438:75;14471:10;14483:8;14493;14503:9;14438:32;:75::i;:::-;14412:101;;14521:29;:27;:29::i;2673:289:88:-:0;2811:23;2836:29;2867:24;2906:51;2926:7;2935:8;;2906:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2945:11:88;;-1:-1:-1;2906:19:88;;-1:-1:-1;;2906:51:88:i;:::-;2899:58;;;;;;2673:289;;;;;;;;:::o;7802:295::-;7985:12;8012:80;8043:7;8052:8;8062:17;8081:5;8088:3;8012:30;:80::i;13393:285:3:-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;1010:202:316;3343:88:3;13551:49:::1;13580:7;13589:10;13551:28;:49::i;:::-;13632:41;13655:7;13664:8;;13632:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;13632:22:3::1;::::0;-1:-1:-1;;;13632:41:3:i:1;15090:2990::-:0;15244:12;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;1010:202:316;3343:88:3;15345:10:::1;-1:-1:-1::0;;;;;15332:23:3;::::1;::::0;15328:442:::1;;15369:4;-1:-1:-1::0;;;;;15369:20:3::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;15365:399;;15680:75;15713:10;15725:8;15735;15745:9;15680:32;:75::i;:::-;15673:82;;;;15365:399;15402:68;15431:10;15443:8:::0;15453:16:::1;15460:8:::0;15453:16:::1;:::i;15402:68::-;15480:23;15506:75;15539:10;15551:8;15561;15571:9;15506:32;:75::i;:::-;15480:101;;15591:29;:27;:29::i;15365:399::-;15891:33;15927:75;15967:9;15989:10;15927:26;:75::i;:::-;15891:111;;16013:84;16031:22;16055:9;16066:10;16078:8;16088;16013:17;:84::i;:::-;16009:541;;;16152:4;-1:-1:-1::0;;;;;16152:20:3::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;16148:396;;16461:74;16494:9;16505:8;16515;16525:9;16461:32;:74::i;:::-;16454:81;;;;;16148:396;16185:67;16214:9:::0;16225:8;16235:16:::1;16242:8:::0;16235:16:::1;:::i;16185:67::-;16262:23;16288:74;16321:9;16332:8;16342;16352:9;16288:32;:74::i;:::-;16262:100;;16372:29;:27;:29::i;:::-;16418:10:::0;-1:-1:-1;16411:17:3::1;::::0;-1:-1:-1;16411:17:3::1;16148:396;16624:35;16662:75;16702:9;16732:1;16662:26;:75::i;:::-;16624:113;;16747:86;16765:24;16791:9;16802:10;16814:8;16824;16747:17;:86::i;:::-;16743:543;;;16888:4;-1:-1:-1::0;;;;;16888:20:3::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;16884:396;;17197:74;17230:9;17241:8;17251;17261:9;17197:32;:74::i;:::-;17190:81;;;;;;16884:396;16921:67;16950:9:::0;16961:8;16971:16:::1;16978:8:::0;16971:16:::1;:::i;16921:67::-;16998:23;17024:74;17057:9;17068:8;17078;17088:9;17024:32;:74::i;:::-;16998:100;;17108:29;:27;:29::i;:::-;17154:10:::0;-1:-1:-1;17147:17:3::1;::::0;-1:-1:-1;;17147:17:3::1;16884:396;17360:40;17403:58;17435:25;:8;:23;:25::i;:::-;17403:31;:58::i;:::-;17360:101;;17471:91;17489:29;17520:9;17531:10;17543:8;17553;17471:17;:91::i;:::-;17467:548;;;17617:4;-1:-1:-1::0;;;;;17617:20:3::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;17613:396;;17926:74;17959:9;17970:8;17980;17990:9;17926:32;:74::i;:::-;17919:81;;;;;;;17613:396;17650:67;17679:9:::0;17690:8;17700:16:::1;17707:8:::0;17700:16:::1;:::i;17650:67::-;17727:23;17753:74;17786:9;17797:8;17807;17817:9;17753:32;:74::i;:::-;17727:100;;17837:29;:27;:29::i;:::-;17883:10:::0;-1:-1:-1;17876:17:3::1;::::0;-1:-1:-1;;;17876:17:3::1;17613:396;18028:47;::::0;-1:-1:-1;;;18028:47:3;;-1:-1:-1;;;;;20203:15:316;;18028:47:3::1;::::0;::::1;20185:34:316::0;18064:10:3::1;20235:18:316::0;;;20228:43;20097:18;;18028:47:3::1;19950:327:316::0;4667:265:88;4832:12;4859:68;4884:7;4893:8;;4859:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4903:10:88;;-1:-1:-1;4915:11:88;;-1:-1:-1;4859:24:88;;-1:-1:-1;4859:68:88:i;18084:229:3:-;18214:12;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;1010:202:316;3343:88:3;18241:67:::1;18277:10;18289:8;18299;18241:35;:67::i;6537:258:88:-:0;6700:7;6722:68;6747:7;6756:8;6766:10;6778:11;6722:24;:68::i;5985:216::-;6119:7;6141:55;6166:7;6175:8;6185:10;6141:24;:55::i;4469:213:3:-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;1010:202:316;3343:88:3;4574:58:::1;-1:-1:-1::0;;;662:14:162::1;678:9:::0;625:63:::1;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;617:72;;;:::i;:::-;4621:10:3;4574:27;:58::i;:::-;4638:39;4657:6;4665:11;4638:18;:39::i;:::-;4469:213:::0;;:::o;6940:370::-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;1010:202:316;3343:88:3;7161:49:::1;7190:7;7199:10;7161:28;:49::i;:::-;7247:58;7274:7;7283:8;;7247:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;;7247:58:3::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;7293:5;;-1:-1:-1;7247:58:3;-1:-1:-1;7300:4:3;;;;;;7247:58;::::1;7300:4:::0;;;;7247:58;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;7247:26:3::1;::::0;-1:-1:-1;;;7247:58:3:i:1;7834:480::-:0;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;1010:202:316;3343:88:3;8120:49:::1;8149:7;8158:10;8120:28;:49::i;:::-;8207:102;8235:7;8244:8;;8207:102;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;;8207:102:3::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;8254:17;;-1:-1:-1;8273:16:3;;-1:-1:-1;8291:11:3;;8304:4;;;;;;8207:102;::::1;8304:4:::0;;;;8207:102;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;8207:27:3::1;::::0;-1:-1:-1;;;8207:102:3:i:1;3672:553::-:0;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;1010:202:316;3343:88:3;3815:10:::1;-1:-1:-1::0;;;;;3829:7:3::1;3815:21;;3811:109;;3872:28;-1:-1:-1::0;;;662:14:162::1;678:9:::0;625:63:::1;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;617:72;;;:::i;:::-;3872:26:3;:28::i;:::-;3902:10;3853:60;;-1:-1:-1::0;;;3853:60:3::1;;;;;;;;;:::i;3811:109::-;4011:1;3976:23;:21;:23::i;:::-;-1:-1:-1::0;;;;;3976:37:3::1;;3972:91;;4030:26;;-1:-1:-1::0;;;4030:26:3::1;;;;;;;;;;;3972:91;4069:42;4099:10;4069:21;:42::i;:::-;4207:12;::::0;;4217:1:::1;4207:12:::0;;::::1;::::0;::::1;::::0;;;4176:44:::1;::::0;4195:10;;4176:18:::1;:44::i;:::-;3672:553:::0;:::o;1974:247:88:-;2083:23;2108:29;2139:24;2178:38;2198:7;2207:8;;2178:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2178:19:88;;-1:-1:-1;;;2178:38:88:i;:::-;2171:45;;;;;;1974:247;;;;;;;:::o;3441:216::-;3571:17;3603:49;3622:7;3631:8;;3603:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3641:10:88;;-1:-1:-1;3603:18:88;;-1:-1:-1;;3603:49:88:i;1454:143::-;1525:16;1561:31;1584:7;1561:22;:31::i;12697:405:3:-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;1010:202:316;3343:88:3;12932:49:::1;12961:7;12970:10;12932:28;:49::i;:::-;13013:84;13043:7;13052:8;;13013:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;13062:17:3;;-1:-1:-1;13081:15:3;;-1:-1:-1;13013:29:3::1;::::0;-1:-1:-1;13013:84:3:i:1;:::-;12697:405:::0;;;;;:::o;7118:244:88:-;7266:7;7288:69;7320:7;7329:8;7339:17;7288:31;:69::i;1122:151::-;1195:18;1235:33;1260:7;1235:24;:33::i;11095:378:3:-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:3;;-1:-1:-1;;;;;;3416:7:3;;;3391:33;;;1154:52:316;1127:18;;3391:33:3;1010:202:316;3343:88:3;11322:49:::1;11351:7;11360:10;11322:28;:49::i;:::-;11399:69;11425:7;11434:8;;11399:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;;11399:69:3::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;11444:17;;-1:-1:-1;11399:69:3;-1:-1:-1;11463:4:3;;;;;;11399:69;::::1;11463:4:::0;;;;11399:69;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;11399:25:3::1;::::0;-1:-1:-1;;;11399:69:3:i:1;36171:541:86:-:0;36328:7;36465:242;36509:59;36550:7;36559:8;36509:40;:59::i;:::-;36586:31;;;;4323:19:66;:27;579:1:95;4322:44:66;4288:79;;;4275:93;36635:63:86;36674:11;36687:10;36635:38;:63::i;:::-;36465:17;:242::i;23107:355::-;23279:178;23313:7;23338:8;23368:63;23407:11;23420:10;23368:38;:63::i;:::-;23446:4;23279:16;:178::i;32759:1315::-;32889:23;32914:29;32945:24;33011:20;33034:30;:11;:28;:30::i;:::-;33011:53;;33125:65;33158:7;33167:8;33177:12;33125:32;:65::i;:::-;33112:78;;33254:24;33281:30;:11;:28;:30::i;:::-;33254:57;-1:-1:-1;33321:20:86;;33317:753;;33414:66;33462:7;33471:8;33414:47;:66::i;:::-;33397:83;-1:-1:-1;6445:61:65;;;-1:-1:-1;;;;;33532:33:86;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;33532:33:86;-1:-1:-1;33518:47:86;-1:-1:-1;894:4:81;884:15;;33573:21:86;33637:427;33655:16;33651:1;:20;;;33637:427;;;33688:27;33718:63;33760:7;33769:8;33779:1;33718:41;:63::i;:::-;33688:93;-1:-1:-1;33791:14:86;33808:25;:14;33831:1;7070:16:65;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;33808:25:86;33791:42;;33843:110;33874:19;33903:1;33914:6;33937:13;33843:12;:110::i;:::-;34032:23;34049:6;34032:23;;:::i;:::-;;;33678:386;;33673:3;;;;;:::i;:::-;;;;33637:427;;;;33343:727;33317:753;32971:1103;;32759:1315;;;;;;;:::o;8363:236:152:-;8474:19;8495:29;8569:25;8582:11;8569:12;:25::i;:::-;8532:62;;;;-1:-1:-1;8363:236:152;-1:-1:-1;;;;8363:236:152:o;6185:1003:141:-;6321:12;6335:17;6384:22;6409:26;6426:8;6409:16;:26::i;:::-;6384:51;;6512:9;6507:228;6527:5;:12;6523:1;:16;6507:228;;;6554:9;6576:5;6582:1;6576:8;;;;;;;;:::i;:::-;;;;;;;6554:31;;6597:34;458:6:169;6597:4:141;-1:-1:-1;;;;;6597:14:141;;;;:34;;;;:::i;:::-;6593:136;;;6643:77;;-1:-1:-1;;;6643:77:141;;3536:35:67;;;;;6643:49:141;;:77;;6693:6;;6701:8;;6711;;6643:77;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6593:136;-1:-1:-1;6541:3:141;;6507:228;;;;6810:78;6825:6;6840:5;6857:8;6877;6810:4;:78::i;:::-;6792:96;;-1:-1:-1;6792:96:141;-1:-1:-1;6963:9:141;6958:226;6978:5;:12;6974:1;:16;6958:226;;;7005:9;7027:5;7033:1;7027:8;;;;;;;;:::i;:::-;;;;;;;7005:31;;7048:33;586:6:169;7048:4:141;-1:-1:-1;;;;;7048:14:141;;;;:33;;;;:::i;:::-;7044:134;;;7093:76;;-1:-1:-1;;;7093:76:141;;3536:35:67;;;;;7093:48:141;;:76;;7142:6;;7150:8;;7160;;7093:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7044:134;-1:-1:-1;6992:3:141;;6958:226;;;;6354:834;6185:1003;;;;;;;:::o;348:217:168:-;551:6;545:13;538:4;530:6;526:17;519:40;35124:440:86;35275:12;35312:29;:11;:27;:29::i;:::-;35299:10;:42;;;35295:265;;;35358:82;35397:7;35406:8;35416:10;35428:11;35358:38;:82::i;:::-;35351:89;;;;35295:265;35468:85;35484:7;35493:8;35522:29;:11;:27;:29::i;:::-;35503:49;;:10;:49;:::i;:::-;35468:15;:85::i;2926:283:126:-;3089:30;3100:10;3112:6;3089:10;:30::i;:::-;3084:121;;3168:21;:10;:19;:21::i;:::-;3191:6;3136:62;;-1:-1:-1;;;3136:62:126;;;;;;;;;:::i;20949:192:86:-;21066:70;21075:7;21084:8;21094:10;21106:4;21112:23;21127:7;21112:14;:23::i;:::-;21066:8;:70::i;:::-;20949:192;;;;:::o;28764:791::-;29023:37;29063:66;29111:7;29120:8;29063:47;:66::i;:::-;29023:106;-1:-1:-1;29135:26:86;29171:49;29023:106;29202:17;7070:16:65;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;29171:49:86;29135:86;;29259:291;29313:7;29338:8;29373:17;29423:19;29464:1;29479:10;29521:22;29259:36;:291::i;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:65;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;37595:93:86;37440:12;:257::i;12066:286::-;12253:94;12263:7;12272:8;12282:10;12294:14;12310:11;12323:23;12338:7;12323:14;:23::i;:::-;12253:9;:94::i;22040:409::-;22223:29;:11;:27;:29::i;:::-;22210:10;:42;;;22206:239;;;22262:64;22277:7;22286:8;22296:10;22308:4;22314:11;22262:14;:64::i;:::-;22206:239;;;22347:91;22363:7;22372:8;22401:29;:11;:27;:29::i;:::-;22382:49;;:10;:49;:::i;:::-;22433:4;22347:15;:91::i;4015:652::-;4082:11;4318:64;;;4314:111;;-1:-1:-1;;;;1336:66:94;4015:652:86;-1:-1:-1;4015:652:86:o;4314:111::-;4469:185;4515:85;-1:-1:-1;;;4591:7:86;4515:40;:85::i;:::-;4620:2;4642:1;4469:17;:185::i;40903:1149::-;41080:12;41153:3;41145:5;:11;41141:83;;;41173:44;;-1:-1:-1;;;41173:44:86;;;;;21581:25:316;;;21622:18;;;21615:34;;;21554:18;;41173:44:86;21407:248:316;41141:83:86;41433:29;41465:66;41513:7;41522:8;41465:47;:66::i;:::-;41433:98;-1:-1:-1;41537:19:86;41559:41;41433:98;41582:17;7070:16:65;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;41559:41:86;41537:63;;41619:11;41610:5;:20;;:41;;;;41640:11;41634:3;:17;41610:41;41606:157;;;41704:11;41726;41717:5;:20;;:38;;41748:7;41754:1;41748:3;:7;:::i;:::-;41717:38;;;41740:5;41717:38;41668:88;;-1:-1:-1;;;41668:88:86;;;;;21581:25:316;;;;21622:18;;;21615:34;21554:18;;41668:88:86;21407:248:316;41606:157:86;41833:16;41852:79;41894:7;41903:8;41913:17;41852:41;:79::i;:::-;41833:98;;41963:78;41994:8;42012:5;42033;42027:3;:11;41963:12;:78::i;:::-;41956:85;40903:1149;-1:-1:-1;;;;;;;;;40903:1149:86:o;25552:145::-;25636:56;25649:7;25658:8;25668:23;25683:7;25668:14;:23::i;:::-;25636:12;:56::i;4219:406:161:-;4361:16;;;4375:1;4361:16;;;;;;;;4294:30;;;;4361:16;4375:1;4361:16;;;;;;;;;;-1:-1:-1;4361:16:161;4332:45;;4422:9;-1:-1:-1;;;;;4406:27:161;4398:36;;4383:9;4393:1;4383:12;;;;;;;;:::i;:::-;;;;;;:51;;;;;4479:9;-1:-1:-1;;;;;4463:27:161;4455:36;;4440:9;4450:1;4440:12;;;;;;;;:::i;:::-;;;;;;;;;;:51;4498:13;4514:62;1178:66;4549:9;4498:13;-1:-1:-1;;;4514:24:161;:62::i;2194:811:127:-;2366:4;2438:32;2450:19;2438:11;:32::i;:::-;2434:49;;;-1:-1:-1;2479:4:127;2472:11;;2434:49;810:53;2542:46;;-1:-1:-1;2583:5:127;2576:12;;2542:46;2702:12;2716:17;2737:193;2769:9;2922:1;2796:19;2876:9;2887:8;2897;2833:74;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;2833:74:127;;;;;;;;;;;;;;-1:-1:-1;;;;;2833:74:127;-1:-1:-1;;;2833:74:127;;;2737:15;:193::i;:::-;2701:229;;;;2942:7;2937:26;;2958:5;2951:12;;;;;;2937:26;2987:4;2976:24;;;;;;;;;;;;:::i;:::-;2969:31;2194:811;-1:-1:-1;;;;;;;;2194:811:127:o;2843:191:143:-;-1:-1:-1;;;2955:46:143;-1:-1:-1;;;2954:74:143;;2843:191::o;3931:329:155:-;4059:16;;;4073:1;4059:16;;;;;;;;;3992:30;;;;4059:16;;;;;;;;;;;;-1:-1:-1;4059:16:155;4030:45;;4114:11;4081:9;4091:1;4081:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;4133:13;4149:62;1183:66;4184:9;4133:13;-1:-1:-1;;;4149:24:155;:62::i;2663:339:1:-;2790:17;2816:12;2830:23;2857:70;2878:6;2896:8;2916;2857:10;:70::i;:::-;2815:112;;;;2938:7;2933:41;;2947:27;2963:10;2947:15;:27::i;38966:427:86:-;39123:7;39138:21;39168:29;:11;:27;:29::i;:::-;39138:60;;39221:15;39208:28;;:10;:28;;;39204:185;;;39253:31;;;;4323:19:66;:27;579:1:95;4322:44:66;4288:79;;;4275:93;39253:31:86;39246:38;;;;;39204:185;39312:70;39334:7;39343:8;39353:28;39366:15;39353:10;:28;:::i;:::-;39312:21;:70::i;38319:225::-;38447:7;38469:70;38484:7;38493:8;38503:10;38515:23;38530:7;38515:14;:23::i;:::-;38469:14;:70::i;4186:234:126:-;4324:6;-1:-1:-1;;;;;4272:58:126;:48;4292:27;:10;:25;:27::i;:::-;4272:19;:48::i;:::-;-1:-1:-1;;;;;4272:58:126;;4268:148;;4379:21;:10;:19;:21::i;4874:570:3:-;5030:60;5055:6;-1:-1:-1;;;5030:16:3;:60::i;:::-;5097:210;5172:10;5200:1;5225:6;5287:11;5250:50;;;;;;;;:::i;:::-;;;;-1:-1:-1;;5250:50:3;;;;;;;;;;;;;;-1:-1:-1;;;;;5250:50:3;-1:-1:-1;;;5250:50:3;;;5097:55;:210::i;:::-;;5371:68;5401:6;5420:11;5410:22;;;;;;5434:4;5371:21;:68::i;17013:1682:86:-;-1:-1:-1;;;17192:7:86;-1:-1:-1;;;;;;17192:44:86;;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:97;17798:4:86;-1:-1:-1;;;;;17798:14:86;;;;:41;;;;:::i;:::-;17794:236;;;17851:170;;-1:-1:-1;;;17851:170:86;;3536:35:67;;;;;17851:54:86;;:170;;17927:7;;17956:8;;17983:5;;18006:4;;17851:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17794:236;-1:-1:-1;17742:3:86;;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:97;18455:4:86;-1:-1:-1;;;;;18455:14:86;;;;:40;;;;:::i;:::-;18451:234;;;18507:169;;-1:-1:-1;;;18507:169:86;;3536:35:67;;;;;18507:53:86;;:169;;18582:7;;18611:8;;18638:5;;18661:4;;18507:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18451:234;-1:-1:-1;18399:3:86;;18365:326;;19594:539;19800:328;19854:7;19879:8;19914:17;19957:16;19994:11;20019:4;20055:66;20103:7;20112:8;20055:47;:66::i;:::-;19800:36;:328::i;3486:592:143:-;3550:13;3620:10;451:5:82;2637:44:143;;;3571:19;3718;3620:10;3718:7;:19::i;:::-;3695:42;-1:-1:-1;3800:12:143;-1:-1:-1;;;;;;3839:35:143;;;:102;;3888:53;-1:-1:-1;;;;;;3888:53:143;;:34;:53::i;:::-;3839:102;;;;;;;;;;;;;;;;-1:-1:-1;;;3839:102:143;;;;-1:-1:-1;;;;;;3968:25:143;;;:87;;4007:48;4042:12;4007:34;:48::i;:::-;3968:87;;;;;;;;;;;;;;;;-1:-1:-1;;;3968:87:143;;;;3772:293;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3743:330;;;;;3486:592;;;:::o;3133:234:153:-;3221:16;;;3171:13;3221:16;;;;;;;;;3244:13;3260:64;1085:66;3192:45;3244:13;-1:-1:-1;;;3260:26:153;:64::i;:::-;3338:23;;;3133:234;-1:-1:-1;;;3133:234:153:o;4151:191::-;4223:16;;;4194:26;4223:16;;;;;;;;24684:2:316;24680:15;;;-1:-1:-1;;24676:53:316;4297:25:153;;;24664:66:316;4297:25:153;;;;;24746:12:316;4297:25:153;;;24746:12:316;;;4297:25:153;;;4223:16;;4246:91;;1085:66;;4223:16;;4194:26;-1:-1:-1;;;4246:26:153;:91::i;31958:254:86:-;32059:23;32084:29;32115:24;32154:53;32164:7;32173:8;32183:23;32198:7;32183:14;:23::i;:::-;32154:9;:53::i;:::-;32147:60;;;;;;31958:254;;;;;:::o;34503:218::-;34625:12;34652:64;34661:7;34670:8;34680:10;34692:23;34707:7;34692:14;:23::i;:::-;34652:8;:64::i;4927:379::-;4992:16;5028:29;5049:7;5028:20;:29::i;:::-;5016:41;;5171:31;5194:7;5171:22;:31::i;:::-;5166:136;;5252:7;5285;5268:25;;;;;;19892:19:316;;19936:2;19927:12;;19763:182;5268:25:86;;;;-1:-1:-1;;5268:25:86;;;;;;;;;;-1:-1:-1;;;5219:76:86;;;;;;;;:::i;5166:136::-;4927:379;;;:::o;30235:834::-;30495:37;30535:66;30583:7;30592:8;30535:47;:66::i;:::-;30495:106;-1:-1:-1;30607:26:86;30643:49;30495:106;30674:17;7070:16:65;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;30643:49:86;30607:86;-1:-1:-1;30731:333:86;30785:7;30810:8;30845:17;30895:37;30917:15;30895:37;;;;:::i;:::-;30991:12;;;31001:1;30991:12;;;;;;;;30961:15;;31035:22;30731:36;:333::i;39909:262::-;40051:7;40073:93;40148:17;40073:66;40121:7;40130:8;40073:47;:66::i;5574:273::-;5641:18;5681:31;5704:7;5681:22;:31::i;:::-;5667:45;-1:-1:-1;5550:35:83;5718:125:86;;5793:7;5826;5809:25;;;;;;19892:19:316;;19936:2;19927:12;;19763:182;24152:738:86;24403:37;24443:66;24491:7;24500:8;24443:47;:66::i;:::-;24403:106;-1:-1:-1;24515:26:86;24551:49;24403:106;24582:17;7070:16:65;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;24551:49:86;24515:86;;24608:277;24662:7;24687:8;24722:17;24765:1;24787:19;24820:4;24856:22;24608:36;:277::i;50806:191::-;50908:7;50972;50981:8;50955:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;50955:35:86;;;;;;;;;50945:46;;50955:35;50945:46;;;;42361:22;50938:53;;50806:191;-1:-1:-1;;;50806:191:86:o;51823:242::-;51919:7;;;51958:84;51978:10;51974:14;;:1;:14;51958:84;;;52003:32;4275:93:66;4323:19;:27;;;579:1:95;4322:44:66;4288:79;;;4275:93;52003:32:86;;:::i;:::-;;-1:-1:-1;51990:3:86;;51958:84;;;-1:-1:-1;52054:6:86;51823:242;-1:-1:-1;;;51823:242:86:o;8945:812:85:-;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:85;;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;4598:171:66:-;4672:7;579:1:95;1354:13;1366:1;376:2;1354:13;:::i;:::-;1353:30;;;;:::i;:::-;4694:70:66;;;;;4598:171;-1:-1:-1;4598:171:66:o;48823:360:86:-;48949:12;48973:6;48983:1;48973:11;48969:26;;-1:-1:-1;48986:9:86;;;;;;;;;-1:-1:-1;48986:9:86;;;;48969:26;49036:16;49055:41;49078:7;49087:8;49055:22;:41::i;:::-;49036:60;;49109:69;49140:8;49158:1;49169:6;49109:12;:69::i;5377:173:66:-;5451:7;579:1:95;1704;;1684:13;1696:1;376:2;1684:13;:::i;:::-;:17;;;;:::i;:::-;:21;;;;:::i;:::-;1683:38;;;;:::i;:::-;5487:11:66;5466:79;5479:65;;5466:79;;5377:173;-1:-1:-1;;5377:173:66:o;53939:303:86:-;54060:14;54154:82;54185:48;54215:7;54224:8;54185:29;:48::i;:::-;4711:21:85;;4605:137;52742:274:86;52886:7;52991;53000:8;52974:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;52964:46;;;;;;52943:17;52936:25;;-1:-1:-1;;;;;52916:45:86;;42433:34;52916:45;:94;52908:103;;52901:110;;52742:274;;;;;:::o;6076:2380:85:-;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:95;804:25:96;;782:48;6806:135:85;;;-1:-1:-1;;;579:1:95;804:25:96;;782:48;6806:135:85;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:85;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:85;;;;7974:2;7957:19;7760:253;;;8081:10;;8077:375;;8101:12;-1:-1:-1;;579:1:95;804:25:96;;782:48;8389:20:85;;8299:21;;8322:9;;8295:37;8385:31;;8244:184;8201:237;;-1:-1:-1;6076:2380:85;;;;:::o;7963:242:152:-;35423:4:64;35409:27;;35403:34;35409:27;;;35403:34;8028:19:152;;8173:26;8147:53;;7963:242;;;:::o;3857:344:158:-;3974:16;;;3988:1;3974:16;;;;;;;;;3915:22;;3945:26;;3974:16;;;;;;;;;;;;-1:-1:-1;3974:16:158;3945:45;;4029:8;3996:9;4006:1;3996:12;;;;;;;;:::i;:::-;;;;;;;;;;:42;4045:18;4066:49;1163:66;4102:9;4045:18;4066:25;:49::i;:::-;4045:70;;4129:66;:44;4150:5;4157:1;4160:5;:12;4129:20;:44::i;:::-;:64;:66::i;3035:136:67:-;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;1761:1387:141:-;1888:12;1902:17;1956:21;1979:17;2000:22;2013:8;2000:12;:22::i;:::-;1955:67;;-1:-1:-1;1955:67:141;-1:-1:-1;;;;;;2067:27:141;;2063:106;;2139:8;2149:19;:8;:17;:19::i;:::-;2103:66;;-1:-1:-1;;;2103:66:141;;;;;;;;;:::i;2063:106::-;2275:12;2270:65;;2289:46;2318:8;2328:6;2289:28;:46::i;:::-;2414:9;;2410:197;;2433:22;2458:25;:8;:23;:25::i;:::-;2433:50;;2491:22;2516:26;2530:11;2516:13;:26::i;:::-;2491:51;-1:-1:-1;2550:50:141;2564:11;2577:22;2594:5;2491:51;2577:22;:::i;2550:50::-;2425:182;;2410:197;2709:14;2682:23;:8;451:5:82;2637:44:143;;2539:148;2682:23:141;-1:-1:-1;;;;;;2682:41:141;;:461;;2983:160;3044:6;3070:5;3093:13;3126:8;2983:39;:160::i;:::-;2682:461;;;2806:168;2875:6;2901:5;2924:13;2957:8;2806:47;:168::i;:::-;2664:479;;;;-1:-1:-1;1761:1387:141;-1:-1:-1;;;;;;;1761:1387:141:o;4979:171:66:-;5052:7;579:1:95;1532;1516:13;1528:1;376:2;1516:13;:::i;49648:511:86:-;49811:12;49953:201;49992:41;50015:7;50024:8;49992:22;:41::i;:::-;50051:45;50072:11;50085:10;50051:20;:45::i;:::-;50114:31;;;;4323:19:66;:27;579:1:95;4322:44:66;4288:79;;;4275:93;37440:12:86;:257::i;1670:328:126:-;1752:4;1894:56;1914:27;:10;:25;:27::i;:::-;1943:6;1894:19;:56::i;:::-;:99;;;;1954:39;1974:10;1986:6;1954:19;:39::i;44254:4001:86:-;-1:-1:-1;;;44652:7:86;-1:-1:-1;;;;;;44652:35:86;;44648:161;;-1:-1:-1;;;44759:7:86;44792;44775:25;;;;;;19892:19:316;;19936:2;19927:12;;19763:182;44775:25:86;;;;-1:-1:-1;;44775:25:86;;;;;;;;;;-1:-1:-1;;;44704:98:86;;;;;;;;;:::i;44648:161::-;44815:27;44845:49;:22;44876:17;7070:16:65;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;44845:49:86;44815:79;;44900:26;44965:4;:11;44951;44929:33;;:19;:33;;;;:::i;:::-;:47;;;;:::i;:::-;44900:76;;45248:18;45225:19;:41;;:98;;;;-1:-1:-1;45304:19:86;45270:30;45289:11;45270:16;:30;:::i;:::-;:53;;;;45225:98;45221:218;;;45340:92;;-1:-1:-1;;;45340:92:86;;27068:12:316;27107:15;;;45340:92:86;;;27089:34:316;27159:15;;;27139:18;;;27132:43;27211:15;;27191:18;;;27184:43;27031:18;;45340:92:86;26862:371:316;45221:218:86;45545:19;45526:16;:38;;;45522:140;;;45581:74;;-1:-1:-1;;;45581:74:86;;;;;27411:25:316;;;27484:12;27472:25;;27452:18;;;27445:53;27384:18;;45581:74:86;27238:266:316;45522:140:86;45701:36;45740:72;:22;45774:17;45793:18;45740:33;:72::i;:::-;45701:111;;45959:22;45984:24;46000:7;45984:15;:24::i;:::-;45959:49;;46019:9;46014:486;46034:5;:12;46030:1;:16;46014:486;;;46061:9;46083:5;46089:1;46083:8;;;;;;;;:::i;:::-;;;;;;;46061:31;;46104:42;836:6:97;46104:4:86;-1:-1:-1;;;;;46104:14:86;;;;:42;;;;:::i;:::-;46100:394;;;3536:35:67;;;;-1:-1:-1;;;;;46158:55:86;;46235:7;46264:8;46303:17;46350:16;46391:11;46430:22;46470:4;46158:327;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;46100:394;-1:-1:-1;46048:3:86;;46014:486;;;-1:-1:-1;46558:32:86;;;:13;46698:107;46716:17;46712:21;;:1;:21;;;46698:107;;;46761:33;:22;46792:1;7070:16:65;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;46761:33:86;46752:42;;;;46735:3;;46698:107;;;;46930:7;46874:277;46957:8;46994:17;47035:5;47064:11;47101:21;47138:4;46874:277;;;;;;;;;;;:::i;:::-;;;;;;;;46506:652;47243:18;47220:19;:41;47216:248;;47271:31;47305:48;47335:7;47344:8;47305:29;:48::i;:::-;695:28:85;;;-1:-1:-1;47216:248:86;47521:27;47551:61;47575:7;47584:8;47594:17;47551:23;:61::i;:::-;47521:91;;47620:92;47652:19;47681:16;47620:92;;47705:4;47620:13;:92::i;:::-;47513:206;47773:9;47768:483;47788:5;:12;47784:1;:16;47768:483;;;47815:9;47837:5;47843:1;47837:8;;;;;;;;:::i;:::-;;;;;;;47815:31;;47858:41;947:6:97;47858:4:86;-1:-1:-1;;;;;47858:14:86;;;;:41;;;;:::i;:::-;47854:391;;;3536:35:67;;;;-1:-1:-1;;;;;47911:54:86;;47987:7;48016:8;48055:17;48102:16;48143:11;48182:21;48221:4;47911:325;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;47854:391;-1:-1:-1;47802:3:86;;47768:483;;;;44498:3757;;;;44254:4001;;;;;;;:::o;5042:669:85:-;5458:4;5452:11;5499:4;5487:17;;-1:-1:-1;;5373:16:85;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;13212:3165:86:-;-1:-1:-1;;;13486:7:86;-1:-1:-1;;;;;;13486:44:86;;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:97;13976:4:86;-1:-1:-1;;;;;13976:14:86;;;;:33;;;;:::i;:::-;13972:248;;;14021:190;;-1:-1:-1;;;14021:190:86;;3536:35:67;;;;;14021:47:86;;:190;;14080:7;;14099:8;;14119:10;;14141:14;;14167:11;;14190;;14021:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13972:248;-1:-1:-1;13920:3:86;;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:86;894:4:81;884:15;;14520:54:86;;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:85;;;14915:102:86;-1:-1:-1;894:4:81;884:15;;15191:47:86;;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:86;:14;15615:1;7070:16:65;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;15592:25:86;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:86;;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:97;16125:4:86;-1:-1:-1;;;;;16125:14:86;;;;:32;;;;:::i;:::-;16121:246;;;16169:189;;-1:-1:-1;;;16169:189:86;;3536:35:67;;;;;16169:46:86;;:189;;16227:7;;16246:8;;16266:10;;16288:14;;16314:11;;16337;;16169:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16121:246;-1:-1:-1;16069:3:86;;16035:338;;;;13422:2955;;;13212:3165;;;;;;:::o;51249:282::-;51494:30;;;;;;30996:19:316;;;31031:12;;;31024:28;;;51337:7:86;;31068:12:316;;51494:30:86;30807:279:316;26296:1804:86;-1:-1:-1;;;26463:7:86;-1:-1:-1;;;;;;26463:44:86;;26459:173;;26593:7;26561:50;26602:8;26561:50;;;;;;:::i;:::-;;;;;;;;26296:1804;;;:::o;26459:173::-;26773:22;26798:24;26814:7;26798:15;:24::i;:::-;26773:49;;26833:9;26828:235;26848:5;:12;26844:1;:16;26828:235;;;26875:9;26897:5;26903:1;26897:8;;;;;;;;:::i;:::-;;;;;;;26875:31;;26918:36;1049:6:97;26918:4:86;-1:-1:-1;;;;;26918:14:86;;;;:36;;;;:::i;:::-;26914:143;;;26966:82;;-1:-1:-1;;;26966:82:86;;3536:35:67;;;;;26966:50:86;;:82;;27017:7;;27026:8;;27036:11;;26966:82;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26914:143;-1:-1:-1;26862:3:86;;26828:235;;;;27143:7;27111:50;27152:8;27111:50;;;;;;:::i;:::-;;;;;;;;27194:26;27223:59;27264:7;27273:8;27223:40;:59::i;:::-;27194:88;;27288:113;27320:18;27348:1;27367:30;:11;:28;:30::i;:::-;-1:-1:-1;;;;;27357:41:86;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27357:41:86;;27288:13;:113::i;:::-;27620:1;27587:30;:11;:28;:30::i;:::-;:34;27583:236;;;27631:33;27667:66;27715:7;27724:8;27667:47;:66::i;:::-;27631:102;;27741:71;27772:25;27807:2;27741:12;:71::i;:::-;27623:196;27583:236;27868:9;27863:233;27883:5;:12;27879:1;:16;27863:233;;;27910:9;27932:5;27938:1;27932:8;;;;;;;;:::i;:::-;;;;;;;27910:31;;27953:35;1149:6:97;27953:4:86;-1:-1:-1;;;;;27953:14:86;;;;:35;;;;:::i;:::-;27949:141;;;28000:81;;-1:-1:-1;;;28000:81:86;;3536:35:67;;;;;28000:49:86;;:81;;28050:7;;28059:8;;28069:11;;28000:81;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27949:141;-1:-1:-1;27897:3:86;;27863:233;;1129:181:127;1205:4;-1:-1:-1;;;798:14:162;-1:-1:-1;;;764:71:162;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;756:80;;;:::i;:::-;1224:81:127;;;;1129:181;-1:-1:-1;1129:181:127:o;1480:797:1:-;1599:12;1613:17;1667:21;1690:17;1711:22;1724:8;1711:12;:22::i;:::-;1666:67;;-1:-1:-1;1666:67:1;-1:-1:-1;;;;;;1778:27:1;;1774:106;;1850:8;1860:19;:8;:17;:19::i;1774:106::-;1986:12;1981:65;;2000:46;2029:8;2039:6;2000:28;:46::i;:::-;2133:139;2204:6;2226:13;2257:8;2133:51;:139::i;:::-;2115:157;;;;-1:-1:-1;1480:797:1;-1:-1:-1;;;;;;1480:797:1:o;3750:306:156:-;3861:16;;;3875:1;3861:16;;;;;;;;;3811:13;;;;3861:16;;;;;;;;;;;;-1:-1:-1;3861:16:156;3832:45;;3916:11;3883:9;3893:1;3883:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;3935:13;3951:62;1169:66;3986:9;3935:13;-1:-1:-1;;;3951:24:156;:62::i;:::-;4027:23;;;3750:306;-1:-1:-1;;;;3750:306:156:o;692:238:167:-;777:61;809:15;826:11;777:31;:61::i;:::-;772:156;;853:70;;-1:-1:-1;;;853:70:167;;-1:-1:-1;;;;;32020:55:316;;853:70:167;;;32002:74:316;-1:-1:-1;;;;;;32112:33:316;;32092:18;;;32085:61;31975:18;;853:70:167;31830:322:316;8777:415:142;8932:17;8958:12;8972:18;8994:133;9037:9;9064:8;9088:6;9112:8;8994:23;:133::i;5584:340:154:-;5706:16;;;5720:1;5706:16;;;;;;;;5677:26;;5706:16;;;;;;;;;;-1:-1:-1;5706:16:154;5677:45;;5767:13;-1:-1:-1;;;;;5751:31:154;5743:40;;5728:9;5738:1;5728:12;;;;;;;;:::i;:::-;;;;;;:55;;;;;5804:13;5789:9;5799:1;5789:12;;;;;;;;:::i;:::-;;;;;;:28;;;;;5824:95;1084:66;1068:83;;5859:9;5870:1;5891:11;5873:31;;;;;;32308:14:316;32301:22;32296:3;32292:32;32280:45;;32350:1;32341:11;;32157:201;5873:31:154;;;;-1:-1:-1;;5873:31:154;;;;;;;;;-1:-1:-1;;;5824:24:154;:95::i;3656:342:93:-;3772:16;;;3786:1;3772:16;;;;;;;;;3713:22;;3743:26;;3772:16;;;;;;;;;;;;-1:-1:-1;3772:16:93;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;966:162:85:-;1055:68;1061:14;1077:6;1085:4;:11;1098:24;1117:4;894::81;884:15;;758:151;1098:24:85;1055:5;:68::i;3165:160:143:-;3228:7;3292:26;438:6;451:5:82;3292:26:143;:::i;:::-;3258:61;;;;;3165:160;-1:-1:-1;3165:160:143:o;1862:325::-;1932:13;1953:14;1973:83;1989:2;1980:6;:11;1973:83;;;-1:-1:-1;;;;;;2007:37:143;;3261:1:64;3257:13;;3253:24;-1:-1:-1;;;;;;2007:42:143;2003:53;2051:5;2003:53;1993:8;;1973:83;;;2092:30;;;-1:-1:-1;;;;;;32504:52:316;;2092:30:143;;;32492:65:316;2092:30:143;;32573:12:316;;;;2092:30:143;;;875:21:64;;;2092:30:143;2142:39;760:164:64;17775:457:89;17932:7;17947:21;17971:17;:15;:17::i;:::-;17947:41;-1:-1:-1;18023:4:89;-1:-1:-1;;;;;17998:30:89;;;17994:234;;18045:68;18070:7;18079:8;18089:10;18101:11;18045:24;:68::i;17994:234::-;18141:80;;-1:-1:-1;;;18141:80:89;;-1:-1:-1;;;;;18141:36:89;;;;;:80;;18178:7;;18187:8;;18197:10;;18209:11;;18141:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;10761:455::-;10933:21;10957:17;:15;:17::i;:::-;10933:41;-1:-1:-1;11009:4:89;-1:-1:-1;;;;;10984:30:89;;;10980:232;;11024:74;11049:7;11058:8;11068:10;11080:4;11086:11;11024:24;:74::i;:::-;10980:232;;;11119:86;;-1:-1:-1;;;11119:86:89;;-1:-1:-1;;;;;11119:36:89;;;;;:86;;11156:7;;11165:8;;11175:10;;11187:4;;11193:11;;11119:86;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4729:312:94;4848:16;;;4862:1;4848:16;;;;;;;;;4795;;;;4848;;;;;;;;;;;;-1:-1:-1;4848:16:94;4819:45;;4903:7;4870:9;4880:1;4870:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;4918:13;4934:62;-1:-1:-1;;;4969:9:94;4980:1;-1:-1:-1;;;4934:24:94;:62::i;2856:314:92:-;2970:16;;;2984:1;2970:16;;;;;;;;;2922:11;;;;2970:16;;;;;;;;;;;;-1:-1:-1;2970:16:92;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:92;:62::i;:::-;3043:78;;3135:29;3156:5;3143:20;;1650:10:82;1541:126;6111:316:94;6234:16;;;6248:1;6234:16;;;;;;;;;6179:18;;;;6234:16;;;;;;;;;;;;-1:-1:-1;6234:16:94;6205:45;;6289:7;6256:9;6266:1;6256:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;6304:13;6320:62;-1:-1:-1;;;6355:9:94;6366:1;-1:-1:-1;;;6320:24:94;:62::i;53371:230:86:-;53492:7;53576;53585:8;53559:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;53559:35:86;;;;;;;;;53549:46;;53559:35;53549:46;;;;42524:40;53522:73;;53371:230;-1:-1:-1;;;53371:230:86:o;2003:574:84:-;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;;-1:-1:-1;;;2222:48:84;;;;;;;;;;:::i;2177:93::-;2336:4;2326:15;;2383:16;2394:5;2326:15;2383:16;:::i;:::-;;-1:-1:-1;2405:12:84;2420:11;2426:5;2420:3;:11;:::i;:::-;692:17;2555:15;2547:3;2536:14;;;;2535:36;;;;;;-1:-1:-1;;;;;2003:574:84:o;40103:220:99:-;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;5928:433:160:-;6056:16;;;6070:1;6056:16;;;;;;;;;5986:14;;;;;;6056:16;;;;;;;;;;;-1:-1:-1;6056:16:160;6027:45;;6111:8;6078:9;6088:1;6078:12;;;;;;;;:::i;:::-;;;;;;;;;;:42;6128:24;;;6215:78;1155:66;6258:9;-1:-1:-1;;;6215:19:160;:78::i;:::-;6127:166;;;;;;6306:50;6313:11;6326:15;6343:12;6306:6;:50::i;5594:317:142:-;5733:12;5747:17;5790:6;-1:-1:-1;;;;;5790:11:142;5810:1;5821:79;5847:8;5868:9;5889:8;5821:13;:79::i;:::-;5790:116;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5772:134:142;;;;-1:-1:-1;5594:317:142;-1:-1:-1;;;;;5594:317:142:o;7139:321::-;7286:12;7300:17;7343:6;-1:-1:-1;;;;;7343:19:142;7370:79;7396:8;7417:9;7438:8;7370:13;:79::i;:::-;7343:112;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4006:378:157;4130:16;;;4144:1;4130:16;;;;;;;;4082:11;;;;4130:16;4144:1;4130:16;;;;;;;;;;-1:-1:-1;4130:16:157;4101:45;;4185:10;4152:9;4162:1;4152:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;4241:6;-1:-1:-1;;;;;4225:24:157;4217:33;;4202:9;4212:1;4202:12;;;;;;;;:::i;:::-;;;;;;;;;;:48;4257:13;4273:62;1169:66;4308:9;4257:13;-1:-1:-1;;;4273:24:157;:62::i;:::-;4257:78;;4349:29;4370:5;4357:20;;1650:10:82;1541:126;7468:1525:65;7596:14;1145:16;7622:25;;7618:120;;;7664:67;;-1:-1:-1;;;7664:67:65;;;;;8360:25:316;;;8333:18;;7664:67:65;8181:210:316;7618:120:65;7802:14;6445:61;;;7070:16;;;1063;7070;975;7059:27;7017:70;;;6995:94;;8068:38;;;8064:192;;8151:19;8133:15;:37;8118:52;;;;8064:192;;;8232:15;8210:19;:37;8195:52;;;;8064:192;-1:-1:-1;8572:16:65;975;1063;8439;;;;8428:27;8564:35;;;8882:5;-1:-1:-1;;8699:46:65;;;;8698:62;;;8862:25;;;;8892:34;;;;;8861:66;;-1:-1:-1;7468:1525:65;;;;;:::o;1489:2340:85:-;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:95;804:25:96;;782:48;2208:18:85;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:85;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:85;;;;3346:2;3329:19;3132:253;;;3453:10;;3449:376;;3473:12;-1:-1:-1;;579:1:95;804:25:96;;782:48;3761:21:85;;3672:20;;3694:9;;3668:36;3757:32;;3617:184;3573:238;;-1:-1:-1;1489:2340:85;;;;:::o;4032:370::-;4154:13;4203:2;4188:11;:6;4197:2;4188:11;:::i;:::-;4187:18;;;;:::i;:::-;4170:35;;:14;:35;:::i;:::-;4154:51;;4211:187;4235:5;4218:14;:22;4211:187;;;4333:1;4317:14;4310:25;4382:1;4366:14;4362:22;4344:40;;4211:187;;1492:329:2;1620:12;1634:17;1677:6;-1:-1:-1;;;;;1677:17:2;1702:72;1728:8;1749:9;1770:1;1702:13;:72::i;:::-;1677:139;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1659:157:2;;;;-1:-1:-1;1492:329:2;-1:-1:-1;;;;1492:329:2:o;1312:272:129:-;1399:4;1498:23;1513:7;1498:14;:23::i;:::-;:81;;;;;1525:54;1558:7;1567:11;1525:32;:54::i;1836:227:89:-;1066:42;1925:22;1886:7;;-1:-1:-1;;;;;1925:22:89;;1953:106;;2001:10;1994:17;;;1836:227;:::o;2681:1129:101:-;2801:22;2831:21;2855;:11;2997:3:84;2975:25;;2901:104;2855:21:101;2831:45;-1:-1:-1;692:17:84;3238:38;;2882:20:101;3044:11;3238:38:84;3044:11:101;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;7829:207:160:-;7940:14;7956:17;8006:25;8019:11;8006:12;:25::i;4897:201:142:-;5019:12;5063:8;5073:9;5084:8;5046:47;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;5039:54;;4897:201;;;;;:::o;708:400:129:-;772:4;961:68;994:7;-1:-1:-1;;;961:32:129;:68::i;:::-;:142;;;;-1:-1:-1;1040:63:129;1073:7;-1:-1:-1;;;;;;1040:32:129;:63::i;:::-;1039:64;948:155;708:400;-1:-1:-1;;708:400:129:o;4132:576::-;4295:56;;-1:-1:-1;;;;;;1172:33:316;;4295:56:129;;;1154:52:316;4234:4:129;;;;1127:18:316;;4295:56:129;;;-1:-1:-1;;4295:56:129;;;;;;;;;;;;;;;-1:-1:-1;;;;;4295:56:129;-1:-1:-1;;;4295:56:129;;;4533:20;;4295:56;;-1:-1:-1;;;;;;;4295:56:129;;-1:-1:-1;;4498:7:129;4491:5;4480:86;4469:97;;4587:16;4573:30;;4631:4;4625:11;4610:26;;4655:7;:29;;;;;4680:4;4666:10;:18;;4655:29;:48;;;;;4702:1;4688:11;:15;4655:48;4648:55;4132:576;-1:-1:-1;;;;;;;4132:576:129:o;7448:223:160:-;35423:4:64;35409:27;;35403:34;35409:27;;;35403:34;7564:35:160;;;;;;7513:14;;7631:33;;7623:42;1541:126:82;14:427:316;-1:-1:-1;;;;;;209:28:316;;;;197:41;;-1:-1:-1;;;;;;267:56:316;;;;263:1;254:11;;247:77;-1:-1:-1;;;;;;354:52:316;349:2;340:12;;333:74;432:2;423:12;;14:427::o;446:297::-;564:12;;611:4;600:16;;;594:23;;564:12;629:16;;626:111;;;723:1;719:6;709;703:4;699:17;696:1;692:25;688:38;681:5;677:50;668:59;;626:111;;446:297;;;:::o;748:127::-;809:10;804:3;800:20;797:1;790:31;840:4;837:1;830:15;864:4;861:1;854:15;880:125;945:9;;;966:10;;;963:36;;;979:18;;:::i;1217:361::-;1334:12;;1382:4;1371:16;;1365:23;-1:-1:-1;;;;;;1445:11:316;;;;1334:12;1365:23;1479:1;1468:13;;1465:107;;;1559:2;1553;1543:6;1540:1;1536:14;1533:1;1529:22;1525:31;1521:2;1517:40;1513:49;1504:58;;1465:107;;;;1217:361;;;:::o;1814:367::-;1877:8;1887:6;1941:3;1934:4;1926:6;1922:17;1918:27;1908:55;;1959:1;1956;1949:12;1908:55;-1:-1:-1;1982:20:316;;-1:-1:-1;;;;;2014:30:316;;2011:50;;;2057:1;2054;2047:12;2011:50;2094:4;2086:6;2082:17;2070:29;;2154:3;2147:4;2137:6;2134:1;2130:14;2122:6;2118:27;2114:38;2111:47;2108:67;;;2171:1;2168;2161:12;2108:67;1814:367;;;;;:::o;2186:156::-;2252:20;;2312:4;2301:16;;2291:27;;2281:55;;2332:1;2329;2322:12;2347:709;2523:6;2531;2539;2547;2555;2608:3;2596:9;2587:7;2583:23;2579:33;2576:53;;;2625:1;2622;2615:12;2576:53;2661:9;2648:23;2638:33;;2722:2;2711:9;2707:18;2694:32;-1:-1:-1;;;;;2741:6:316;2738:30;2735:50;;;2781:1;2778;2771:12;2735:50;2820:70;2882:7;2873:6;2862:9;2858:22;2820:70;:::i;:::-;2909:8;;-1:-1:-1;2794:96:316;-1:-1:-1;2963:36:316;;-1:-1:-1;2995:2:316;2980:18;;2963:36;:::i;:::-;2347:709;;;;-1:-1:-1;2347:709:316;;3046:2;3031:18;3018:32;;2347:709;-1:-1:-1;;2347:709:316:o;3061:250::-;3146:1;3156:113;3170:6;3167:1;3164:13;3156:113;;;3246:11;;;3240:18;3227:11;;;3220:39;3192:2;3185:10;3156:113;;;-1:-1:-1;;3303:1:316;3285:16;;3278:27;3061:250::o;3316:270::-;3357:3;3395:5;3389:12;3422:6;3417:3;3410:19;3438:76;3507:6;3500:4;3495:3;3491:14;3484:4;3477:5;3473:16;3438:76;:::i;:::-;3568:2;3547:15;-1:-1:-1;;3543:29:316;3534:39;;;;3575:4;3530:50;;3316:270;-1:-1:-1;;3316:270:316:o;3591:217::-;3738:2;3727:9;3720:21;3701:4;3758:44;3798:2;3787:9;3783:18;3775:6;3758:44;:::i;3813:347::-;3864:8;3874:6;3928:3;3921:4;3913:6;3909:17;3905:27;3895:55;;3946:1;3943;3936:12;3895:55;-1:-1:-1;3969:20:316;;-1:-1:-1;;;;;4001:30:316;;3998:50;;;4044:1;4041;4034:12;3998:50;4081:4;4073:6;4069:17;4057:29;;4133:3;4126:4;4117:6;4109;4105:19;4101:30;4098:39;4095:59;;;4150:1;4147;4140:12;4165:916;4319:6;4327;4335;4343;4351;4359;4412:3;4400:9;4391:7;4387:23;4383:33;4380:53;;;4429:1;4426;4419:12;4380:53;4465:9;4452:23;4442:33;;4526:2;4515:9;4511:18;4498:32;-1:-1:-1;;;;;4590:2:316;4582:6;4579:14;4576:34;;;4606:1;4603;4596:12;4576:34;4645:70;4707:7;4698:6;4687:9;4683:22;4645:70;:::i;:::-;4734:8;;-1:-1:-1;4619:96:316;-1:-1:-1;4619:96:316;;-1:-1:-1;4788:36:316;4820:2;4805:18;;4788:36;:::i;:::-;4778:46;;4877:2;4866:9;4862:18;4849:32;4833:48;;4906:2;4896:8;4893:16;4890:36;;;4922:1;4919;4912:12;4890:36;;4961:60;5013:7;5002:8;4991:9;4987:24;4961:60;:::i;:::-;4165:916;;;;-1:-1:-1;4165:916:316;;-1:-1:-1;4165:916:316;;5040:8;;4165:916;-1:-1:-1;;;4165:916:316:o;5086:607::-;5220:6;5228;5236;5244;5297:2;5285:9;5276:7;5272:23;5268:32;5265:52;;;5313:1;5310;5303:12;5265:52;5349:9;5336:23;5326:33;;5410:2;5399:9;5395:18;5382:32;-1:-1:-1;;;;;5429:6:316;5426:30;5423:50;;;5469:1;5466;5459:12;5423:50;5508:70;5570:7;5561:6;5550:9;5546:22;5508:70;:::i;:::-;5597:8;;-1:-1:-1;5482:96:316;-1:-1:-1;5651:36:316;;-1:-1:-1;5683:2:316;5668:18;;5651:36;:::i;:::-;5641:46;;5086:607;;;;;;;:::o;5698:1238::-;5910:6;5918;5926;5934;5942;5950;5958;5966;6019:3;6007:9;5998:7;5994:23;5990:33;5987:53;;;6036:1;6033;6026:12;5987:53;6072:9;6059:23;6049:33;;6133:2;6122:9;6118:18;6105:32;-1:-1:-1;;;;;6197:2:316;6189:6;6186:14;6183:34;;;6213:1;6210;6203:12;6183:34;6252:70;6314:7;6305:6;6294:9;6290:22;6252:70;:::i;:::-;6341:8;;-1:-1:-1;6226:96:316;-1:-1:-1;6429:2:316;6414:18;;6401:32;;-1:-1:-1;6445:16:316;;;6442:36;;;6474:1;6471;6464:12;6442:36;6513:60;6565:7;6554:8;6543:9;6539:24;6513:60;:::i;:::-;6592:8;;-1:-1:-1;6487:86:316;-1:-1:-1;6674:2:316;6659:18;;6646:32;;-1:-1:-1;6731:3:316;6716:19;;6703:33;;-1:-1:-1;6748:16:316;;;6745:36;;;6777:1;6774;6767:12;6745:36;;6816:60;6868:7;6857:8;6846:9;6842:24;6816:60;:::i;:::-;5698:1238;;;;-1:-1:-1;5698:1238:316;;-1:-1:-1;5698:1238:316;;;;;;6895:8;-1:-1:-1;;;5698:1238:316:o;6941:1018::-;7137:6;7145;7153;7161;7169;7177;7185;7238:3;7226:9;7217:7;7213:23;7209:33;7206:53;;;7255:1;7252;7245:12;7206:53;7291:9;7278:23;7268:33;;7352:2;7341:9;7337:18;7324:32;-1:-1:-1;;;;;7416:2:316;7408:6;7405:14;7402:34;;;7432:1;7429;7422:12;7402:34;7471:70;7533:7;7524:6;7513:9;7509:22;7471:70;:::i;:::-;7560:8;;-1:-1:-1;7445:96:316;-1:-1:-1;7445:96:316;;-1:-1:-1;7614:36:316;7646:2;7631:18;;7614:36;:::i;:::-;7604:46;;7703:2;7692:9;7688:18;7675:32;7659:48;;7732:2;7722:8;7719:16;7716:36;;;7748:1;7745;7738:12;7716:36;;7787:60;7839:7;7828:8;7817:9;7813:24;7787:60;:::i;:::-;6941:1018;;;;-1:-1:-1;6941:1018:316;;;;;;7948:3;7933:19;;;7920:33;;6941:1018;-1:-1:-1;;;;6941:1018:316:o;7964:212::-;8055:6;8108:2;8096:9;8087:7;8083:23;8079:32;8076:52;;;8124:1;8121;8114:12;8076:52;-1:-1:-1;8147:23:316;;7964:212;-1:-1:-1;7964:212:316:o;8396:127::-;8457:10;8452:3;8448:20;8445:1;8438:31;8488:4;8485:1;8478:15;8512:4;8509:1;8502:15;8528:275;8599:2;8593:9;8664:2;8645:13;;-1:-1:-1;;8641:27:316;8629:40;;-1:-1:-1;;;;;8684:34:316;;8720:22;;;8681:62;8678:88;;;8746:18;;:::i;:::-;8782:2;8775:22;8528:275;;-1:-1:-1;8528:275:316:o;8808:530::-;8850:5;8903:3;8896:4;8888:6;8884:17;8880:27;8870:55;;8921:1;8918;8911:12;8870:55;8957:6;8944:20;-1:-1:-1;;;;;8979:2:316;8976:26;8973:52;;;9005:18;;:::i;:::-;9049:55;9092:2;9073:13;;-1:-1:-1;;9069:27:316;9098:4;9065:38;9049:55;:::i;:::-;9129:2;9120:7;9113:19;9175:3;9168:4;9163:2;9155:6;9151:15;9147:26;9144:35;9141:55;;;9192:1;9189;9182:12;9141:55;9257:2;9250:4;9242:6;9238:17;9231:4;9222:7;9218:18;9205:55;9305:1;9280:16;;;9298:4;9276:27;9269:38;;;;9284:7;8808:530;-1:-1:-1;;;8808:530:316:o;9343:420::-;9452:6;9460;9513:2;9501:9;9492:7;9488:23;9484:32;9481:52;;;9529:1;9526;9519:12;9481:52;9565:9;9552:23;9542:33;;9626:2;9615:9;9611:18;9598:32;-1:-1:-1;;;;;9645:6:316;9642:30;9639:50;;;9685:1;9682;9675:12;9639:50;9708:49;9749:7;9740:6;9729:9;9725:22;9708:49;:::i;:::-;9698:59;;;9343:420;;;;;:::o;9768:638::-;9937:6;9945;9953;9961;10014:2;10002:9;9993:7;9989:23;9985:32;9982:52;;;10030:1;10027;10020:12;9982:52;10066:9;10053:23;10043:33;;10127:2;10116:9;10112:18;10099:32;-1:-1:-1;;;;;10146:6:316;10143:30;10140:50;;;10186:1;10183;10176:12;10140:50;10225:70;10287:7;10278:6;10267:9;10263:22;10225:70;:::i;:::-;9768:638;;10314:8;;-1:-1:-1;10199:96:316;;10396:2;10381:18;10368:32;;9768:638;-1:-1:-1;;;;9768:638:316:o;10411:484::-;10668:2;10657:9;10650:21;10631:4;10694:44;10734:2;10723:9;10719:18;10711:6;10694:44;:::i;:::-;10774:6;10769:2;10758:9;10754:18;10747:34;10829:9;10821:6;10817:22;10812:2;10801:9;10797:18;10790:50;10857:32;10882:6;10874;10857:32;:::i;11082:712::-;11136:5;11189:3;11182:4;11174:6;11170:17;11166:27;11156:55;;11207:1;11204;11197:12;11156:55;11243:6;11230:20;11269:4;-1:-1:-1;;;;;11288:2:316;11285:26;11282:52;;;11314:18;;:::i;:::-;11360:2;11357:1;11353:10;11383:28;11407:2;11403;11399:11;11383:28;:::i;:::-;11445:15;;;11515;;;11511:24;;;11476:12;;;;11547:15;;;11544:35;;;11575:1;11572;11565:12;11544:35;11611:2;11603:6;11599:15;11588:26;;11623:142;11639:6;11634:3;11631:15;11623:142;;;11705:17;;11693:30;;11656:12;;;;11743;;;;11623:142;;11799:656;11949:6;11957;11965;11973;11981;12034:3;12022:9;12013:7;12009:23;12005:33;12002:53;;;12051:1;12048;12041:12;12002:53;12087:9;12074:23;12064:33;;12148:2;12137:9;12133:18;12120:32;-1:-1:-1;;;;;12167:6:316;12164:30;12161:50;;;12207:1;12204;12197:12;12161:50;12230:61;12283:7;12274:6;12263:9;12259:22;12230:61;:::i;:::-;12220:71;;;12310:36;12342:2;12331:9;12327:18;12310:36;:::i;:::-;11799:656;;;;-1:-1:-1;12300:46:316;;12393:2;12378:18;;12365:32;;-1:-1:-1;12444:3:316;12429:19;12416:33;;11799:656;-1:-1:-1;;11799:656:316:o;12460:537::-;12587:6;12595;12603;12656:2;12644:9;12635:7;12631:23;12627:32;12624:52;;;12672:1;12669;12662:12;12624:52;12708:9;12695:23;12685:33;;12769:2;12758:9;12754:18;12741:32;-1:-1:-1;;;;;12788:6:316;12785:30;12782:50;;;12828:1;12825;12818:12;12782:50;12867:70;12929:7;12920:6;12909:9;12905:22;12867:70;:::i;:::-;12460:537;;12956:8;;-1:-1:-1;12841:96:316;;-1:-1:-1;;;;12460:537:316:o;13871:154::-;-1:-1:-1;;;;;13950:5:316;13946:54;13939:5;13936:65;13926:93;;14015:1;14012;14005:12;14030:555;14148:6;14156;14164;14217:2;14205:9;14196:7;14192:23;14188:32;14185:52;;;14233:1;14230;14223:12;14185:52;14272:9;14259:23;14291:31;14316:5;14291:31;:::i;:::-;14341:5;-1:-1:-1;14393:2:316;14378:18;;14365:32;;-1:-1:-1;14448:2:316;14433:18;;14420:32;-1:-1:-1;;;;;14464:30:316;;14461:50;;;14507:1;14504;14497:12;14461:50;14530:49;14571:7;14562:6;14551:9;14547:22;14530:49;:::i;:::-;14520:59;;;14030:555;;;;;:::o;14590:620::-;14764:6;14772;14780;14788;14841:3;14829:9;14820:7;14816:23;14812:33;14809:53;;;14858:1;14855;14848:12;14809:53;14894:9;14881:23;14871:33;;14955:2;14944:9;14940:18;14927:32;-1:-1:-1;;;;;14974:6:316;14971:30;14968:50;;;15014:1;15011;15004:12;14968:50;15037:61;15090:7;15081:6;15070:9;15066:22;15037:61;:::i;:::-;15027:71;;;15117:36;15149:2;15138:9;15134:18;15117:36;:::i;:::-;14590:620;;;;-1:-1:-1;15107:46:316;;15200:2;15185:18;15172:32;;-1:-1:-1;;14590:620:316:o;15215:518::-;15347:6;15355;15363;15416:2;15404:9;15395:7;15391:23;15387:32;15384:52;;;15432:1;15429;15422:12;15384:52;15468:9;15455:23;15445:33;;15529:2;15518:9;15514:18;15501:32;-1:-1:-1;;;;;15548:6:316;15545:30;15542:50;;;15588:1;15585;15578:12;15542:50;15611:61;15664:7;15655:6;15644:9;15640:22;15611:61;:::i;:::-;15601:71;;;15691:36;15723:2;15712:9;15708:18;15691:36;:::i;:::-;15681:46;;15215:518;;;;;:::o;15738:472::-;15832:6;15840;15893:2;15881:9;15872:7;15868:23;15864:32;15861:52;;;15909:1;15906;15899:12;15861:52;15948:9;15935:23;15967:31;15992:5;15967:31;:::i;:::-;16017:5;-1:-1:-1;16073:2:316;16058:18;;16045:32;-1:-1:-1;;;;;16089:30:316;;16086:50;;;16132:1;16129;16122:12;16215:1014;16370:6;16378;16386;16394;16402;16410;16463:3;16451:9;16442:7;16438:23;16434:33;16431:53;;;16480:1;16477;16470:12;16431:53;16516:9;16503:23;16493:33;;16577:2;16566:9;16562:18;16549:32;-1:-1:-1;;;;;16641:2:316;16633:6;16630:14;16627:34;;;16657:1;16654;16647:12;16627:34;16696:70;16758:7;16749:6;16738:9;16734:22;16696:70;:::i;:::-;16785:8;;-1:-1:-1;16670:96:316;-1:-1:-1;16870:2:316;16855:18;;16842:32;;-1:-1:-1;16914:14:316;16903:26;;16893:37;;16883:65;;16944:1;16941;16934:12;16883:65;16967:5;;-1:-1:-1;17025:2:316;17010:18;;16997:32;;17041:16;;;17038:36;;;17070:1;17067;17060:12;17234:165;17301:20;;17361:12;17350:24;;17340:35;;17330:63;;17389:1;17386;17379:12;17404:1062;17574:6;17582;17590;17598;17606;17614;17622;17630;17683:3;17671:9;17662:7;17658:23;17654:33;17651:53;;;17700:1;17697;17690:12;17651:53;17736:9;17723:23;17713:33;;17797:2;17786:9;17782:18;17769:32;-1:-1:-1;;;;;17861:2:316;17853:6;17850:14;17847:34;;;17877:1;17874;17867:12;17847:34;17916:70;17978:7;17969:6;17958:9;17954:22;17916:70;:::i;:::-;18005:8;;-1:-1:-1;17890:96:316;-1:-1:-1;17890:96:316;;-1:-1:-1;18059:36:316;18091:2;18076:18;;18059:36;:::i;:::-;18049:46;;18114:37;18147:2;18136:9;18132:18;18114:37;:::i;:::-;18104:47;;18170:38;18203:3;18192:9;18188:19;18170:38;:::i;:::-;18160:48;;18261:3;18250:9;18246:19;18233:33;18217:49;;18291:2;18281:8;18278:16;18275:36;;;18307:1;18304;18297:12;18471:264;18547:6;18600:2;18588:9;18579:7;18575:23;18571:32;18568:52;;;18616:1;18613;18606:12;18568:52;18655:9;18642:23;18674:31;18699:5;18674:31;:::i;19631:127::-;19692:10;19687:3;19683:20;19680:1;19673:31;19723:4;19720:1;19713:15;19747:4;19744:1;19737:15;20282:339;20459:2;20448:9;20441:21;20422:4;20479:44;20519:2;20508:9;20504:18;20496:6;20479:44;:::i;:::-;20471:52;;-1:-1:-1;;;;;20563:6:316;20559:55;20554:2;20543:9;20539:18;20532:83;20282:339;;;;;:::o;20626:175::-;20663:3;20707:4;20700:5;20696:16;20736:4;20727:7;20724:17;20721:43;;20744:18;;:::i;:::-;20793:1;20780:15;;20626:175;-1:-1:-1;;20626:175:316:o;20806:440::-;-1:-1:-1;;;;;21045:6:316;21041:55;21030:9;21023:74;21133:6;21128:2;21117:9;21113:18;21106:34;21176:2;21171;21160:9;21156:18;21149:30;21004:4;21196:44;21236:2;21225:9;21221:18;21213:6;21196:44;:::i;21251:151::-;21341:4;21334:12;;;21320;;;21316:31;;21359:14;;21356:40;;;21376:18;;:::i;21660:128::-;21727:9;;;21748:11;;;21745:37;;;21762:18;;:::i;21793:277::-;21860:6;21913:2;21901:9;21892:7;21888:23;21884:32;21881:52;;;21929:1;21926;21919:12;21881:52;21961:9;21955:16;22014:5;22007:13;22000:21;21993:5;21990:32;21980:60;;22036:1;22033;22026:12;22075:439;22128:3;22166:5;22160:12;22193:6;22188:3;22181:19;22219:4;22248;22243:3;22239:14;22232:21;;22287:4;22280:5;22276:16;22310:1;22320:169;22334:6;22331:1;22328:13;22320:169;;;22395:13;;22383:26;;22429:12;;;;22464:15;;;;22356:1;22349:9;22320:169;;;-1:-1:-1;22505:3:316;;22075:439;-1:-1:-1;;;;;22075:439:316:o;22519:511::-;22770:2;22759:9;22752:21;22733:4;22796:56;22848:2;22837:9;22833:18;22825:6;22796:56;:::i;:::-;22900:14;22892:6;22888:27;22883:2;22872:9;22868:18;22861:55;22964:9;22956:6;22952:22;22947:2;22936:9;22932:18;22925:50;22992:32;23017:6;23009;22992:32;:::i;23035:616::-;23346:6;23335:9;23328:25;23389:3;23384:2;23373:9;23369:18;23362:31;23309:4;23416:57;23468:3;23457:9;23453:19;23445:6;23416:57;:::i;:::-;23521:14;23513:6;23509:27;23504:2;23493:9;23489:18;23482:55;23585:9;23577:6;23573:22;23568:2;23557:9;23553:18;23546:50;23613:32;23638:6;23630;23613:32;:::i;23656:874::-;24114:5;24109:3;24105:15;24097:6;24093:28;24088:3;24081:41;24063:3;-1:-1:-1;;;24173:2:316;24169:1;24164:3;24160:11;24153:23;24205:6;24199:13;24221:74;24288:6;24284:1;24279:3;24275:11;24268:4;24260:6;24256:17;24221:74;:::i;:::-;24323:6;24318:3;24314:16;24304:26;;24358:2;24354:1;24350:2;24346:10;24339:22;24392:6;24386:13;24370:29;;24408:75;24474:8;24470:1;24466:2;24462:10;24455:4;24447:6;24443:17;24408:75;:::i;:::-;24503:17;24522:1;24499:25;;23656:874;-1:-1:-1;;;;;23656:874:316:o;24988:322::-;25197:6;25186:9;25179:25;25240:2;25235;25224:9;25220:18;25213:30;25160:4;25260:44;25300:2;25289:9;25285:18;25277:6;25260:44;:::i;25315:640::-;25566:6;25561:3;25554:19;25536:3;25592:2;25625;25620:3;25616:12;25657:6;25651:13;25722:2;25714:6;25710:15;25743:1;25753:175;25767:6;25764:1;25761:13;25753:175;;;25830:13;;25816:28;;25866:14;;;;25903:15;;;;25789:1;25782:9;25753:175;;;-1:-1:-1;25944:5:316;;25315:640;-1:-1:-1;;;;;;;25315:640:316:o;25960:127::-;26021:10;26016:3;26012:20;26009:1;26002:31;26052:4;26049:1;26042:15;26076:4;26073:1;26066:15;26092:168;26165:9;;;26196;;26213:15;;;26207:22;;26193:37;26183:71;;26234:18;;:::i;26265:413::-;26521:5;26516:3;26512:15;26504:6;26500:28;26489:9;26482:47;26565:6;26560:2;26549:9;26545:18;26538:34;26608:2;26603;26592:9;26588:18;26581:30;26463:4;26628:44;26668:2;26657:9;26653:18;26645:6;26628:44;:::i;26683:174::-;26750:12;26782:10;;;26794;;;26778:27;;26817:11;;;26814:37;;;26831:18;;:::i;:::-;26814:37;26683:174;;;;:::o;27509:901::-;27934:6;27923:9;27916:25;27977:3;27972:2;27961:9;27957:18;27950:31;27897:4;28004:57;28056:3;28045:9;28041:19;28033:6;28004:57;:::i;:::-;28109:4;28097:17;;28092:2;28077:18;;28070:45;28134:12;28182:15;;;28177:2;28162:18;;28155:43;28235:15;;28229:3;28214:19;;28207:44;28282:3;28267:19;;28260:35;;;28332:22;;;28326:3;28311:19;;28304:51;28372:32;28336:6;28389;28372:32;:::i;:::-;28364:40;27509:901;-1:-1:-1;;;;;;;;;;27509:901:316:o;28415:788::-;28780:3;28769:9;28762:22;28743:4;28807:57;28859:3;28848:9;28844:19;28836:6;28807:57;:::i;:::-;28912:4;28904:6;28900:17;28895:2;28884:9;28880:18;28873:45;28966:14;28958:6;28954:27;28949:2;28938:9;28934:18;28927:55;29030:12;29022:6;29018:25;29013:2;29002:9;28998:18;28991:53;29081:6;29075:3;29064:9;29060:19;29053:35;29137:9;29129:6;29125:22;29119:3;29108:9;29104:19;29097:51;29165:32;29190:6;29182;29165:32;:::i;29208:690::-;29543:3;29532:9;29525:22;29506:4;29570:57;29622:3;29611:9;29607:19;29599:6;29570:57;:::i;:::-;29675:9;29667:6;29663:22;29658:2;29647:9;29643:18;29636:50;29709:32;29734:6;29726;29709:32;:::i;:::-;29695:46;;29777:6;29772:2;29761:9;29757:18;29750:34;29832:9;29824:6;29820:22;29815:2;29804:9;29800:18;29793:50;29860:32;29885:6;29877;29860:32;:::i;29903:899::-;30359:6;30348:9;30341:25;30402:3;30397:2;30386:9;30382:18;30375:31;30322:4;30429:57;30481:3;30470:9;30466:19;30458:6;30429:57;:::i;:::-;30534:9;30526:6;30522:22;30517:2;30506:9;30502:18;30495:50;30568:32;30593:6;30585;30568:32;:::i;:::-;30554:46;;30636:6;30631:2;30620:9;30616:18;30609:34;30692:9;30684:6;30680:22;30674:3;30663:9;30659:19;30652:51;30720:32;30745:6;30737;30720:32;:::i;:::-;30712:40;;;30789:6;30783:3;30772:9;30768:19;30761:35;29903:899;;;;;;;;;:::o;31091:261::-;31270:2;31259:9;31252:21;31233:4;31290:56;31342:2;31331:9;31327:18;31319:6;31290:56;:::i;31357:468::-;31657:6;31646:9;31639:25;31700:2;31695;31684:9;31680:18;31673:30;31620:4;31720:56;31772:2;31761:9;31757:18;31749:6;31720:56;:::i;:::-;31712:64;;31812:6;31807:2;31796:9;31792:18;31785:34;31357:468;;;;;;:::o;32596:548::-;32920:6;32909:9;32902:25;32963:3;32958:2;32947:9;32943:18;32936:31;32883:4;32984:57;33036:3;33025:9;33021:19;33013:6;32984:57;:::i;:::-;33089:4;33077:17;;;;33072:2;33057:18;;33050:45;-1:-1:-1;33126:2:316;33111:18;33104:34;32976:65;32596:548;-1:-1:-1;;32596:548:316:o;33149:184::-;33219:6;33272:2;33260:9;33251:7;33247:23;33243:32;33240:52;;;33288:1;33285;33278:12;33240:52;-1:-1:-1;33311:16:316;;33149:184;-1:-1:-1;33149:184:316:o;33338:709::-;33708:6;33697:9;33690:25;33751:3;33746:2;33735:9;33731:18;33724:31;33671:4;33778:57;33830:3;33819:9;33815:19;33807:6;33778:57;:::i;:::-;33883:4;33875:6;33871:17;33866:2;33855:9;33851:18;33844:45;33937:9;33929:6;33925:22;33920:2;33909:9;33905:18;33898:50;33965:32;33990:6;33982;33965:32;:::i;:::-;33957:40;;;34034:6;34028:3;34017:9;34013:19;34006:35;33338:709;;;;;;;;:::o;34052:359::-;34255:2;34244:9;34237:21;34218:4;34275:44;34315:2;34304:9;34300:18;34292:6;34275:44;:::i;:::-;34350:2;34335:18;;34328:34;;;;-1:-1:-1;34393:2:316;34378:18;34371:34;34267:52;34052:359;-1:-1:-1;34052:359:316:o;34416:287::-;34545:3;34583:6;34577:13;34599:66;34658:6;34653:3;34646:4;34638:6;34634:17;34599:66;:::i;:::-;34681:16;;;;;34416:287;-1:-1:-1;;34416:287:316:o;34708:217::-;34748:1;34774;34764:132;;34818:10;34813:3;34809:20;34806:1;34799:31;34853:4;34850:1;34843:15;34881:4;34878:1;34871:15;34764:132;-1:-1:-1;34910:9:316;;34708:217::o;34930:495::-;35115:3;35153:6;35147:13;35169:66;35228:6;35223:3;35216:4;35208:6;35204:17;35169:66;:::i;:::-;35304:2;35300:15;;;;-1:-1:-1;;35296:53:316;35257:16;;;;35282:68;;;35377:2;35366:14;;35359:30;;;;35416:2;35405:14;;34930:495;-1:-1:-1;;34930:495:316:o","linkReferences":{},"immutableReferences":{"112":[{"start":1009,"length":32},{"start":5711,"length":32}]}},"methodIdentifiers":{"call(bytes32,bytes)":"3ae7af08","callFrom(address,bytes32,bytes)":"894ecc58","callStatic(bytes32,bytes)":"96f0f0cd","creator()":"02d05d3f","deleteRecord(bytes32,bytes32[])":"505a181d","getDynamicField(bytes32,bytes32[],uint8)":"1e788977","getDynamicFieldLength(bytes32,bytes32[],uint8)":"dbbf0e21","getDynamicFieldSlice(bytes32,bytes32[],uint8,uint256,uint256)":"4dc77d97","getField(bytes32,bytes32[],uint8)":"d03edb8c","getField(bytes32,bytes32[],uint8,bytes32)":"05242d2f","getFieldLayout(bytes32)":"3a77c2c2","getFieldLength(bytes32,bytes32[],uint8)":"a53417ed","getFieldLength(bytes32,bytes32[],uint8,bytes32)":"9f1fcf0a","getKeySchema(bytes32)":"d4285dc2","getRecord(bytes32,bytes32[])":"cc49db7e","getRecord(bytes32,bytes32[],bytes32)":"419b58fd","getStaticField(bytes32,bytes32[],uint8,bytes32)":"8c364d59","getValueSchema(bytes32)":"e228a4a3","getWorldCallContext()":"afdb73d4","getWorldCallContext(uint256)":"87ce4598","getWorldCallCount()":"489f6a92","initialize(address)":"c4d66de8","installRootModule(address,bytes)":"af068c9e","popFromDynamicField(bytes32,bytes32[],uint8,uint256)":"d9c03a04","pushToDynamicField(bytes32,bytes32[],uint8,bytes)":"150f3262","setDynamicField(bytes32,bytes32[],uint8,bytes)":"ef6ea862","setField(bytes32,bytes32[],uint8,bytes)":"114a7266","setField(bytes32,bytes32[],uint8,bytes,bytes32)":"3708196e","setRecord(bytes32,bytes32[],bytes,bytes32,bytes)":"298314fb","setStaticField(bytes32,bytes32[],uint8,bytes,bytes32)":"390baae0","spliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes)":"c0a2895a","spliceStaticData(bytes32,bytes32[],uint48,bytes)":"b047c1eb","staticCallCheck()":"1e8545ff","storeVersion()":"c1122229","worldVersion()":"6951955d"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"EncodedLengths_InvalidLength\",\"type\":\"error\"},{\"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\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessedIndex\",\"type\":\"uint256\"}],\"name\":\"Store_IndexOutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidFieldNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidKeyNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"fieldLength\",\"type\":\"uint40\"}],\"name\":\"Store_InvalidSplice\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaDynamicLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaStaticLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"resource\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"World_AccessDenied\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_AlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_CallbackNotAllowed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"World_DelegationNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"balance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"World_InsufficientBalance\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"World_InterfaceNotSupported\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes14\",\"name\":\"namespace\",\"type\":\"bytes14\"}],\"name\":\"World_InvalidNamespace\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceId\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"system\",\"type\":\"address\"}],\"name\":\"World_SystemAlreadyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_UnlimitedDelegationNotAllowed\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"storeVersion\",\"type\":\"bytes32\"}],\"name\":\"HelloStore\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"worldVersion\",\"type\":\"bytes32\"}],\"name\":\"HelloWorld\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"Store_DeleteRecord\",\"type\":\"event\"},{\"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\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceStaticData\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"call\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"callFrom\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"callStatic\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"creator\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"deleteRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"}],\"name\":\"getDynamicField\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"}],\"name\":\"getDynamicFieldLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"getDynamicFieldSlice\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getField\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"}],\"name\":\"getField\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"}],\"name\":\"getFieldLayout\",\"outputs\":[{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getFieldLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"}],\"name\":\"getFieldLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"}],\"name\":\"getKeySchema\",\"outputs\":[{\"internalType\":\"Schema\",\"name\":\"keySchema\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getRecord\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"getRecord\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getStaticField\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"data\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"}],\"name\":\"getValueSchema\",\"outputs\":[{\"internalType\":\"Schema\",\"name\":\"valueSchema\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"callCount\",\"type\":\"uint256\"}],\"name\":\"getWorldCallContext\",\"outputs\":[{\"internalType\":\"ResourceId\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getWorldCallContext\",\"outputs\":[{\"internalType\":\"ResourceId\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getWorldCallCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IModule\",\"name\":\"initModule\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IModule\",\"name\":\"module\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"encodedArgs\",\"type\":\"bytes\"}],\"name\":\"installRootModule\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"byteLengthToPop\",\"type\":\"uint256\"}],\"name\":\"popFromDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"dataToPush\",\"type\":\"bytes\"}],\"name\":\"pushToDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"setField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"setRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"setStaticField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"spliceDynamicData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"spliceStaticData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"staticCallCheck\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"storeVersion\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"worldVersion\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"author\":\"MUD (https://mud.dev) by Lattice (https://lattice.xyz)\",\"details\":\"This contract is the core \\\"World\\\" contract containing various methods for data manipulation, system calls, and dynamic function selector handling.World doesn't inherit `Store` because the `IStoreRegistration` methods are added via the `InitModule`.\",\"errors\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"params\":{\"length\":\"The length of the encoded lengths.\"}}],\"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_IndexOutOfBounds(uint256,uint256)\":[{\"details\":\"Raised if the start index is larger than the previous length of the field.\",\"params\":{\"accessedIndex\":\"FIXME\",\"length\":\"FIXME\"}}],\"Store_InvalidBounds(uint256,uint256)\":[{\"params\":{\"end\":\"The end index within the dynamic field for the slice operation (exclusive).\",\"start\":\"The start index within the dynamic field for the slice operation (inclusive).\"}}],\"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_InvalidSplice(uint40,uint40,uint40)\":[{\"details\":\"Raised if the splice total length of the field is changed but the splice is not at the end of the field.\",\"params\":{\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"fieldLength\":\"The field length for the splice operation.\",\"startWithinField\":\"The start index within the field for the splice operation.\"}}],\"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).\"}}],\"Store_TableNotFound(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.\"}}],\"World_CallbackNotAllowed(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector of the disallowed callback.\"}}],\"World_DelegationNotFound(address,address)\":[{\"params\":{\"delegatee\":\"The address of the delegatee.\",\"delegator\":\"The address of the delegator.\"}}],\"World_FunctionSelectorAlreadyExists(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_InsufficientBalance(uint256,uint256)\":[{\"params\":{\"amount\":\"The amount needed.\",\"balance\":\"The current balance.\"}}],\"World_InterfaceNotSupported(address,bytes4)\":[{\"params\":{\"contractAddress\":\"The address of the contract in question.\",\"interfaceId\":\"The ID of the interface.\"}}],\"World_InvalidNamespace(bytes14)\":[{\"params\":{\"namespace\":\"The invalid namespace.\"}}],\"World_InvalidResourceId(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_ResourceAlreadyExists(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_ResourceNotFound(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_SystemAlreadyExists(address)\":[{\"params\":{\"system\":\"The address of the system.\"}}]},\"events\":{\"HelloStore(bytes32)\":{\"params\":{\"storeVersion\":\"The protocol version of the Store.\"}},\"HelloWorld(bytes32)\":{\"params\":{\"worldVersion\":\"The protocol version of the World.\"}},\"Store_DeleteRecord(bytes32,bytes32[])\":{\"params\":{\"keyTuple\":\"An array representing the composite key for the record.\",\"tableId\":\"The ID of the table where the record is deleted.\"}},\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"params\":{\"dynamicData\":\"The dynamic data of the record.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"staticData\":\"The static data of the record.\",\"tableId\":\"The ID of the table where the record is set.\"}},\"Store_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"params\":{\"data\":\"The data to insert into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"dynamicFieldIndex\":\"The index of the dynamic field to splice data, relative to the start of the dynamic fields. (Dynamic field index = field index - number of static fields)\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"start\":\"The start position in bytes for the splice operation.\",\"tableId\":\"The ID of the table where the data is spliced.\"}},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"details\":\"In static data, data is always overwritten starting at the start position, so the total length of the data remains the same and no data is shifted.\",\"params\":{\"data\":\"The data to write to the static data of the record at the start byte.\",\"keyTuple\":\"An array representing the key for the record.\",\"start\":\"The start position in bytes for the splice operation.\",\"tableId\":\"The ID of the table where the data is spliced.\"}}},\"kind\":\"dev\",\"methods\":{\"call(bytes32,bytes)\":{\"details\":\"If system is private, caller must have appropriate access.\",\"params\":{\"callData\":\"The data for the system call.\",\"systemId\":\"The ID of the system to be called.\"},\"returns\":{\"_0\":\"Return data from the system call.\"}},\"callFrom(address,bytes32,bytes)\":{\"details\":\"If system is private, caller must have appropriate access.\",\"params\":{\"callData\":\"The ABI data for the system call.\",\"delegator\":\"The address on whose behalf the system is called.\",\"systemId\":\"The ID of the system to be called.\"},\"returns\":{\"_0\":\"Return data from the system call.\"}},\"constructor\":{\"details\":\"Event emitted when the World contract is created.\"},\"deleteRecord(bytes32,bytes32[])\":{\"details\":\"Requires the caller to have access to the table's namespace or name.\",\"params\":{\"keyTuple\":\"Array of keys identifying the record to delete.\",\"tableId\":\"The unique identifier for the table.\"}},\"getDynamicField(bytes32,bytes32[],uint8)\":{\"params\":{\"dynamicFieldIndex\":\"Index of the dynamic field to retrieve.\",\"keyTuple\":\"The tuple used as a key to fetch the dynamic field.\",\"tableId\":\"The ID of the table.\"},\"returns\":{\"data\":\"The dynamic data of the specified field.\"}},\"getDynamicFieldLength(bytes32,bytes32[],uint8)\":{\"params\":{\"dynamicFieldIndex\":\"Index of the dynamic field to measure.\",\"keyTuple\":\"The tuple used as a key.\",\"tableId\":\"The ID of the table.\"},\"returns\":{\"_0\":\"The length of the specified dynamic field.\"}},\"getDynamicFieldSlice(bytes32,bytes32[],uint8,uint256,uint256)\":{\"params\":{\"dynamicFieldIndex\":\"Index of the dynamic field to slice.\",\"end\":\"The ending position of the slice.\",\"keyTuple\":\"The tuple used as a key to fetch the dynamic field slice.\",\"start\":\"The starting position of the slice.\",\"tableId\":\"The ID of the table.\"},\"returns\":{\"_0\":\"The sliced data from the specified dynamic field.\"}},\"getField(bytes32,bytes32[],uint8)\":{\"details\":\"This overload loads the FieldLayout from storage. If the table's FieldLayout is known to the caller, it should be passed in to the other overload to avoid the storage read.\",\"params\":{\"fieldIndex\":\"Index of the field to retrieve.\",\"keyTuple\":\"The tuple used as a key to fetch the field.\",\"tableId\":\"The ID of the table.\"},\"returns\":{\"data\":\"The data of the specified field.\"}},\"getField(bytes32,bytes32[],uint8,bytes32)\":{\"params\":{\"fieldIndex\":\"Index of the field to retrieve.\",\"fieldLayout\":\"The layout of fields for the retrieval.\",\"keyTuple\":\"The tuple used as a key to fetch the field.\",\"tableId\":\"The ID of the table.\"},\"returns\":{\"data\":\"The data of the specified field.\"}},\"getFieldLayout(bytes32)\":{\"params\":{\"tableId\":\"The ID of the table for which to retrieve the field layout.\"},\"returns\":{\"fieldLayout\":\"The layout of fields in the specified table.\"}},\"getFieldLength(bytes32,bytes32[],uint8)\":{\"details\":\"This overload loads the FieldLayout from storage. If the table's FieldLayout is known to the caller, it should be passed in to the other overload to avoid the storage read.\",\"params\":{\"fieldIndex\":\"Index of the field to measure.\",\"keyTuple\":\"The tuple used as a key.\",\"tableId\":\"The ID of the table.\"},\"returns\":{\"_0\":\"The length of the specified field.\"}},\"getFieldLength(bytes32,bytes32[],uint8,bytes32)\":{\"params\":{\"fieldIndex\":\"Index of the field to measure.\",\"fieldLayout\":\"The layout of fields for measurement.\",\"keyTuple\":\"The tuple used as a key.\",\"tableId\":\"The ID of the table.\"},\"returns\":{\"_0\":\"The length of the specified field.\"}},\"getKeySchema(bytes32)\":{\"params\":{\"tableId\":\"The ID of the table.\"},\"returns\":{\"keySchema\":\"The schema for keys in the specified table.\"}},\"getRecord(bytes32,bytes32[])\":{\"params\":{\"keyTuple\":\"The tuple used as a key to fetch the record.\",\"tableId\":\"The ID of the table.\"},\"returns\":{\"dynamicData\":\"The dynamic data of the record.\",\"encodedLengths\":\"Encoded lengths of dynamic data.\",\"staticData\":\"The static data of the record.\"}},\"getRecord(bytes32,bytes32[],bytes32)\":{\"params\":{\"fieldLayout\":\"The layout of fields to retrieve.\",\"keyTuple\":\"The tuple used as a key to fetch the record.\",\"tableId\":\"The ID of the table.\"},\"returns\":{\"dynamicData\":\"The dynamic data of the record.\",\"encodedLengths\":\"Encoded lengths of dynamic data.\",\"staticData\":\"The static data of the record.\"}},\"getStaticField(bytes32,bytes32[],uint8,bytes32)\":{\"params\":{\"fieldIndex\":\"Index of the static field to retrieve.\",\"fieldLayout\":\"The layout of fields for the retrieval.\",\"keyTuple\":\"The tuple used as a key to fetch the static field.\",\"tableId\":\"The ID of the table.\"},\"returns\":{\"data\":\"The static data of the specified field.\"}},\"getValueSchema(bytes32)\":{\"params\":{\"tableId\":\"The ID of the table.\"},\"returns\":{\"valueSchema\":\"The schema for values in the specified table.\"}},\"getWorldCallContext()\":{\"details\":\"Reads system ID, function selector, msg.sender and msg.value from transient storage\",\"returns\":{\"_0\":\"ResourceId The system ID that was called\",\"_1\":\"bytes4 The function selector that was called\",\"_2\":\"address The tracked msg.sender of the call\",\"_3\":\"uint256 The tracked msg.value of the call\"}},\"getWorldCallContext(uint256)\":{\"details\":\"Reads system ID, function selector, msg.sender and msg.value from transient storage at specified call count\",\"params\":{\"callCount\":\"The specific call count to retrieve execution context values for\"},\"returns\":{\"_0\":\"ResourceId The system ID that was called\",\"_1\":\"bytes4 The function selector that was called\",\"_2\":\"address The msg.sender of the call\",\"_3\":\"uint256 The msg.value of the call\"}},\"getWorldCallCount()\":{\"details\":\"Reads the call counter from slot 0 in transient storage\",\"returns\":{\"_0\":\"uint256 The total number of world calls invoked/tracked in the current transaction\"}},\"initialize(address)\":{\"details\":\"Only the initial creator can initialize. This can be done only once.\",\"params\":{\"initModule\":\"The core module to initialize the World with.\"}},\"installRootModule(address,bytes)\":{\"details\":\"The caller must own the root namespace.\",\"params\":{\"encodedArgs\":\"The ABI encoded arguments for module installation.\",\"module\":\"The module to be installed.\"}},\"popFromDynamicField(bytes32,bytes32[],uint8,uint256)\":{\"params\":{\"byteLengthToPop\":\"The number of bytes to remove from the end of the dynamic field.\",\"dynamicFieldIndex\":\"Index of the dynamic field to remove data from.\",\"keyTuple\":\"Array of keys identifying the record.\",\"tableId\":\"The unique identifier for the table.\"}},\"pushToDynamicField(bytes32,bytes32[],uint8,bytes)\":{\"params\":{\"dataToPush\":\"Data to append to the specified dynamic field.\",\"dynamicFieldIndex\":\"Index of the dynamic field to append to.\",\"keyTuple\":\"Array of keys identifying the record.\",\"tableId\":\"The unique identifier for the table.\"}},\"setDynamicField(bytes32,bytes32[],uint8,bytes)\":{\"params\":{\"data\":\"Data to write into the specified dynamic field.\",\"dynamicFieldIndex\":\"Index of the dynamic field to modify.\",\"keyTuple\":\"Array of keys identifying the record.\",\"tableId\":\"The unique identifier for the table.\"}},\"setField(bytes32,bytes32[],uint8,bytes)\":{\"params\":{\"data\":\"Data to write into the specified field.\",\"fieldIndex\":\"Index of the field to modify.\",\"keyTuple\":\"Array of keys identifying the record.\",\"tableId\":\"The unique identifier for the table.\"}},\"setField(bytes32,bytes32[],uint8,bytes,bytes32)\":{\"params\":{\"data\":\"Data to write into the specified field.\",\"fieldIndex\":\"Index of the field to modify.\",\"fieldLayout\":\"The layout to adhere to when modifying the field.\",\"keyTuple\":\"Array of keys identifying the record.\",\"tableId\":\"The unique identifier for the table.\"}},\"setRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"details\":\"Requires the caller to have access to the table's namespace or name (encoded in the tableId).\",\"params\":{\"dynamicData\":\"Dynamic data (variable length fields) of the record.\",\"encodedLengths\":\"Encoded lengths of data.\",\"keyTuple\":\"Array of keys identifying the record.\",\"staticData\":\"Static data (fixed length fields) of the record.\",\"tableId\":\"The unique identifier for the table.\"}},\"setStaticField(bytes32,bytes32[],uint8,bytes,bytes32)\":{\"details\":\"Requires the caller to have access to the table's namespace or name (encoded in the tableId).\",\"params\":{\"data\":\"Data to write into the specified static field.\",\"fieldIndex\":\"Index of the static field to modify.\",\"fieldLayout\":\"The layout to adhere to when modifying the field.\",\"keyTuple\":\"Array of keys identifying the record.\",\"tableId\":\"The unique identifier for the table.\"}},\"spliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes)\":{\"params\":{\"data\":\"Data to splice into the dynamic data of the field.\",\"deleteCount\":\"Number of bytes to delete starting from the `startWithinField`.\",\"dynamicFieldIndex\":\"Index of the dynamic field to modify.\",\"keyTuple\":\"Array of keys identifying the record.\",\"startWithinField\":\"Start position within the specified dynamic field.\",\"tableId\":\"The unique identifier for the table.\"}},\"spliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"params\":{\"data\":\"Data to splice into the static data of the record.\",\"keyTuple\":\"Array of keys identifying the record.\",\"start\":\"Position from where the static data modification should start.\",\"tableId\":\"The unique identifier for the table.\"}},\"staticCallCheck()\":{\"details\":\"Attempts to write to max uint256 slot in transient storage to verify if the current call is staticcall\"},\"storeVersion()\":{\"returns\":{\"_0\":\"The protocol version of the Store.\"}},\"worldVersion()\":{\"returns\":{\"_0\":\"The current version of the world contract.\"}}},\"title\":\"World Contract\",\"version\":1},\"userdoc\":{\"errors\":{\"EncodedLengths_InvalidLength(uint256)\":[{\"notice\":\"Error raised when the provided encoded lengths has an invalid length.\"}],\"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_IndexOutOfBounds(uint256,uint256)\":[{\"notice\":\"Error raised if the provided index is out of bounds.\"}],\"Store_InvalidBounds(uint256,uint256)\":[{\"notice\":\"Error raised if the provided slice bounds are invalid.\"}],\"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_InvalidSplice(uint40,uint40,uint40)\":[{\"notice\":\"Error raised if the provided splice is invalid.\"}],\"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.\"}],\"Store_TableNotFound(bytes32,string)\":[{\"notice\":\"Error raised if the provided table cannot be found.\"}],\"World_AccessDenied(string,address)\":[{\"notice\":\"Raised when a user tries to access a resource they don't have permission for.\"}],\"World_AlreadyInitialized()\":[{\"notice\":\"Raised when trying to initialize an already initialized World.\"}],\"World_CallbackNotAllowed(bytes4)\":[{\"notice\":\"Raised when the World is calling itself via an external call.\"}],\"World_DelegationNotFound(address,address)\":[{\"notice\":\"Raised when the specified delegation is not found.\"}],\"World_FunctionSelectorAlreadyExists(bytes4)\":[{\"notice\":\"Raised when trying to register a function selector that already exists.\"}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"notice\":\"Raised when the specified function selector is not found.\"}],\"World_InsufficientBalance(uint256,uint256)\":[{\"notice\":\"Raised when there's an insufficient balance for a particular operation.\"}],\"World_InterfaceNotSupported(address,bytes4)\":[{\"notice\":\"Raised when the specified interface is not supported by the contract.\"}],\"World_InvalidNamespace(bytes14)\":[{\"notice\":\"Raised when an namespace contains an invalid sequence of characters (\\\"__\\\").\"}],\"World_InvalidResourceId(bytes32,string)\":[{\"notice\":\"Raised when an invalid resource ID is provided.\"}],\"World_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Raised when an invalid resource type is provided.\"}],\"World_ResourceAlreadyExists(bytes32,string)\":[{\"notice\":\"Raised when trying to register a resource that already exists.\"}],\"World_ResourceNotFound(bytes32,string)\":[{\"notice\":\"Raised when the specified resource is not found.\"}],\"World_SystemAlreadyExists(address)\":[{\"notice\":\"Raised when trying to register a system that already exists.\"}],\"World_UnlimitedDelegationNotAllowed()\":[{\"notice\":\"Raised when trying to create an unlimited delegation in a context where it is not allowed, e.g. when registering a namespace fallback delegation.\"}]},\"events\":{\"HelloStore(bytes32)\":{\"notice\":\"Emitted when the Store is created.\"},\"HelloWorld(bytes32)\":{\"notice\":\"Emitted when the World is created.\"},\"Store_DeleteRecord(bytes32,bytes32[])\":{\"notice\":\"Emitted when a record is deleted from the store.\"},\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"notice\":\"Emitted when a new record is set in the store.\"},\"Store_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"notice\":\"Emitted when dynamic data in the store is spliced.\"},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"notice\":\"Emitted when static data in the store is spliced.\"}},\"kind\":\"user\",\"methods\":{\"call(bytes32,bytes)\":{\"notice\":\"Calls a system with a given system ID.\"},\"callFrom(address,bytes32,bytes)\":{\"notice\":\"Calls a system with a given system ID on behalf of the given delegator.\"},\"creator()\":{\"notice\":\"Address of the contract's creator.\"},\"deleteRecord(bytes32,bytes32[])\":{\"notice\":\"Deletes a record from the table identified by `tableId`.\"},\"getDynamicField(bytes32,bytes32[],uint8)\":{\"notice\":\"Retrieves data for a specific dynamic (variable length) field in a record.\"},\"getDynamicFieldLength(bytes32,bytes32[],uint8)\":{\"notice\":\"Calculates the length of a specified dynamic (variable length) field in a record.\"},\"getDynamicFieldSlice(bytes32,bytes32[],uint8,uint256,uint256)\":{\"notice\":\"Retrieves a slice of a dynamic (variable length) field.\"},\"getField(bytes32,bytes32[],uint8)\":{\"notice\":\"Retrieves data for a specified field in a record.\"},\"getField(bytes32,bytes32[],uint8,bytes32)\":{\"notice\":\"Retrieves data for a specified field in a record.\"},\"getFieldLayout(bytes32)\":{\"notice\":\"Fetches the field layout for a given table.\"},\"getFieldLength(bytes32,bytes32[],uint8)\":{\"notice\":\"Calculates the length of a specified field in a record.\"},\"getFieldLength(bytes32,bytes32[],uint8,bytes32)\":{\"notice\":\"Calculates the length of a specified field in a record.\"},\"getKeySchema(bytes32)\":{\"notice\":\"Retrieves the key schema for a given table.\"},\"getRecord(bytes32,bytes32[])\":{\"notice\":\"Fetches a record from a specified table using a provided key tuple.\"},\"getRecord(bytes32,bytes32[],bytes32)\":{\"notice\":\"Fetches a record from a specified table using a provided key tuple and field layout.\"},\"getStaticField(bytes32,bytes32[],uint8,bytes32)\":{\"notice\":\"Retrieves data for a specific static (fixed length) field in a record.\"},\"getValueSchema(bytes32)\":{\"notice\":\"Retrieves the value schema for a given table.\"},\"getWorldCallContext()\":{\"notice\":\"Retrieves execution context details from the latest world call\"},\"getWorldCallContext(uint256)\":{\"notice\":\"Retrieves execution context details for a specific world call\"},\"getWorldCallCount()\":{\"notice\":\"Gets the current depth of the world execution call stack\"},\"initialize(address)\":{\"notice\":\"Initializes the World by installing the core module.\"},\"installRootModule(address,bytes)\":{\"notice\":\"Installs a given root module in the World.\"},\"popFromDynamicField(bytes32,bytes32[],uint8,uint256)\":{\"notice\":\"Removes a specified amount of data from the end of a dynamic (variable length) field in the table identified by `tableId`.\"},\"pushToDynamicField(bytes32,bytes32[],uint8,bytes)\":{\"notice\":\"Appends data to the end of a dynamic (variable length) field in the table identified by `tableId`.\"},\"setDynamicField(bytes32,bytes32[],uint8,bytes)\":{\"notice\":\"Writes data into a dynamic (varible length) field in the table identified by `tableId`.\"},\"setField(bytes32,bytes32[],uint8,bytes)\":{\"notice\":\"Writes data into a specified field in the table identified by `tableId`.\"},\"setField(bytes32,bytes32[],uint8,bytes,bytes32)\":{\"notice\":\"Writes data into a specified field in the table, adhering to a specific layout.\"},\"setRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"notice\":\"Writes a record in the table identified by `tableId`.\"},\"setStaticField(bytes32,bytes32[],uint8,bytes,bytes32)\":{\"notice\":\"Writes data into a static (fixed length) field in the table identified by `tableId`.\"},\"spliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes)\":{\"notice\":\"Modifies dynamic (variable length) data in a record for a specified field.\"},\"spliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"notice\":\"Modifies static (fixed length) data in a record at the specified position.\"},\"staticCallCheck()\":{\"notice\":\"Used in conjunction with the try/catch pattern to test if the current call is staticcall\"},\"storeVersion()\":{\"notice\":\"Retrieves the protocol version of the Store.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"../smart-object-framework-v2/src/WorldWithContext.sol\":\"WorldWithContext\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":300},\"remappings\":[\":@eveworld/smart-object-framework-v2/=../smart-object-framework-v2/\",\":@eveworld/world-v2/=../world-v2/\",\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"../smart-object-framework-v2/src/StaticSystemCall.sol\":{\"keccak256\":\"0xe23386362f6e95086efe6de963f68123623547842f4fa0ddb726d9a7b1582aaf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3b378a54feb0341a3287228418b3e0e3d9be395e19c470a11922c4735dc572d3\",\"dweb:/ipfs/QmVyRtDwHYcHwYFXqjbP9A2NytV1miCnwZgot1ban4vKJx\"]},\"../smart-object-framework-v2/src/StaticWorldContext.sol\":{\"keccak256\":\"0xf9309c0dcf15afc36326e7b3de920d0d1a85e51e0de7660835d29f5b697b3a85\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b979a3f610de445e37e6901bd29db04e4511b291a6f80ca2da2e81016d46cded\",\"dweb:/ipfs/QmeN3sLofQGKnPUdmZ2VPc5q5srHpNrh2kBjmppYRuuxrD\"]},\"../smart-object-framework-v2/src/WorldWithContext.sol\":{\"keccak256\":\"0x590e7b810c3fe102c4dc2c27ddf8999f2edb73c44ca0def3a4c0621fdc550980\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3979991b21d07e9ef82a819941eaf9757533641e98bbf7eba70a454ab888821\",\"dweb:/ipfs/QmUooLWX9qxiDECFp98WTiZ1wDfqmQCJXzaYrQRLhqx1X4\"]},\"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/StoreKernel.sol\":{\"keccak256\":\"0xeeb12eb8f8254eea33f4d3b80504962733c191f7cd4f4b1bc3033237e648ff0b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://01b41567453f8f4f8c55b30d88d891b1ea87f2b5354ee8ce67ca58aedfb296ec\",\"dweb:/ipfs/QmZkGP7yKZUUnVxwAV4AVhHfc8Dnz1TtbyooeGBm33EUE7\"]},\"node_modules/@latticexyz/store/src/StoreRead.sol\":{\"keccak256\":\"0xb27eeadfa0075d2ac085b155e42e195b9bc6511640097af6646936f5ceb3afc6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cdca315a580d561a7ec3d488ad6ea6996a4611031218547d6b942c7654750a18\",\"dweb:/ipfs/QmUrW9strzNK1guqRZ7jRC4GZ9SvAraxah3rfsw4eBGjZM\"]},\"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/Delegation.sol\":{\"keccak256\":\"0x1ad6ce468042f6ba104c8fa2cd5506e434e1bd458448492ae9e8d1993a7e5f1d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ded3d879ad5a4119f9ff2320ff27f63a06bc3853e91d3697b3406ee3e6ab65d5\",\"dweb:/ipfs/QmTMjjArXQxXa3WeFF4dvvkAFSEstHTTsNYDCckgCBUVeE\"]},\"node_modules/@latticexyz/world/src/ERC165Checker.sol\":{\"keccak256\":\"0xb9d3ad8030a8d111971cbf775c1834313736c2f714d2bcb90fe065a928abe2c8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://702c7297150819d078d498d3c6ebbc9dc9414c35aaf1f8e19ae4c5beb5048c7d\",\"dweb:/ipfs/QmZxKTDNLvVDV4jJ6S2qu9HnPbSXq1hRfgazJAL1xWkSkt\"]},\"node_modules/@latticexyz/world/src/IDelegationControl.sol\":{\"keccak256\":\"0x7cc2fbdd8ff6c996e19fab46c1031b76355da74973cebf45ce4df4b035d566bf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://857d577f84a68018a3392ec4540c15e80326aaf4b0f224d0d239605abacfc0f3\",\"dweb:/ipfs/QmVEr3rTH1F1BFaCTMd7MmuceTqASwKBcMRnuFZ4tUAYmR\"]},\"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/SystemCall.sol\":{\"keccak256\":\"0x39d02f33a0a96cd07cf553c6439a26be43bea3ce926266242cf7f84c762c16e4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0de503a0d5e4e55dba2b04fb38660a7f890deac3673f63f8d9e2b23ab5f09574\",\"dweb:/ipfs/QmbhCvRHjkETnsA59rFuGs3p5iu2t4NwYySoCj2GDNwY2V\"]},\"node_modules/@latticexyz/world/src/WorldContext.sol\":{\"keccak256\":\"0x15e21a1edaad9bc31f00659cce409f4cd6eaa2cd0c5035ab32b4ffa9fa4c8d40\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a1f5f0260668ada84712fd51de1166eeeecf53a01b896ea322f978387de363f6\",\"dweb:/ipfs/QmQdaur7oZLLf8jRw8m3cNm1wbDLRTqQ634k1DhzRCYdRa\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xaff9a22fac8a0f6eee5763b07a7ccb623c829d37922b85e42e914aad2ad417ee\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e598f0274d6d97c0a09806bf4fd1f0d054c310cf51b2123f5ce6380d6f3186ea\",\"dweb:/ipfs/QmaaVvqm21YsCgxozDyShcM17jKUXJhf2y26bk2YzPYZoM\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Balances.sol\":{\"keccak256\":\"0x25248669a093cfdc9453491e5b5806f6aa092a805569799650c43c32f7b7877d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2f294f597122450abd267760d91682facd0a1040383caeb44aaadeb74770904a\",\"dweb:/ipfs/QmPXsoh8tUhpnhjdBYYTZCLc8MPHDZK6xUmN7F2DsMEXro\"]},\"node_modules/@latticexyz/world/src/codegen/tables/FunctionSelectors.sol\":{\"keccak256\":\"0x1ee313f4f1165034b92c5df1fe4cdd9be52b27780245388db3a0267c119fc926\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a3d58ca6a58e94bc30d5be0fc7a7d1325a92096c8b8b2b3a0531c2c5d0d60791\",\"dweb:/ipfs/QmZSisbANqwnFzwMJnnYBjemLW4Cqn3oL7MkV4HiQR7GKv\"]},\"node_modules/@latticexyz/world/src/codegen/tables/InitModuleAddress.sol\":{\"keccak256\":\"0x28ecea550f7cef98318f2db2e203e758475306a6454f776e6dbc5094811d577e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://01ae40d53747c2fec400c3bddec5789da6995a38e918bf3badad9c403e70d069\",\"dweb:/ipfs/QmaQhjyGzXjTR16gJUnpaBhG5zJvPdaxJ6c9yJY9FD5kBb\"]},\"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/NamespaceDelegationControl.sol\":{\"keccak256\":\"0x66193215d3c053675d67ba81d530ee2bb1c39250a15cf2d9a6fb166615af461d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b783be83ef27281fb6ae2166f692d0ec912bdbe4f49312181b1ef561b5098729\",\"dweb:/ipfs/Qmdtmq4mGtrqoFg4UWhxAevNfVXEUhp8fohRWycqKD2vCk\"]},\"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/codegen/tables/SystemHooks.sol\":{\"keccak256\":\"0xc27730dae8302cb86f5d65ddc9ae0e92afba17842285a6d0cd146a1e21d73c0f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4de5f820f1dfe36e53fe1fc77be6a52ac5fa72a7a5d5ec66e5d29ca6ce553674\",\"dweb:/ipfs/QmP5JUMHDCBxZkZ2YnoYQLqQFHeyCpoUVp14hJBWpSdiqV\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol\":{\"keccak256\":\"0x1706fe4b5441a4e3982a3d32f7de2148627b8dfbbe3e38391dd4dab06b86478c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c0569fa73cd26c6476188646194ad58eb5cf78cb7c7dc7722748455c23c9d4d7\",\"dweb:/ipfs/Qma1RuR12bTXSVJJ8Q8Gw23KkBw7pyV9u5Kr8TGutaxYdz\"]},\"node_modules/@latticexyz/world/src/codegen/tables/UserDelegationControl.sol\":{\"keccak256\":\"0x3b8d434a81e5667242724089207f90001099d32095e05c4efd75931201d850b1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://73d47004e03e56b0d0e64ca9012219bc6ae01cef455d7e6ccab9f60dfc5e55b5\",\"dweb:/ipfs/QmQUcGYNEVBRs1oj1HgJ92SPNuiDL3YVYbBymGy63yxqDc\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22\",\"dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV\"]},\"node_modules/@latticexyz/world/src/requireInterface.sol\":{\"keccak256\":\"0x5b94a21fd46abb4aac8f38809c0d6105f30792042c927f8a6a4f40cfe35c7ab8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8bade9d52cf370f3b5435abb47a5338dca5498bee773e97518e7a080fa882940\",\"dweb:/ipfs/QmTtaXUWwMQmHW8oKEoRZxagidZcCiN3oLQs7kN3nycrkW\"]},\"node_modules/@latticexyz/world/src/revertWithBytes.sol\":{\"keccak256\":\"0xa1147f218a0152b153d4e8bada0f606bfed40ac1f184fd16a941c2d0033c53f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f5e0f6d1b51a3a04d4bd84537b2ced373b32824898cf6fbfd13ae1cbdf06359\",\"dweb:/ipfs/QmayYRmBZRUV9m4UnFxuC62VvHriXhkYXeH3HibZ3Gmxxf\"]},\"node_modules/@latticexyz/world/src/systemHookTypes.sol\":{\"keccak256\":\"0x15c25ae4b21e091209970e45a198cb51f31eeae482828862641099c1a9b2448a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0ce3c3eb58dc5c262d36babf372ad028d2846beea73a59d6e70f0eb8c90ee00d\",\"dweb:/ipfs/QmWUkgegTRtSJM3awvjg4J7DWZ2ME7Pnxp1dP2TWWzLNoo\"]},\"node_modules/@latticexyz/world/src/version.sol\":{\"keccak256\":\"0x9c222a00d7aef686e6f6319d544959ee8a7010c7c0692738f7fe9d19694b0715\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0296e6e111eeb4f6249fea39ee3b024a02f46eb692925d9b41e3b39fa15a940b\",\"dweb:/ipfs/QmbSYepReq4NepkvLEkeTtGXRwFpQRUfyENnjkd4kaM4BU\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea\",\"dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"EncodedLengths_InvalidLength"},{"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":"length","type":"uint256"},{"internalType":"uint256","name":"accessedIndex","type":"uint256"}],"type":"error","name":"Store_IndexOutOfBounds"},{"inputs":[{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"type":"error","name":"Store_InvalidBounds"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidFieldNamesLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidKeyNamesLength"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"uint40","name":"fieldLength","type":"uint40"}],"type":"error","name":"Store_InvalidSplice"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaDynamicLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaStaticLength"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"string","name":"tableIdString","type":"string"}],"type":"error","name":"Store_TableAlreadyExists"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"string","name":"tableIdString","type":"string"}],"type":"error","name":"Store_TableNotFound"},{"inputs":[{"internalType":"string","name":"resource","type":"string"},{"internalType":"address","name":"caller","type":"address"}],"type":"error","name":"World_AccessDenied"},{"inputs":[],"type":"error","name":"World_AlreadyInitialized"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_CallbackNotAllowed"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"},{"internalType":"address","name":"delegatee","type":"address"}],"type":"error","name":"World_DelegationNotFound"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_FunctionSelectorAlreadyExists"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_FunctionSelectorNotFound"},{"inputs":[{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"type":"error","name":"World_InsufficientBalance"},{"inputs":[{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"type":"error","name":"World_InterfaceNotSupported"},{"inputs":[{"internalType":"bytes14","name":"namespace","type":"bytes14"}],"type":"error","name":"World_InvalidNamespace"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_InvalidResourceId"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_InvalidResourceType"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_ResourceAlreadyExists"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_ResourceNotFound"},{"inputs":[{"internalType":"address","name":"system","type":"address"}],"type":"error","name":"World_SystemAlreadyExists"},{"inputs":[],"type":"error","name":"World_UnlimitedDelegationNotAllowed"},{"inputs":[{"internalType":"bytes32","name":"storeVersion","type":"bytes32","indexed":true}],"type":"event","name":"HelloStore","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"worldVersion","type":"bytes32","indexed":true}],"type":"event","name":"HelloWorld","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false}],"type":"event","name":"Store_DeleteRecord","anonymous":false},{"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":"uint8","name":"dynamicFieldIndex","type":"uint8","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"uint40","name":"deleteCount","type":"uint40","indexed":false},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceDynamicData","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceStaticData","anonymous":false},{"inputs":[],"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"bytes","name":"callData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"call","outputs":[{"internalType":"bytes","name":"","type":"bytes"}]},{"inputs":[{"internalType":"address","name":"delegator","type":"address"},{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"bytes","name":"callData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"callFrom","outputs":[{"internalType":"bytes","name":"","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"bytes","name":"callData","type":"bytes"}],"stateMutability":"view","type":"function","name":"callStatic","outputs":[{"internalType":"bytes","name":"","type":"bytes"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"creator","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"}],"stateMutability":"nonpayable","type":"function","name":"deleteRecord"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getDynamicField","outputs":[{"internalType":"bytes","name":"data","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getDynamicFieldLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"stateMutability":"view","type":"function","name":"getDynamicFieldSlice","outputs":[{"internalType":"bytes","name":"","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getField","outputs":[{"internalType":"bytes","name":"data","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getField","outputs":[{"internalType":"bytes","name":"data","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getFieldLayout","outputs":[{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getFieldLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getFieldLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getKeySchema","outputs":[{"internalType":"Schema","name":"keySchema","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRecord","outputs":[{"internalType":"bytes","name":"staticData","type":"bytes"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"dynamicData","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"}],"stateMutability":"view","type":"function","name":"getRecord","outputs":[{"internalType":"bytes","name":"staticData","type":"bytes"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"dynamicData","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getStaticField","outputs":[{"internalType":"bytes32","name":"data","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getValueSchema","outputs":[{"internalType":"Schema","name":"valueSchema","type":"bytes32"}]},{"inputs":[{"internalType":"uint256","name":"callCount","type":"uint256"}],"stateMutability":"view","type":"function","name":"getWorldCallContext","outputs":[{"internalType":"ResourceId","name":"","type":"bytes32"},{"internalType":"bytes4","name":"","type":"bytes4"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getWorldCallContext","outputs":[{"internalType":"ResourceId","name":"","type":"bytes32"},{"internalType":"bytes4","name":"","type":"bytes4"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getWorldCallCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"contract IModule","name":"initModule","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"contract IModule","name":"module","type":"address"},{"internalType":"bytes","name":"encodedArgs","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"installRootModule"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint256","name":"byteLengthToPop","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"popFromDynamicField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"bytes","name":"dataToPush","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"pushToDynamicField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"setDynamicField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"setField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"setField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"bytes","name":"staticData","type":"bytes"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"dynamicData","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"setRecord"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"setStaticField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"spliceDynamicData"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint48","name":"start","type":"uint48"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"spliceStaticData"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"staticCallCheck"},{"inputs":[],"stateMutability":"pure","type":"function","name":"storeVersion","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"worldVersion","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"payable","type":"receive"}],"devdoc":{"kind":"dev","methods":{"call(bytes32,bytes)":{"details":"If system is private, caller must have appropriate access.","params":{"callData":"The data for the system call.","systemId":"The ID of the system to be called."},"returns":{"_0":"Return data from the system call."}},"callFrom(address,bytes32,bytes)":{"details":"If system is private, caller must have appropriate access.","params":{"callData":"The ABI data for the system call.","delegator":"The address on whose behalf the system is called.","systemId":"The ID of the system to be called."},"returns":{"_0":"Return data from the system call."}},"constructor":{"details":"Event emitted when the World contract is created."},"deleteRecord(bytes32,bytes32[])":{"details":"Requires the caller to have access to the table's namespace or name.","params":{"keyTuple":"Array of keys identifying the record to delete.","tableId":"The unique identifier for the table."}},"getDynamicField(bytes32,bytes32[],uint8)":{"params":{"dynamicFieldIndex":"Index of the dynamic field to retrieve.","keyTuple":"The tuple used as a key to fetch the dynamic field.","tableId":"The ID of the table."},"returns":{"data":"The dynamic data of the specified field."}},"getDynamicFieldLength(bytes32,bytes32[],uint8)":{"params":{"dynamicFieldIndex":"Index of the dynamic field to measure.","keyTuple":"The tuple used as a key.","tableId":"The ID of the table."},"returns":{"_0":"The length of the specified dynamic field."}},"getDynamicFieldSlice(bytes32,bytes32[],uint8,uint256,uint256)":{"params":{"dynamicFieldIndex":"Index of the dynamic field to slice.","end":"The ending position of the slice.","keyTuple":"The tuple used as a key to fetch the dynamic field slice.","start":"The starting position of the slice.","tableId":"The ID of the table."},"returns":{"_0":"The sliced data from the specified dynamic field."}},"getField(bytes32,bytes32[],uint8)":{"details":"This overload loads the FieldLayout from storage. If the table's FieldLayout is known to the caller, it should be passed in to the other overload to avoid the storage read.","params":{"fieldIndex":"Index of the field to retrieve.","keyTuple":"The tuple used as a key to fetch the field.","tableId":"The ID of the table."},"returns":{"data":"The data of the specified field."}},"getField(bytes32,bytes32[],uint8,bytes32)":{"params":{"fieldIndex":"Index of the field to retrieve.","fieldLayout":"The layout of fields for the retrieval.","keyTuple":"The tuple used as a key to fetch the field.","tableId":"The ID of the table."},"returns":{"data":"The data of the specified field."}},"getFieldLayout(bytes32)":{"params":{"tableId":"The ID of the table for which to retrieve the field layout."},"returns":{"fieldLayout":"The layout of fields in the specified table."}},"getFieldLength(bytes32,bytes32[],uint8)":{"details":"This overload loads the FieldLayout from storage. If the table's FieldLayout is known to the caller, it should be passed in to the other overload to avoid the storage read.","params":{"fieldIndex":"Index of the field to measure.","keyTuple":"The tuple used as a key.","tableId":"The ID of the table."},"returns":{"_0":"The length of the specified field."}},"getFieldLength(bytes32,bytes32[],uint8,bytes32)":{"params":{"fieldIndex":"Index of the field to measure.","fieldLayout":"The layout of fields for measurement.","keyTuple":"The tuple used as a key.","tableId":"The ID of the table."},"returns":{"_0":"The length of the specified field."}},"getKeySchema(bytes32)":{"params":{"tableId":"The ID of the table."},"returns":{"keySchema":"The schema for keys in the specified table."}},"getRecord(bytes32,bytes32[])":{"params":{"keyTuple":"The tuple used as a key to fetch the record.","tableId":"The ID of the table."},"returns":{"dynamicData":"The dynamic data of the record.","encodedLengths":"Encoded lengths of dynamic data.","staticData":"The static data of the record."}},"getRecord(bytes32,bytes32[],bytes32)":{"params":{"fieldLayout":"The layout of fields to retrieve.","keyTuple":"The tuple used as a key to fetch the record.","tableId":"The ID of the table."},"returns":{"dynamicData":"The dynamic data of the record.","encodedLengths":"Encoded lengths of dynamic data.","staticData":"The static data of the record."}},"getStaticField(bytes32,bytes32[],uint8,bytes32)":{"params":{"fieldIndex":"Index of the static field to retrieve.","fieldLayout":"The layout of fields for the retrieval.","keyTuple":"The tuple used as a key to fetch the static field.","tableId":"The ID of the table."},"returns":{"data":"The static data of the specified field."}},"getValueSchema(bytes32)":{"params":{"tableId":"The ID of the table."},"returns":{"valueSchema":"The schema for values in the specified table."}},"getWorldCallContext()":{"details":"Reads system ID, function selector, msg.sender and msg.value from transient storage","returns":{"_0":"ResourceId The system ID that was called","_1":"bytes4 The function selector that was called","_2":"address The tracked msg.sender of the call","_3":"uint256 The tracked msg.value of the call"}},"getWorldCallContext(uint256)":{"details":"Reads system ID, function selector, msg.sender and msg.value from transient storage at specified call count","params":{"callCount":"The specific call count to retrieve execution context values for"},"returns":{"_0":"ResourceId The system ID that was called","_1":"bytes4 The function selector that was called","_2":"address The msg.sender of the call","_3":"uint256 The msg.value of the call"}},"getWorldCallCount()":{"details":"Reads the call counter from slot 0 in transient storage","returns":{"_0":"uint256 The total number of world calls invoked/tracked in the current transaction"}},"initialize(address)":{"details":"Only the initial creator can initialize. This can be done only once.","params":{"initModule":"The core module to initialize the World with."}},"installRootModule(address,bytes)":{"details":"The caller must own the root namespace.","params":{"encodedArgs":"The ABI encoded arguments for module installation.","module":"The module to be installed."}},"popFromDynamicField(bytes32,bytes32[],uint8,uint256)":{"params":{"byteLengthToPop":"The number of bytes to remove from the end of the dynamic field.","dynamicFieldIndex":"Index of the dynamic field to remove data from.","keyTuple":"Array of keys identifying the record.","tableId":"The unique identifier for the table."}},"pushToDynamicField(bytes32,bytes32[],uint8,bytes)":{"params":{"dataToPush":"Data to append to the specified dynamic field.","dynamicFieldIndex":"Index of the dynamic field to append to.","keyTuple":"Array of keys identifying the record.","tableId":"The unique identifier for the table."}},"setDynamicField(bytes32,bytes32[],uint8,bytes)":{"params":{"data":"Data to write into the specified dynamic field.","dynamicFieldIndex":"Index of the dynamic field to modify.","keyTuple":"Array of keys identifying the record.","tableId":"The unique identifier for the table."}},"setField(bytes32,bytes32[],uint8,bytes)":{"params":{"data":"Data to write into the specified field.","fieldIndex":"Index of the field to modify.","keyTuple":"Array of keys identifying the record.","tableId":"The unique identifier for the table."}},"setField(bytes32,bytes32[],uint8,bytes,bytes32)":{"params":{"data":"Data to write into the specified field.","fieldIndex":"Index of the field to modify.","fieldLayout":"The layout to adhere to when modifying the field.","keyTuple":"Array of keys identifying the record.","tableId":"The unique identifier for the table."}},"setRecord(bytes32,bytes32[],bytes,bytes32,bytes)":{"details":"Requires the caller to have access to the table's namespace or name (encoded in the tableId).","params":{"dynamicData":"Dynamic data (variable length fields) of the record.","encodedLengths":"Encoded lengths of data.","keyTuple":"Array of keys identifying the record.","staticData":"Static data (fixed length fields) of the record.","tableId":"The unique identifier for the table."}},"setStaticField(bytes32,bytes32[],uint8,bytes,bytes32)":{"details":"Requires the caller to have access to the table's namespace or name (encoded in the tableId).","params":{"data":"Data to write into the specified static field.","fieldIndex":"Index of the static field to modify.","fieldLayout":"The layout to adhere to when modifying the field.","keyTuple":"Array of keys identifying the record.","tableId":"The unique identifier for the table."}},"spliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes)":{"params":{"data":"Data to splice into the dynamic data of the field.","deleteCount":"Number of bytes to delete starting from the `startWithinField`.","dynamicFieldIndex":"Index of the dynamic field to modify.","keyTuple":"Array of keys identifying the record.","startWithinField":"Start position within the specified dynamic field.","tableId":"The unique identifier for the table."}},"spliceStaticData(bytes32,bytes32[],uint48,bytes)":{"params":{"data":"Data to splice into the static data of the record.","keyTuple":"Array of keys identifying the record.","start":"Position from where the static data modification should start.","tableId":"The unique identifier for the table."}},"staticCallCheck()":{"details":"Attempts to write to max uint256 slot in transient storage to verify if the current call is staticcall"},"storeVersion()":{"returns":{"_0":"The protocol version of the Store."}},"worldVersion()":{"returns":{"_0":"The current version of the world contract."}}},"version":1},"userdoc":{"kind":"user","methods":{"call(bytes32,bytes)":{"notice":"Calls a system with a given system ID."},"callFrom(address,bytes32,bytes)":{"notice":"Calls a system with a given system ID on behalf of the given delegator."},"creator()":{"notice":"Address of the contract's creator."},"deleteRecord(bytes32,bytes32[])":{"notice":"Deletes a record from the table identified by `tableId`."},"getDynamicField(bytes32,bytes32[],uint8)":{"notice":"Retrieves data for a specific dynamic (variable length) field in a record."},"getDynamicFieldLength(bytes32,bytes32[],uint8)":{"notice":"Calculates the length of a specified dynamic (variable length) field in a record."},"getDynamicFieldSlice(bytes32,bytes32[],uint8,uint256,uint256)":{"notice":"Retrieves a slice of a dynamic (variable length) field."},"getField(bytes32,bytes32[],uint8)":{"notice":"Retrieves data for a specified field in a record."},"getField(bytes32,bytes32[],uint8,bytes32)":{"notice":"Retrieves data for a specified field in a record."},"getFieldLayout(bytes32)":{"notice":"Fetches the field layout for a given table."},"getFieldLength(bytes32,bytes32[],uint8)":{"notice":"Calculates the length of a specified field in a record."},"getFieldLength(bytes32,bytes32[],uint8,bytes32)":{"notice":"Calculates the length of a specified field in a record."},"getKeySchema(bytes32)":{"notice":"Retrieves the key schema for a given table."},"getRecord(bytes32,bytes32[])":{"notice":"Fetches a record from a specified table using a provided key tuple."},"getRecord(bytes32,bytes32[],bytes32)":{"notice":"Fetches a record from a specified table using a provided key tuple and field layout."},"getStaticField(bytes32,bytes32[],uint8,bytes32)":{"notice":"Retrieves data for a specific static (fixed length) field in a record."},"getValueSchema(bytes32)":{"notice":"Retrieves the value schema for a given table."},"getWorldCallContext()":{"notice":"Retrieves execution context details from the latest world call"},"getWorldCallContext(uint256)":{"notice":"Retrieves execution context details for a specific world call"},"getWorldCallCount()":{"notice":"Gets the current depth of the world execution call stack"},"initialize(address)":{"notice":"Initializes the World by installing the core module."},"installRootModule(address,bytes)":{"notice":"Installs a given root module in the World."},"popFromDynamicField(bytes32,bytes32[],uint8,uint256)":{"notice":"Removes a specified amount of data from the end of a dynamic (variable length) field in the table identified by `tableId`."},"pushToDynamicField(bytes32,bytes32[],uint8,bytes)":{"notice":"Appends data to the end of a dynamic (variable length) field in the table identified by `tableId`."},"setDynamicField(bytes32,bytes32[],uint8,bytes)":{"notice":"Writes data into a dynamic (varible length) field in the table identified by `tableId`."},"setField(bytes32,bytes32[],uint8,bytes)":{"notice":"Writes data into a specified field in the table identified by `tableId`."},"setField(bytes32,bytes32[],uint8,bytes,bytes32)":{"notice":"Writes data into a specified field in the table, adhering to a specific layout."},"setRecord(bytes32,bytes32[],bytes,bytes32,bytes)":{"notice":"Writes a record in the table identified by `tableId`."},"setStaticField(bytes32,bytes32[],uint8,bytes,bytes32)":{"notice":"Writes data into a static (fixed length) field in the table identified by `tableId`."},"spliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes)":{"notice":"Modifies dynamic (variable length) data in a record for a specified field."},"spliceStaticData(bytes32,bytes32[],uint48,bytes)":{"notice":"Modifies static (fixed length) data in a record at the specified position."},"staticCallCheck()":{"notice":"Used in conjunction with the try/catch pattern to test if the current call is staticcall"},"storeVersion()":{"notice":"Retrieves the protocol version of the Store."}},"version":1}},"settings":{"remappings":["@eveworld/smart-object-framework-v2/=../smart-object-framework-v2/","@eveworld/world-v2/=../world-v2/","@latticexyz/=node_modules/@latticexyz/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/"],"optimizer":{"enabled":true,"runs":300},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"../smart-object-framework-v2/src/WorldWithContext.sol":"WorldWithContext"},"evmVersion":"cancun","libraries":{}},"sources":{"../smart-object-framework-v2/src/StaticSystemCall.sol":{"keccak256":"0xe23386362f6e95086efe6de963f68123623547842f4fa0ddb726d9a7b1582aaf","urls":["bzz-raw://3b378a54feb0341a3287228418b3e0e3d9be395e19c470a11922c4735dc572d3","dweb:/ipfs/QmVyRtDwHYcHwYFXqjbP9A2NytV1miCnwZgot1ban4vKJx"],"license":"MIT"},"../smart-object-framework-v2/src/StaticWorldContext.sol":{"keccak256":"0xf9309c0dcf15afc36326e7b3de920d0d1a85e51e0de7660835d29f5b697b3a85","urls":["bzz-raw://b979a3f610de445e37e6901bd29db04e4511b291a6f80ca2da2e81016d46cded","dweb:/ipfs/QmeN3sLofQGKnPUdmZ2VPc5q5srHpNrh2kBjmppYRuuxrD"],"license":"MIT"},"../smart-object-framework-v2/src/WorldWithContext.sol":{"keccak256":"0x590e7b810c3fe102c4dc2c27ddf8999f2edb73c44ca0def3a4c0621fdc550980","urls":["bzz-raw://b3979991b21d07e9ef82a819941eaf9757533641e98bbf7eba70a454ab888821","dweb:/ipfs/QmUooLWX9qxiDECFp98WTiZ1wDfqmQCJXzaYrQRLhqx1X4"],"license":"MIT"},"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/StoreKernel.sol":{"keccak256":"0xeeb12eb8f8254eea33f4d3b80504962733c191f7cd4f4b1bc3033237e648ff0b","urls":["bzz-raw://01b41567453f8f4f8c55b30d88d891b1ea87f2b5354ee8ce67ca58aedfb296ec","dweb:/ipfs/QmZkGP7yKZUUnVxwAV4AVhHfc8Dnz1TtbyooeGBm33EUE7"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreRead.sol":{"keccak256":"0xb27eeadfa0075d2ac085b155e42e195b9bc6511640097af6646936f5ceb3afc6","urls":["bzz-raw://cdca315a580d561a7ec3d488ad6ea6996a4611031218547d6b942c7654750a18","dweb:/ipfs/QmUrW9strzNK1guqRZ7jRC4GZ9SvAraxah3rfsw4eBGjZM"],"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/Delegation.sol":{"keccak256":"0x1ad6ce468042f6ba104c8fa2cd5506e434e1bd458448492ae9e8d1993a7e5f1d","urls":["bzz-raw://ded3d879ad5a4119f9ff2320ff27f63a06bc3853e91d3697b3406ee3e6ab65d5","dweb:/ipfs/QmTMjjArXQxXa3WeFF4dvvkAFSEstHTTsNYDCckgCBUVeE"],"license":"MIT"},"node_modules/@latticexyz/world/src/ERC165Checker.sol":{"keccak256":"0xb9d3ad8030a8d111971cbf775c1834313736c2f714d2bcb90fe065a928abe2c8","urls":["bzz-raw://702c7297150819d078d498d3c6ebbc9dc9414c35aaf1f8e19ae4c5beb5048c7d","dweb:/ipfs/QmZxKTDNLvVDV4jJ6S2qu9HnPbSXq1hRfgazJAL1xWkSkt"],"license":"MIT"},"node_modules/@latticexyz/world/src/IDelegationControl.sol":{"keccak256":"0x7cc2fbdd8ff6c996e19fab46c1031b76355da74973cebf45ce4df4b035d566bf","urls":["bzz-raw://857d577f84a68018a3392ec4540c15e80326aaf4b0f224d0d239605abacfc0f3","dweb:/ipfs/QmVEr3rTH1F1BFaCTMd7MmuceTqASwKBcMRnuFZ4tUAYmR"],"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/SystemCall.sol":{"keccak256":"0x39d02f33a0a96cd07cf553c6439a26be43bea3ce926266242cf7f84c762c16e4","urls":["bzz-raw://0de503a0d5e4e55dba2b04fb38660a7f890deac3673f63f8d9e2b23ab5f09574","dweb:/ipfs/QmbhCvRHjkETnsA59rFuGs3p5iu2t4NwYySoCj2GDNwY2V"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldContext.sol":{"keccak256":"0x15e21a1edaad9bc31f00659cce409f4cd6eaa2cd0c5035ab32b4ffa9fa4c8d40","urls":["bzz-raw://a1f5f0260668ada84712fd51de1166eeeecf53a01b896ea322f978387de363f6","dweb:/ipfs/QmQdaur7oZLLf8jRw8m3cNm1wbDLRTqQ634k1DhzRCYdRa"],"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/tables/Balances.sol":{"keccak256":"0x25248669a093cfdc9453491e5b5806f6aa092a805569799650c43c32f7b7877d","urls":["bzz-raw://2f294f597122450abd267760d91682facd0a1040383caeb44aaadeb74770904a","dweb:/ipfs/QmPXsoh8tUhpnhjdBYYTZCLc8MPHDZK6xUmN7F2DsMEXro"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/FunctionSelectors.sol":{"keccak256":"0x1ee313f4f1165034b92c5df1fe4cdd9be52b27780245388db3a0267c119fc926","urls":["bzz-raw://a3d58ca6a58e94bc30d5be0fc7a7d1325a92096c8b8b2b3a0531c2c5d0d60791","dweb:/ipfs/QmZSisbANqwnFzwMJnnYBjemLW4Cqn3oL7MkV4HiQR7GKv"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/InitModuleAddress.sol":{"keccak256":"0x28ecea550f7cef98318f2db2e203e758475306a6454f776e6dbc5094811d577e","urls":["bzz-raw://01ae40d53747c2fec400c3bddec5789da6995a38e918bf3badad9c403e70d069","dweb:/ipfs/QmaQhjyGzXjTR16gJUnpaBhG5zJvPdaxJ6c9yJY9FD5kBb"],"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/NamespaceDelegationControl.sol":{"keccak256":"0x66193215d3c053675d67ba81d530ee2bb1c39250a15cf2d9a6fb166615af461d","urls":["bzz-raw://b783be83ef27281fb6ae2166f692d0ec912bdbe4f49312181b1ef561b5098729","dweb:/ipfs/Qmdtmq4mGtrqoFg4UWhxAevNfVXEUhp8fohRWycqKD2vCk"],"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/codegen/tables/SystemHooks.sol":{"keccak256":"0xc27730dae8302cb86f5d65ddc9ae0e92afba17842285a6d0cd146a1e21d73c0f","urls":["bzz-raw://4de5f820f1dfe36e53fe1fc77be6a52ac5fa72a7a5d5ec66e5d29ca6ce553674","dweb:/ipfs/QmP5JUMHDCBxZkZ2YnoYQLqQFHeyCpoUVp14hJBWpSdiqV"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol":{"keccak256":"0x1706fe4b5441a4e3982a3d32f7de2148627b8dfbbe3e38391dd4dab06b86478c","urls":["bzz-raw://c0569fa73cd26c6476188646194ad58eb5cf78cb7c7dc7722748455c23c9d4d7","dweb:/ipfs/Qma1RuR12bTXSVJJ8Q8Gw23KkBw7pyV9u5Kr8TGutaxYdz"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/UserDelegationControl.sol":{"keccak256":"0x3b8d434a81e5667242724089207f90001099d32095e05c4efd75931201d850b1","urls":["bzz-raw://73d47004e03e56b0d0e64ca9012219bc6ae01cef455d7e6ccab9f60dfc5e55b5","dweb:/ipfs/QmQUcGYNEVBRs1oj1HgJ92SPNuiDL3YVYbBymGy63yxqDc"],"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/requireInterface.sol":{"keccak256":"0x5b94a21fd46abb4aac8f38809c0d6105f30792042c927f8a6a4f40cfe35c7ab8","urls":["bzz-raw://8bade9d52cf370f3b5435abb47a5338dca5498bee773e97518e7a080fa882940","dweb:/ipfs/QmTtaXUWwMQmHW8oKEoRZxagidZcCiN3oLQs7kN3nycrkW"],"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/systemHookTypes.sol":{"keccak256":"0x15c25ae4b21e091209970e45a198cb51f31eeae482828862641099c1a9b2448a","urls":["bzz-raw://0ce3c3eb58dc5c262d36babf372ad028d2846beea73a59d6e70f0eb8c90ee00d","dweb:/ipfs/QmWUkgegTRtSJM3awvjg4J7DWZ2ME7Pnxp1dP2TWWzLNoo"],"license":"MIT"},"node_modules/@latticexyz/world/src/version.sol":{"keccak256":"0x9c222a00d7aef686e6f6319d544959ee8a7010c7c0692738f7fe9d19694b0715","urls":["bzz-raw://0296e6e111eeb4f6249fea39ee3b024a02f46eb692925d9b41e3b39fa15a940b","dweb:/ipfs/QmbSYepReq4NepkvLEkeTtGXRwFpQRUfyENnjkd4kaM4BU"],"license":"MIT"},"node_modules/@latticexyz/world/src/worldResourceTypes.sol":{"keccak256":"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465","urls":["bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea","dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk"],"license":"MIT"}},"version":1},"id":3}