{"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":"0x60a060405234801561000f575f80fd5b506100467f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e17580546001600160a01b03191630179055565b60405164191718171960d91b907fc7f5fdc8526b76f54916701bc910876243ffff2a40b0bb8d59eea8151c52c005905f90a23360805260405164191718171960d91b907f7f8f36afe3fb61c459c1a54a60b8a477eab02cc58e49f547561a40906239cb82905f90a2608051614f15620000ce5f395f81816103f1015261164f0152614f155ff3fe608060405260043610610207575f3560e01c8063894ecc5811610117578063c11222291161009f578063d4285dc21161006e578063d4285dc2146107eb578063d9c03a041461080a578063dbbf0e2114610829578063e228a4a314610848578063ef6ea862146108675761028f565b8063c1122229146105e9578063c4d66de81461078e578063cc49db7e146107ad578063d03edb8c146107cc5761028f565b8063a53417ed116100e6578063a53417ed146106e3578063af068c9e14610702578063afdb73d414610721578063b047c1eb14610750578063c0a2895a1461076f5761028f565b8063894ecc58146106735780638c364d591461068657806396f0f0cd146106a55780639f1fcf0a146106c45761028f565b8063390baae01161019a578063489f6a9211610169578063489f6a92146105985780634dc77d97146105ab578063505a181d146105ca5780636951955d146105e957806387ce4598146106035761028f565b8063390baae01461050b5780633a77c2c21461052a5780633ae7af0814610557578063419b58fd1461056a5761028f565b80631e788977116101d65780631e7889771461049a5780631e8545ff146104b9578063298314fb146104cd5780633708196e146104ec5761028f565b806302d05d3f146103e057806305242d2f14610430578063114a72661461045c578063150f32621461047b5761028f565b3661028f575f610247616e7360f01b5f8060405160200161022a93929190614084565b604051602081830303815290604052610242906140ba565b610886565b905061028d616e7360f01b5f8060405160200161026693929190614084565b60405160208183030381529060405261027e906140ba565b61028834846140f4565b6108ff565b005b3033036102c1576040516327a1460b60e21b81526001600160e01b03195f351660048201526024015b60405180910390fd5b5f806102d75f356001600160e01b031916610997565b91509150815f801b0361030a57604051637eef2a7160e11b81526001600160e01b03195f351660048201526024016102b8565b5f61034b5f368080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509250869150610a389050565b90506060306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b158015610387575f80fd5b505af1925050508015610398575060015b6103af576103a833858434610a56565b90506103d8565b6103c233856103bd85614107565b610a82565b6103ce33858434610a56565b90506103d8610ac7565b805160208201f35b3480156103eb575f80fd5b506104137f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561043b575f80fd5b5061044f61044a366004614195565b610aef565b6040516104279190614242565b348015610467575f80fd5b5061028d610476366004614291565b610b31565b348015610486575f80fd5b5061028d610495366004614291565b610be1565b3480156104a5575f80fd5b5061044f6104b4366004614317565b610c89565b3480156104c4575f80fd5b5061028d610cd2565b3480156104d8575f80fd5b5061028d6104e7366004614370565b610cda565b3480156104f7575f80fd5b5061028d610506366004614414565b610dbf565b348015610516575f80fd5b5061028d610525366004614414565b610e72565b348015610535575f80fd5b506105496105443660046144a2565b610f1c565b604051908152602001610427565b61044f610565366004614568565b610f2c565b348015610575575f80fd5b506105896105843660046145ab565b610fe0565b604051610427939291906145f9565b3480156105a3575f80fd5b505f5c610549565b3480156105b6575f80fd5b5061044f6105c5366004614694565b611033565b3480156105d5575f80fd5b5061028d6105e43660046146f7565b611042565b3480156105f4575f80fd5b5064191718171960d91b610549565b34801561060e575f80fd5b5061063c61061d3660046144a2565b5f19016004908102600181015c92600282015c92600383015c92015c90565b604080519485526001600160e01b031990931660208501526001600160a01b03909116918301919091526060820152608001610427565b61044f610681366004614752565b6110b5565b348015610691575f80fd5b506105496106a0366004614195565b6113ba565b3480156106b0575f80fd5b5061044f6106bf366004614568565b6113fb565b3480156106cf575f80fd5b506105496106de3660046147a6565b611435565b3480156106ee575f80fd5b506105496106fd366004614800565b611442565b34801561070d575f80fd5b5061028d61071c366004614852565b61144e565b34801561072c575f80fd5b505f195f5c016004908102600181015c91600282015c91600381015c91015c61063c565b34801561075b575f80fd5b5061028d61076a366004614888565b6114c4565b34801561077a575f80fd5b5061028d61078936600461490e565b61156c565b348015610799575f80fd5b5061028d6107a8366004614993565b611617565b3480156107b8575f80fd5b506105896107c73660046146f7565b61171f565b3480156107d7575f80fd5b5061044f6107e6366004614317565b61176f565b3480156107f6575f80fd5b506105496108053660046144a2565b6117af565b348015610815575f80fd5b5061028d610824366004614195565b6117b9565b348015610834575f80fd5b50610549610843366004614800565b611837565b348015610853575f80fd5b506105496108623660046144a2565b611843565b348015610872575f80fd5b5061028d610881366004614291565b61184d565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f815181106108bd576108bd6149ae565b60209081029190910101525f6108f7777462776f726c6400000000000000000042616c616e63657360401b8383630100080160dd1b6118f5565b949350505050565b6040805160018082528183019092525f916020808301908036833701905050905082815f81518110610933576109336149ae565b602002602001018181525050610992777462776f726c6400000000000000000042616c616e63657360401b5f1b825f8560405160200161097591815260200190565b60408051601f19818403018152919052630100080160dd1b611921565b505050565b6040805160018082528183019092525f918291829160208083019080368337019050509050836001600160e01b031916815f815181106109d9576109d96149ae565b60209081029190910101525f8080610a1a7f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f728564090080080160d21b611936565b925092509250610a2b838383611a36565b9550955050505050915091565b82820160200180516001600160e01b031682179052825b9392505050565b60605f80610a6687878787611a4d565b9150915081610a7857610a7881611bd3565b9695505050505050565b816001600160a01b038416345f5c60048082026001810191600282019160038101910187845d88835d86825d85815d50505050600181019050805f5d50505050505050565b5f5c8060021b5f600182015d5f600282015d5f600382015d5f600482015d505f1981015f5d50565b6060610a78868686808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250889250879150611bdb9050565b303303610b5e576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610b688633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f92019190915250611c5392505050565b505050505050565b303303610c0e576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610c188633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f92019190915250611c6e92505050565b6060610cc9858585808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250879250611ca6915050565b95945050505050565b5f195f815d50565b303303610d07576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610d118833611c20565b610db5888888808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8c018190048102820181019092528a815292508a91508990819084018382808284375f9201919091525050604080516020601f8a018190048102820181019092528881528a9350915088908890819084018382808284375f92019190915250611cdf92505050565b5050505050505050565b303303610dec576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610df68733611c20565b610e69878787808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8a018190048102820181019092528881528a9350915088908890819084018382808284375f92019190915250889250611cf5915050565b50505050505050565b303303610e9f576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610ea98733611c20565b610e69878787808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8a018190048102820181019092528881528a9350915088908890819084018382808284375f92019190915250889250611921915050565b5f610f2682611d38565b92915050565b6060303303610f5b576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b158015610f93575f80fd5b505af1925050508015610fa4575060015b610fbb57610fb433848434610a56565b9050610f26565b610fc933846103bd85614107565b5f610fd633858534610a56565b9050610a4f610ac7565b60605f6060611023878787808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250899250611936915050565b9250925092509450945094915050565b6060610a788686868686611d9e565b30330361106f576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6110798333611c20565b610992838383808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250611e6c92505050565b60603033036110e4576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b336001600160a01b0385160361117957306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b15801561112c575f80fd5b505af192505050801561113d575060015b6111545761114d33848434610a56565b9050610a4f565b61116233846103bd85614107565b5f61116f33858534610a56565b905061114d610ac7565b5f6111848533611e7f565b90506111938186338787611f2b565b1561122757306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b1580156111d0575f80fd5b505af19250505080156111e1575060015b6111f9576111f185858534610a56565b915050610a4f565b61120785856103bd86614107565b5f61121486868634610a56565b905061121e610ac7565b9150610a4f9050565b5f611232865f611e7f565b90506112418187338888611f2b565b156112d757306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b15801561127e575f80fd5b505af192505050801561128f575060015b6112a85761129f86868634610a56565b92505050610a4f565b6112b686866103bd87614107565b5f6112c387878734610a56565b90506112cd610ac7565b9250610a4f915050565b5f6112e96112e487611fcd565b611fea565b90506112f88188338989611f2b565b1561139057306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b158015611335575f80fd5b505af1925050508015611346575060015b6113605761135687878734610a56565b9350505050610a4f565b61136e87876103bd88614107565b5f61137b88888834610a56565b9050611385610ac7565b9350610a4f92505050565b60405163c86745f960e01b81526001600160a01b03881660048201523360248201526044016102b8565b5f610a78868686808060200260200160405190810160405280939291908181526020018383602002808284375f920191909152508892508791506118f59050565b606030330361142a576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610a4f338484612060565b5f610cc985858585612081565b5f6108f78484846120c8565b30330361147b576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6114b6616e7360f01b5f8060405160200161149893929190614084565b6040516020818303038152906040526114b0906140ba565b336120dd565b6114c0828261210f565b5050565b3033036114f1576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6114fb8633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f9201919091525061217992505050565b303303611599576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6115a38833611c20565b610db5888888808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f89018190048102820181019092528781528b93508a9250899189908990819084018382808284375f9201919091525061239792505050565b303303611644576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146116ca576116ae616e7360f01b5f8060405160200161169193929190614084565b6040516020818303038152906040526116a9906140ba565b6123af565b3360405163d787b73760e01b81526004016102b89291906149c2565b5f6116d3612475565b6001600160a01b0316146116fa576040516302bc694960e31b815260040160405180910390fd5b611703816124c2565b604080515f81526020810190915261171c90829061210f565b50565b60605f6060611760868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525061253192505050565b92509250925093509350939050565b6060610cc9858585808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250879250612556915050565b5f610f268261256c565b3033036117e6576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6117f08533611c20565b611830858585808060200260200160405190810160405280939291908181526020018383602002808284375f920191909152508792508691506125c69050565b5050505050565b5f6108f784848461261c565b5f610f268261262b565b30330361187a576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6118848633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f9201919091525061265092505050565b5f610cc96119038686612688565b60ff858116601b0360080285901c1661191c85876126dd565b612715565b611830858561193084876126dd565b85612179565b60605f60605f61194585612765565b9050611952878783612787565b93505f61195e866127bc565b90508015611a2b5761197088886127f8565b935066ffffffffffffff84166001600160401b03811115611993576119936144b9565b6040519080825280601f01601f1916602001820160405280156119bd576020820181803683370190505b509250602083015f5b828160ff161015611a28575f6119dd8b8b8461280a565b90505f6119f9888460ff166028026038011c64ffffffffff1690565b9050611a07825f8387612870565b611a1181856140f4565b935050508080611a20906149ec565b9150506119c6565b50505b505093509350939050565b5f80611a4185612937565b90969095509350505050565b5f60605f611a5a8661294b565b90505f5b8151811015611b09575f828281518110611a7a57611a7a6149ae565b60200260200101519050611aa26001826001600160581b0319166129d090919063ffffffff16565b15611b005760405163c332303160e01b8152606082901c9063c332303190611ad2908c908c908c90600401614a0a565b5f604051808303815f87803b158015611ae9575f80fd5b505af1158015611afb573d5f803e3d5ffd5b505050505b50600101611a5e565b50611b16878588886129ed565b90935091505f5b8151811015611bc8575f828281518110611b3957611b396149ae565b60200260200101519050611b616002826001600160581b0319166129d090919063ffffffff16565b15611bbf5760405163973d8f9960e01b8152606082901c9063973d8f9990611b91908c908c908c90600401614a0a565b5f604051808303815f87803b158015611ba8575f80fd5b505af1158015611bba573d5f803e3d5ffd5b505050505b50600101611b1d565b505094509492505050565b805160208201fd5b6060611be682612ab7565b8360ff161015611c0357611bfc85858585612ac8565b90506108f7565b611bfc8585611c1185612ab7565b611c1b9087614a31565b611ca6565b611c2a8282612af5565b6114c057611c37826123af565b8160405163d787b73760e01b81526004016102b89291906149c2565b611c6884848484611c6389611d38565b611cf5565b50505050565b5f611c7985856127f8565b90505f611c95828560ff166028026038011c64ffffffffff1690565b9050610bd9868686845f8888612b18565b60606108f7611cb685858561280a565b5f611cda85611cc589896127f8565b9060ff166028026038011c64ffffffffff1690565b612e9c565b6118308585858585611cf08b611d38565b612ebf565b611cfe81612ab7565b8360ff161015611d1a57611d158585858585611921565b611830565b6118308585611d2884612ab7565b611d329087614a31565b85612650565b5f7f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d000000000000000000008201611d7057506503001811010160cd1b919050565b610f26611d9675746273746f72650000000000000000005461626c657360501b84613180565b60205f612715565b606081831115611dcb57604051635462a3c160e11b815260048101849052602481018390526044016102b8565b5f611dd687876127f8565b90505f611df2828760ff166028026038011c64ffffffffff1690565b90508085101580611e0257508084115b15611e44578081861015611e2057611e1b600186614a4a565b611e22565b855b604051637e8578d360e01b8152600481019290925260248201526044016102b8565b5f611e5089898961280a565b9050611e5f8187888803612e9c565b9998505050505050505050565b6114c08282611e7a85611d38565b61319b565b6040805160028082526060820183525f9283929190602083019080368337019050509050836001600160a01b03165f1b815f81518110611ec157611ec16149ae565b602002602001018181525050826001600160a01b03165f1b81600181518110611eec57611eec6149ae565b60209081029190910101525f610cc97f7462776f726c640000000000000000005573657244656c65676174696f6e436f8383630100080160dd1b6118f5565b5f611f3586613419565b15611f4257506001610cc9565b85611f4e57505f610cc9565b5f80611f9a865f8a8a8989604051602401611f6b93929190614a0a565b60408051601f198184030181529190526020810180516001600160e01b03166301a86b5560e41b1790526129ed565b9150915081611fad575f92505050610cc9565b80806020019051810190611fc19190614a5d565b98975050505050505050565b6dffffffffffffffffffffffffffff60801b16616e7360f01b1790565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110612021576120216149ae565b60209081029190910101525f6108f77f7462776f726c640000000000000000004e616d65737061636544656c656761748383630100080160dd1b6118f5565b60605f8061206f868686613460565b9150915081610cc957610cc981611bd3565b5f8061208c83612ab7565b90508060ff168460ff1610156120b45760ff848116601b0360080284901c165b9150506108f7565b6120ac86866120c38488614a31565b61261c565b5f6108f78484846120d888611d38565b612081565b806001600160a01b03166120f86120f384611fcd565b6134b3565b6001600160a01b0316146114c057611c37826123af565b61211f8262dfba3960e71b613534565b612165335f84846040516024016121369190614242565b60408051601f198184030181529190526020810180516001600160e01b0316637c5b033560e01b179052613576565b506114c08282805190602001206001613586565b611bdd60f21b846001600160f01b031916036121d057837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516121c393929190614ab6565b60405180910390a2611c68565b5f6121db8585612688565b90505f6121e78661364d565b90505f5b8151811015612298575f828281518110612207576122076149ae565b6020026020010151905061222f6004826001600160581b0319166129d090919063ffffffff16565b1561228f5760405163964f667d60e01b8152606082901c9063964f667d90612261908b908b908b908b90600401614ae8565b5f604051808303815f87803b158015612278575f80fd5b505af115801561228a573d5f803e3d5ffd5b505050505b506001016121eb565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516122cd93929190614ab6565b60405180910390a26122e8828565ffffffffffff16856136bc565b5f5b8151811015610e69575f828281518110612306576123066149ae565b6020026020010151905061232e6008826001600160581b0319166129d090919063ffffffff16565b1561238e5760405163a8ba872160e01b8152606082901c9063a8ba872190612360908b908b908b908b90600401614ae8565b5f604051808303815f87803b158015612377575f80fd5b505af1158015612389573d5f803e3d5ffd5b505050505b506001016122ea565b610bd98686868686866123aa8d8d6127f8565b612b18565b606081601081901b5f6123c1836136d2565b9050826001600160901b03198316156123ec576123e76001600160901b031984166136e8565b61240c565b604051806040016040528060068152602001651e3937b7ba1f60d11b8152505b6001600160801b031983161561242a57612425836136e8565b61244a565b604051806040016040528060068152602001651e3937b7ba1f60d11b8152505b60405160200161245c93929190614b20565b6040516020818303038152906040529350505050919050565b604080515f808252602082019092525f6124b87f7462776f726c64000000000000000000496e69744d6f64756c654164647265738383630500400560da1b613743565b60601c9392505050565b604080515f808252602082018352606084901b6bffffffffffffffffffffffff191682840152825180830360340181526054830190935290916114c0917f7462776f726c64000000000000000000496e69744d6f64756c6541646472657391849190630500400560da1b6137dc565b60605f6060612549858561254488611d38565b611936565b9250925092509250925092565b60606108f784848461256788611d38565b611bdb565b5f61257682613866565b9050612581826138d8565b6125c157818260405160200161259991815260200190565b60408051601f19818403018152908290526341e713ad60e01b82526102b89291600401614b76565b919050565b5f6125d185856127f8565b90505f6125ed828560ff166028026038011c64ffffffffff1690565b9050610bd98686866126068764ffffffffff8716614a4a565b604080515f815260208101909152889088612b18565b5f6108f782611cc586866127f8565b5f6126358261395a565b9050806125c157818260405160200161259991815260200190565b5f61265b85856127f8565b90505f612677828560ff166028026038011c64ffffffffff1690565b9050610bd98686865f858888612b18565b5f828260405160200161269c929190614b8e565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff1681101561270d5761270360ff601b83900360080287901c16836140f4565b91506001016126e1565b509392505050565b5f6020821061273a5760208204840193506020828161273657612736614bc8565b0691505b508254600882021b60208290038084111561270d576001850154600882021c82179150509392505050565b5f600861277460026020614a4a565b61277e9190614bdc565b9190911c919050565b6060815f036127a4575060408051602081019091525f8152610a4f565b5f6127af8585612688565b9050610cc9815f85612e9c565b5f60086001806127ce60026020614a4a565b6127d89190614a4a565b6127e29190614a4a565b6127ec9190614bdc565b8260ff911c1692915050565b5f610a4f61280684846139cc565b5490565b5f838360405160200161281e929190614b8e565b604051602081830303815290604052805190602001208260f81b6001600160f81b0319167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b82156128f4576020831061289a5760208304840193506020838161289657612896614bc8565b0692505b82156128f45760208390035f818410156128bb57505f19600884021c6128c4565b505f19600882021c5b8554600886021b8184511682198216178452508184116128e5575050611c68565b50600194909401939182900391015b5b602082106129165783548152600190930192601f19909101906020016128f5565b8115611c68575f5f19600884021c8251865482191691161782525050505050565b602081015160408201515f905b9050915091565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110612983576129836149ae565b60209081029190910101525f6129ba7f7462776f726c6400000000000000000053797374656d486f6f6b7300000000008383611ca6565b90506108f76129cb825f8451613a21565b613a94565b5f8160ff16826129e08560581c90565b1660ff1614905092915050565b5f60605f806129fb86613aa3565b90925090506001600160a01b038216612a335785612a18876123af565b604051637df8867360e11b81526004016102b8929190614b76565b80612a4257612a428689611c20565b8615612a71575f612a5287611fcd565b90505f612a5e82610886565b9050612a6e826102888b846140f4565b50505b5f612a7c8760101b90565b6001600160901b03191614612a9c57612a9788888488613b2d565b612aa8565b612aa888888488613ba0565b90999098509650505050505050565b5f600860016127d860026020614a4a565b6060610cc9612ad78686612688565b612ae184866126dd565b60ff868116601b0360080286901c16612e9c565b5f612b08612b0284611fcd565b83613bfd565b80610a4f5750610a4f8383613bfd565b613a3160f11b876001600160f01b03191614612b7157613a3160f11b8788604051602001612b4891815260200190565b60408051601f19818403018152908290526331b4668360e01b82526102b8939291600401614bf3565b5f612b8b828760ff166028026038011c64ffffffffff1690565b90505f83518564ffffffffff1683612ba39190614a4a565b612bad91906140f4565b9050808214158015612bcf575081612bc58688614c18565b64ffffffffff1614155b15612c0657604051632994042d60e21b815264ffffffffff80881660048301528087166024830152831660448201526064016102b8565b818664ffffffffff161115612c3e57604051637e8578d360e01b81526004810183905264ffffffffff871660248201526044016102b8565b5f612c4a848984613caa565b90505f612c568b61364d565b90505f5b8151811015612d16575f828281518110612c7657612c766149ae565b60200260200101519050612c9e6010826001600160581b0319166129d090919063ffffffff16565b15612d0d57606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b8152600401612cdf9796959493929190614c3d565b5f604051808303815f87803b158015612cf6575f80fd5b505af1158015612d08573d5f803e3d5ffd5b505050505b50600101612c5a565b5064ffffffffff88165f5b8a60ff168160ff161015612d5457612d48878260ff166028026038011c64ffffffffff1690565b90910190600101612d21565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d604051612d8f96959493929190614c9a565b60405180910390a250828414612daf575f612daa8c8c6139cc565b839055505b5f612dbb8c8c8c61280a565b9050612dcf818a64ffffffffff16896136bc565b505f5b8151811015612e8e575f828281518110612dee57612dee6149ae565b60200260200101519050612e166020826001600160581b0319166129d090919063ffffffff16565b15612e8557606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b8152600401612e579796959493929190614c3d565b5f604051808303815f87803b158015612e6e575f80fd5b505af1158015612e80573d5f803e3d5ffd5b505050505b50600101612dd2565b505050505050505050505050565b60405160208101601f19603f848401011660405282825261270d85858584612870565b611bdd60f21b866001600160f01b03191603612f1857857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051612f0b9493929190614ce8565b60405180910390a2610bd9565b5f612f228761364d565b90505f5b8151811015612fd7575f828281518110612f4257612f426149ae565b60200260200101519050612f6a6001826001600160581b0319166129d090919063ffffffff16565b15612fce576040516315c19b2760e21b8152606082901c906357066c9c90612fa0908c908c908c908c908c908c90600401614d26565b5f604051808303815f87803b158015612fb7575f80fd5b505af1158015612fc9573d5f803e3d5ffd5b505050505b50600101612f26565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98787878760405161300e9493929190614ce8565b60405180910390a25f6130218888612688565b90505f602087019050613037825f895184613d46565b5f613041856127bc565b11156130c1575f6130528a8a6139cc565b87815590506020860191505f805f5b61306a886127bc565b8160ff1610156130bc5761307f8d8d8361280a565b925061309a8a8260ff166028026038011c64ffffffffff1690565b91506130a8835f8488613d46565b6130b282866140f4565b9450600101613061565b505050505b5f5b8351811015613174575f8482815181106130df576130df6149ae565b602002602001015190506131076002826001600160581b0319166129d090919063ffffffff16565b1561316b57604051635b28cdaf60e01b8152606082901c90635b28cdaf9061313d908e908e908e908e908e908e90600401614d26565b5f604051808303815f87803b158015613154575f80fd5b505af1158015613166573d5f803e3d5ffd5b505050505b506001016130c3565b50505050505050505050565b60408051602081018490529081018290525f9060600161269c565b611bdd60f21b836001600160f01b031916036131ee57827f0e1f72f429eb97e64878619984a91e687ae91610348b9ff4216782cc96e49d07836040516131e19190614d7e565b60405180910390a2505050565b5f6131f88461364d565b90505f5b81518110156132a7575f828281518110613218576132186149ae565b602002602001015190506132406040826001600160581b0319166129d090919063ffffffff16565b1561329e57604051639faeaf4560e01b8152606082901c90639faeaf459061327090899089908990600401614d90565b5f604051808303815f87803b158015613287575f80fd5b505af1158015613299573d5f803e3d5ffd5b505050505b506001016131fc565b50837f0e1f72f429eb97e64878619984a91e687ae91610348b9ff4216782cc96e49d07846040516132d89190614d7e565b60405180910390a25f6132eb8585612688565b9050613342815f6132fb86612765565b6001600160401b03811115613312576133126144b9565b6040519080825280601f01601f19166020018201604052801561333c576020820181803683370190505b506136bc565b5f61334c846127bc565b111561336c575f61335d86866139cc565b905061336a816020613e01565b505b5f5b8251811015610bd9575f83828151811061338a5761338a6149ae565b602002602001015190506133b26080826001600160581b0319166129d090919063ffffffff16565b15613410576040516383b5c95b60e01b8152606082901c906383b5c95b906133e2908a908a908a90600401614d90565b5f604051808303815f87803b1580156133f9575f80fd5b505af115801561340b573d5f803e3d5ffd5b505050505b5060010161336e565b5f61737960f01b5f681d5b9b1a5b5a5d195960ba1b60405160200161344093929190614084565b604051602081830303815290604052613458906140ba565b909114919050565b5f60605f8061346e86613aa3565b90925090506001600160a01b03821661348b5785612a18876123af565b8061349a5761349a8688611c20565b6134a5878387613e3c565b909890975095505050505050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f815181106134ea576134ea6149ae565b60209081029190910101525f6135297f7462776f726c640000000000000000004e616d6573706163654f776e657200008383630500400560da1b6118f5565b60601c949350505050565b61353e8282613eab565b6114c0576040516374b5e6ff60e01b81526001600160a01b03831660048201526001600160e01b0319821660248201526044016102b8565b60605f80610a6687878787613ba0565b6040805160028082526060820183525f92602083019080368337019050509050836001600160a01b03165f1b815f815181106135c4576135c46149ae565b60200260200101818152505082816001815181106135e4576135e46149ae565b602002602001018181525050611c687f7462776f726c64000000000000000000496e7374616c6c65644d6f64756c65735f1b825f8560405160200161363091151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b611921565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110613685576136856149ae565b60209081029190910101525f6129ba7f746273746f726500000000000000000053746f7265486f6f6b730000000000008383611ca6565b610992838383516136cd8560200190565b613d46565b5f6136df607060106140f4565b9190911b919050565b60605f5b601081101561371c576001600160801b03198316600882021b6001600160f81b0319161561371c576001016136ec565b604080516001600160801b03198516602082015281516030909101909152818152806108f7565b5f8061374d613ec6565b9050306001600160a01b0382160361376b576120ac868686866118f5565b604051638c364d5960e01b81526001600160a01b03821690638c364d599061379d908990899089908990600401614db8565b602060405180830381865afa1580156137b8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120ac9190614de6565b5f6137e5613ec6565b9050306001600160a01b03821603613809576138048686868686611921565b610bd9565b6040516301c85d5760e51b81526001600160a01b0382169063390baae09061383d9089908990899089908990600401614dfd565b5f604051808303815f87803b158015613854575f80fd5b505af1158015613174573d5f803e3d5ffd5b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061389d5761389d6149ae565b60209081029190910101525f6108f775746273746f72650000000000000000005461626c657360501b8360016503001811010160cd1b6118f5565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061390f5761390f6149ae565b60209081029190910101525f61394e7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b6118f5565b90506108f78160f81c90565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110613991576139916149ae565b60209081029190910101525f6108f775746273746f72650000000000000000005461626c657360501b8360026503001811010160cd1b6118f5565b5f82826040516020016139e0929190614b8e565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f81831180613a305750835182115b15613a54578383836040516323230fa360e01b81526004016102b893929190614e43565b60208401613a6284826140f4565b90505f613a6f8585614a4a565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f610a4f8360155f613eff565b6040805160018082528183019092525f91829182916020808301908036833701905050905083815f81518110613adb57613adb6149ae565b60209081029190910101525f8080613b1c7f7462776f726c6400000000000000000053797374656d730000000000000000008564150200140160d01b611936565b925092509250610a2b838383613f77565b5f6060836001600160a01b03165f613b46858989613f82565b604051613b539190614e67565b5f6040518083038185875af1925050503d805f8114613b8d576040519150601f19603f3d011682016040523d82523d5f602084013e613b92565b606091505b509097909650945050505050565b5f6060836001600160a01b0316613bb8848888613f82565b604051613bc59190614e67565b5f60405180830381855af49150503d805f8114613b8d576040519150601f19603f3d011682016040523d82523d5f602084013e613b92565b6040805160028082526060820183525f928392919060208301908036833701905050905083815f81518110613c3457613c346149ae565b602002602001018181525050826001600160a01b03165f1b81600181518110613c5f57613c5f6149ae565b60209081029190910101525f613c9e7f7462776f726c640000000000000000005265736f7572636541636365737300008383630101000160d81b6118f5565b9050610cc98160f81c90565b5f64ffffffffff821115613cd457604051637149a3c160e01b8152600481018390526024016102b8565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff16808510613d065780850382019150613d0e565b848103820391505b5064ffffffffff6038602860ff8816020181811b1966ffffffffffffff199490941690921792909216918416901b1790509392505050565b8215613dbe5760208310613d7057602083048401935060208381613d6c57613d6c614bc8565b0692505b8215613dbe5760208390035f5f19600885021c1990506008850281811c91508351811c9050811987541682821617875550818411613daf575050611c68565b50600194909401939182900391015b5b60208210613de05780518455600190930192601f1990910190602001613dbf565b8115611c68575f5f19600884021c8554835182191691161785555050505050565b5f6020613e0f83601f6140f4565b613e199190614e82565b613e2390846140f4565b90505b80831015610992575f8355600183019250613e26565b5f6060836001600160a01b0316613e5484875f613f82565b604051613e619190614e67565b5f60405180830381855afa9150503d805f8114613e99576040519150601f19603f3d011682016040523d82523d5f602084013e613e9e565b606091505b5090969095509350505050565b5f613eb583613fb1565b8015610a4f5750610a4f8383613fe3565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f906001600160a01b0316806125c1573391505090565b60605f613f0c8560801c90565b90506fffffffffffffffffffffffffffffffff85165f858281613f3157613f31614bc8565b0490506040519350602084016020820281016040528185525f5b82811015613f6b578451871c825293870193602090910190600101613f4b565b50505050509392505050565b5f80611a4185614069565b6060838383604051602001613f9993929190614ea1565b60405160208183030381529060405290509392505050565b5f613fc3826301ffc9a760e01b613fe3565b8015610f265750613fdc826001600160e01b0319613fe3565b1592915050565b6040516001600160e01b0319821660248201525f90819060440160408051601f19818403018152919052602080820180516001600160e01b03166301ffc9a760e01b17815282519293505f9283928392909183918a617530fa92503d91505f519050828015614053575060208210155b801561405e57505f81115b979650505050505050565b6020810151603482015160609190911c905f9060f81c612944565b6001600160f01b03199390931683526001600160901b03199190911660028301526001600160801b031916601082015260200190565b805160208083015191908110156140da575f198160200360031b1b821691505b50919050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610f2657610f266140e0565b805160208201516001600160e01b031980821692919060048310156141365780818460040360031b1b83161693505b505050919050565b5f8083601f84011261414e575f80fd5b5081356001600160401b03811115614164575f80fd5b6020830191508360208260051b850101111561417e575f80fd5b9250929050565b803560ff811681146125c1575f80fd5b5f805f805f608086880312156141a9575f80fd5b8535945060208601356001600160401b038111156141c5575f80fd5b6141d18882890161413e565b90955093506141e4905060408701614185565b949793965091946060013592915050565b5f5b8381101561420f5781810151838201526020016141f7565b50505f910152565b5f815180845261422e8160208601602086016141f5565b601f01601f19169290920160200192915050565b602081525f610a4f6020830184614217565b5f8083601f840112614264575f80fd5b5081356001600160401b0381111561427a575f80fd5b60208301915083602082850101111561417e575f80fd5b5f805f805f80608087890312156142a6575f80fd5b8635955060208701356001600160401b03808211156142c3575f80fd5b6142cf8a838b0161413e565b90975095508591506142e360408a01614185565b945060608901359150808211156142f8575f80fd5b5061430589828a01614254565b979a9699509497509295939492505050565b5f805f806060858703121561432a575f80fd5b8435935060208501356001600160401b03811115614346575f80fd5b6143528782880161413e565b9094509250614365905060408601614185565b905092959194509250565b5f805f805f805f8060a0898b031215614387575f80fd5b8835975060208901356001600160401b03808211156143a4575f80fd5b6143b08c838d0161413e565b909950975060408b01359150808211156143c8575f80fd5b6143d48c838d01614254565b909750955060608b0135945060808b01359150808211156143f3575f80fd5b506144008b828c01614254565b999c989b5096995094979396929594505050565b5f805f805f805f60a0888a03121561442a575f80fd5b8735965060208801356001600160401b0380821115614447575f80fd5b6144538b838c0161413e565b909850965086915061446760408b01614185565b955060608a013591508082111561447c575f80fd5b506144898a828b01614254565b989b979a50959894979596608090950135949350505050565b5f602082840312156144b2575f80fd5b5035919050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156144f5576144f56144b9565b604052919050565b5f82601f83011261450c575f80fd5b81356001600160401b03811115614525576145256144b9565b614538601f8201601f19166020016144cd565b81815284602083860101111561454c575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8060408385031215614579575f80fd5b8235915060208301356001600160401b03811115614595575f80fd5b6145a1858286016144fd565b9150509250929050565b5f805f80606085870312156145be575f80fd5b8435935060208501356001600160401b038111156145da575f80fd5b6145e68782880161413e565b9598909750949560400135949350505050565b606081525f61460b6060830186614217565b8460208401528281036040840152610a788185614217565b5f82601f830112614632575f80fd5b813560206001600160401b0382111561464d5761464d6144b9565b8160051b61465c8282016144cd565b9283528481018201928281019087851115614675575f80fd5b83870192505b8483101561405e5782358252918301919083019061467b565b5f805f805f60a086880312156146a8575f80fd5b8535945060208601356001600160401b038111156146c4575f80fd5b6146d088828901614623565b9450506146df60408701614185565b94979396509394606081013594506080013592915050565b5f805f60408486031215614709575f80fd5b8335925060208401356001600160401b03811115614725575f80fd5b6147318682870161413e565b9497909650939450505050565b6001600160a01b038116811461171c575f80fd5b5f805f60608486031215614764575f80fd5b833561476f8161473e565b92506020840135915060408401356001600160401b03811115614790575f80fd5b61479c868287016144fd565b9150509250925092565b5f805f80608085870312156147b9575f80fd5b8435935060208501356001600160401b038111156147d5575f80fd5b6147e187828801614623565b9350506147f060408601614185565b9396929550929360600135925050565b5f805f60608486031215614812575f80fd5b8335925060208401356001600160401b0381111561482e575f80fd5b61483a86828701614623565b92505061484960408501614185565b90509250925092565b5f8060408385031215614863575f80fd5b823561486e8161473e565b915060208301356001600160401b03811115614595575f80fd5b5f805f805f806080878903121561489d575f80fd5b8635955060208701356001600160401b03808211156148ba575f80fd5b6148c68a838b0161413e565b90975095506040890135915065ffffffffffff821682146148e5575f80fd5b909350606088013590808211156142f8575f80fd5b803564ffffffffff811681146125c1575f80fd5b5f805f805f805f8060c0898b031215614925575f80fd5b8835975060208901356001600160401b0380821115614942575f80fd5b61494e8c838d0161413e565b909950975087915061496260408c01614185565b965061497060608c016148fa565b955061497e60808c016148fa565b945060a08b01359150808211156143f3575f80fd5b5f602082840312156149a3575f80fd5b8135610a4f8161473e565b634e487b7160e01b5f52603260045260245ffd5b604081525f6149d46040830185614217565b90506001600160a01b03831660208301529392505050565b5f60ff821660ff8103614a0157614a016140e0565b60010192915050565b6001600160a01b0384168152826020820152606060408201525f610cc96060830184614217565b60ff8281168282160390811115610f2657610f266140e0565b81810381811115610f2657610f266140e0565b5f60208284031215614a6d575f80fd5b81518015158114610a4f575f80fd5b5f815180845260208085019450602084015f5b83811015614aab57815187529582019590820190600101614a8f565b509495945050505050565b606081525f614ac86060830186614a7c565b65ffffffffffff851660208401528281036040840152610a788185614217565b848152608060208201525f614b006080830186614a7c565b65ffffffffffff85166040840152828103606084015261405e8185614217565b61ffff60f01b841681525f601d60f91b8060028401528451614b498160038601602089016141f5565b808401905081600382015284519150614b698260048301602088016141f5565b0160040195945050505050565b828152604060208201525f6108f76040830184614217565b8281525f60208083018451602086015f5b82811015614bbb57815184529284019290840190600101614b9f565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b8082028115828204841417610f2657610f266140e0565b61ffff60f01b84168152826020820152606060408201525f610cc96060830184614217565b64ffffffffff818116838216019080821115614c3657614c366140e0565b5092915050565b87815260e060208201525f614c5560e0830189614a7c565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c0840152614c8c8185614217565b9a9950505050505050505050565b60c081525f614cac60c0830189614a7c565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a0840152611e5f8185614217565b608081525f614cfa6080830187614a7c565b8281036020840152614d0c8187614217565b9050846040840152828103606084015261405e8185614217565b86815260c060208201525f614d3e60c0830188614a7c565b8281036040840152614d508188614217565b90508560608401528281036080840152614d6a8186614217565b9150508260a0830152979650505050505050565b602081525f610a4f6020830184614a7c565b838152606060208201525f614da86060830185614a7c565b9050826040830152949350505050565b848152608060208201525f614dd06080830186614a7c565b60ff949094166040830152506060015292915050565b5f60208284031215614df6575f80fd5b5051919050565b85815260a060208201525f614e1560a0830187614a7c565b60ff861660408401528281036060840152614e308186614217565b9150508260808301529695505050505050565b606081525f614e556060830186614217565b60208301949094525060400152919050565b5f8251614e788184602087016141f5565b9190910192915050565b5f82614e9c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f8451614eb28184602089016141f5565b60609490941b6bffffffffffffffffffffffff19169190930190815260148101919091526034019291505056fea264697066735822122057c73348700bc71c4955a7f6a1e58647015d2c3e78ad876d040b8dcd7a986e2164736f6c63430008180033","sourceMap":"2228:22169:104:-:0;;;2629:94;;;;;;;;;-1:-1:-1;895:22:24;1066:42:26;2374:38;;-1:-1:-1;;;;;;2374:38:26;1824:4:23;2374:38:26;;;1751:84:23;895:22:24;928:38;;-1:-1:-1;;;952:13:24;928:38;;;;;2659:10:104;2649:20;;2680:38;;-1:-1:-1;;;2704:13:104;2680:38;;;;;2228:22169;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610610207575f3560e01c8063894ecc5811610117578063c11222291161009f578063d4285dc21161006e578063d4285dc2146107eb578063d9c03a041461080a578063dbbf0e2114610829578063e228a4a314610848578063ef6ea862146108675761028f565b8063c1122229146105e9578063c4d66de81461078e578063cc49db7e146107ad578063d03edb8c146107cc5761028f565b8063a53417ed116100e6578063a53417ed146106e3578063af068c9e14610702578063afdb73d414610721578063b047c1eb14610750578063c0a2895a1461076f5761028f565b8063894ecc58146106735780638c364d591461068657806396f0f0cd146106a55780639f1fcf0a146106c45761028f565b8063390baae01161019a578063489f6a9211610169578063489f6a92146105985780634dc77d97146105ab578063505a181d146105ca5780636951955d146105e957806387ce4598146106035761028f565b8063390baae01461050b5780633a77c2c21461052a5780633ae7af0814610557578063419b58fd1461056a5761028f565b80631e788977116101d65780631e7889771461049a5780631e8545ff146104b9578063298314fb146104cd5780633708196e146104ec5761028f565b806302d05d3f146103e057806305242d2f14610430578063114a72661461045c578063150f32621461047b5761028f565b3661028f575f610247616e7360f01b5f8060405160200161022a93929190614084565b604051602081830303815290604052610242906140ba565b610886565b905061028d616e7360f01b5f8060405160200161026693929190614084565b60405160208183030381529060405261027e906140ba565b61028834846140f4565b6108ff565b005b3033036102c1576040516327a1460b60e21b81526001600160e01b03195f351660048201526024015b60405180910390fd5b5f806102d75f356001600160e01b031916610997565b91509150815f801b0361030a57604051637eef2a7160e11b81526001600160e01b03195f351660048201526024016102b8565b5f61034b5f368080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509250869150610a389050565b90506060306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b158015610387575f80fd5b505af1925050508015610398575060015b6103af576103a833858434610a56565b90506103d8565b6103c233856103bd85614107565b610a82565b6103ce33858434610a56565b90506103d8610ac7565b805160208201f35b3480156103eb575f80fd5b506104137f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561043b575f80fd5b5061044f61044a366004614195565b610aef565b6040516104279190614242565b348015610467575f80fd5b5061028d610476366004614291565b610b31565b348015610486575f80fd5b5061028d610495366004614291565b610be1565b3480156104a5575f80fd5b5061044f6104b4366004614317565b610c89565b3480156104c4575f80fd5b5061028d610cd2565b3480156104d8575f80fd5b5061028d6104e7366004614370565b610cda565b3480156104f7575f80fd5b5061028d610506366004614414565b610dbf565b348015610516575f80fd5b5061028d610525366004614414565b610e72565b348015610535575f80fd5b506105496105443660046144a2565b610f1c565b604051908152602001610427565b61044f610565366004614568565b610f2c565b348015610575575f80fd5b506105896105843660046145ab565b610fe0565b604051610427939291906145f9565b3480156105a3575f80fd5b505f5c610549565b3480156105b6575f80fd5b5061044f6105c5366004614694565b611033565b3480156105d5575f80fd5b5061028d6105e43660046146f7565b611042565b3480156105f4575f80fd5b5064191718171960d91b610549565b34801561060e575f80fd5b5061063c61061d3660046144a2565b5f19016004908102600181015c92600282015c92600383015c92015c90565b604080519485526001600160e01b031990931660208501526001600160a01b03909116918301919091526060820152608001610427565b61044f610681366004614752565b6110b5565b348015610691575f80fd5b506105496106a0366004614195565b6113ba565b3480156106b0575f80fd5b5061044f6106bf366004614568565b6113fb565b3480156106cf575f80fd5b506105496106de3660046147a6565b611435565b3480156106ee575f80fd5b506105496106fd366004614800565b611442565b34801561070d575f80fd5b5061028d61071c366004614852565b61144e565b34801561072c575f80fd5b505f195f5c016004908102600181015c91600282015c91600381015c91015c61063c565b34801561075b575f80fd5b5061028d61076a366004614888565b6114c4565b34801561077a575f80fd5b5061028d61078936600461490e565b61156c565b348015610799575f80fd5b5061028d6107a8366004614993565b611617565b3480156107b8575f80fd5b506105896107c73660046146f7565b61171f565b3480156107d7575f80fd5b5061044f6107e6366004614317565b61176f565b3480156107f6575f80fd5b506105496108053660046144a2565b6117af565b348015610815575f80fd5b5061028d610824366004614195565b6117b9565b348015610834575f80fd5b50610549610843366004614800565b611837565b348015610853575f80fd5b506105496108623660046144a2565b611843565b348015610872575f80fd5b5061028d610881366004614291565b61184d565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f815181106108bd576108bd6149ae565b60209081029190910101525f6108f7777462776f726c6400000000000000000042616c616e63657360401b8383630100080160dd1b6118f5565b949350505050565b6040805160018082528183019092525f916020808301908036833701905050905082815f81518110610933576109336149ae565b602002602001018181525050610992777462776f726c6400000000000000000042616c616e63657360401b5f1b825f8560405160200161097591815260200190565b60408051601f19818403018152919052630100080160dd1b611921565b505050565b6040805160018082528183019092525f918291829160208083019080368337019050509050836001600160e01b031916815f815181106109d9576109d96149ae565b60209081029190910101525f8080610a1a7f7462776f726c6400000000000000000046756e6374696f6e53656c6563746f728564090080080160d21b611936565b925092509250610a2b838383611a36565b9550955050505050915091565b82820160200180516001600160e01b031682179052825b9392505050565b60605f80610a6687878787611a4d565b9150915081610a7857610a7881611bd3565b9695505050505050565b816001600160a01b038416345f5c60048082026001810191600282019160038101910187845d88835d86825d85815d50505050600181019050805f5d50505050505050565b5f5c8060021b5f600182015d5f600282015d5f600382015d5f600482015d505f1981015f5d50565b6060610a78868686808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250889250879150611bdb9050565b303303610b5e576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610b688633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f92019190915250611c5392505050565b505050505050565b303303610c0e576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610c188633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f92019190915250611c6e92505050565b6060610cc9858585808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250879250611ca6915050565b95945050505050565b5f195f815d50565b303303610d07576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610d118833611c20565b610db5888888808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8c018190048102820181019092528a815292508a91508990819084018382808284375f9201919091525050604080516020601f8a018190048102820181019092528881528a9350915088908890819084018382808284375f92019190915250611cdf92505050565b5050505050505050565b303303610dec576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610df68733611c20565b610e69878787808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8a018190048102820181019092528881528a9350915088908890819084018382808284375f92019190915250889250611cf5915050565b50505050505050565b303303610e9f576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610ea98733611c20565b610e69878787808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8a018190048102820181019092528881528a9350915088908890819084018382808284375f92019190915250889250611921915050565b5f610f2682611d38565b92915050565b6060303303610f5b576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b158015610f93575f80fd5b505af1925050508015610fa4575060015b610fbb57610fb433848434610a56565b9050610f26565b610fc933846103bd85614107565b5f610fd633858534610a56565b9050610a4f610ac7565b60605f6060611023878787808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250899250611936915050565b9250925092509450945094915050565b6060610a788686868686611d9e565b30330361106f576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6110798333611c20565b610992838383808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250611e6c92505050565b60603033036110e4576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b336001600160a01b0385160361117957306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b15801561112c575f80fd5b505af192505050801561113d575060015b6111545761114d33848434610a56565b9050610a4f565b61116233846103bd85614107565b5f61116f33858534610a56565b905061114d610ac7565b5f6111848533611e7f565b90506111938186338787611f2b565b1561122757306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b1580156111d0575f80fd5b505af19250505080156111e1575060015b6111f9576111f185858534610a56565b915050610a4f565b61120785856103bd86614107565b5f61121486868634610a56565b905061121e610ac7565b9150610a4f9050565b5f611232865f611e7f565b90506112418187338888611f2b565b156112d757306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b15801561127e575f80fd5b505af192505050801561128f575060015b6112a85761129f86868634610a56565b92505050610a4f565b6112b686866103bd87614107565b5f6112c387878734610a56565b90506112cd610ac7565b9250610a4f915050565b5f6112e96112e487611fcd565b611fea565b90506112f88188338989611f2b565b1561139057306001600160a01b0316631e8545ff6040518163ffffffff1660e01b81526004015f604051808303815f87803b158015611335575f80fd5b505af1925050508015611346575060015b6113605761135687878734610a56565b9350505050610a4f565b61136e87876103bd88614107565b5f61137b88888834610a56565b9050611385610ac7565b9350610a4f92505050565b60405163c86745f960e01b81526001600160a01b03881660048201523360248201526044016102b8565b5f610a78868686808060200260200160405190810160405280939291908181526020018383602002808284375f920191909152508892508791506118f59050565b606030330361142a576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b610a4f338484612060565b5f610cc985858585612081565b5f6108f78484846120c8565b30330361147b576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6114b6616e7360f01b5f8060405160200161149893929190614084565b6040516020818303038152906040526114b0906140ba565b336120dd565b6114c0828261210f565b5050565b3033036114f1576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6114fb8633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f9201919091525061217992505050565b303303611599576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6115a38833611c20565b610db5888888808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f89018190048102820181019092528781528b93508a9250899189908990819084018382808284375f9201919091525061239792505050565b303303611644576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146116ca576116ae616e7360f01b5f8060405160200161169193929190614084565b6040516020818303038152906040526116a9906140ba565b6123af565b3360405163d787b73760e01b81526004016102b89291906149c2565b5f6116d3612475565b6001600160a01b0316146116fa576040516302bc694960e31b815260040160405180910390fd5b611703816124c2565b604080515f81526020810190915261171c90829061210f565b50565b60605f6060611760868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525061253192505050565b92509250925093509350939050565b6060610cc9858585808060200260200160405190810160405280939291908181526020018383602002808284375f92019190915250879250612556915050565b5f610f268261256c565b3033036117e6576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6117f08533611c20565b611830858585808060200260200160405190810160405280939291908181526020018383602002808284375f920191909152508792508691506125c69050565b5050505050565b5f6108f784848461261c565b5f610f268261262b565b30330361187a576040516327a1460b60e21b81526001600160e01b03195f351660048201526024016102b8565b6118848633611c20565b610bd9868686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050604080516020601f8901819004810282018101909252878152899350915087908790819084018382808284375f9201919091525061265092505050565b5f610cc96119038686612688565b60ff858116601b0360080285901c1661191c85876126dd565b612715565b611830858561193084876126dd565b85612179565b60605f60605f61194585612765565b9050611952878783612787565b93505f61195e866127bc565b90508015611a2b5761197088886127f8565b935066ffffffffffffff84166001600160401b03811115611993576119936144b9565b6040519080825280601f01601f1916602001820160405280156119bd576020820181803683370190505b509250602083015f5b828160ff161015611a28575f6119dd8b8b8461280a565b90505f6119f9888460ff166028026038011c64ffffffffff1690565b9050611a07825f8387612870565b611a1181856140f4565b935050508080611a20906149ec565b9150506119c6565b50505b505093509350939050565b5f80611a4185612937565b90969095509350505050565b5f60605f611a5a8661294b565b90505f5b8151811015611b09575f828281518110611a7a57611a7a6149ae565b60200260200101519050611aa26001826001600160581b0319166129d090919063ffffffff16565b15611b005760405163c332303160e01b8152606082901c9063c332303190611ad2908c908c908c90600401614a0a565b5f604051808303815f87803b158015611ae9575f80fd5b505af1158015611afb573d5f803e3d5ffd5b505050505b50600101611a5e565b50611b16878588886129ed565b90935091505f5b8151811015611bc8575f828281518110611b3957611b396149ae565b60200260200101519050611b616002826001600160581b0319166129d090919063ffffffff16565b15611bbf5760405163973d8f9960e01b8152606082901c9063973d8f9990611b91908c908c908c90600401614a0a565b5f604051808303815f87803b158015611ba8575f80fd5b505af1158015611bba573d5f803e3d5ffd5b505050505b50600101611b1d565b505094509492505050565b805160208201fd5b6060611be682612ab7565b8360ff161015611c0357611bfc85858585612ac8565b90506108f7565b611bfc8585611c1185612ab7565b611c1b9087614a31565b611ca6565b611c2a8282612af5565b6114c057611c37826123af565b8160405163d787b73760e01b81526004016102b89291906149c2565b611c6884848484611c6389611d38565b611cf5565b50505050565b5f611c7985856127f8565b90505f611c95828560ff166028026038011c64ffffffffff1690565b9050610bd9868686845f8888612b18565b60606108f7611cb685858561280a565b5f611cda85611cc589896127f8565b9060ff166028026038011c64ffffffffff1690565b612e9c565b6118308585858585611cf08b611d38565b612ebf565b611cfe81612ab7565b8360ff161015611d1a57611d158585858585611921565b611830565b6118308585611d2884612ab7565b611d329087614a31565b85612650565b5f7f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d000000000000000000008201611d7057506503001811010160cd1b919050565b610f26611d9675746273746f72650000000000000000005461626c657360501b84613180565b60205f612715565b606081831115611dcb57604051635462a3c160e11b815260048101849052602481018390526044016102b8565b5f611dd687876127f8565b90505f611df2828760ff166028026038011c64ffffffffff1690565b90508085101580611e0257508084115b15611e44578081861015611e2057611e1b600186614a4a565b611e22565b855b604051637e8578d360e01b8152600481019290925260248201526044016102b8565b5f611e5089898961280a565b9050611e5f8187888803612e9c565b9998505050505050505050565b6114c08282611e7a85611d38565b61319b565b6040805160028082526060820183525f9283929190602083019080368337019050509050836001600160a01b03165f1b815f81518110611ec157611ec16149ae565b602002602001018181525050826001600160a01b03165f1b81600181518110611eec57611eec6149ae565b60209081029190910101525f610cc97f7462776f726c640000000000000000005573657244656c65676174696f6e436f8383630100080160dd1b6118f5565b5f611f3586613419565b15611f4257506001610cc9565b85611f4e57505f610cc9565b5f80611f9a865f8a8a8989604051602401611f6b93929190614a0a565b60408051601f198184030181529190526020810180516001600160e01b03166301a86b5560e41b1790526129ed565b9150915081611fad575f92505050610cc9565b80806020019051810190611fc19190614a5d565b98975050505050505050565b6dffffffffffffffffffffffffffff60801b16616e7360f01b1790565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110612021576120216149ae565b60209081029190910101525f6108f77f7462776f726c640000000000000000004e616d65737061636544656c656761748383630100080160dd1b6118f5565b60605f8061206f868686613460565b9150915081610cc957610cc981611bd3565b5f8061208c83612ab7565b90508060ff168460ff1610156120b45760ff848116601b0360080284901c165b9150506108f7565b6120ac86866120c38488614a31565b61261c565b5f6108f78484846120d888611d38565b612081565b806001600160a01b03166120f86120f384611fcd565b6134b3565b6001600160a01b0316146114c057611c37826123af565b61211f8262dfba3960e71b613534565b612165335f84846040516024016121369190614242565b60408051601f198184030181529190526020810180516001600160e01b0316637c5b033560e01b179052613576565b506114c08282805190602001206001613586565b611bdd60f21b846001600160f01b031916036121d057837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516121c393929190614ab6565b60405180910390a2611c68565b5f6121db8585612688565b90505f6121e78661364d565b90505f5b8151811015612298575f828281518110612207576122076149ae565b6020026020010151905061222f6004826001600160581b0319166129d090919063ffffffff16565b1561228f5760405163964f667d60e01b8152606082901c9063964f667d90612261908b908b908b908b90600401614ae8565b5f604051808303815f87803b158015612278575f80fd5b505af115801561228a573d5f803e3d5ffd5b505050505b506001016121eb565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516122cd93929190614ab6565b60405180910390a26122e8828565ffffffffffff16856136bc565b5f5b8151811015610e69575f828281518110612306576123066149ae565b6020026020010151905061232e6008826001600160581b0319166129d090919063ffffffff16565b1561238e5760405163a8ba872160e01b8152606082901c9063a8ba872190612360908b908b908b908b90600401614ae8565b5f604051808303815f87803b158015612377575f80fd5b505af1158015612389573d5f803e3d5ffd5b505050505b506001016122ea565b610bd98686868686866123aa8d8d6127f8565b612b18565b606081601081901b5f6123c1836136d2565b9050826001600160901b03198316156123ec576123e76001600160901b031984166136e8565b61240c565b604051806040016040528060068152602001651e3937b7ba1f60d11b8152505b6001600160801b031983161561242a57612425836136e8565b61244a565b604051806040016040528060068152602001651e3937b7ba1f60d11b8152505b60405160200161245c93929190614b20565b6040516020818303038152906040529350505050919050565b604080515f808252602082019092525f6124b87f7462776f726c64000000000000000000496e69744d6f64756c654164647265738383630500400560da1b613743565b60601c9392505050565b604080515f808252602082018352606084901b6bffffffffffffffffffffffff191682840152825180830360340181526054830190935290916114c0917f7462776f726c64000000000000000000496e69744d6f64756c6541646472657391849190630500400560da1b6137dc565b60605f6060612549858561254488611d38565b611936565b9250925092509250925092565b60606108f784848461256788611d38565b611bdb565b5f61257682613866565b9050612581826138d8565b6125c157818260405160200161259991815260200190565b60408051601f19818403018152908290526341e713ad60e01b82526102b89291600401614b76565b919050565b5f6125d185856127f8565b90505f6125ed828560ff166028026038011c64ffffffffff1690565b9050610bd98686866126068764ffffffffff8716614a4a565b604080515f815260208101909152889088612b18565b5f6108f782611cc586866127f8565b5f6126358261395a565b9050806125c157818260405160200161259991815260200190565b5f61265b85856127f8565b90505f612677828560ff166028026038011c64ffffffffff1690565b9050610bd98686865f858888612b18565b5f828260405160200161269c929190614b8e565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff1681101561270d5761270360ff601b83900360080287901c16836140f4565b91506001016126e1565b509392505050565b5f6020821061273a5760208204840193506020828161273657612736614bc8565b0691505b508254600882021b60208290038084111561270d576001850154600882021c82179150509392505050565b5f600861277460026020614a4a565b61277e9190614bdc565b9190911c919050565b6060815f036127a4575060408051602081019091525f8152610a4f565b5f6127af8585612688565b9050610cc9815f85612e9c565b5f60086001806127ce60026020614a4a565b6127d89190614a4a565b6127e29190614a4a565b6127ec9190614bdc565b8260ff911c1692915050565b5f610a4f61280684846139cc565b5490565b5f838360405160200161281e929190614b8e565b604051602081830303815290604052805190602001208260f81b6001600160f81b0319167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b82156128f4576020831061289a5760208304840193506020838161289657612896614bc8565b0692505b82156128f45760208390035f818410156128bb57505f19600884021c6128c4565b505f19600882021c5b8554600886021b8184511682198216178452508184116128e5575050611c68565b50600194909401939182900391015b5b602082106129165783548152600190930192601f19909101906020016128f5565b8115611c68575f5f19600884021c8251865482191691161782525050505050565b602081015160408201515f905b9050915091565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110612983576129836149ae565b60209081029190910101525f6129ba7f7462776f726c6400000000000000000053797374656d486f6f6b7300000000008383611ca6565b90506108f76129cb825f8451613a21565b613a94565b5f8160ff16826129e08560581c90565b1660ff1614905092915050565b5f60605f806129fb86613aa3565b90925090506001600160a01b038216612a335785612a18876123af565b604051637df8867360e11b81526004016102b8929190614b76565b80612a4257612a428689611c20565b8615612a71575f612a5287611fcd565b90505f612a5e82610886565b9050612a6e826102888b846140f4565b50505b5f612a7c8760101b90565b6001600160901b03191614612a9c57612a9788888488613b2d565b612aa8565b612aa888888488613ba0565b90999098509650505050505050565b5f600860016127d860026020614a4a565b6060610cc9612ad78686612688565b612ae184866126dd565b60ff868116601b0360080286901c16612e9c565b5f612b08612b0284611fcd565b83613bfd565b80610a4f5750610a4f8383613bfd565b613a3160f11b876001600160f01b03191614612b7157613a3160f11b8788604051602001612b4891815260200190565b60408051601f19818403018152908290526331b4668360e01b82526102b8939291600401614bf3565b5f612b8b828760ff166028026038011c64ffffffffff1690565b90505f83518564ffffffffff1683612ba39190614a4a565b612bad91906140f4565b9050808214158015612bcf575081612bc58688614c18565b64ffffffffff1614155b15612c0657604051632994042d60e21b815264ffffffffff80881660048301528087166024830152831660448201526064016102b8565b818664ffffffffff161115612c3e57604051637e8578d360e01b81526004810183905264ffffffffff871660248201526044016102b8565b5f612c4a848984613caa565b90505f612c568b61364d565b90505f5b8151811015612d16575f828281518110612c7657612c766149ae565b60200260200101519050612c9e6010826001600160581b0319166129d090919063ffffffff16565b15612d0d57606081901c6001600160a01b03166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b8152600401612cdf9796959493929190614c3d565b5f604051808303815f87803b158015612cf6575f80fd5b505af1158015612d08573d5f803e3d5ffd5b505050505b50600101612c5a565b5064ffffffffff88165f5b8a60ff168160ff161015612d5457612d48878260ff166028026038011c64ffffffffff1690565b90910190600101612d21565b508b7ffe158a7adba34e256807c8a149028d3162918713c3838afc643ce9f96716ebfd8c8c848c888d604051612d8f96959493929190614c9a565b60405180910390a250828414612daf575f612daa8c8c6139cc565b839055505b5f612dbb8c8c8c61280a565b9050612dcf818a64ffffffffff16896136bc565b505f5b8151811015612e8e575f828281518110612dee57612dee6149ae565b60200260200101519050612e166020826001600160581b0319166129d090919063ffffffff16565b15612e8557606081901c6001600160a01b031663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b8152600401612e579796959493929190614c3d565b5f604051808303815f87803b158015612e6e575f80fd5b505af1158015612e80573d5f803e3d5ffd5b505050505b50600101612dd2565b505050505050505050505050565b60405160208101601f19603f848401011660405282825261270d85858584612870565b611bdd60f21b866001600160f01b03191603612f1857857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051612f0b9493929190614ce8565b60405180910390a2610bd9565b5f612f228761364d565b90505f5b8151811015612fd7575f828281518110612f4257612f426149ae565b60200260200101519050612f6a6001826001600160581b0319166129d090919063ffffffff16565b15612fce576040516315c19b2760e21b8152606082901c906357066c9c90612fa0908c908c908c908c908c908c90600401614d26565b5f604051808303815f87803b158015612fb7575f80fd5b505af1158015612fc9573d5f803e3d5ffd5b505050505b50600101612f26565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98787878760405161300e9493929190614ce8565b60405180910390a25f6130218888612688565b90505f602087019050613037825f895184613d46565b5f613041856127bc565b11156130c1575f6130528a8a6139cc565b87815590506020860191505f805f5b61306a886127bc565b8160ff1610156130bc5761307f8d8d8361280a565b925061309a8a8260ff166028026038011c64ffffffffff1690565b91506130a8835f8488613d46565b6130b282866140f4565b9450600101613061565b505050505b5f5b8351811015613174575f8482815181106130df576130df6149ae565b602002602001015190506131076002826001600160581b0319166129d090919063ffffffff16565b1561316b57604051635b28cdaf60e01b8152606082901c90635b28cdaf9061313d908e908e908e908e908e908e90600401614d26565b5f604051808303815f87803b158015613154575f80fd5b505af1158015613166573d5f803e3d5ffd5b505050505b506001016130c3565b50505050505050505050565b60408051602081018490529081018290525f9060600161269c565b611bdd60f21b836001600160f01b031916036131ee57827f0e1f72f429eb97e64878619984a91e687ae91610348b9ff4216782cc96e49d07836040516131e19190614d7e565b60405180910390a2505050565b5f6131f88461364d565b90505f5b81518110156132a7575f828281518110613218576132186149ae565b602002602001015190506132406040826001600160581b0319166129d090919063ffffffff16565b1561329e57604051639faeaf4560e01b8152606082901c90639faeaf459061327090899089908990600401614d90565b5f604051808303815f87803b158015613287575f80fd5b505af1158015613299573d5f803e3d5ffd5b505050505b506001016131fc565b50837f0e1f72f429eb97e64878619984a91e687ae91610348b9ff4216782cc96e49d07846040516132d89190614d7e565b60405180910390a25f6132eb8585612688565b9050613342815f6132fb86612765565b6001600160401b03811115613312576133126144b9565b6040519080825280601f01601f19166020018201604052801561333c576020820181803683370190505b506136bc565b5f61334c846127bc565b111561336c575f61335d86866139cc565b905061336a816020613e01565b505b5f5b8251811015610bd9575f83828151811061338a5761338a6149ae565b602002602001015190506133b26080826001600160581b0319166129d090919063ffffffff16565b15613410576040516383b5c95b60e01b8152606082901c906383b5c95b906133e2908a908a908a90600401614d90565b5f604051808303815f87803b1580156133f9575f80fd5b505af115801561340b573d5f803e3d5ffd5b505050505b5060010161336e565b5f61737960f01b5f681d5b9b1a5b5a5d195960ba1b60405160200161344093929190614084565b604051602081830303815290604052613458906140ba565b909114919050565b5f60605f8061346e86613aa3565b90925090506001600160a01b03821661348b5785612a18876123af565b8061349a5761349a8688611c20565b6134a5878387613e3c565b909890975095505050505050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f815181106134ea576134ea6149ae565b60209081029190910101525f6135297f7462776f726c640000000000000000004e616d6573706163654f776e657200008383630500400560da1b6118f5565b60601c949350505050565b61353e8282613eab565b6114c0576040516374b5e6ff60e01b81526001600160a01b03831660048201526001600160e01b0319821660248201526044016102b8565b60605f80610a6687878787613ba0565b6040805160028082526060820183525f92602083019080368337019050509050836001600160a01b03165f1b815f815181106135c4576135c46149ae565b60200260200101818152505082816001815181106135e4576135e46149ae565b602002602001018181525050611c687f7462776f726c64000000000000000000496e7374616c6c65644d6f64756c65735f1b825f8560405160200161363091151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b611921565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110613685576136856149ae565b60209081029190910101525f6129ba7f746273746f726500000000000000000053746f7265486f6f6b730000000000008383611ca6565b610992838383516136cd8560200190565b613d46565b5f6136df607060106140f4565b9190911b919050565b60605f5b601081101561371c576001600160801b03198316600882021b6001600160f81b0319161561371c576001016136ec565b604080516001600160801b03198516602082015281516030909101909152818152806108f7565b5f8061374d613ec6565b9050306001600160a01b0382160361376b576120ac868686866118f5565b604051638c364d5960e01b81526001600160a01b03821690638c364d599061379d908990899089908990600401614db8565b602060405180830381865afa1580156137b8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120ac9190614de6565b5f6137e5613ec6565b9050306001600160a01b03821603613809576138048686868686611921565b610bd9565b6040516301c85d5760e51b81526001600160a01b0382169063390baae09061383d9089908990899089908990600401614dfd565b5f604051808303815f87803b158015613854575f80fd5b505af1158015613174573d5f803e3d5ffd5b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061389d5761389d6149ae565b60209081029190910101525f6108f775746273746f72650000000000000000005461626c657360501b8360016503001811010160cd1b6118f5565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061390f5761390f6149ae565b60209081029190910101525f61394e7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b6118f5565b90506108f78160f81c90565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110613991576139916149ae565b60209081029190910101525f6108f775746273746f72650000000000000000005461626c657360501b8360026503001811010160cd1b6118f5565b5f82826040516020016139e0929190614b8e565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f81831180613a305750835182115b15613a54578383836040516323230fa360e01b81526004016102b893929190614e43565b60208401613a6284826140f4565b90505f613a6f8585614a4a565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f610a4f8360155f613eff565b6040805160018082528183019092525f91829182916020808301908036833701905050905083815f81518110613adb57613adb6149ae565b60209081029190910101525f8080613b1c7f7462776f726c6400000000000000000053797374656d730000000000000000008564150200140160d01b611936565b925092509250610a2b838383613f77565b5f6060836001600160a01b03165f613b46858989613f82565b604051613b539190614e67565b5f6040518083038185875af1925050503d805f8114613b8d576040519150601f19603f3d011682016040523d82523d5f602084013e613b92565b606091505b509097909650945050505050565b5f6060836001600160a01b0316613bb8848888613f82565b604051613bc59190614e67565b5f60405180830381855af49150503d805f8114613b8d576040519150601f19603f3d011682016040523d82523d5f602084013e613b92565b6040805160028082526060820183525f928392919060208301908036833701905050905083815f81518110613c3457613c346149ae565b602002602001018181525050826001600160a01b03165f1b81600181518110613c5f57613c5f6149ae565b60209081029190910101525f613c9e7f7462776f726c640000000000000000005265736f7572636541636365737300008383630101000160d81b6118f5565b9050610cc98160f81c90565b5f64ffffffffff821115613cd457604051637149a3c160e01b8152600481018390526024016102b8565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff16808510613d065780850382019150613d0e565b848103820391505b5064ffffffffff6038602860ff8816020181811b1966ffffffffffffff199490941690921792909216918416901b1790509392505050565b8215613dbe5760208310613d7057602083048401935060208381613d6c57613d6c614bc8565b0692505b8215613dbe5760208390035f5f19600885021c1990506008850281811c91508351811c9050811987541682821617875550818411613daf575050611c68565b50600194909401939182900391015b5b60208210613de05780518455600190930192601f1990910190602001613dbf565b8115611c68575f5f19600884021c8554835182191691161785555050505050565b5f6020613e0f83601f6140f4565b613e199190614e82565b613e2390846140f4565b90505b80831015610992575f8355600183019250613e26565b5f6060836001600160a01b0316613e5484875f613f82565b604051613e619190614e67565b5f60405180830381855afa9150503d805f8114613e99576040519150601f19603f3d011682016040523d82523d5f602084013e613e9e565b606091505b5090969095509350505050565b5f613eb583613fb1565b8015610a4f5750610a4f8383613fe3565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f906001600160a01b0316806125c1573391505090565b60605f613f0c8560801c90565b90506fffffffffffffffffffffffffffffffff85165f858281613f3157613f31614bc8565b0490506040519350602084016020820281016040528185525f5b82811015613f6b578451871c825293870193602090910190600101613f4b565b50505050509392505050565b5f80611a4185614069565b6060838383604051602001613f9993929190614ea1565b60405160208183030381529060405290509392505050565b5f613fc3826301ffc9a760e01b613fe3565b8015610f265750613fdc826001600160e01b0319613fe3565b1592915050565b6040516001600160e01b0319821660248201525f90819060440160408051601f19818403018152919052602080820180516001600160e01b03166301ffc9a760e01b17815282519293505f9283928392909183918a617530fa92503d91505f519050828015614053575060208210155b801561405e57505f81115b979650505050505050565b6020810151603482015160609190911c905f9060f81c612944565b6001600160f01b03199390931683526001600160901b03199190911660028301526001600160801b031916601082015260200190565b805160208083015191908110156140da575f198160200360031b1b821691505b50919050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610f2657610f266140e0565b805160208201516001600160e01b031980821692919060048310156141365780818460040360031b1b83161693505b505050919050565b5f8083601f84011261414e575f80fd5b5081356001600160401b03811115614164575f80fd5b6020830191508360208260051b850101111561417e575f80fd5b9250929050565b803560ff811681146125c1575f80fd5b5f805f805f608086880312156141a9575f80fd5b8535945060208601356001600160401b038111156141c5575f80fd5b6141d18882890161413e565b90955093506141e4905060408701614185565b949793965091946060013592915050565b5f5b8381101561420f5781810151838201526020016141f7565b50505f910152565b5f815180845261422e8160208601602086016141f5565b601f01601f19169290920160200192915050565b602081525f610a4f6020830184614217565b5f8083601f840112614264575f80fd5b5081356001600160401b0381111561427a575f80fd5b60208301915083602082850101111561417e575f80fd5b5f805f805f80608087890312156142a6575f80fd5b8635955060208701356001600160401b03808211156142c3575f80fd5b6142cf8a838b0161413e565b90975095508591506142e360408a01614185565b945060608901359150808211156142f8575f80fd5b5061430589828a01614254565b979a9699509497509295939492505050565b5f805f806060858703121561432a575f80fd5b8435935060208501356001600160401b03811115614346575f80fd5b6143528782880161413e565b9094509250614365905060408601614185565b905092959194509250565b5f805f805f805f8060a0898b031215614387575f80fd5b8835975060208901356001600160401b03808211156143a4575f80fd5b6143b08c838d0161413e565b909950975060408b01359150808211156143c8575f80fd5b6143d48c838d01614254565b909750955060608b0135945060808b01359150808211156143f3575f80fd5b506144008b828c01614254565b999c989b5096995094979396929594505050565b5f805f805f805f60a0888a03121561442a575f80fd5b8735965060208801356001600160401b0380821115614447575f80fd5b6144538b838c0161413e565b909850965086915061446760408b01614185565b955060608a013591508082111561447c575f80fd5b506144898a828b01614254565b989b979a50959894979596608090950135949350505050565b5f602082840312156144b2575f80fd5b5035919050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156144f5576144f56144b9565b604052919050565b5f82601f83011261450c575f80fd5b81356001600160401b03811115614525576145256144b9565b614538601f8201601f19166020016144cd565b81815284602083860101111561454c575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8060408385031215614579575f80fd5b8235915060208301356001600160401b03811115614595575f80fd5b6145a1858286016144fd565b9150509250929050565b5f805f80606085870312156145be575f80fd5b8435935060208501356001600160401b038111156145da575f80fd5b6145e68782880161413e565b9598909750949560400135949350505050565b606081525f61460b6060830186614217565b8460208401528281036040840152610a788185614217565b5f82601f830112614632575f80fd5b813560206001600160401b0382111561464d5761464d6144b9565b8160051b61465c8282016144cd565b9283528481018201928281019087851115614675575f80fd5b83870192505b8483101561405e5782358252918301919083019061467b565b5f805f805f60a086880312156146a8575f80fd5b8535945060208601356001600160401b038111156146c4575f80fd5b6146d088828901614623565b9450506146df60408701614185565b94979396509394606081013594506080013592915050565b5f805f60408486031215614709575f80fd5b8335925060208401356001600160401b03811115614725575f80fd5b6147318682870161413e565b9497909650939450505050565b6001600160a01b038116811461171c575f80fd5b5f805f60608486031215614764575f80fd5b833561476f8161473e565b92506020840135915060408401356001600160401b03811115614790575f80fd5b61479c868287016144fd565b9150509250925092565b5f805f80608085870312156147b9575f80fd5b8435935060208501356001600160401b038111156147d5575f80fd5b6147e187828801614623565b9350506147f060408601614185565b9396929550929360600135925050565b5f805f60608486031215614812575f80fd5b8335925060208401356001600160401b0381111561482e575f80fd5b61483a86828701614623565b92505061484960408501614185565b90509250925092565b5f8060408385031215614863575f80fd5b823561486e8161473e565b915060208301356001600160401b03811115614595575f80fd5b5f805f805f806080878903121561489d575f80fd5b8635955060208701356001600160401b03808211156148ba575f80fd5b6148c68a838b0161413e565b90975095506040890135915065ffffffffffff821682146148e5575f80fd5b909350606088013590808211156142f8575f80fd5b803564ffffffffff811681146125c1575f80fd5b5f805f805f805f8060c0898b031215614925575f80fd5b8835975060208901356001600160401b0380821115614942575f80fd5b61494e8c838d0161413e565b909950975087915061496260408c01614185565b965061497060608c016148fa565b955061497e60808c016148fa565b945060a08b01359150808211156143f3575f80fd5b5f602082840312156149a3575f80fd5b8135610a4f8161473e565b634e487b7160e01b5f52603260045260245ffd5b604081525f6149d46040830185614217565b90506001600160a01b03831660208301529392505050565b5f60ff821660ff8103614a0157614a016140e0565b60010192915050565b6001600160a01b0384168152826020820152606060408201525f610cc96060830184614217565b60ff8281168282160390811115610f2657610f266140e0565b81810381811115610f2657610f266140e0565b5f60208284031215614a6d575f80fd5b81518015158114610a4f575f80fd5b5f815180845260208085019450602084015f5b83811015614aab57815187529582019590820190600101614a8f565b509495945050505050565b606081525f614ac86060830186614a7c565b65ffffffffffff851660208401528281036040840152610a788185614217565b848152608060208201525f614b006080830186614a7c565b65ffffffffffff85166040840152828103606084015261405e8185614217565b61ffff60f01b841681525f601d60f91b8060028401528451614b498160038601602089016141f5565b808401905081600382015284519150614b698260048301602088016141f5565b0160040195945050505050565b828152604060208201525f6108f76040830184614217565b8281525f60208083018451602086015f5b82811015614bbb57815184529284019290840190600101614b9f565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b8082028115828204841417610f2657610f266140e0565b61ffff60f01b84168152826020820152606060408201525f610cc96060830184614217565b64ffffffffff818116838216019080821115614c3657614c366140e0565b5092915050565b87815260e060208201525f614c5560e0830189614a7c565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c0840152614c8c8185614217565b9a9950505050505050505050565b60c081525f614cac60c0830189614a7c565b60ff8816602084015265ffffffffffff8716604084015264ffffffffff8616606084015284608084015282810360a0840152611e5f8185614217565b608081525f614cfa6080830187614a7c565b8281036020840152614d0c8187614217565b9050846040840152828103606084015261405e8185614217565b86815260c060208201525f614d3e60c0830188614a7c565b8281036040840152614d508188614217565b90508560608401528281036080840152614d6a8186614217565b9150508260a0830152979650505050505050565b602081525f610a4f6020830184614a7c565b838152606060208201525f614da86060830185614a7c565b9050826040830152949350505050565b848152608060208201525f614dd06080830186614a7c565b60ff949094166040830152506060015292915050565b5f60208284031215614df6575f80fd5b5051919050565b85815260a060208201525f614e1560a0830187614a7c565b60ff861660408401528281036060840152614e308186614217565b9150508260808301529695505050505050565b606081525f614e556060830186614217565b60208301949094525060400152919050565b5f8251614e788184602087016141f5565b9190910192915050565b5f82614e9c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f8451614eb28184602089016141f5565b60609490941b6bffffffffffffffffffffffff19169190930190815260148101919091526034019291505056fea264697066735822122057c73348700bc71c4955a7f6a1e58647015d2c3e78ad876d040b8dcd7a986e2164736f6c63430008180033","sourceMap":"2228:22169:104:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23211:19;23233:32;-1:-1:-1;;;662:14:75;678:9;625:63;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;617:72;;;:::i;:::-;23233:13:104;:32::i;:::-;23211:54;;23271:57;-1:-1:-1;;;662:14:75;678:9;625:63;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;617:72;;;:::i;:::-;23304:23:104;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:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;;;;;;;;3343:88;23474:19:::1;23495:29:::0;23528:31:::1;23551:7;;-1:-1:-1::0;;;;;;23551:7:104::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:104;;-1:-1:-1;;;;;;23642:7:104::1;;;23611:39;::::0;::::1;1154:52:152::0;1127:18;;23611:39:104::1;1010:202:152::0;23566:84:104::1;23740:21;23764:52;23780:8;;23764:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;-1:-1:-1;23764:52:104;-1:-1:-1;23793:22:104;;-1:-1:-1;23764:15:104::1;::::0;-1:-1:-1;23764:52:104:i:1;:::-;23740:76;;23874:23;23907:4;-1:-1:-1::0;;;;;23907:20:104::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:152;;;1729:74;;1717:2;1702:18;2385:32:104;;;;;;;;4012:258:25;;;;;;;;;;-1:-1:-1;4012:258:25;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;8642:350:104:-;;;;;;;;;;-1:-1:-1;8642:350:104;;;;;:::i;:::-;;:::i;11858:400::-;;;;;;;;;;-1:-1:-1;11858:400:104;;;;;:::i;:::-;;:::i;5279:244:25:-;;;;;;;;;;-1:-1:-1;5279:244:25;;;;;:::i;:::-;;:::i;18544:128:104:-;;;;;;;;;;;;;:::i;6140:431::-;;;;;;;;;;-1:-1:-1;6140:431:104;;;;;:::i;:::-;;:::i;9401:392::-;;;;;;;;;;-1:-1:-1;9401:392:104;;;;;:::i;:::-;;:::i;10325:404::-;;;;;;;;;;-1:-1:-1;10325:404:104;;;;;:::i;:::-;;:::i;779:156:25:-;;;;;;;;;;-1:-1:-1;779:156:25;;;;;:::i;:::-;;:::i;:::-;;;8350:25:152;;;8338:2;8323:18;779:156:25;8172:209:152;14154:536:104;;;;;;:::i;:::-;;:::i;2673:289:25:-;;;;;;;;;;-1:-1:-1;2673:289:25;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;21455:158:104:-;;;;;;;;;;-1:-1:-1;21505:7:104;21573:8;21455:158;;7802:295:25;;;;;;;;;;-1:-1:-1;7802:295:25;;;;;:::i;:::-;;:::i;13393:285:104:-;;;;;;;;;;-1:-1:-1;13393:285:104;;;;;:::i;:::-;;:::i;2479:85::-;;;;;;;;;;-1:-1:-1;;;;2479:85:104;;20403:804;;;;;;;;;;-1:-1:-1;20403:804:104;;;;;:::i;:::-;-1:-1:-1;;20692:17:104;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;;;;;13613:25:152;;;-1:-1:-1;;;;;;13674:33:152;;;13669:2;13654:18;;13647:61;-1:-1:-1;;;;;13744:55:152;;;13724:18;;;13717:83;;;;13831:2;13816:18;;13809:34;13600:3;13585:19;20403:804:104;13353:496:152;15090:2990:104;;;;;;:::i;:::-;;:::i;4667:265:25:-;;;;;;;;;;-1:-1:-1;4667:265:25;;;;;:::i;:::-;;:::i;18084:229:104:-;;;;;;;;;;-1:-1:-1;18084:229:104;;;;;:::i;:::-;;:::i;6537:258:25:-;;;;;;;;;;-1:-1:-1;6537:258:25;;;;;:::i;:::-;;:::i;5985:216::-;;;;;;;;;;-1:-1:-1;5985:216:25;;;;;:::i;:::-;;:::i;4469:213:104:-;;;;;;;;;;-1:-1:-1;4469:213:104;;;;;:::i;:::-;;:::i;19081:819::-;;;;;;;;;;-1:-1:-1;;;19133:10:104;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:104;;;;;:::i;:::-;;:::i;7834:480::-;;;;;;;;;;-1:-1:-1;7834:480:104;;;;;:::i;:::-;;:::i;3672:553::-;;;;;;;;;;-1:-1:-1;3672:553:104;;;;;:::i;:::-;;:::i;1974:247:25:-;;;;;;;;;;-1:-1:-1;1974:247:25;;;;;:::i;:::-;;:::i;3441:216::-;;;;;;;;;;-1:-1:-1;3441:216:25;;;;;:::i;:::-;;:::i;1454:143::-;;;;;;;;;;-1:-1:-1;1454:143:25;;;;;:::i;:::-;;:::i;12697:405:104:-;;;;;;;;;;-1:-1:-1;12697:405:104;;;;;:::i;:::-;;:::i;7118:244:25:-;;;;;;;;;;-1:-1:-1;7118:244:25;;;;;:::i;:::-;;:::i;1122:151::-;;;;;;;;;;-1:-1:-1;1122:151:25;;;;;:::i;:::-;;:::i;11095:378:104:-;;;;;;;;;;-1:-1:-1;11095:378:104;;;;;:::i;:::-;;:::i;3758:308:64:-;3871:16;;;3885:1;3871:16;;;;;;;;;3819:15;;;;3871:16;;;;;;;;;;;;-1:-1:-1;3871:16:64;3842:45;;3926:11;3893:9;3903:1;3893:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;3945:13;3961:62;-1:-1:-1;;;3996:9:64;3945:13;-1:-1:-1;;;3961:24:64;:62::i;:::-;3945:78;3758:308;-1:-1:-1;;;;3758:308:64:o;5057:269::-;5156:16;;;5170:1;5156:16;;;;;;;;;5127:26;;5156:16;;;;;;;;;;;-1:-1:-1;5156:16:64;5127:45;;5211:11;5178:9;5188:1;5178:12;;;;;;;;:::i;:::-;;;;;;:45;;;;;5230:91;-1:-1:-1;;;1141:83:64;;5265:9;5276:1;5297:7;5279:27;;;;;;19867:19:152;;19911:2;19902:12;;19738:182;5279:27:64;;;;-1:-1:-1;;5279:27:64;;;;;;;;;-1:-1:-1;;;5230:24:64;:91::i;:::-;5121:205;5057:269;;:::o;6324:470:65:-;6486:16;;;6500:1;6486:16;;;;;;;;;6399:19;;;;;;6486:16;;;;;;;;;;;-1:-1:-1;6486:16:65;6457:45;;6531:21;-1:-1:-1;;;;;6523:30:65;;6508:9;6518:1;6508:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;6561:24;;;6648:78;1174:66;6691:9;-1:-1:-1;;;6648:19:65;:78::i;:::-;6560:166;;;;;;6739:50;6746:11;6759:15;6776:12;6739:6;:50::i;:::-;6732:57;;;;;;;;6324:470;;;:::o;1563:492:1:-;1744:28;;;1759:4;1744:28;1738:35;;-1:-1:-1;;;;;1836:21:1;1903:20;;1961:43;;1752:5;1563:492;;;;;;:::o;7661:401:53:-;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:53:o;21617:783:104:-;21779:8;-1:-1:-1;;;;;21829:27:104;;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:104;;;22866:20;;22404:492::o;4012:258:25:-;4171:17;4203:62;4222:7;4231:8;;4203:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4241:10:25;;-1:-1:-1;4253:11:25;;-1:-1:-1;4203:18:25;;-1:-1:-1;4203:62:25:i;8642:350:104:-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;1010:202:152;3343:88:104;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:104::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;8970:10;;-1:-1:-1;8932:55:104;-1:-1:-1;8982:4:104;;;;;;8932:55;::::1;8982:4:::0;;;;8932:55;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;8932:18:104::1;::::0;-1:-1:-1;;;8932:55:104:i:1;:::-;8642:350:::0;;;;;;:::o;11858:400::-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;1010:202:152;3343:88:104;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:104::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;12223:17;;-1:-1:-1;12175:78:104;-1:-1:-1;12242:10:104;;;;;;12175:78;::::1;12242:10:::0;;;;12175:78;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;12175:28:104::1;::::0;-1:-1:-1;;;12175:78:104:i:1;5279:244:25:-:0;5423:17;5455:63;5481:7;5490:8;;5455:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5500:17:25;;-1:-1:-1;5455:25:25;;-1:-1:-1;;5455:63:25:i;:::-;5448:70;5279:244;-1:-1:-1;;;;;5279:244:25:o;18544:128:104:-;-1:-1:-1;;18586:15:104;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:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;1010:202:152;3343:88:104;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:104::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;;-1:-1:-1;6526:10:104;;-1:-1:-1;6526:10:104;;;;6487:79;::::1;6526:10:::0;;;;6487:79;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;;6487:79:104::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;6538:14;;-1:-1:-1;6487:79:104;-1:-1:-1;6554:11:104;;;;;;6487:79;::::1;6554:11:::0;;;;6487:79;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;6487:19:104::1;::::0;-1:-1:-1;;;6487:79:104:i:1;:::-;6140:431:::0;;;;;;;;:::o;9401:392::-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;1010:202:152;3343:88:104;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:104::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;9758:10;;-1:-1:-1;9720:68:104;-1:-1:-1;9770:4:104;;;;;;9720:68;::::1;9770:4:::0;;;;9720:68;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;9776:11:104;;-1:-1:-1;9720:18:104::1;::::0;-1:-1:-1;;9720:68:104:i:1;:::-;9401:392:::0;;;;;;;:::o;10325:404::-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;1010:202:152;3343:88:104;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:104::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;10694:10;;-1:-1:-1;10650:74:104;-1:-1:-1;10706:4:104;;;;;;10650:74;::::1;10706:4:::0;;;;10650:74;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;10712:11:104;;-1:-1:-1;10650:24:104::1;::::0;-1:-1:-1;;10650:74:104:i:1;779:156:25:-:0;852:23;897:33;922:7;897:24;:33::i;:::-;883:47;779:156;-1:-1:-1;;779:156:25:o;14154:536:104:-;14281:12;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;1010:202:152;3343:88:104;14305:4:::1;-1:-1:-1::0;;;;;14305:20:104::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:25:-:0;2811:23;2836:29;2867:24;2906:51;2926:7;2935:8;;2906:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2945:11:25;;-1:-1:-1;2906:19:25;;-1:-1:-1;;2906:51:25: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:104:-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;1010:202:152;3343:88:104;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:104::1;::::0;-1:-1:-1;;;13632:41:104:i:1;15090:2990::-:0;15244:12;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;1010:202:152;3343:88:104;15345:10:::1;-1:-1:-1::0;;;;;15332:23:104;::::1;::::0;15328:442:::1;;15369:4;-1:-1:-1::0;;;;;15369:20:104::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:104::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:104::1;::::0;-1:-1:-1;16411:17:104::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:104::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:104::1;::::0;-1:-1:-1;;17147:17:104::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:104::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:104::1;::::0;-1:-1:-1;;;17876:17:104::1;17613:396;18028:47;::::0;-1:-1:-1;;;18028:47:104;;-1:-1:-1;;;;;20178:15:152;;18028:47:104::1;::::0;::::1;20160:34:152::0;18064:10:104::1;20210:18:152::0;;;20203:43;20072:18;;18028:47:104::1;19925:327:152::0;4667:265:25;4832:12;4859:68;4884:7;4893:8;;4859:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4903:10:25;;-1:-1:-1;4915:11:25;;-1:-1:-1;4859:24:25;;-1:-1:-1;4859:68:25:i;18084:229:104:-;18214:12;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;1010:202:152;3343:88:104;18241:67:::1;18277:10;18289:8;18299;18241:35;:67::i;6537:258:25:-: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:104:-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;1010:202:152;3343:88:104;4574:58:::1;-1:-1:-1::0;;;662:14:75::1;678:9:::0;625:63:::1;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;617:72;;;:::i;:::-;4621:10:104;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:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;1010:202:152;3343:88:104;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:104::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;7293:5;;-1:-1:-1;7247:58:104;-1:-1:-1;7300:4:104;;;;;;7247:58;::::1;7300:4:::0;;;;7247:58;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;7247:26:104::1;::::0;-1:-1:-1;;;7247:58:104:i:1;7834:480::-:0;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;1010:202:152;3343:88:104;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:104::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;8254:17;;-1:-1:-1;8273:16:104;;-1:-1:-1;8291:11:104;;8304:4;;;;;;8207:102;::::1;8304:4:::0;;;;8207:102;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;8207:27:104::1;::::0;-1:-1:-1;;;8207:102:104:i:1;3672:553::-:0;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;1010:202:152;3343:88:104;3815:10:::1;-1:-1:-1::0;;;;;3829:7:104::1;3815:21;;3811:109;;3872:28;-1:-1:-1::0;;;662:14:75::1;678:9:::0;625:63:::1;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;617:72;;;:::i;:::-;3872:26:104;:28::i;:::-;3902:10;3853:60;;-1:-1:-1::0;;;3853:60:104::1;;;;;;;;;:::i;3811:109::-;4011:1;3976:23;:21;:23::i;:::-;-1:-1:-1::0;;;;;3976:37:104::1;;3972:91;;4030:26;;-1:-1:-1::0;;;4030:26:104::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:25:-;2083:23;2108:29;2139:24;2178:38;2198:7;2207:8;;2178:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2178:19:25;;-1:-1:-1;;;2178:38:25:i;:::-;2171:45;;;;;;1974:247;;;;;;;:::o;3441:216::-;3571:17;3603:49;3622:7;3631:8;;3603:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3641:10:25;;-1:-1:-1;3603:18:25;;-1:-1:-1;;3603:49:25:i;1454:143::-;1525:16;1561:31;1584:7;1561:22;:31::i;12697:405:104:-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;1010:202:152;3343:88:104;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:104;;-1:-1:-1;13081:15:104;;-1:-1:-1;13013:29:104::1;::::0;-1:-1:-1;13013:84:104:i:1;:::-;12697:405:::0;;;;;:::o;7118:244:25:-;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:104:-;3369:4;3347:10;:27;3343:88;;3391:33;;-1:-1:-1;;;3391:33:104;;-1:-1:-1;;;;;;3416:7:104;;;3391:33;;;1154:52:152;1127:18;;3391:33:104;1010:202:152;3343:88:104;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:104::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;11444:17;;-1:-1:-1;11399:69:104;-1:-1:-1;11463:4:104;;;;;;11399:69;::::1;11463:4:::0;;;;11399:69;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;11399:25:104::1;::::0;-1:-1:-1;;;11399:69:104:i:1;36171:541:23:-:0;36328:7;36465:242;36509:59;36550:7;36559:8;36509:40;:59::i;:::-;36586:31;;;;4323:19:3;:27;579:1:32;4322:44:3;4288:79;;;4275:93;36635:63:23;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:23;;33317:753;;33414:66;33462:7;33471:8;33414:47;:66::i;:::-;33397:83;-1:-1:-1;6445:61:2;;;-1:-1:-1;;;;;33532:33:23;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;33532:33:23;-1:-1:-1;33518:47:23;-1:-1:-1;894:4:18;884:15;;33573:21:23;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:23;33808:25;:14;33831:1;7070:16:2;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;33808:25:23;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:65:-;8474:19;8495:29;8569:25;8582:11;8569:12;:25::i;:::-;8532:62;;;;-1:-1:-1;8363:236:65;-1:-1:-1;;;;8363:236:65:o;6185:1003:53:-;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:79;6597:4:53;-1:-1:-1;;;;;6597:14:53;;;;:34;;;;:::i;:::-;6593:136;;;6643:77;;-1:-1:-1;;;6643:77:53;;3536:35:4;;;;;6643:49:53;;:77;;6693:6;;6701:8;;6711;;6643:77;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6593:136;-1:-1:-1;6541:3:53;;6507:228;;;;6810:78;6825:6;6840:5;6857:8;6877;6810:4;:78::i;:::-;6792:96;;-1:-1:-1;6792:96:53;-1:-1:-1;6963:9:53;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:79;7048:4:53;-1:-1:-1;;;;;7048:14:53;;;;:33;;;;:::i;:::-;7044:134;;;7093:76;;-1:-1:-1;;;7093:76:53;;3536:35:4;;;;;7093:48:53;;:76;;7142:6;;7150:8;;7160;;7093:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7044:134;-1:-1:-1;6992:3:53;;6958:226;;;;6354:834;6185:1003;;;;;;;:::o;348:217:78:-;551:6;545:13;538:4;530:6;526:17;519:40;35124:440:23;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:40:-;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:40;;;;;;;;;:::i;20949:192:23:-;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:23;29171:49;29023:106;29202:17;7070:16:2;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;29171:49:23;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:2;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;37595:93:23;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:31;4015:652:23;-1:-1:-1;4015:652:23:o;4314:111::-;4469:185;4515:85;-1:-1:-1;;;4591:7:23;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:23;;;;;21555:25:152;;;21596:18;;;21589:34;;;21528:18;;41173:44:23;21381:248:152;41141:83:23;41433:29;41465:66;41513:7;41522:8;41465:47;:66::i;:::-;41433:98;-1:-1:-1;41537:19:23;41559:41;41433:98;41582:17;7070:16:2;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;41559:41:23;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:23;;;;;21555:25:152;;;;21596:18;;;21589:34;21528:18;;41668:88:23;21381:248:152;41606:157:23;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:23:o;25552:145::-;25636:56;25649:7;25658:8;25668:23;25683:7;25668:14;:23::i;:::-;25636:12;:56::i;4219:406:74:-;4361:16;;;4375:1;4361:16;;;;;;;;4294:30;;;;4361:16;4375:1;4361:16;;;;;;;;;;-1:-1:-1;4361:16:74;4332:45;;4422:9;-1:-1:-1;;;;;4406:27:74;4398:36;;4383:9;4393:1;4383:12;;;;;;;;:::i;:::-;;;;;;:51;;;;;4479:9;-1:-1:-1;;;;;4463:27:74;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:74;:62::i;2194:811:41:-;2366:4;2438:32;2450:19;2438:11;:32::i;:::-;2434:49;;;-1:-1:-1;2479:4:41;2472:11;;2434:49;810:53;2542:46;;-1:-1:-1;2583:5:41;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:41;;;;;;;;;;;;;;-1:-1:-1;;;;;2833:74:41;-1:-1:-1;;;2833:74:41;;;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:41:o;2843:191:56:-;-1:-1:-1;;;2955:46:56;-1:-1:-1;;;2954:74:56;;2843:191::o;3931:329:68:-;4059:16;;;4073:1;4059:16;;;;;;;;;3992:30;;;;4059:16;;;;;;;;;;;;-1:-1:-1;4059:16:68;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:68;:62::i;2663:339:102:-;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:23:-;39123:7;39138:21;39168:29;:11;:27;:29::i;:::-;39138:60;;39221:15;39208:28;;:10;:28;;;39204:185;;;39253:31;;;;4323:19:3;:27;579:1:32;4322:44:3;4288:79;;;4275:93;39253:31:23;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:40:-;4324:6;-1:-1:-1;;;;;4272:58:40;:48;4292:27;:10;:25;:27::i;:::-;4272:19;:48::i;:::-;-1:-1:-1;;;;;4272:58:40;;4268:148;;4379:21;:10;:19;:21::i;4874:570:104:-;5030:60;5055:6;-1:-1:-1;;;5030:16:104;:60::i;:::-;5097:210;5172:10;5200:1;5225:6;5287:11;5250:50;;;;;;;;:::i;:::-;;;;-1:-1:-1;;5250:50:104;;;;;;;;;;;;;;-1:-1:-1;;;;;5250:50:104;-1:-1:-1;;;5250:50:104;;;5097:55;:210::i;:::-;;5371:68;5401:6;5420:11;5410:22;;;;;;5434:4;5371:21;:68::i;17013:1682:23:-;-1:-1:-1;;;17192:7:23;-1:-1:-1;;;;;;17192:44:23;;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:34;17798:4:23;-1:-1:-1;;;;;17798:14:23;;;;:41;;;;:::i;:::-;17794:236;;;17851:170;;-1:-1:-1;;;17851:170:23;;3536:35:4;;;;;17851:54:23;;:170;;17927:7;;17956:8;;17983:5;;18006:4;;17851:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17794:236;-1:-1:-1;17742:3:23;;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:34;18455:4:23;-1:-1:-1;;;;;18455:14:23;;;;:40;;;;:::i;:::-;18451:234;;;18507:169;;-1:-1:-1;;;18507:169:23;;3536:35:4;;;;;18507:53:23;;:169;;18582:7;;18611:8;;18638:5;;18661:4;;18507:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18451:234;-1:-1:-1;18399:3:23;;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:56:-;3550:13;3620:10;451:5:19;2637:44:56;;;3571:19;3718;3620:10;3718:7;:19::i;:::-;3695:42;-1:-1:-1;3800:12:56;-1:-1:-1;;;;;;3839:35:56;;;:102;;3888:53;-1:-1:-1;;;;;;3888:53:56;;:34;:53::i;:::-;3839:102;;;;;;;;;;;;;;;;-1:-1:-1;;;3839:102:56;;;;-1:-1:-1;;;;;;3968:25:56;;;:87;;4007:48;4042:12;4007:34;:48::i;:::-;3968:87;;;;;;;;;;;;;;;;-1:-1:-1;;;3968:87:56;;;;3772:293;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3743:330;;;;;3486:592;;;:::o;3133:234:66:-;3221:16;;;3171:13;3221:16;;;;;;;;;3244:13;3260:64;1085:66;3192:45;3244:13;-1:-1:-1;;;3260:26:66;:64::i;:::-;3338:23;;;3133:234;-1:-1:-1;;;3133:234:66:o;4151:191::-;4223:16;;;4194:26;4223:16;;;;;;;;24657:2:152;24653:15;;;-1:-1:-1;;24649:53:152;4297:25:66;;;24637:66:152;4297:25:66;;;;;24719:12:152;4297:25:66;;;24719:12:152;;;4297:25:66;;;4223:16;;4246:91;;1085:66;;4223:16;;4194:26;-1:-1:-1;;;4246:26:66;:91::i;31958:254:23:-;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;;;;;;19867:19:152;;19911:2;19902:12;;19738:182;5268:25:23;;;;-1:-1:-1;;5268:25:23;;;;;;;;;;-1:-1:-1;;;5219:76:23;;;;;;;;:::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:23;30643:49;30495:106;30674:17;7070:16:2;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;30643:49:23;30607:86;-1:-1:-1;30731:333:23;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:20;5718:125:23;;5793:7;5826;5809:25;;;;;;19867:19:152;;19911:2;19902:12;;19738:182;24152:738:23;24403:37;24443:66;24491:7;24500:8;24443:47;:66::i;:::-;24403:106;-1:-1:-1;24515:26:23;24551:49;24403:106;24582:17;7070:16:2;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;24551:49:23;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:23;;;;;;;;;50945:46;;50955:35;50945:46;;;;42361:22;50938:53;;50806:191;-1:-1:-1;;;50806:191:23:o;51823:242::-;51919:7;;;51958:84;51978:10;51974:14;;:1;:14;51958:84;;;52003:32;4275:93:3;4323:19;:27;;;579:1:32;4322:44:3;4288:79;;;4275:93;52003:32:23;;:::i;:::-;;-1:-1:-1;51990:3:23;;51958:84;;;-1:-1:-1;52054:6:23;51823:242;-1:-1:-1;;;51823:242:23:o;8945:812:22:-;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:22;;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:3:-;4672:7;579:1:32;1354:13;1366:1;376:2;1354:13;:::i;:::-;1353:30;;;;:::i;:::-;4694:70:3;;;;;4598:171;-1:-1:-1;4598:171:3:o;48823:360:23:-;48949:12;48973:6;48983:1;48973:11;48969:26;;-1:-1:-1;48986:9:23;;;;;;;;;-1:-1:-1;48986:9:23;;;;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:3:-;5451:7;579:1:32;1704;;1684:13;1696:1;376:2;1684:13;:::i;:::-;:17;;;;:::i;:::-;:21;;;;:::i;:::-;1683:38;;;;:::i;:::-;5487:11:3;5466:79;5479:65;;5466:79;;5377:173;-1:-1:-1;;5377:173:3:o;53939:303:23:-;54060:14;54154:82;54185:48;54215:7;54224:8;54185:29;:48::i;:::-;4711:21:22;;4605:137;52742:274:23;52886:7;52991;53000:8;52974:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;52964:46;;;;;;52943:17;52936:25;;-1:-1:-1;;;;;52916:45:23;;42433:34;52916:45;:94;52908:103;;52901:110;;52742:274;;;;;:::o;6076:2380:22:-;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:32;804:25:33;;782:48;6806:135:22;;;-1:-1:-1;;;579:1:32;804:25:33;;782:48;6806:135:22;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:22;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:22;;;;7974:2;7957:19;7760:253;;;8081:10;;8077:375;;8101:12;-1:-1:-1;;579:1:32;804:25:33;;782:48;8389:20:22;;8299:21;;8322:9;;8295:37;8385:31;;8244:184;8201:237;;-1:-1:-1;6076:2380:22;;;;:::o;7963:242:65:-;35423:4:1;35409:27;;35403:34;35409:27;;;35403:34;8028:19:65;;8173:26;8147:53;;7963:242;;;:::o;3857:344:71:-;3974:16;;;3988:1;3974:16;;;;;;;;;3915:22;;3945:26;;3974:16;;;;;;;;;;;;-1:-1:-1;3974:16:71;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:4:-;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:53:-;1888:12;1902:17;1956:21;1979:17;2000:22;2013:8;2000:12;:22::i;:::-;1955:67;;-1:-1:-1;1955:67:53;-1:-1:-1;;;;;;2067:27:53;;2063:106;;2139:8;2149:19;:8;:17;:19::i;:::-;2103:66;;-1:-1:-1;;;2103:66:53;;;;;;;;;:::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:53;2564:11;2577:22;2594:5;2491:51;2577:22;:::i;2550:50::-;2425:182;;2410:197;2709:14;2682:23;:8;451:5:19;2637:44:56;;2539:148;2682:23:53;-1:-1:-1;;;;;;2682:41:53;;: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:53;-1:-1:-1;;;;;;;1761:1387:53:o;4979:171:3:-;5052:7;579:1:32;1532;1516:13;1528:1;376:2;1516:13;:::i;49648:511:23:-;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:3;:27;579:1:32;4322:44:3;4288:79;;;4275:93;37440:12:23;:257::i;1670:328:40:-;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:23:-;-1:-1:-1;;;44652:7:23;-1:-1:-1;;;;;;44652:35:23;;44648:161;;-1:-1:-1;;;44759:7:23;44792;44775:25;;;;;;19867:19:152;;19911:2;19902:12;;19738:182;44775:25:23;;;;-1:-1:-1;;44775:25:23;;;;;;;;;;-1:-1:-1;;;44704:98:23;;;;;;;;;:::i;44648:161::-;44815:27;44845:49;:22;44876:17;7070:16:2;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;44845:49:23;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:23;45270:30;45289:11;45270:16;:30;:::i;:::-;:53;;;;45225:98;45221:218;;;45340:92;;-1:-1:-1;;;45340:92:23;;27037:12:152;27076:15;;;45340:92:23;;;27058:34:152;27128:15;;;27108:18;;;27101:43;27180:15;;27160:18;;;27153:43;27000:18;;45340:92:23;26831:371:152;45221:218:23;45545:19;45526:16;:38;;;45522:140;;;45581:74;;-1:-1:-1;;;45581:74:23;;;;;27380:25:152;;;27453:12;27441:25;;27421:18;;;27414:53;27353:18;;45581:74:23;27207:266:152;45522:140:23;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:34;46104:4:23;-1:-1:-1;;;;;46104:14:23;;;;:42;;;;:::i;:::-;46100:394;;;3536:35:4;;;;-1:-1:-1;;;;;46158:55:23;;46235:7;46264:8;46303:17;46350:16;46391:11;46430:22;46470:4;46158:327;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;46100:394;-1:-1:-1;46048:3:23;;46014:486;;;-1:-1:-1;46558:32:23;;;:13;46698:107;46716:17;46712:21;;:1;:21;;;46698:107;;;46761:33;:22;46792:1;7070:16:2;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;46761:33:23;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:22;;;-1:-1:-1;47216:248:23;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:34;47858:4:23;-1:-1:-1;;;;;47858:14:23;;;;:41;;;;:::i;:::-;47854:391;;;3536:35:4;;;;-1:-1:-1;;;;;47911:54:23;;47987:7;48016:8;48055:17;48102:16;48143:11;48182:21;48221:4;47911:325;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;47854:391;-1:-1:-1;47802:3:23;;47768:483;;;;44498:3757;;;;44254:4001;;;;;;;:::o;5042:669:22:-;5458:4;5452:11;5499:4;5487:17;;-1:-1:-1;;5373:16:22;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:23:-;-1:-1:-1;;;13486:7:23;-1:-1:-1;;;;;;13486:44:23;;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:34;13976:4:23;-1:-1:-1;;;;;13976:14:23;;;;:33;;;;:::i;:::-;13972:248;;;14021:190;;-1:-1:-1;;;14021:190:23;;3536:35:4;;;;;14021:47:23;;:190;;14080:7;;14099:8;;14119:10;;14141:14;;14167:11;;14190;;14021:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13972:248;-1:-1:-1;13920:3:23;;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:23;894:4:18;884:15;;14520:54:23;;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:22;;;14915:102:23;-1:-1:-1;894:4:18;884:15;;15191:47:23;;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:23;:14;15615:1;7070:16:2;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;15592:25:23;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:23;;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:34;16125:4:23;-1:-1:-1;;;;;16125:14:23;;;;:32;;;;:::i;:::-;16121:246;;;16169:189;;-1:-1:-1;;;16169:189:23;;3536:35:4;;;;;16169:46:23;;:189;;16227:7;;16246:8;;16266:10;;16288:14;;16314:11;;16337;;16169:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16121:246;-1:-1:-1;16069:3:23;;16035:338;;;;13422:2955;;;13212:3165;;;;;;:::o;51249:282::-;51494:30;;;;;;30957:19:152;;;30992:12;;;30985:28;;;51337:7:23;;31029:12:152;;51494:30:23;30769:278:152;26296:1804:23;-1:-1:-1;;;26463:7:23;-1:-1:-1;;;;;;26463:44:23;;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:34;26918:4:23;-1:-1:-1;;;;;26918:14:23;;;;:36;;;;:::i;:::-;26914:143;;;26966:82;;-1:-1:-1;;;26966:82:23;;3536:35:4;;;;;26966:50:23;;:82;;27017:7;;27026:8;;27036:11;;26966:82;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26914:143;-1:-1:-1;26862:3:23;;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:23;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;27357:41:23;;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:34;27953:4:23;-1:-1:-1;;;;;27953:14:23;;;;:35;;;;:::i;:::-;27949:141;;;28000:81;;-1:-1:-1;;;28000:81:23;;3536:35:4;;;;;28000:49:23;;:81;;28050:7;;28059:8;;28069:11;;28000:81;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27949:141;-1:-1:-1;27897:3:23;;27863:233;;1129:181:41;1205:4;-1:-1:-1;;;798:14:75;-1:-1:-1;;;764:71:75;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;756:80;;;:::i;:::-;1224:81:41;;;;1129:181;-1:-1:-1;1129:181:41:o;1480:797:102:-;1599:12;1613:17;1667:21;1690:17;1711:22;1724:8;1711:12;:22::i;:::-;1666:67;;-1:-1:-1;1666:67:102;-1:-1:-1;;;;;;1778:27:102;;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:102;-1:-1:-1;;;;;;1480:797:102:o;3750:306:69:-;3861:16;;;3875:1;3861:16;;;;;;;;;3811:13;;;;3861:16;;;;;;;;;;;;-1:-1:-1;3861:16:69;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:69;:62::i;:::-;4027:23;;;3750:306;-1:-1:-1;;;;3750:306:69:o;692:238:77:-;777:61;809:15;826:11;777:31;:61::i;:::-;772:156;;853:70;;-1:-1:-1;;;853:70:77;;-1:-1:-1;;;;;31979:55:152;;853:70:77;;;31961:74:152;-1:-1:-1;;;;;;32071:33:152;;32051:18;;;32044:61;31934:18;;853:70:77;31789:322:152;8777:415:55;8932:17;8958:12;8972:18;8994:133;9037:9;9064:8;9088:6;9112:8;8994:23;:133::i;5584:340:67:-;5706:16;;;5720:1;5706:16;;;;;;;;5677:26;;5706:16;;;;;;;;;;-1:-1:-1;5706:16:67;5677:45;;5767:13;-1:-1:-1;;;;;5751:31:67;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;;;;;;32267:14:152;32260:22;32255:3;32251:32;32239:45;;32309:1;32300:11;;32116:201;5873:31:67;;;;-1:-1:-1;;5873:31:67;;;;;;;;;-1:-1:-1;;;5824:24:67;:95::i;3656:342:30:-;3772:16;;;3786:1;3772:16;;;;;;;;;3713:22;;3743:26;;3772:16;;;;;;;;;;;;-1:-1:-1;3772:16:30;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:22:-;1055:68;1061:14;1077:6;1085:4;:11;1098:24;1117:4;894::18;884:15;;758:151;1098:24:22;1055:5;:68::i;3165:160:56:-;3228:7;3292:26;438:6;451:5:19;3292:26:56;:::i;:::-;3258:61;;;;;3165:160;-1:-1:-1;3165:160:56:o;1862:325::-;1932:13;1953:14;1973:83;1989:2;1980:6;:11;1973:83;;;-1:-1:-1;;;;;;2007:37:56;;3261:1:1;3257:13;;3253:24;-1:-1:-1;;;;;;2007:42:56;2003:53;2051:5;2003:53;1993:8;;1973:83;;;2092:30;;;-1:-1:-1;;;;;;32463:52:152;;2092:30:56;;;32451:65:152;2092:30:56;;32532:12:152;;;;2092:30:56;;;875:21:1;;;2092:30:56;2142:39;760:164:1;17775:457:26;17932:7;17947:21;17971:17;:15;:17::i;:::-;17947:41;-1:-1:-1;18023:4:26;-1:-1:-1;;;;;17998:30:26;;;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:26;;-1:-1:-1;;;;;18141:36:26;;;;;: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:26;-1:-1:-1;;;;;10984:30:26;;;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:26;;-1:-1:-1;;;;;11119:36:26;;;;;:86;;11156:7;;11165:8;;11175:10;;11187:4;;11193:11;;11119:86;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4729:312:31;4848:16;;;4862:1;4848:16;;;;;;;;;4795;;;;4848;;;;;;;;;;;;-1:-1:-1;4848:16:31;4819:45;;4903:7;4870:9;4880:1;4870:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;4918:13;4934:62;-1:-1:-1;;;4969:9:31;4980:1;-1:-1:-1;;;4934:24:31;:62::i;2856:314:29:-;2970:16;;;2984:1;2970:16;;;;;;;;;2922:11;;;;2970:16;;;;;;;;;;;;-1:-1:-1;2970:16:29;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:29;:62::i;:::-;3043:78;;3135:29;3156:5;3143:20;;1650:10:19;1541:126;6111:316:31;6234:16;;;6248:1;6234:16;;;;;;;;;6179:18;;;;6234:16;;;;;;;;;;;;-1:-1:-1;6234:16:31;6205:45;;6289:7;6256:9;6266:1;6256:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;6304:13;6320:62;-1:-1:-1;;;6355:9:31;6366:1;-1:-1:-1;;;6320:24:31;:62::i;53371:230:23:-;53492:7;53576;53585:8;53559:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;53559:35:23;;;;;;;;;53549:46;;53559:35;53549:46;;;;42524:40;53522:73;;53371:230;-1:-1:-1;;;53371:230:23:o;2003:574:21:-;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:21;;;;;;;;;;:::i;2177:93::-;2336:4;2326:15;;2383:16;2394:5;2326:15;2383:16;:::i;:::-;;-1:-1:-1;2405:12:21;2420:11;2426:5;2420:3;:11;:::i;:::-;692:17;2555:15;2547:3;2536:14;;;;2535:36;;;;;;-1:-1:-1;;;;;2003:574:21:o;40103:220:36:-;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;5928:433:73:-;6056:16;;;6070:1;6056:16;;;;;;;;;5986:14;;;;;;6056:16;;;;;;;;;;;-1:-1:-1;6056:16:73;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:73;:78::i;:::-;6127:166;;;;;;6306:50;6313:11;6326:15;6343:12;6306:6;:50::i;5594:317:55:-;5733:12;5747:17;5790:6;-1:-1:-1;;;;;5790:11:55;5810:1;5821:79;5847:8;5868:9;5889:8;5821:13;:79::i;:::-;5790:116;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5772:134:55;;;;-1:-1:-1;5594:317:55;-1:-1:-1;;;;;5594:317:55:o;7139:321::-;7286:12;7300:17;7343:6;-1:-1:-1;;;;;7343:19:55;7370:79;7396:8;7417:9;7438:8;7370:13;:79::i;:::-;7343:112;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4006:378:70;4130:16;;;4144:1;4130:16;;;;;;;;4082:11;;;;4130:16;4144:1;4130:16;;;;;;;;;;-1:-1:-1;4130:16:70;4101:45;;4185:10;4152:9;4162:1;4152:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;4241:6;-1:-1:-1;;;;;4225:24:70;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:70;:62::i;:::-;4257:78;;4349:29;4370:5;4357:20;;1650:10:19;1541:126;7468:1525:2;7596:14;1145:16;7622:25;;7618:120;;;7664:67;;-1:-1:-1;;;7664:67:2;;;;;8350:25:152;;;8323:18;;7664:67:2;8172:209:152;7618:120:2;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:2;975;1063;8439;;;;8428:27;8564:35;;;8882:5;-1:-1:-1;;8699:46:2;;;;8698:62;;;8862:25;;;;8892:34;;;;;8861:66;;-1:-1:-1;7468:1525:2;;;;;:::o;1489:2340:22:-;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:32;804:25:33;;782:48;2208:18:22;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:22;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:22;;;;3346:2;3329:19;3132:253;;;3453:10;;3449:376;;3473:12;-1:-1:-1;;579:1:32;804:25:33;;782:48;3761:21:22;;3672:20;;3694:9;;3668:36;3757:32;;3617:184;3573:238;;-1:-1:-1;1489:2340:22;;;;:::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:103;1620:12;1634:17;1677:6;-1:-1:-1;;;;;1677:17:103;1702:72;1728:8;1749:9;1770:1;1702:13;:72::i;:::-;1677:139;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1659:157:103;;;;-1:-1:-1;1492:329:103;-1:-1:-1;;;;1492:329:103:o;1312:272:42:-;1399:4;1498:23;1513:7;1498:14;:23::i;:::-;:81;;;;;1525:54;1558:7;1567:11;1525:32;:54::i;1836:227:26:-;1066:42;1925:22;1886:7;;-1:-1:-1;;;;;1925:22:26;;1953:106;;2001:10;1994:17;;;1836:227;:::o;2681:1129:38:-;2801:22;2831:21;2855;:11;2997:3:21;2975:25;;2901:104;2855:21:38;2831:45;-1:-1:-1;692:17:21;3238:38;;2882:20:38;3044:11;3238:38:21;3044:11:38;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:73:-;7940:14;7956:17;8006:25;8019:11;8006:12;:25::i;4897:201:55:-;5019:12;5063:8;5073:9;5084:8;5046:47;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;5039:54;;4897:201;;;;;:::o;708:400:42:-;772:4;961:68;994:7;-1:-1:-1;;;961:32:42;:68::i;:::-;:142;;;;-1:-1:-1;1040:63:42;1073:7;-1:-1:-1;;;;;;1040:32:42;:63::i;:::-;1039:64;948:155;708:400;-1:-1:-1;;708:400:42:o;4132:576::-;4295:56;;-1:-1:-1;;;;;;1172:33:152;;4295:56:42;;;1154:52:152;4234:4:42;;;;1127:18:152;;4295:56:42;;;-1:-1:-1;;4295:56:42;;;;;;;;;;;;;;;-1:-1:-1;;;;;4295:56:42;-1:-1:-1;;;4295:56:42;;;4533:20;;4295:56;;-1:-1:-1;;;;;;;4295:56:42;;-1:-1:-1;;4498:7:42;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:42:o;7448:223:73:-;35423:4:1;35409:27;;35403:34;35409:27;;;35403:34;7564:35:73;;;;;;7513:14;;7631:33;;7623:42;1541:126:19;14:427:152;-1:-1:-1;;;;;;209:28:152;;;;197:41;;-1:-1:-1;;;;;;267:56:152;;;;263:1;254:11;;247:77;-1:-1:-1;;;;;;354:52:152;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:152;;;;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:152;;-1:-1:-1;;;;;2014:30:152;;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:707;2521:6;2529;2537;2545;2553;2606:3;2594:9;2585:7;2581:23;2577:33;2574:53;;;2623:1;2620;2613:12;2574:53;2659:9;2646:23;2636:33;;2720:2;2709:9;2705:18;2692:32;-1:-1:-1;;;;;2739:6:152;2736:30;2733:50;;;2779:1;2776;2769:12;2733:50;2818:70;2880:7;2871:6;2860:9;2856:22;2818:70;:::i;:::-;2907:8;;-1:-1:-1;2792:96:152;-1:-1:-1;2961:36:152;;-1:-1:-1;2993:2:152;2978:18;;2961:36;:::i;:::-;2347:707;;;;-1:-1:-1;2347:707:152;;3044:2;3029:18;3016:32;;2347:707;-1:-1:-1;;2347:707:152:o;3059:250::-;3144:1;3154:113;3168:6;3165:1;3162:13;3154:113;;;3244:11;;;3238:18;3225:11;;;3218:39;3190:2;3183:10;3154:113;;;-1:-1:-1;;3301:1:152;3283:16;;3276:27;3059:250::o;3314:270::-;3355:3;3393:5;3387:12;3420:6;3415:3;3408:19;3436:76;3505:6;3498:4;3493:3;3489:14;3482:4;3475:5;3471:16;3436:76;:::i;:::-;3566:2;3545:15;-1:-1:-1;;3541:29:152;3532:39;;;;3573:4;3528:50;;3314:270;-1:-1:-1;;3314:270:152:o;3589:217::-;3736:2;3725:9;3718:21;3699:4;3756:44;3796:2;3785:9;3781:18;3773:6;3756:44;:::i;3811:347::-;3862:8;3872:6;3926:3;3919:4;3911:6;3907:17;3903:27;3893:55;;3944:1;3941;3934:12;3893:55;-1:-1:-1;3967:20:152;;-1:-1:-1;;;;;3999:30:152;;3996:50;;;4042:1;4039;4032:12;3996:50;4079:4;4071:6;4067:17;4055:29;;4131:3;4124:4;4115:6;4107;4103:19;4099:30;4096:39;4093:59;;;4148:1;4145;4138:12;4163:915;4316:6;4324;4332;4340;4348;4356;4409:3;4397:9;4388:7;4384:23;4380:33;4377:53;;;4426:1;4423;4416:12;4377:53;4462:9;4449:23;4439:33;;4523:2;4512:9;4508:18;4495:32;-1:-1:-1;;;;;4587:2:152;4579:6;4576:14;4573:34;;;4603:1;4600;4593:12;4573:34;4642:70;4704:7;4695:6;4684:9;4680:22;4642:70;:::i;:::-;4731:8;;-1:-1:-1;4616:96:152;-1:-1:-1;4616:96:152;;-1:-1:-1;4785:36:152;4817:2;4802:18;;4785:36;:::i;:::-;4775:46;;4874:2;4863:9;4859:18;4846:32;4830:48;;4903:2;4893:8;4890:16;4887:36;;;4919:1;4916;4909:12;4887:36;;4958:60;5010:7;4999:8;4988:9;4984:24;4958:60;:::i;:::-;4163:915;;;;-1:-1:-1;4163:915:152;;-1:-1:-1;4163:915:152;;5037:8;;4163:915;-1:-1:-1;;;4163:915:152:o;5083:606::-;5216:6;5224;5232;5240;5293:2;5281:9;5272:7;5268:23;5264:32;5261:52;;;5309:1;5306;5299:12;5261:52;5345:9;5332:23;5322:33;;5406:2;5395:9;5391:18;5378:32;-1:-1:-1;;;;;5425:6:152;5422:30;5419:50;;;5465:1;5462;5455:12;5419:50;5504:70;5566:7;5557:6;5546:9;5542:22;5504:70;:::i;:::-;5593:8;;-1:-1:-1;5478:96:152;-1:-1:-1;5647:36:152;;-1:-1:-1;5679:2:152;5664:18;;5647:36;:::i;:::-;5637:46;;5083:606;;;;;;;:::o;5694:1236::-;5904:6;5912;5920;5928;5936;5944;5952;5960;6013:3;6001:9;5992:7;5988:23;5984:33;5981:53;;;6030:1;6027;6020:12;5981:53;6066:9;6053:23;6043:33;;6127:2;6116:9;6112:18;6099:32;-1:-1:-1;;;;;6191:2:152;6183:6;6180:14;6177:34;;;6207:1;6204;6197:12;6177:34;6246:70;6308:7;6299:6;6288:9;6284:22;6246:70;:::i;:::-;6335:8;;-1:-1:-1;6220:96:152;-1:-1:-1;6423:2:152;6408:18;;6395:32;;-1:-1:-1;6439:16:152;;;6436:36;;;6468:1;6465;6458:12;6436:36;6507:60;6559:7;6548:8;6537:9;6533:24;6507:60;:::i;:::-;6586:8;;-1:-1:-1;6481:86:152;-1:-1:-1;6668:2:152;6653:18;;6640:32;;-1:-1:-1;6725:3:152;6710:19;;6697:33;;-1:-1:-1;6742:16:152;;;6739:36;;;6771:1;6768;6761:12;6739:36;;6810:60;6862:7;6851:8;6840:9;6836:24;6810:60;:::i;:::-;5694:1236;;;;-1:-1:-1;5694:1236:152;;-1:-1:-1;5694:1236:152;;;;;;6889:8;-1:-1:-1;;;5694:1236:152:o;6935:1016::-;7129:6;7137;7145;7153;7161;7169;7177;7230:3;7218:9;7209:7;7205:23;7201:33;7198:53;;;7247:1;7244;7237:12;7198:53;7283:9;7270:23;7260:33;;7344:2;7333:9;7329:18;7316:32;-1:-1:-1;;;;;7408:2:152;7400:6;7397:14;7394:34;;;7424:1;7421;7414:12;7394:34;7463:70;7525:7;7516:6;7505:9;7501:22;7463:70;:::i;:::-;7552:8;;-1:-1:-1;7437:96:152;-1:-1:-1;7437:96:152;;-1:-1:-1;7606:36:152;7638:2;7623:18;;7606:36;:::i;:::-;7596:46;;7695:2;7684:9;7680:18;7667:32;7651:48;;7724:2;7714:8;7711:16;7708:36;;;7740:1;7737;7730:12;7708:36;;7779:60;7831:7;7820:8;7809:9;7805:24;7779:60;:::i;:::-;6935:1016;;;;-1:-1:-1;6935:1016:152;;;;;;7940:3;7925:19;;;7912:33;;6935:1016;-1:-1:-1;;;;6935:1016:152:o;7956:211::-;8046:6;8099:2;8087:9;8078:7;8074:23;8070:32;8067:52;;;8115:1;8112;8105:12;8067:52;-1:-1:-1;8138:23:152;;7956:211;-1:-1:-1;7956:211:152:o;8386:127::-;8447:10;8442:3;8438:20;8435:1;8428:31;8478:4;8475:1;8468:15;8502:4;8499:1;8492:15;8518:275;8589:2;8583:9;8654:2;8635:13;;-1:-1:-1;;8631:27:152;8619:40;;-1:-1:-1;;;;;8674:34:152;;8710:22;;;8671:62;8668:88;;;8736:18;;:::i;:::-;8772:2;8765:22;8518:275;;-1:-1:-1;8518:275:152:o;8798:530::-;8840:5;8893:3;8886:4;8878:6;8874:17;8870:27;8860:55;;8911:1;8908;8901:12;8860:55;8947:6;8934:20;-1:-1:-1;;;;;8969:2:152;8966:26;8963:52;;;8995:18;;:::i;:::-;9039:55;9082:2;9063:13;;-1:-1:-1;;9059:27:152;9088:4;9055:38;9039:55;:::i;:::-;9119:2;9110:7;9103:19;9165:3;9158:4;9153:2;9145:6;9141:15;9137:26;9134:35;9131:55;;;9182:1;9179;9172:12;9131:55;9247:2;9240:4;9232:6;9228:17;9221:4;9212:7;9208:18;9195:55;9295:1;9270:16;;;9288:4;9266:27;9259:38;;;;9274:7;8798:530;-1:-1:-1;;;8798:530:152:o;9333:419::-;9441:6;9449;9502:2;9490:9;9481:7;9477:23;9473:32;9470:52;;;9518:1;9515;9508:12;9470:52;9554:9;9541:23;9531:33;;9615:2;9604:9;9600:18;9587:32;-1:-1:-1;;;;;9634:6:152;9631:30;9628:50;;;9674:1;9671;9664:12;9628:50;9697:49;9738:7;9729:6;9718:9;9714:22;9697:49;:::i;:::-;9687:59;;;9333:419;;;;;:::o;9757:636::-;9924:6;9932;9940;9948;10001:2;9989:9;9980:7;9976:23;9972:32;9969:52;;;10017:1;10014;10007:12;9969:52;10053:9;10040:23;10030:33;;10114:2;10103:9;10099:18;10086:32;-1:-1:-1;;;;;10133:6:152;10130:30;10127:50;;;10173:1;10170;10163:12;10127:50;10212:70;10274:7;10265:6;10254:9;10250:22;10212:70;:::i;:::-;9757:636;;10301:8;;-1:-1:-1;10186:96:152;;10383:2;10368:18;10355:32;;9757:636;-1:-1:-1;;;;9757:636:152:o;10398:483::-;10654:2;10643:9;10636:21;10617:4;10680:44;10720:2;10709:9;10705:18;10697:6;10680:44;:::i;:::-;10760:6;10755:2;10744:9;10740:18;10733:34;10815:9;10807:6;10803:22;10798:2;10787:9;10783:18;10776:50;10843:32;10868:6;10860;10843:32;:::i;11068:712::-;11122:5;11175:3;11168:4;11160:6;11156:17;11152:27;11142:55;;11193:1;11190;11183:12;11142:55;11229:6;11216:20;11255:4;-1:-1:-1;;;;;11274:2:152;11271:26;11268:52;;;11300:18;;:::i;:::-;11346:2;11343:1;11339:10;11369:28;11393:2;11389;11385:11;11369:28;:::i;:::-;11431:15;;;11501;;;11497:24;;;11462:12;;;;11533:15;;;11530:35;;;11561:1;11558;11551:12;11530:35;11597:2;11589:6;11585:15;11574:26;;11609:142;11625:6;11620:3;11617:15;11609:142;;;11691:17;;11679:30;;11642:12;;;;11729;;;;11609:142;;11785:655;11934:6;11942;11950;11958;11966;12019:3;12007:9;11998:7;11994:23;11990:33;11987:53;;;12036:1;12033;12026:12;11987:53;12072:9;12059:23;12049:33;;12133:2;12122:9;12118:18;12105:32;-1:-1:-1;;;;;12152:6:152;12149:30;12146:50;;;12192:1;12189;12182:12;12146:50;12215:61;12268:7;12259:6;12248:9;12244:22;12215:61;:::i;:::-;12205:71;;;12295:36;12327:2;12316:9;12312:18;12295:36;:::i;:::-;11785:655;;;;-1:-1:-1;12285:46:152;;12378:2;12363:18;;12350:32;;-1:-1:-1;12429:3:152;12414:19;12401:33;;11785:655;-1:-1:-1;;11785:655:152:o;12445:536::-;12571:6;12579;12587;12640:2;12628:9;12619:7;12615:23;12611:32;12608:52;;;12656:1;12653;12646:12;12608:52;12692:9;12679:23;12669:33;;12753:2;12742:9;12738:18;12725:32;-1:-1:-1;;;;;12772:6:152;12769:30;12766:50;;;12812:1;12809;12802:12;12766:50;12851:70;12913:7;12904:6;12893:9;12889:22;12851:70;:::i;:::-;12445:536;;12940:8;;-1:-1:-1;12825:96:152;;-1:-1:-1;;;;12445:536:152:o;13854:154::-;-1:-1:-1;;;;;13933:5:152;13929:54;13922:5;13919:65;13909:93;;13998:1;13995;13988:12;14013:554;14130:6;14138;14146;14199:2;14187:9;14178:7;14174:23;14170:32;14167:52;;;14215:1;14212;14205:12;14167:52;14254:9;14241:23;14273:31;14298:5;14273:31;:::i;:::-;14323:5;-1:-1:-1;14375:2:152;14360:18;;14347:32;;-1:-1:-1;14430:2:152;14415:18;;14402:32;-1:-1:-1;;;;;14446:30:152;;14443:50;;;14489:1;14486;14479:12;14443:50;14512:49;14553:7;14544:6;14533:9;14529:22;14512:49;:::i;:::-;14502:59;;;14013:554;;;;;:::o;14572:618::-;14744:6;14752;14760;14768;14821:3;14809:9;14800:7;14796:23;14792:33;14789:53;;;14838:1;14835;14828:12;14789:53;14874:9;14861:23;14851:33;;14935:2;14924:9;14920:18;14907:32;-1:-1:-1;;;;;14954:6:152;14951:30;14948:50;;;14994:1;14991;14984:12;14948:50;15017:61;15070:7;15061:6;15050:9;15046:22;15017:61;:::i;:::-;15007:71;;;15097:36;15129:2;15118:9;15114:18;15097:36;:::i;:::-;14572:618;;;;-1:-1:-1;15087:46:152;;15180:2;15165:18;15152:32;;-1:-1:-1;;14572:618:152:o;15195:517::-;15326:6;15334;15342;15395:2;15383:9;15374:7;15370:23;15366:32;15363:52;;;15411:1;15408;15401:12;15363:52;15447:9;15434:23;15424:33;;15508:2;15497:9;15493:18;15480:32;-1:-1:-1;;;;;15527:6:152;15524:30;15521:50;;;15567:1;15564;15557:12;15521:50;15590:61;15643:7;15634:6;15623:9;15619:22;15590:61;:::i;:::-;15580:71;;;15670:36;15702:2;15691:9;15687:18;15670:36;:::i;:::-;15660:46;;15195:517;;;;;:::o;15717:472::-;15811:6;15819;15872:2;15860:9;15851:7;15847:23;15843:32;15840:52;;;15888:1;15885;15878:12;15840:52;15927:9;15914:23;15946:31;15971:5;15946:31;:::i;:::-;15996:5;-1:-1:-1;16052:2:152;16037:18;;16024:32;-1:-1:-1;;;;;16068:30:152;;16065:50;;;16111:1;16108;16101:12;16194:1013;16348:6;16356;16364;16372;16380;16388;16441:3;16429:9;16420:7;16416:23;16412:33;16409:53;;;16458:1;16455;16448:12;16409:53;16494:9;16481:23;16471:33;;16555:2;16544:9;16540:18;16527:32;-1:-1:-1;;;;;16619:2:152;16611:6;16608:14;16605:34;;;16635:1;16632;16625:12;16605:34;16674:70;16736:7;16727:6;16716:9;16712:22;16674:70;:::i;:::-;16763:8;;-1:-1:-1;16648:96:152;-1:-1:-1;16848:2:152;16833:18;;16820:32;;-1:-1:-1;16892:14:152;16881:26;;16871:37;;16861:65;;16922:1;16919;16912:12;16861:65;16945:5;;-1:-1:-1;17003:2:152;16988:18;;16975:32;;17019:16;;;17016:36;;;17048:1;17045;17038:12;17212:165;17279:20;;17339:12;17328:24;;17318:35;;17308:63;;17367:1;17364;17357:12;17382:1061;17551:6;17559;17567;17575;17583;17591;17599;17607;17660:3;17648:9;17639:7;17635:23;17631:33;17628:53;;;17677:1;17674;17667:12;17628:53;17713:9;17700:23;17690:33;;17774:2;17763:9;17759:18;17746:32;-1:-1:-1;;;;;17838:2:152;17830:6;17827:14;17824:34;;;17854:1;17851;17844:12;17824:34;17893:70;17955:7;17946:6;17935:9;17931:22;17893:70;:::i;:::-;17982:8;;-1:-1:-1;17867:96:152;-1:-1:-1;17867:96:152;;-1:-1:-1;18036:36:152;18068:2;18053:18;;18036:36;:::i;:::-;18026:46;;18091:37;18124:2;18113:9;18109:18;18091:37;:::i;:::-;18081:47;;18147:38;18180:3;18169:9;18165:19;18147:38;:::i;:::-;18137:48;;18238:3;18227:9;18223:19;18210:33;18194:49;;18268:2;18258:8;18255:16;18252:36;;;18284:1;18281;18274:12;18448:264;18524:6;18577:2;18565:9;18556:7;18552:23;18548:32;18545:52;;;18593:1;18590;18583:12;18545:52;18632:9;18619:23;18651:31;18676:5;18651:31;:::i;19606:127::-;19667:10;19662:3;19658:20;19655:1;19648:31;19698:4;19695:1;19688:15;19722:4;19719:1;19712:15;20257:339;20434:2;20423:9;20416:21;20397:4;20454:44;20494:2;20483:9;20479:18;20471:6;20454:44;:::i;:::-;20446:52;;-1:-1:-1;;;;;20538:6:152;20534:55;20529:2;20518:9;20514:18;20507:83;20257:339;;;;;:::o;20601:175::-;20638:3;20682:4;20675:5;20671:16;20711:4;20702:7;20699:17;20696:43;;20719:18;;:::i;:::-;20768:1;20755:15;;20601:175;-1:-1:-1;;20601:175:152:o;20781:439::-;-1:-1:-1;;;;;21019:6:152;21015:55;21004:9;20997:74;21107:6;21102:2;21091:9;21087:18;21080:34;21150:2;21145;21134:9;21130:18;21123:30;20978:4;21170:44;21210:2;21199:9;21195:18;21187:6;21170:44;:::i;21225:151::-;21315:4;21308:12;;;21294;;;21290:31;;21333:14;;21330:40;;;21350:18;;:::i;21634:128::-;21701:9;;;21722:11;;;21719:37;;;21736:18;;:::i;21767:277::-;21834:6;21887:2;21875:9;21866:7;21862:23;21858:32;21855:52;;;21903:1;21900;21893:12;21855:52;21935:9;21929:16;21988:5;21981:13;21974:21;21967:5;21964:32;21954:60;;22010:1;22007;22000:12;22049:439;22102:3;22140:5;22134:12;22167:6;22162:3;22155:19;22193:4;22222;22217:3;22213:14;22206:21;;22261:4;22254:5;22250:16;22284:1;22294:169;22308:6;22305:1;22302:13;22294:169;;;22369:13;;22357:26;;22403:12;;;;22438:15;;;;22330:1;22323:9;22294:169;;;-1:-1:-1;22479:3:152;;22049:439;-1:-1:-1;;;;;22049:439:152:o;22493:511::-;22744:2;22733:9;22726:21;22707:4;22770:56;22822:2;22811:9;22807:18;22799:6;22770:56;:::i;:::-;22874:14;22866:6;22862:27;22857:2;22846:9;22842:18;22835:55;22938:9;22930:6;22926:22;22921:2;22910:9;22906:18;22899:50;22966:32;22991:6;22983;22966:32;:::i;23009:615::-;23319:6;23308:9;23301:25;23362:3;23357:2;23346:9;23342:18;23335:31;23282:4;23389:57;23441:3;23430:9;23426:19;23418:6;23389:57;:::i;:::-;23494:14;23486:6;23482:27;23477:2;23466:9;23462:18;23455:55;23558:9;23550:6;23546:22;23541:2;23530:9;23526:18;23519:50;23586:32;23611:6;23603;23586:32;:::i;23629:874::-;24087:5;24082:3;24078:15;24070:6;24066:28;24061:3;24054:41;24036:3;-1:-1:-1;;;24146:2:152;24142:1;24137:3;24133:11;24126:23;24178:6;24172:13;24194:74;24261:6;24257:1;24252:3;24248:11;24241:4;24233:6;24229:17;24194:74;:::i;:::-;24296:6;24291:3;24287:16;24277:26;;24331:2;24327:1;24323:2;24319:10;24312:22;24365:6;24359:13;24343:29;;24381:75;24447:8;24443:1;24439:2;24435:10;24428:4;24420:6;24416:17;24381:75;:::i;:::-;24476:17;24495:1;24472:25;;23629:874;-1:-1:-1;;;;;23629:874:152:o;24960:321::-;25168:6;25157:9;25150:25;25211:2;25206;25195:9;25191:18;25184:30;25131:4;25231:44;25271:2;25260:9;25256:18;25248:6;25231:44;:::i;25286:639::-;25536:6;25531:3;25524:19;25506:3;25562:2;25595;25590:3;25586:12;25627:6;25621:13;25692:2;25684:6;25680:15;25713:1;25723:175;25737:6;25734:1;25731:13;25723:175;;;25800:13;;25786:28;;25836:14;;;;25873:15;;;;25759:1;25752:9;25723:175;;;-1:-1:-1;25914:5:152;;25286:639;-1:-1:-1;;;;;;;25286:639:152:o;25930:127::-;25991:10;25986:3;25982:20;25979:1;25972:31;26022:4;26019:1;26012:15;26046:4;26043:1;26036:15;26062:168;26135:9;;;26166;;26183:15;;;26177:22;;26163:37;26153:71;;26204:18;;:::i;26235:412::-;26490:5;26485:3;26481:15;26473:6;26469:28;26458:9;26451:47;26534:6;26529:2;26518:9;26514:18;26507:34;26577:2;26572;26561:9;26557:18;26550:30;26432:4;26597:44;26637:2;26626:9;26622:18;26614:6;26597:44;:::i;26652:174::-;26719:12;26751:10;;;26763;;;26747:27;;26786:11;;;26783:37;;;26800:18;;:::i;:::-;26783:37;26652:174;;;;:::o;27478:899::-;27901:6;27890:9;27883:25;27944:3;27939:2;27928:9;27924:18;27917:31;27864:4;27971:57;28023:3;28012:9;28008:19;28000:6;27971:57;:::i;:::-;28076:4;28064:17;;28059:2;28044:18;;28037:45;28101:12;28149:15;;;28144:2;28129:18;;28122:43;28202:15;;28196:3;28181:19;;28174:44;28249:3;28234:19;;28227:35;;;28299:22;;;28293:3;28278:19;;28271:51;28339:32;28303:6;28356;28339:32;:::i;:::-;28331:40;27478:899;-1:-1:-1;;;;;;;;;;27478:899:152:o;28382:787::-;28746:3;28735:9;28728:22;28709:4;28773:57;28825:3;28814:9;28810:19;28802:6;28773:57;:::i;:::-;28878:4;28870:6;28866:17;28861:2;28850:9;28846:18;28839:45;28932:14;28924:6;28920:27;28915:2;28904:9;28900:18;28893:55;28996:12;28988:6;28984:25;28979:2;28968:9;28964:18;28957:53;29047:6;29041:3;29030:9;29026:19;29019:35;29103:9;29095:6;29091:22;29085:3;29074:9;29070:19;29063:51;29131:32;29156:6;29148;29131:32;:::i;29174:689::-;29508:3;29497:9;29490:22;29471:4;29535:57;29587:3;29576:9;29572:19;29564:6;29535:57;:::i;:::-;29640:9;29632:6;29628:22;29623:2;29612:9;29608:18;29601:50;29674:32;29699:6;29691;29674:32;:::i;:::-;29660:46;;29742:6;29737:2;29726:9;29722:18;29715:34;29797:9;29789:6;29785:22;29780:2;29769:9;29765:18;29758:50;29825:32;29850:6;29842;29825:32;:::i;29868:896::-;30321:6;30310:9;30303:25;30364:3;30359:2;30348:9;30344:18;30337:31;30284:4;30391:57;30443:3;30432:9;30428:19;30420:6;30391:57;:::i;:::-;30496:9;30488:6;30484:22;30479:2;30468:9;30464:18;30457:50;30530:32;30555:6;30547;30530:32;:::i;:::-;30516:46;;30598:6;30593:2;30582:9;30578:18;30571:34;30654:9;30646:6;30642:22;30636:3;30625:9;30621:19;30614:51;30682:32;30707:6;30699;30682:32;:::i;:::-;30674:40;;;30751:6;30745:3;30734:9;30730:19;30723:35;29868:896;;;;;;;;;:::o;31052:261::-;31231:2;31220:9;31213:21;31194:4;31251:56;31303:2;31292:9;31288:18;31280:6;31251:56;:::i;31318:466::-;31616:6;31605:9;31598:25;31659:2;31654;31643:9;31639:18;31632:30;31579:4;31679:56;31731:2;31720:9;31716:18;31708:6;31679:56;:::i;:::-;31671:64;;31771:6;31766:2;31755:9;31751:18;31744:34;31318:466;;;;;;:::o;32555:546::-;32877:6;32866:9;32859:25;32920:3;32915:2;32904:9;32900:18;32893:31;32840:4;32941:57;32993:3;32982:9;32978:19;32970:6;32941:57;:::i;:::-;33046:4;33034:17;;;;33029:2;33014:18;;33007:45;-1:-1:-1;33083:2:152;33068:18;33061:34;32933:65;32555:546;-1:-1:-1;;32555:546:152:o;33106:184::-;33176:6;33229:2;33217:9;33208:7;33204:23;33200:32;33197:52;;;33245:1;33242;33235:12;33197:52;-1:-1:-1;33268:16:152;;33106:184;-1:-1:-1;33106:184:152:o;33295:707::-;33663:6;33652:9;33645:25;33706:3;33701:2;33690:9;33686:18;33679:31;33626:4;33733:57;33785:3;33774:9;33770:19;33762:6;33733:57;:::i;:::-;33838:4;33830:6;33826:17;33821:2;33810:9;33806:18;33799:45;33892:9;33884:6;33880:22;33875:2;33864:9;33860:18;33853:50;33920:32;33945:6;33937;33920:32;:::i;:::-;33912:40;;;33989:6;33983:3;33972:9;33968:19;33961:35;33295:707;;;;;;;;:::o;34007:359::-;34210:2;34199:9;34192:21;34173:4;34230:44;34270:2;34259:9;34255:18;34247:6;34230:44;:::i;:::-;34305:2;34290:18;;34283:34;;;;-1:-1:-1;34348:2:152;34333:18;34326:34;34222:52;34007:359;-1:-1:-1;34007:359:152:o;34371:287::-;34500:3;34538:6;34532:13;34554:66;34613:6;34608:3;34601:4;34593:6;34589:17;34554:66;:::i;:::-;34636:16;;;;;34371:287;-1:-1:-1;;34371:287:152:o;34663:217::-;34703:1;34729;34719:132;;34773:10;34768:3;34764:20;34761:1;34754:31;34808:4;34805:1;34798:15;34836:4;34833:1;34826:15;34719:132;-1:-1:-1;34865:9:152;;34663:217::o;34885:495::-;35070:3;35108:6;35102:13;35124:66;35183:6;35178:3;35171:4;35163:6;35159:17;35124:66;:::i;:::-;35259:2;35255:15;;;;-1:-1:-1;;35251:53:152;35212:16;;;;35237:68;;;35332:2;35321:14;;35314:30;;;;35371:2;35360:14;;34885:495;-1:-1:-1;;34885:495:152:o","linkReferences":{},"immutableReferences":{"76432":[{"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\":{\"src/WorldWithContext.sol\":\"WorldWithContext\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":300},\"remappings\":[\":@eveworld/=node_modules/@eveworld/\",\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol\":{\"keccak256\":\"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44\",\"dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35\",\"dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6\"]},\"node_modules/@latticexyz/store/src/EncodedLengths.sol\":{\"keccak256\":\"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09\",\"dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7\",\"dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT\"]},\"node_modules/@latticexyz/store/src/Hook.sol\":{\"keccak256\":\"0xd016a2e1260f5a81ff9a8dfac58d7947e114414df8cce7302a2629908ea5f18e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0c558a6f3a5f540c0190fa6d642a094a185c5db1acfc2437c7dbde0340f00ac3\",\"dweb:/ipfs/QmViAHvR7U7HNfBiBZEMFiy1TTSHDFNiDzBfQSeLBShCky\"]},\"node_modules/@latticexyz/store/src/IERC165.sol\":{\"keccak256\":\"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2\",\"dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg\"]},\"node_modules/@latticexyz/store/src/IEncodedLengthsErrors.sol\":{\"keccak256\":\"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba\",\"dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1\"]},\"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol\":{\"keccak256\":\"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817\",\"dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8\"]},\"node_modules/@latticexyz/store/src/ISchemaErrors.sol\":{\"keccak256\":\"0x0ac3de36c9d0058a17fcd7f1a905132215fd16ea3ed3b5109de1de04ddd7c441\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f83fa2546009cfd16b3b3969dcec1d67c9d818d910177b885ba263b6a948c65d\",\"dweb:/ipfs/QmehywHdvFYBL9BTtoPsVVwJXsEA4Xjk8aPWoHw1R45KeY\"]},\"node_modules/@latticexyz/store/src/ISliceErrors.sol\":{\"keccak256\":\"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883\",\"dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0x42515d1410333a3573f78a460576271ef62c16edad5cf771ef6287b83ca1c706\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a58d03c4cf420df57d2b2e2e7932daad877e46e89561b46e1fa9f593a701bdc\",\"dweb:/ipfs/QmeFmKS7J1WqqBAgXkyxxx2fGA8JzuGszUmVsV2T6DYtsL\"]},\"node_modules/@latticexyz/store/src/IStoreErrors.sol\":{\"keccak256\":\"0x37e4d2f015dd4005ff9b3f711257c891027804bc268db1791984af4989951912\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a4a566ea96b69211f503707f69a9f9012d5873a3fd57b3f221549f46a7518df6\",\"dweb:/ipfs/QmVgcE3JufJr3iyeV6xqkvS4YtDcy6Eqyram2yzWUhwoB4\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08\",\"dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562\",\"dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p\"]},\"node_modules/@latticexyz/store/src/IStoreKernel.sol\":{\"keccak256\":\"0x37a23dcbabc5937a717f2fda636b6a97963ed4b5a96870a62dfb199a8b692f89\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac9741ea6daf21f39699be11afd919ae3ec07df24d948aaaa6549456fefd7fc0\",\"dweb:/ipfs/QmeiPQkZitM4Pc3i6L87thU71Fs1JVWAgMqXnSK8VrCq75\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xdcf28b3293d4d6c1fe2808a8918c1b2122e4e0e49f2793c79ebd2b9ae210ff7b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb3d9cc80f549ed0c5b768aea69fb1b3c364bd4f85d193a3040c411b594d94db\",\"dweb:/ipfs/QmYYdY5CjPHiW5ucXihTva1eHsCPNqBsvL6zYYafH3ap4p\"]},\"node_modules/@latticexyz/store/src/IStoreRegistration.sol\":{\"keccak256\":\"0x9e91a73f93cc9ebc00c265c83177f6a3f8a156749a9261202e2845e12aeaa96b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a39280d87d22dd0a959d8f55925cb092dba1fee2f11d3dd8e3ffabed45a9ab6a\",\"dweb:/ipfs/QmRMBFLJtT2KN43Xz9P3vUNWxXrP8rLTNBFw2P6Z7EGeaS\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890\",\"dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392\",\"dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x842b07f2ff9df2e1ecf9bf424b0e5a77e1471c983d674cf86b76c365178d6cc5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f4c2df8853b020aef1bb8615ac69d5512a9b5385b82c88e03b27dc521c9d007b\",\"dweb:/ipfs/QmWEDiJn69DvHsdrikrMWY8DERWPSeWwVYgPcunfq3yiT7\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x0d2a08030d21292ecbcc850d9111f3817d03f17cd5e02186894848a9152d79d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f30024c1613fb587aaba4c1dcb8e4e46ed765a2cebd5b63fbebd327d1bf13d3\",\"dweb:/ipfs/QmZzqSnPMYKDYwbFNvUFrvuazMUyQHzQ59w3A9x6juHAm7\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4\",\"dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7\"]},\"node_modules/@latticexyz/store/src/Storage.sol\":{\"keccak256\":\"0x7e735a4c7fa8b8a5fe2371d90801e3287ddb78efed69b31e1a76f0b7b153c4c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9e6db36bd52144b6feeecd91a58fc311127a3892fc96c4171db5b570fe9876ee\",\"dweb:/ipfs/QmS6LqnTZvpMc4eiz5JowBoNnh3RYemG6JHjqtYucT1rQi\"]},\"node_modules/@latticexyz/store/src/StoreCore.sol\":{\"keccak256\":\"0x9513dc38e5baadde0ba9b08320a324043b0e88a10702be5c3507da8c3d45e861\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://99c80c65a394763668e4aed69220fec6bb3ed847fb277ddd1ff1d4bfdf452da2\",\"dweb:/ipfs/QmRT2BATKtrYmixWMuWo9Cz8g8oscfLNSmvjxTyiTNA1pc\"]},\"node_modules/@latticexyz/store/src/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\"]},\"src/StaticSystemCall.sol\":{\"keccak256\":\"0xe23386362f6e95086efe6de963f68123623547842f4fa0ddb726d9a7b1582aaf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3b378a54feb0341a3287228418b3e0e3d9be395e19c470a11922c4735dc572d3\",\"dweb:/ipfs/QmVyRtDwHYcHwYFXqjbP9A2NytV1miCnwZgot1ban4vKJx\"]},\"src/StaticWorldContext.sol\":{\"keccak256\":\"0xf9309c0dcf15afc36326e7b3de920d0d1a85e51e0de7660835d29f5b697b3a85\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b979a3f610de445e37e6901bd29db04e4511b291a6f80ca2da2e81016d46cded\",\"dweb:/ipfs/QmeN3sLofQGKnPUdmZ2VPc5q5srHpNrh2kBjmppYRuuxrD\"]},\"src/WorldWithContext.sol\":{\"keccak256\":\"0x590e7b810c3fe102c4dc2c27ddf8999f2edb73c44ca0def3a4c0621fdc550980\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3979991b21d07e9ef82a819941eaf9757533641e98bbf7eba70a454ab888821\",\"dweb:/ipfs/QmUooLWX9qxiDECFp98WTiZ1wDfqmQCJXzaYrQRLhqx1X4\"]}},\"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/=node_modules/@eveworld/","@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":{"src/WorldWithContext.sol":"WorldWithContext"},"evmVersion":"cancun","libraries":{}},"sources":{"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol":{"keccak256":"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a","urls":["bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44","dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL"],"license":"MIT"},"node_modules/@latticexyz/store/src/Bytes.sol":{"keccak256":"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8","urls":["bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35","dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6"],"license":"MIT"},"node_modules/@latticexyz/store/src/EncodedLengths.sol":{"keccak256":"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774","urls":["bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09","dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK"],"license":"MIT"},"node_modules/@latticexyz/store/src/FieldLayout.sol":{"keccak256":"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658","urls":["bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7","dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT"],"license":"MIT"},"node_modules/@latticexyz/store/src/Hook.sol":{"keccak256":"0xd016a2e1260f5a81ff9a8dfac58d7947e114414df8cce7302a2629908ea5f18e","urls":["bzz-raw://0c558a6f3a5f540c0190fa6d642a094a185c5db1acfc2437c7dbde0340f00ac3","dweb:/ipfs/QmViAHvR7U7HNfBiBZEMFiy1TTSHDFNiDzBfQSeLBShCky"],"license":"MIT"},"node_modules/@latticexyz/store/src/IERC165.sol":{"keccak256":"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927","urls":["bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2","dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg"],"license":"MIT"},"node_modules/@latticexyz/store/src/IEncodedLengthsErrors.sol":{"keccak256":"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa","urls":["bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba","dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1"],"license":"MIT"},"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol":{"keccak256":"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53","urls":["bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817","dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8"],"license":"MIT"},"node_modules/@latticexyz/store/src/ISchemaErrors.sol":{"keccak256":"0x0ac3de36c9d0058a17fcd7f1a905132215fd16ea3ed3b5109de1de04ddd7c441","urls":["bzz-raw://f83fa2546009cfd16b3b3969dcec1d67c9d818d910177b885ba263b6a948c65d","dweb:/ipfs/QmehywHdvFYBL9BTtoPsVVwJXsEA4Xjk8aPWoHw1R45KeY"],"license":"MIT"},"node_modules/@latticexyz/store/src/ISliceErrors.sol":{"keccak256":"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c","urls":["bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883","dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStore.sol":{"keccak256":"0x42515d1410333a3573f78a460576271ef62c16edad5cf771ef6287b83ca1c706","urls":["bzz-raw://6a58d03c4cf420df57d2b2e2e7932daad877e46e89561b46e1fa9f593a701bdc","dweb:/ipfs/QmeFmKS7J1WqqBAgXkyxxx2fGA8JzuGszUmVsV2T6DYtsL"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreErrors.sol":{"keccak256":"0x37e4d2f015dd4005ff9b3f711257c891027804bc268db1791984af4989951912","urls":["bzz-raw://a4a566ea96b69211f503707f69a9f9012d5873a3fd57b3f221549f46a7518df6","dweb:/ipfs/QmVgcE3JufJr3iyeV6xqkvS4YtDcy6Eqyram2yzWUhwoB4"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreEvents.sol":{"keccak256":"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a","urls":["bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08","dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreHook.sol":{"keccak256":"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4","urls":["bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562","dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreKernel.sol":{"keccak256":"0x37a23dcbabc5937a717f2fda636b6a97963ed4b5a96870a62dfb199a8b692f89","urls":["bzz-raw://ac9741ea6daf21f39699be11afd919ae3ec07df24d948aaaa6549456fefd7fc0","dweb:/ipfs/QmeiPQkZitM4Pc3i6L87thU71Fs1JVWAgMqXnSK8VrCq75"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRead.sol":{"keccak256":"0xdcf28b3293d4d6c1fe2808a8918c1b2122e4e0e49f2793c79ebd2b9ae210ff7b","urls":["bzz-raw://bb3d9cc80f549ed0c5b768aea69fb1b3c364bd4f85d193a3040c411b594d94db","dweb:/ipfs/QmYYdY5CjPHiW5ucXihTva1eHsCPNqBsvL6zYYafH3ap4p"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRegistration.sol":{"keccak256":"0x9e91a73f93cc9ebc00c265c83177f6a3f8a156749a9261202e2845e12aeaa96b","urls":["bzz-raw://a39280d87d22dd0a959d8f55925cb092dba1fee2f11d3dd8e3ffabed45a9ab6a","dweb:/ipfs/QmRMBFLJtT2KN43Xz9P3vUNWxXrP8rLTNBFw2P6Z7EGeaS"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreWrite.sol":{"keccak256":"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba","urls":["bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890","dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ"],"license":"MIT"},"node_modules/@latticexyz/store/src/Memory.sol":{"keccak256":"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811","urls":["bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392","dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0x842b07f2ff9df2e1ecf9bf424b0e5a77e1471c983d674cf86b76c365178d6cc5","urls":["bzz-raw://f4c2df8853b020aef1bb8615ac69d5512a9b5385b82c88e03b27dc521c9d007b","dweb:/ipfs/QmWEDiJn69DvHsdrikrMWY8DERWPSeWwVYgPcunfq3yiT7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Schema.sol":{"keccak256":"0x0d2a08030d21292ecbcc850d9111f3817d03f17cd5e02186894848a9152d79d7","urls":["bzz-raw://3f30024c1613fb587aaba4c1dcb8e4e46ed765a2cebd5b63fbebd327d1bf13d3","dweb:/ipfs/QmZzqSnPMYKDYwbFNvUFrvuazMUyQHzQ59w3A9x6juHAm7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Slice.sol":{"keccak256":"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345","urls":["bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4","dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Storage.sol":{"keccak256":"0x7e735a4c7fa8b8a5fe2371d90801e3287ddb78efed69b31e1a76f0b7b153c4c3","urls":["bzz-raw://9e6db36bd52144b6feeecd91a58fc311127a3892fc96c4171db5b570fe9876ee","dweb:/ipfs/QmS6LqnTZvpMc4eiz5JowBoNnh3RYemG6JHjqtYucT1rQi"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreCore.sol":{"keccak256":"0x9513dc38e5baadde0ba9b08320a324043b0e88a10702be5c3507da8c3d45e861","urls":["bzz-raw://99c80c65a394763668e4aed69220fec6bb3ed847fb277ddd1ff1d4bfdf452da2","dweb:/ipfs/QmRT2BATKtrYmixWMuWo9Cz8g8oscfLNSmvjxTyiTNA1pc"],"license":"MIT"},"node_modules/@latticexyz/store/src/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"},"src/StaticSystemCall.sol":{"keccak256":"0xe23386362f6e95086efe6de963f68123623547842f4fa0ddb726d9a7b1582aaf","urls":["bzz-raw://3b378a54feb0341a3287228418b3e0e3d9be395e19c470a11922c4735dc572d3","dweb:/ipfs/QmVyRtDwHYcHwYFXqjbP9A2NytV1miCnwZgot1ban4vKJx"],"license":"MIT"},"src/StaticWorldContext.sol":{"keccak256":"0xf9309c0dcf15afc36326e7b3de920d0d1a85e51e0de7660835d29f5b697b3a85","urls":["bzz-raw://b979a3f610de445e37e6901bd29db04e4511b291a6f80ca2da2e81016d46cded","dweb:/ipfs/QmeN3sLofQGKnPUdmZ2VPc5q5srHpNrh2kBjmppYRuuxrD"],"license":"MIT"},"src/WorldWithContext.sol":{"keccak256":"0x590e7b810c3fe102c4dc2c27ddf8999f2edb73c44ca0def3a4c0621fdc550980","urls":["bzz-raw://b3979991b21d07e9ef82a819941eaf9757533641e98bbf7eba70a454ab888821","dweb:/ipfs/QmUooLWX9qxiDECFp98WTiZ1wDfqmQCJXzaYrQRLhqx1X4"],"license":"MIT"}},"version":1},"id":104}