@latticexyz/world 2.0.0-alpha.1.21 → 2.0.0-alpha.1.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/abi/AccessControl.sol/AccessControl.json +241 -241
  2. package/abi/AccessManagementSystem.sol/AccessManagementSystem.json +157 -157
  3. package/abi/AddressArray.sol/AddressArray.json +1124 -1124
  4. package/abi/ArrayLib.sol/ArrayLib.json +139 -139
  5. package/abi/Bool.sol/Bool.json +704 -704
  6. package/abi/Bytes.sol/Bytes.json +6 -6
  7. package/abi/Call.sol/Call.json +112 -112
  8. package/abi/Callbacks.sol/Callbacks.json +1100 -1100
  9. package/abi/CoreModule.sol/CoreModule.json +542 -542
  10. package/abi/CoreSystem.sol/CoreSystem.json +92 -92
  11. package/abi/DecodeSlice.sol/DecodeSlice.json +3891 -3891
  12. package/abi/EncodeArray.sol/EncodeArray.json +3344 -3344
  13. package/abi/FunctionSelectors.sol/FunctionSelectors.json +1678 -1678
  14. package/abi/Hooks.sol/Hooks.json +1100 -1100
  15. package/abi/IAccessManagementSystem.sol/IAccessManagementSystem.json +32 -32
  16. package/abi/IBaseWorld.sol/IBaseWorld.json +224 -99
  17. package/abi/ICoreSystem.sol/ICoreSystem.json +6 -6
  18. package/abi/IModule.sol/IModule.json +28 -28
  19. package/abi/IModuleInstallationSystem.sol/IModuleInstallationSystem.json +40 -40
  20. package/abi/IStore.sol/IStore.json +551 -349
  21. package/abi/IStore.sol/IStoreData.json +551 -349
  22. package/abi/IStore.sol/IStoreHook.json +495 -349
  23. package/abi/IStore.sol/IStoreRead.json +495 -349
  24. package/abi/IStore.sol/IStoreRegistration.json +495 -349
  25. package/abi/IStore.sol/IStoreWrite.json +551 -349
  26. package/abi/IStoreRegistrationSystem.sol/IStoreRegistrationSystem.json +80 -80
  27. package/abi/ISystemHook.sol/ISystemHook.json +19 -19
  28. package/abi/IUniqueEntitySystem.sol/IUniqueEntitySystem.json +13 -13
  29. package/abi/IWorldKernel.sol/IWorldCall.json +455 -276
  30. package/abi/IWorldKernel.sol/IWorldData.json +524 -276
  31. package/abi/IWorldKernel.sol/IWorldKernel.json +524 -276
  32. package/abi/IWorldKernel.sol/IWorldModuleInstallation.json +455 -276
  33. package/abi/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.json +198 -198
  34. package/abi/InstalledModules.sol/InstalledModules.json +1351 -1351
  35. package/abi/KeysWithValue.sol/KeysWithValue.json +1124 -1124
  36. package/abi/KeysWithValueHook.sol/KeysWithValueHook.json +416 -416
  37. package/abi/KeysWithValueModule.sol/KeysWithValueModule.json +293 -293
  38. package/abi/Memory.sol/Memory.json +131 -131
  39. package/abi/Mixed.sol/Mixed.json +2781 -2781
  40. package/abi/ModuleInstallationSystem.sol/ModuleInstallationSystem.json +138 -138
  41. package/abi/NamespaceOwner.sol/NamespaceOwner.json +782 -782
  42. package/abi/PackedCounter.sol/PackedCounterLib.json +665 -665
  43. package/abi/ResourceAccess.sol/ResourceAccess.json +926 -926
  44. package/abi/ResourceSelector.sol/ResourceSelector.json +253 -253
  45. package/abi/ResourceType.sol/ResourceType.json +831 -831
  46. package/abi/Schema.sol/SchemaLib.json +1469 -1469
  47. package/abi/SchemaType.sol/SchemaType.json +315 -315
  48. package/abi/Slice.sol/SliceInstance.json +429 -429
  49. package/abi/Slice.sol/SliceLib.json +429 -429
  50. package/abi/Storage.sol/Storage.json +1024 -1061
  51. package/abi/StoreCore.sol/StoreCore.json +10434 -7652
  52. package/abi/StoreCore.sol/StoreCoreExtended.json +10434 -7652
  53. package/abi/StoreCore.sol/StoreCoreInternal.json +10434 -7652
  54. package/abi/StoreMetadata.sol/StoreMetadata.json +2116 -2116
  55. package/abi/StoreRead.sol/StoreRead.json +247 -247
  56. package/abi/StoreRegistrationSystem.sol/StoreRegistrationSystem.json +339 -339
  57. package/abi/StoreSwitch.sol/StoreSwitch.json +1814 -1359
  58. package/abi/System.sol/System.json +31 -31
  59. package/abi/SystemRegistry.sol/SystemRegistry.json +794 -794
  60. package/abi/Systems.sol/Systems.json +1412 -1412
  61. package/abi/TableId.sol/TableId.json +27 -27
  62. package/abi/Tables.sol/Tables.json +92 -92
  63. package/abi/TightCoder.sol/TightCoder.json +275 -275
  64. package/abi/Types.sol/Types.json +8 -8
  65. package/abi/UniqueEntity.sol/UniqueEntity.json +683 -683
  66. package/abi/UniqueEntityModule.sol/UniqueEntityModule.json +232 -232
  67. package/abi/UniqueEntitySystem.sol/UniqueEntitySystem.json +114 -114
  68. package/abi/Utils.sol/Utils.json +67 -67
  69. package/abi/Vector2.sol/Vector2.json +1473 -1473
  70. package/abi/World.sol/World.json +2426 -1491
  71. package/abi/WorldContext.sol/WorldContext.json +65 -65
  72. package/abi/WorldRegistrationSystem.sol/WorldRegistrationSystem.json +1140 -1140
  73. package/abi/console.sol/console.json +11417 -11417
  74. package/abi/constants.sol/constants.json +34 -34
  75. package/abi/getKeysWithValue.sol/getKeysWithValue.json +129 -129
  76. package/abi/getTargetTableSelector.sol/getTargetTableSelector.json +75 -75
  77. package/abi/getUniqueEntity.sol/getUniqueEntity.json +88 -88
  78. package/abi/interfaces/IErrors.sol/IErrors.json +57 -57
  79. package/abi/src/Bytes.sol/Bytes.json +1225 -1225
  80. package/abi/src/IStore.sol/IStore.json +727 -525
  81. package/abi/src/IStore.sol/IStoreData.json +727 -525
  82. package/abi/src/IStore.sol/IStoreHook.json +671 -525
  83. package/abi/src/IStore.sol/IStoreRead.json +671 -525
  84. package/abi/src/IStore.sol/IStoreRegistration.json +671 -525
  85. package/abi/src/IStore.sol/IStoreWrite.json +727 -525
  86. package/abi/src/Memory.sol/Memory.json +131 -131
  87. package/abi/src/PackedCounter.sol/PackedCounterLib.json +683 -683
  88. package/abi/src/Schema.sol/SchemaLib.json +1493 -1493
  89. package/abi/src/Slice.sol/SliceInstance.json +429 -429
  90. package/abi/src/Slice.sol/SliceLib.json +429 -429
  91. package/abi/src/StoreCore.sol/StoreCore.json +12500 -9718
  92. package/abi/src/StoreCore.sol/StoreCoreExtended.json +12500 -9718
  93. package/abi/src/StoreCore.sol/StoreCoreInternal.json +12500 -9718
  94. package/abi/src/StoreSwitch.sol/StoreSwitch.json +1822 -1367
  95. package/abi/tightcoder/EncodeArray.sol/EncodeArray.json +3344 -3344
  96. package/package.json +6 -6
  97. package/src/World.sol +32 -0
  98. package/src/interfaces/IWorldKernel.sol +12 -0
  99. package/types/ethers-contracts/IBaseWorld.ts +116 -0
  100. package/types/ethers-contracts/IStore.sol/IStore.ts +55 -0
  101. package/types/ethers-contracts/IStore.sol/IStoreData.ts +55 -0
  102. package/types/ethers-contracts/IStore.sol/IStoreWrite.ts +55 -0
  103. package/types/ethers-contracts/IWorldKernel.sol/IWorldData.ts +61 -0
  104. package/types/ethers-contracts/IWorldKernel.sol/IWorldKernel.ts +61 -0
  105. package/types/ethers-contracts/World.ts +116 -0
  106. package/types/ethers-contracts/factories/AccessManagementSystem__factory.ts +1 -1
  107. package/types/ethers-contracts/factories/CoreModule__factory.ts +1 -1
  108. package/types/ethers-contracts/factories/CoreSystem__factory.ts +1 -1
  109. package/types/ethers-contracts/factories/IBaseWorld__factory.ts +61 -0
  110. package/types/ethers-contracts/factories/IStore.sol/IStoreData__factory.ts +28 -0
  111. package/types/ethers-contracts/factories/IStore.sol/IStoreWrite__factory.ts +28 -0
  112. package/types/ethers-contracts/factories/IStore.sol/IStore__factory.ts +28 -0
  113. package/types/ethers-contracts/factories/IWorldKernel.sol/IWorldData__factory.ts +33 -0
  114. package/types/ethers-contracts/factories/IWorldKernel.sol/IWorldKernel__factory.ts +33 -0
  115. package/types/ethers-contracts/factories/KeysWithValueHook__factory.ts +1 -1
  116. package/types/ethers-contracts/factories/KeysWithValueModule__factory.ts +1 -1
  117. package/types/ethers-contracts/factories/ModuleInstallationSystem__factory.ts +1 -1
  118. package/types/ethers-contracts/factories/StoreCore__factory.ts +1 -1
  119. package/types/ethers-contracts/factories/StoreRead__factory.ts +1 -1
  120. package/types/ethers-contracts/factories/StoreRegistrationSystem__factory.ts +1 -1
  121. package/types/ethers-contracts/factories/StoreSwitch__factory.ts +1 -1
  122. package/types/ethers-contracts/factories/UniqueEntityModule__factory.ts +1 -1
  123. package/types/ethers-contracts/factories/UniqueEntitySystem__factory.ts +1 -1
  124. package/types/ethers-contracts/factories/WorldRegistrationSystem__factory.ts +1 -1
  125. package/types/ethers-contracts/factories/World__factory.ts +62 -1
  126. package/types/ethers-contracts/factories/src/IStore.sol/IStoreData__factory.ts +28 -0
  127. package/types/ethers-contracts/factories/src/IStore.sol/IStoreWrite__factory.ts +28 -0
  128. package/types/ethers-contracts/factories/src/IStore.sol/IStore__factory.ts +28 -0
  129. package/types/ethers-contracts/factories/src/StoreCore__factory.ts +1 -1
  130. package/types/ethers-contracts/factories/src/StoreSwitch__factory.ts +1 -1
  131. package/types/ethers-contracts/src/IStore.sol/IStore.ts +55 -0
  132. package/types/ethers-contracts/src/IStore.sol/IStoreData.ts +55 -0
  133. package/types/ethers-contracts/src/IStore.sol/IStoreWrite.ts +55 -0
@@ -117,20 +117,20 @@
117
117
  }
118
118
  ],
119
119
  "bytecode": {
120
- "object": "0x608060405234801561001057600080fd5b50611b1a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80631e42269e1461003b578063f227e65314610050575b600080fd5b61004e610049366004611661565b610063565b005b61004e61005e366004611661565b610089565b600061007784846100726100a6565b6100d8565b9050610083818361019f565b50505050565b600061009884846100726100a6565b90506100838183600161026b565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec36013560601c806100d55750335b90565b608082901c6fffffffffffffffffffffffffffffffff1984161773ffffffffffffffffffffffffffffffffffffffff8216301480159061014c57508173ffffffffffffffffffffffffffffffffffffffff166101338561035b565b73ffffffffffffffffffffffffffffffffffffffff1614155b156101985761015a8161041d565b826040517fe64c034800000000000000000000000000000000000000000000000000000000815260040161018f929190611719565b60405180910390fd5b9392505050565b60408051600280825260608201835260009260208301908036833701905050905082816000815181106101d4576101d4611767565b6020026020010181815250508160601b6bffffffffffffffffffffffff19168160018151811061020657610206611767565b602090810291909101810191909152604080516000818401527f5265736f7572636541636365737300000000000000000000000000000000000060308201528151808203909301835281019052610266906102609061177d565b8261050c565b505050565b60408051600280825260608201835260009260208301908036833701905050905083816000815181106102a0576102a0611767565b6020026020010181815250508260601b6bffffffffffffffffffffffff1916816001815181106102d2576102d2611767565b602090810291909101810191909152604080516000818401527f5265736f75726365416363657373000000000000000000000000000000000000603082015281518082039093018352810190526100839061032c9061177d565b8260008560405160200161034791151560f81b815260010190565b60405160208183030381529060405261059b565b60408051600180825281830190925260009182919060208083019080368337019050509050826fffffffffffffffffffffffffffffffff1916816000815181106103a7576103a7611767565b6020908102919091018101919091526040805160009281018390527f4e616d6573706163654f776e6572000000000000000000000000000000000000603082015261040e91015b6040516020818303038152906040526104069061177d565b836000610633565b6020015160601c949350505050565b606081608081901b6fffffffffffffffffffffffffffffffff198216156104445781610466565b7f524f4f545f4e414d4553504143450000000000000000000000000000000000005b6fffffffffffffffffffffffffffffffff1982161561048557816104a7565b7f524f4f545f4e414d4500000000000000000000000000000000000000000000005b6040516fffffffffffffffffffffffffffffffff1992831660208201527f2f0000000000000000000000000000000000000000000000000000000000000060308201529116603182015260410160405160208183030381529060405292505050919050565b6105146106d9565b15610527576105238282610757565b5050565b6040517f505a181d000000000000000000000000000000000000000000000000000000008152339063505a181d9061056590859085906004016117df565b600060405180830381600087803b15801561057f57600080fd5b505af1158015610593573d6000803e3d6000fd5b505050505050565b6105a36106d9565b156105b9576105b4848484846108ed565b610083565b6040517f114a7266000000000000000000000000000000000000000000000000000000008152339063114a7266906105fb9087908790879087906004016117f8565b600060405180830381600087803b15801561061557600080fd5b505af1158015610629573d6000803e3d6000fd5b5050505050505050565b606061063d6106d9565b156106545761064d848484610ae1565b9050610198565b6040517fd03edb8c000000000000000000000000000000000000000000000000000000008152339063d03edb8c9061069490879087908790600401611837565b600060405180830381865afa1580156106b1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261064d9190810190611863565b6000303b8082036106ec57600191505090565b3073ffffffffffffffffffffffffffffffffffffffff1663a5c2f0076040518163ffffffff1660e01b815260040160006040518083038186803b15801561073257600080fd5b505afa925050508015610743575060015b61074f57600091505090565b600191505090565b600061076283610b05565b90507f2cc8610b80ef19409ae51ecbdd9c137960fb22ae9ef2d817d36ec1b685d68ecd83836040516107959291906117df565b60405180910390a160006107a884610b5a565b905060005b81518110156108555760008282815181106107ca576107ca611767565b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff1663b51fef6c87876040518363ffffffff1660e01b815260040161080f9291906117df565b600060405180830381600087803b15801561082957600080fd5b505af115801561083d573d6000803e3d6000fd5b5050505050808061084d9061191b565b9150506107ad565b5060006108628585610c21565b90506108bc8160006108748660f01c90565b67ffffffffffffffff81111561088c5761088c611751565b6040519080825280601f01601f1916602001820160405280156108b6576020820181803683370190505b50610c77565b6108c583610c8c565b60ff166000036108d6575050505050565b60006108e28686610c9d565b600081559050610593565b60006108f885610b05565b90507fd01f9f1368f831528fc9fe6442366b2b7d957fbfff3bcf7c24d9ab5fe51f8c468585858560405161092f94939291906117f8565b60405180910390a1600061094286610b5a565b905060005b81518110156109f357600082828151811061096457610964611767565b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff1663469b7ee2898989896040518563ffffffff1660e01b81526004016109ad94939291906117f8565b600060405180830381600087803b1580156109c757600080fd5b505af11580156109db573d6000803e3d6000fd5b505050505080806109eb9061191b565b915050610947565b506109fd82610cd4565b60ff168460ff161015610a1c57610a178686848787610ce0565b610a29565b610a298686848787610d8b565b60005b8151811015610ad8576000828281518110610a4957610a49611767565b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff16636b3d7d5f898989896040518563ffffffff1660e01b8152600401610a9294939291906117f8565b600060405180830381600087803b158015610aac57600080fd5b505af1158015610ac0573d6000803e3d6000fd5b50505050508080610ad09061191b565b915050610a2c565b50505050505050565b60606000610aee85610b05565b9050610afc85858584610dc8565b95945050505050565b6000610b1082610dff565b905080610b555781610b2183610ec4565b6040517fd623a70d00000000000000000000000000000000000000000000000000000000815260040161018f929190611935565b919050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110610b9457610b94611767565b602090810291909101810191909152604080517f6d756473746f7265000000000000000000000000000000000000000000000000928101929092527f486f6f6b730000000000000000000000000000000000000000000000000000006030830152600091610c0291016103ee565b9050610c19610c148260008451610eef565b610f7f565b949350505050565b60007f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d98383604051602001610c589392919061194e565b60408051601f1981840301815291905280516020909101209392505050565b60006020820190506100838484838551610f90565b6000601882901b5b60f81c92915050565b60007f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d98383604051602001610c589392919061196d565b6000601082901b610c94565b6000610cef8460ff851661104e565b90508151610d0d8260c5811115610d0857610d086119cd565b61107a565b14610d6457610d278160c5811115610d0857610d086119cd565b82516040517f521b3d330000000000000000000000000000000000000000000000000000000081526004810192909252602482015260440161018f565b6000610d708787610c21565b90506000610d7e868661112b565b9050610629828286610c77565b6000610d9684610cd4565b610da090846119e3565b9050610daf868683855161117f565b6000610dbc8787846111b1565b9050610ad8818461120a565b6060610dd382610cd4565b60ff168360ff161015610df357610dec85858585611216565b9050610c19565b610dec85858585611276565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610e3857610e38611767565b602090810291909101810191909152604080517f6d756473746f7265000000000000000000000000000000000000000000000000818401527f736368656d61000000000000000000000000000000000000000000000000000060308201528151808203909301835281019052600090610eba90610eb49061177d565b83610c21565b9050610c19815490565b606081604051602001610ed991815260200190565b6040516020818303038152906040529050919050565b6000818311158015610f02575083518211155b610f3e578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161018f93929190611a06565b60208401610f4c8482611a2b565b90506000610f5a8585611a43565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b6060600061019883601460006112cf565b602083048401935060208381610fa857610fa8611a5a565b06925082156110015760208390036000600019600884021c1990506008850281811c91508451811c9050811987541682821617875550818311610fec575050610083565b610ff7600187611a2b565b9550509182019190035b6020811061102a5781518455611018600185611a2b565b935060209190910190601f1901611001565b8015610083576000600019600883021c198554845182169119161785555050505050565b60006110668361105f846004611a2b565b6008021b90565b60f81c60c5811115610198576101986119cd565b6000808260c581111561108f5761108f6119cd565b60ff16905060208110156110a857610198816001611a2b565b60408110156110c85760206110be826001611a2b565b6101989190611a43565b60608110156110de5760406110be826001611a2b565b60608360c58111156110f2576110f26119cd565b036111005750600192915050565b60618360c5811115611114576111146119cd565b036111225750601492915050565b50600092915050565b600080805b8360ff1681101561117757611159611148868361104e565b60c5811115610d0857610d086119cd565b6111639083611a2b565b91508061116f8161191b565b915050611130565b509392505050565b600061118b8585610c9d565b90506000611197825490565b90506111a78160ff861685611412565b8083559050610593565b60007f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d98484846040516020016111ea9493929190611a70565b60408051601f198184030181529190528051602090910120949350505050565b61052382600083610c77565b606060006112278360ff861661104e565b905060006112408260c5811115610d0857610d086119cd565b9050600061124e8888610c21565b9050600061125c868861112b565b90506112698284836114e6565b9998505050505050505050565b6060600061128383610cd4565b61128d90856119e3565b9050600061129c8787846111b1565b905060006112b78360ff166112b18a8a61153e565b9061154b565b90506112c3828261157d565b98975050505050505050565b606060006112dd8560801c90565b90506fffffffffffffffffffffffffffffffff851660008461131557611304866008611aa3565b61131090610100611a43565b611318565b60005b9050600086838161132b5761132b611a5a565b0490506113388784611ac2565b156113c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f756e7061636b546f41727261793a207061636b65644c656e677468206d75737460448201527f2062652061206d756c7469706c65206f6620656c656d656e7453697a65000000606482015260840161018f565b602080820201604051955080860160405250808552600060208601855b83831015611404578051851c82526001929092019160209091019089016113e2565b505050505050509392505050565b600083816114208260e01c90565b90506000611431878760ff1661154b565b9050808510611455576114448186611a43565b61144e9083611a2b565b915061146c565b61145f8582611a43565b6114699083611a43565b91505b6000611479876002611aa3565b611484906004611a2b565b90507bffffffffffffffffffffffffffffffffffffffffffffffffffffffff841660e084901b1793507fffff0000000000000000000000000000000000000000000000000000000000006008820290811c19851660f088901b90911c176112c3565b60608267ffffffffffffffff81111561150157611501611751565b6040519080825280601f01601f19166020018201604052801561152b576020820181803683370190505b509050602081016111778585858461158b565b600080610eba8484610c9d565b600080611559836002611aa3565b611564906004611a2b565b905061157284826008021b90565b60f01c949350505050565b6060610198838360006114e6565b6020820484019350602082816115a3576115a3611a5a565b06915081156115f45760208290036000600019600883021c1990508554600885021b8119845116828216178452508185116115df575050610083565b6115ea600187611a2b565b9550509283900392015b6020831061161c578354815261160b600185611a2b565b9350601f19909201916020016115f4565b8215610083576000600019600885021c198251865482169119161782525050505050565b80356fffffffffffffffffffffffffffffffff1981168114610b5557600080fd5b60008060006060848603121561167657600080fd5b61167f84611640565b925061168d60208501611640565b9150604084013573ffffffffffffffffffffffffffffffffffffffff811681146116b657600080fd5b809150509250925092565b60005b838110156116dc5781810151838201526020016116c4565b838111156100835750506000910152565b600081518084526117058160208601602086016116c1565b601f01601f19169290920160200192915050565b60408152600061172c60408301856116ed565b905073ffffffffffffffffffffffffffffffffffffffff831660208301529392505050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b8051602080830151919081101561179e576000198160200360031b1b821691505b50919050565b600081518084526020808501945080840160005b838110156117d4578151875295820195908201906001016117b8565b509495945050505050565b828152604060208201526000610c1960408301846117a4565b84815260806020820152600061181160808301866117a4565b60ff85166040840152828103606084015261182c81856116ed565b979650505050505050565b83815260606020820152600061185060608301856117a4565b905060ff83166040830152949350505050565b60006020828403121561187557600080fd5b815167ffffffffffffffff8082111561188d57600080fd5b818401915084601f8301126118a157600080fd5b8151818111156118b3576118b3611751565b604051601f8201601f19908116603f011681019083821181831017156118db576118db611751565b816040528281528760208487010111156118f457600080fd5b61182c8360208301602088016116c1565b634e487b7160e01b600052601160045260246000fd5b6000600019820361192e5761192e611905565b5060010190565b828152604060208201526000610c1960408301846116ed565b838152826020820152606060408201526000610afc60608301846117a4565b83815282602082015260806040820152600061198c60808301846117a4565b8281036060840152600681527f6c656e6774680000000000000000000000000000000000000000000000000000602082015260408101915050949350505050565b634e487b7160e01b600052602160045260246000fd5b600060ff821660ff8416808210156119fd576119fd611905565b90039392505050565b606081526000611a1960608301866116ed565b60208301949094525060400152919050565b60008219821115611a3e57611a3e611905565b500190565b600082821015611a5557611a55611905565b500390565b634e487b7160e01b600052601260045260246000fd5b848152836020820152608060408201526000611a8f60808301856117a4565b905060ff8316606083015295945050505050565b6000816000190483118215151615611abd57611abd611905565b500290565b600082611adf57634e487b7160e01b600052601260045260246000fd5b50069056fea26469706673582212207df8f5ebcaf95dbfc215c58626ca57daa6f50b685729c39a1251a6ae909051c864736f6c634300080d0033",
120
+ "object": "0x608060405234801561001057600080fd5b50611b1a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80631e42269e1461003b578063f227e65314610050575b600080fd5b61004e610049366004611661565b610063565b005b61004e61005e366004611661565b610089565b600061007784846100726100a6565b6100d8565b9050610083818361019f565b50505050565b600061009884846100726100a6565b90506100838183600161026b565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec36013560601c806100d55750335b90565b608082901c6fffffffffffffffffffffffffffffffff1984161773ffffffffffffffffffffffffffffffffffffffff8216301480159061014c57508173ffffffffffffffffffffffffffffffffffffffff166101338561035b565b73ffffffffffffffffffffffffffffffffffffffff1614155b156101985761015a8161041d565b826040517fe64c034800000000000000000000000000000000000000000000000000000000815260040161018f929190611719565b60405180910390fd5b9392505050565b60408051600280825260608201835260009260208301908036833701905050905082816000815181106101d4576101d4611767565b6020026020010181815250508160601b6bffffffffffffffffffffffff19168160018151811061020657610206611767565b602090810291909101810191909152604080516000818401527f5265736f7572636541636365737300000000000000000000000000000000000060308201528151808203909301835281019052610266906102609061177d565b8261050c565b505050565b60408051600280825260608201835260009260208301908036833701905050905083816000815181106102a0576102a0611767565b6020026020010181815250508260601b6bffffffffffffffffffffffff1916816001815181106102d2576102d2611767565b602090810291909101810191909152604080516000818401527f5265736f75726365416363657373000000000000000000000000000000000000603082015281518082039093018352810190526100839061032c9061177d565b8260008560405160200161034791151560f81b815260010190565b60405160208183030381529060405261059b565b60408051600180825281830190925260009182919060208083019080368337019050509050826fffffffffffffffffffffffffffffffff1916816000815181106103a7576103a7611767565b6020908102919091018101919091526040805160009281018390527f4e616d6573706163654f776e6572000000000000000000000000000000000000603082015261040e91015b6040516020818303038152906040526104069061177d565b836000610633565b6020015160601c949350505050565b606081608081901b6fffffffffffffffffffffffffffffffff198216156104445781610466565b7f524f4f545f4e414d4553504143450000000000000000000000000000000000005b6fffffffffffffffffffffffffffffffff1982161561048557816104a7565b7f524f4f545f4e414d4500000000000000000000000000000000000000000000005b6040516fffffffffffffffffffffffffffffffff1992831660208201527f2f0000000000000000000000000000000000000000000000000000000000000060308201529116603182015260410160405160208183030381529060405292505050919050565b6105146106d9565b15610527576105238282610757565b5050565b6040517f505a181d000000000000000000000000000000000000000000000000000000008152339063505a181d9061056590859085906004016117df565b600060405180830381600087803b15801561057f57600080fd5b505af1158015610593573d6000803e3d6000fd5b505050505050565b6105a36106d9565b156105b9576105b4848484846108ed565b610083565b6040517f114a7266000000000000000000000000000000000000000000000000000000008152339063114a7266906105fb9087908790879087906004016117f8565b600060405180830381600087803b15801561061557600080fd5b505af1158015610629573d6000803e3d6000fd5b5050505050505050565b606061063d6106d9565b156106545761064d848484610ae1565b9050610198565b6040517fd03edb8c000000000000000000000000000000000000000000000000000000008152339063d03edb8c9061069490879087908790600401611837565b600060405180830381865afa1580156106b1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261064d9190810190611863565b6000303b8082036106ec57600191505090565b3073ffffffffffffffffffffffffffffffffffffffff1663a5c2f0076040518163ffffffff1660e01b815260040160006040518083038186803b15801561073257600080fd5b505afa925050508015610743575060015b61074f57600091505090565b600191505090565b600061076283610b05565b90507f2cc8610b80ef19409ae51ecbdd9c137960fb22ae9ef2d817d36ec1b685d68ecd83836040516107959291906117df565b60405180910390a160006107a884610b5a565b905060005b81518110156108555760008282815181106107ca576107ca611767565b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff1663b51fef6c87876040518363ffffffff1660e01b815260040161080f9291906117df565b600060405180830381600087803b15801561082957600080fd5b505af115801561083d573d6000803e3d6000fd5b5050505050808061084d9061191b565b9150506107ad565b5060006108628585610c21565b90506108bc8160006108748660f01c90565b67ffffffffffffffff81111561088c5761088c611751565b6040519080825280601f01601f1916602001820160405280156108b6576020820181803683370190505b50610c77565b6108c583610c8c565b60ff166000036108d6575050505050565b60006108e28686610c9d565b600081559050610593565b60006108f885610b05565b90507fd01f9f1368f831528fc9fe6442366b2b7d957fbfff3bcf7c24d9ab5fe51f8c468585858560405161092f94939291906117f8565b60405180910390a1600061094286610b5a565b905060005b81518110156109f357600082828151811061096457610964611767565b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff1663469b7ee2898989896040518563ffffffff1660e01b81526004016109ad94939291906117f8565b600060405180830381600087803b1580156109c757600080fd5b505af11580156109db573d6000803e3d6000fd5b505050505080806109eb9061191b565b915050610947565b506109fd82610cd4565b60ff168460ff161015610a1c57610a178686848787610ce0565b610a29565b610a298686848787610d8b565b60005b8151811015610ad8576000828281518110610a4957610a49611767565b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff16636b3d7d5f898989896040518563ffffffff1660e01b8152600401610a9294939291906117f8565b600060405180830381600087803b158015610aac57600080fd5b505af1158015610ac0573d6000803e3d6000fd5b50505050508080610ad09061191b565b915050610a2c565b50505050505050565b60606000610aee85610b05565b9050610afc85858584610dc8565b95945050505050565b6000610b1082610dff565b905080610b555781610b2183610ec4565b6040517fd623a70d00000000000000000000000000000000000000000000000000000000815260040161018f929190611935565b919050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110610b9457610b94611767565b602090810291909101810191909152604080517f6d756473746f7265000000000000000000000000000000000000000000000000928101929092527f486f6f6b730000000000000000000000000000000000000000000000000000006030830152600091610c0291016103ee565b9050610c19610c148260008451610eef565b610f7f565b949350505050565b60007f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d98383604051602001610c589392919061194e565b60408051601f1981840301815291905280516020909101209392505050565b60006020820190506100838484838551610f90565b6000601882901b5b60f81c92915050565b60007f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d98383604051602001610c589392919061196d565b6000601082901b610c94565b6000610cef8460ff851661104e565b90508151610d0d8260c5811115610d0857610d086119cd565b61107a565b14610d6457610d278160c5811115610d0857610d086119cd565b82516040517f521b3d330000000000000000000000000000000000000000000000000000000081526004810192909252602482015260440161018f565b6000610d708787610c21565b90506000610d7e868661112b565b9050610629828286610c77565b6000610d9684610cd4565b610da090846119e3565b9050610daf868683855161117f565b6000610dbc8787846111b1565b9050610ad8818461120a565b6060610dd382610cd4565b60ff168360ff161015610df357610dec85858585611216565b9050610c19565b610dec85858585611276565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610e3857610e38611767565b602090810291909101810191909152604080517f6d756473746f7265000000000000000000000000000000000000000000000000818401527f736368656d61000000000000000000000000000000000000000000000000000060308201528151808203909301835281019052600090610eba90610eb49061177d565b83610c21565b9050610c19815490565b606081604051602001610ed991815260200190565b6040516020818303038152906040529050919050565b6000818311158015610f02575083518211155b610f3e578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161018f93929190611a06565b60208401610f4c8482611a2b565b90506000610f5a8585611a43565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b6060600061019883601460006112cf565b602083048401935060208381610fa857610fa8611a5a565b06925082156110015760208390036000600019600884021c1990506008850281811c91508451811c9050811987541682821617875550818311610fec575050610083565b610ff7600187611a2b565b9550509182019190035b6020811061102a5781518455611018600185611a2b565b935060209190910190601f1901611001565b8015610083576000600019600883021c198554845182169119161785555050505050565b60006110668361105f846004611a2b565b6008021b90565b60f81c60c5811115610198576101986119cd565b6000808260c581111561108f5761108f6119cd565b60ff16905060208110156110a857610198816001611a2b565b60408110156110c85760206110be826001611a2b565b6101989190611a43565b60608110156110de5760406110be826001611a2b565b60608360c58111156110f2576110f26119cd565b036111005750600192915050565b60618360c5811115611114576111146119cd565b036111225750601492915050565b50600092915050565b600080805b8360ff1681101561117757611159611148868361104e565b60c5811115610d0857610d086119cd565b6111639083611a2b565b91508061116f8161191b565b915050611130565b509392505050565b600061118b8585610c9d565b90506000611197825490565b90506111a78160ff861685611412565b8083559050610593565b60007f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d98484846040516020016111ea9493929190611a70565b60408051601f198184030181529190528051602090910120949350505050565b61052382600083610c77565b606060006112278360ff861661104e565b905060006112408260c5811115610d0857610d086119cd565b9050600061124e8888610c21565b9050600061125c868861112b565b90506112698284836114e6565b9998505050505050505050565b6060600061128383610cd4565b61128d90856119e3565b9050600061129c8787846111b1565b905060006112b78360ff166112b18a8a61153e565b9061154b565b90506112c3828261157d565b98975050505050505050565b606060006112dd8560801c90565b90506fffffffffffffffffffffffffffffffff851660008461131557611304866008611aa3565b61131090610100611a43565b611318565b60005b9050600086838161132b5761132b611a5a565b0490506113388784611ac2565b156113c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f756e7061636b546f41727261793a207061636b65644c656e677468206d75737460448201527f2062652061206d756c7469706c65206f6620656c656d656e7453697a65000000606482015260840161018f565b602080820201604051955080860160405250808552600060208601855b83831015611404578051851c82526001929092019160209091019089016113e2565b505050505050509392505050565b600083816114208260e01c90565b90506000611431878760ff1661154b565b9050808510611455576114448186611a43565b61144e9083611a2b565b915061146c565b61145f8582611a43565b6114699083611a43565b91505b6000611479876002611aa3565b611484906004611a2b565b90507bffffffffffffffffffffffffffffffffffffffffffffffffffffffff841660e084901b1793507fffff0000000000000000000000000000000000000000000000000000000000006008820290811c19851660f088901b90911c176112c3565b60608267ffffffffffffffff81111561150157611501611751565b6040519080825280601f01601f19166020018201604052801561152b576020820181803683370190505b509050602081016111778585858461158b565b600080610eba8484610c9d565b600080611559836002611aa3565b611564906004611a2b565b905061157284826008021b90565b60f01c949350505050565b6060610198838360006114e6565b6020820484019350602082816115a3576115a3611a5a565b06915081156115f45760208290036000600019600883021c1990508554600885021b8119845116828216178452508185116115df575050610083565b6115ea600187611a2b565b9550509283900392015b6020831061161c578354815261160b600185611a2b565b9350601f19909201916020016115f4565b8215610083576000600019600885021c198251865482169119161782525050505050565b80356fffffffffffffffffffffffffffffffff1981168114610b5557600080fd5b60008060006060848603121561167657600080fd5b61167f84611640565b925061168d60208501611640565b9150604084013573ffffffffffffffffffffffffffffffffffffffff811681146116b657600080fd5b809150509250925092565b60005b838110156116dc5781810151838201526020016116c4565b838111156100835750506000910152565b600081518084526117058160208601602086016116c1565b601f01601f19169290920160200192915050565b60408152600061172c60408301856116ed565b905073ffffffffffffffffffffffffffffffffffffffff831660208301529392505050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b8051602080830151919081101561179e576000198160200360031b1b821691505b50919050565b600081518084526020808501945080840160005b838110156117d4578151875295820195908201906001016117b8565b509495945050505050565b828152604060208201526000610c1960408301846117a4565b84815260806020820152600061181160808301866117a4565b60ff85166040840152828103606084015261182c81856116ed565b979650505050505050565b83815260606020820152600061185060608301856117a4565b905060ff83166040830152949350505050565b60006020828403121561187557600080fd5b815167ffffffffffffffff8082111561188d57600080fd5b818401915084601f8301126118a157600080fd5b8151818111156118b3576118b3611751565b604051601f8201601f19908116603f011681019083821181831017156118db576118db611751565b816040528281528760208487010111156118f457600080fd5b61182c8360208301602088016116c1565b634e487b7160e01b600052601160045260246000fd5b6000600019820361192e5761192e611905565b5060010190565b828152604060208201526000610c1960408301846116ed565b838152826020820152606060408201526000610afc60608301846117a4565b83815282602082015260806040820152600061198c60808301846117a4565b8281036060840152600681527f6c656e6774680000000000000000000000000000000000000000000000000000602082015260408101915050949350505050565b634e487b7160e01b600052602160045260246000fd5b600060ff821660ff8416808210156119fd576119fd611905565b90039392505050565b606081526000611a1960608301866116ed565b60208301949094525060400152919050565b60008219821115611a3e57611a3e611905565b500190565b600082821015611a5557611a55611905565b500390565b634e487b7160e01b600052601260045260246000fd5b848152836020820152608060408201526000611a8f60808301856117a4565b905060ff8316606083015295945050505050565b6000816000190483118215151615611abd57611abd611905565b500290565b600082611adf57634e487b7160e01b600052601260045260246000fd5b50069056fea2646970667358221220315082952e709814a7df46b19d02d5672709189a87df1f5fc8b7039b394b329364736f6c634300080d0033",
121
121
  "sourceMap": "467:982:68:-:0;;;;;;;;;;;;;;;;;;;",
122
122
  "linkReferences": {}
123
123
  },
124
124
  "deployedBytecode": {
125
- "object": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c80631e42269e1461003b578063f227e65314610050575b600080fd5b61004e610049366004611661565b610063565b005b61004e61005e366004611661565b610089565b600061007784846100726100a6565b6100d8565b9050610083818361019f565b50505050565b600061009884846100726100a6565b90506100838183600161026b565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec36013560601c806100d55750335b90565b608082901c6fffffffffffffffffffffffffffffffff1984161773ffffffffffffffffffffffffffffffffffffffff8216301480159061014c57508173ffffffffffffffffffffffffffffffffffffffff166101338561035b565b73ffffffffffffffffffffffffffffffffffffffff1614155b156101985761015a8161041d565b826040517fe64c034800000000000000000000000000000000000000000000000000000000815260040161018f929190611719565b60405180910390fd5b9392505050565b60408051600280825260608201835260009260208301908036833701905050905082816000815181106101d4576101d4611767565b6020026020010181815250508160601b6bffffffffffffffffffffffff19168160018151811061020657610206611767565b602090810291909101810191909152604080516000818401527f5265736f7572636541636365737300000000000000000000000000000000000060308201528151808203909301835281019052610266906102609061177d565b8261050c565b505050565b60408051600280825260608201835260009260208301908036833701905050905083816000815181106102a0576102a0611767565b6020026020010181815250508260601b6bffffffffffffffffffffffff1916816001815181106102d2576102d2611767565b602090810291909101810191909152604080516000818401527f5265736f75726365416363657373000000000000000000000000000000000000603082015281518082039093018352810190526100839061032c9061177d565b8260008560405160200161034791151560f81b815260010190565b60405160208183030381529060405261059b565b60408051600180825281830190925260009182919060208083019080368337019050509050826fffffffffffffffffffffffffffffffff1916816000815181106103a7576103a7611767565b6020908102919091018101919091526040805160009281018390527f4e616d6573706163654f776e6572000000000000000000000000000000000000603082015261040e91015b6040516020818303038152906040526104069061177d565b836000610633565b6020015160601c949350505050565b606081608081901b6fffffffffffffffffffffffffffffffff198216156104445781610466565b7f524f4f545f4e414d4553504143450000000000000000000000000000000000005b6fffffffffffffffffffffffffffffffff1982161561048557816104a7565b7f524f4f545f4e414d4500000000000000000000000000000000000000000000005b6040516fffffffffffffffffffffffffffffffff1992831660208201527f2f0000000000000000000000000000000000000000000000000000000000000060308201529116603182015260410160405160208183030381529060405292505050919050565b6105146106d9565b15610527576105238282610757565b5050565b6040517f505a181d000000000000000000000000000000000000000000000000000000008152339063505a181d9061056590859085906004016117df565b600060405180830381600087803b15801561057f57600080fd5b505af1158015610593573d6000803e3d6000fd5b505050505050565b6105a36106d9565b156105b9576105b4848484846108ed565b610083565b6040517f114a7266000000000000000000000000000000000000000000000000000000008152339063114a7266906105fb9087908790879087906004016117f8565b600060405180830381600087803b15801561061557600080fd5b505af1158015610629573d6000803e3d6000fd5b5050505050505050565b606061063d6106d9565b156106545761064d848484610ae1565b9050610198565b6040517fd03edb8c000000000000000000000000000000000000000000000000000000008152339063d03edb8c9061069490879087908790600401611837565b600060405180830381865afa1580156106b1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261064d9190810190611863565b6000303b8082036106ec57600191505090565b3073ffffffffffffffffffffffffffffffffffffffff1663a5c2f0076040518163ffffffff1660e01b815260040160006040518083038186803b15801561073257600080fd5b505afa925050508015610743575060015b61074f57600091505090565b600191505090565b600061076283610b05565b90507f2cc8610b80ef19409ae51ecbdd9c137960fb22ae9ef2d817d36ec1b685d68ecd83836040516107959291906117df565b60405180910390a160006107a884610b5a565b905060005b81518110156108555760008282815181106107ca576107ca611767565b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff1663b51fef6c87876040518363ffffffff1660e01b815260040161080f9291906117df565b600060405180830381600087803b15801561082957600080fd5b505af115801561083d573d6000803e3d6000fd5b5050505050808061084d9061191b565b9150506107ad565b5060006108628585610c21565b90506108bc8160006108748660f01c90565b67ffffffffffffffff81111561088c5761088c611751565b6040519080825280601f01601f1916602001820160405280156108b6576020820181803683370190505b50610c77565b6108c583610c8c565b60ff166000036108d6575050505050565b60006108e28686610c9d565b600081559050610593565b60006108f885610b05565b90507fd01f9f1368f831528fc9fe6442366b2b7d957fbfff3bcf7c24d9ab5fe51f8c468585858560405161092f94939291906117f8565b60405180910390a1600061094286610b5a565b905060005b81518110156109f357600082828151811061096457610964611767565b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff1663469b7ee2898989896040518563ffffffff1660e01b81526004016109ad94939291906117f8565b600060405180830381600087803b1580156109c757600080fd5b505af11580156109db573d6000803e3d6000fd5b505050505080806109eb9061191b565b915050610947565b506109fd82610cd4565b60ff168460ff161015610a1c57610a178686848787610ce0565b610a29565b610a298686848787610d8b565b60005b8151811015610ad8576000828281518110610a4957610a49611767565b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff16636b3d7d5f898989896040518563ffffffff1660e01b8152600401610a9294939291906117f8565b600060405180830381600087803b158015610aac57600080fd5b505af1158015610ac0573d6000803e3d6000fd5b50505050508080610ad09061191b565b915050610a2c565b50505050505050565b60606000610aee85610b05565b9050610afc85858584610dc8565b95945050505050565b6000610b1082610dff565b905080610b555781610b2183610ec4565b6040517fd623a70d00000000000000000000000000000000000000000000000000000000815260040161018f929190611935565b919050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110610b9457610b94611767565b602090810291909101810191909152604080517f6d756473746f7265000000000000000000000000000000000000000000000000928101929092527f486f6f6b730000000000000000000000000000000000000000000000000000006030830152600091610c0291016103ee565b9050610c19610c148260008451610eef565b610f7f565b949350505050565b60007f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d98383604051602001610c589392919061194e565b60408051601f1981840301815291905280516020909101209392505050565b60006020820190506100838484838551610f90565b6000601882901b5b60f81c92915050565b60007f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d98383604051602001610c589392919061196d565b6000601082901b610c94565b6000610cef8460ff851661104e565b90508151610d0d8260c5811115610d0857610d086119cd565b61107a565b14610d6457610d278160c5811115610d0857610d086119cd565b82516040517f521b3d330000000000000000000000000000000000000000000000000000000081526004810192909252602482015260440161018f565b6000610d708787610c21565b90506000610d7e868661112b565b9050610629828286610c77565b6000610d9684610cd4565b610da090846119e3565b9050610daf868683855161117f565b6000610dbc8787846111b1565b9050610ad8818461120a565b6060610dd382610cd4565b60ff168360ff161015610df357610dec85858585611216565b9050610c19565b610dec85858585611276565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610e3857610e38611767565b602090810291909101810191909152604080517f6d756473746f7265000000000000000000000000000000000000000000000000818401527f736368656d61000000000000000000000000000000000000000000000000000060308201528151808203909301835281019052600090610eba90610eb49061177d565b83610c21565b9050610c19815490565b606081604051602001610ed991815260200190565b6040516020818303038152906040529050919050565b6000818311158015610f02575083518211155b610f3e578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161018f93929190611a06565b60208401610f4c8482611a2b565b90506000610f5a8585611a43565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b6060600061019883601460006112cf565b602083048401935060208381610fa857610fa8611a5a565b06925082156110015760208390036000600019600884021c1990506008850281811c91508451811c9050811987541682821617875550818311610fec575050610083565b610ff7600187611a2b565b9550509182019190035b6020811061102a5781518455611018600185611a2b565b935060209190910190601f1901611001565b8015610083576000600019600883021c198554845182169119161785555050505050565b60006110668361105f846004611a2b565b6008021b90565b60f81c60c5811115610198576101986119cd565b6000808260c581111561108f5761108f6119cd565b60ff16905060208110156110a857610198816001611a2b565b60408110156110c85760206110be826001611a2b565b6101989190611a43565b60608110156110de5760406110be826001611a2b565b60608360c58111156110f2576110f26119cd565b036111005750600192915050565b60618360c5811115611114576111146119cd565b036111225750601492915050565b50600092915050565b600080805b8360ff1681101561117757611159611148868361104e565b60c5811115610d0857610d086119cd565b6111639083611a2b565b91508061116f8161191b565b915050611130565b509392505050565b600061118b8585610c9d565b90506000611197825490565b90506111a78160ff861685611412565b8083559050610593565b60007f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d98484846040516020016111ea9493929190611a70565b60408051601f198184030181529190528051602090910120949350505050565b61052382600083610c77565b606060006112278360ff861661104e565b905060006112408260c5811115610d0857610d086119cd565b9050600061124e8888610c21565b9050600061125c868861112b565b90506112698284836114e6565b9998505050505050505050565b6060600061128383610cd4565b61128d90856119e3565b9050600061129c8787846111b1565b905060006112b78360ff166112b18a8a61153e565b9061154b565b90506112c3828261157d565b98975050505050505050565b606060006112dd8560801c90565b90506fffffffffffffffffffffffffffffffff851660008461131557611304866008611aa3565b61131090610100611a43565b611318565b60005b9050600086838161132b5761132b611a5a565b0490506113388784611ac2565b156113c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f756e7061636b546f41727261793a207061636b65644c656e677468206d75737460448201527f2062652061206d756c7469706c65206f6620656c656d656e7453697a65000000606482015260840161018f565b602080820201604051955080860160405250808552600060208601855b83831015611404578051851c82526001929092019160209091019089016113e2565b505050505050509392505050565b600083816114208260e01c90565b90506000611431878760ff1661154b565b9050808510611455576114448186611a43565b61144e9083611a2b565b915061146c565b61145f8582611a43565b6114699083611a43565b91505b6000611479876002611aa3565b611484906004611a2b565b90507bffffffffffffffffffffffffffffffffffffffffffffffffffffffff841660e084901b1793507fffff0000000000000000000000000000000000000000000000000000000000006008820290811c19851660f088901b90911c176112c3565b60608267ffffffffffffffff81111561150157611501611751565b6040519080825280601f01601f19166020018201604052801561152b576020820181803683370190505b509050602081016111778585858461158b565b600080610eba8484610c9d565b600080611559836002611aa3565b611564906004611a2b565b905061157284826008021b90565b60f01c949350505050565b6060610198838360006114e6565b6020820484019350602082816115a3576115a3611a5a565b06915081156115f45760208290036000600019600883021c1990508554600885021b8119845116828216178452508185116115df575050610083565b6115ea600187611a2b565b9550509283900392015b6020831061161c578354815261160b600185611a2b565b9350601f19909201916020016115f4565b8215610083576000600019600885021c198251865482169119161782525050505050565b80356fffffffffffffffffffffffffffffffff1981168114610b5557600080fd5b60008060006060848603121561167657600080fd5b61167f84611640565b925061168d60208501611640565b9150604084013573ffffffffffffffffffffffffffffffffffffffff811681146116b657600080fd5b809150509250925092565b60005b838110156116dc5781810151838201526020016116c4565b838111156100835750506000910152565b600081518084526117058160208601602086016116c1565b601f01601f19169290920160200192915050565b60408152600061172c60408301856116ed565b905073ffffffffffffffffffffffffffffffffffffffff831660208301529392505050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b8051602080830151919081101561179e576000198160200360031b1b821691505b50919050565b600081518084526020808501945080840160005b838110156117d4578151875295820195908201906001016117b8565b509495945050505050565b828152604060208201526000610c1960408301846117a4565b84815260806020820152600061181160808301866117a4565b60ff85166040840152828103606084015261182c81856116ed565b979650505050505050565b83815260606020820152600061185060608301856117a4565b905060ff83166040830152949350505050565b60006020828403121561187557600080fd5b815167ffffffffffffffff8082111561188d57600080fd5b818401915084601f8301126118a157600080fd5b8151818111156118b3576118b3611751565b604051601f8201601f19908116603f011681019083821181831017156118db576118db611751565b816040528281528760208487010111156118f457600080fd5b61182c8360208301602088016116c1565b634e487b7160e01b600052601160045260246000fd5b6000600019820361192e5761192e611905565b5060010190565b828152604060208201526000610c1960408301846116ed565b838152826020820152606060408201526000610afc60608301846117a4565b83815282602082015260806040820152600061198c60808301846117a4565b8281036060840152600681527f6c656e6774680000000000000000000000000000000000000000000000000000602082015260408101915050949350505050565b634e487b7160e01b600052602160045260246000fd5b600060ff821660ff8416808210156119fd576119fd611905565b90039392505050565b606081526000611a1960608301866116ed565b60208301949094525060400152919050565b60008219821115611a3e57611a3e611905565b500190565b600082821015611a5557611a55611905565b500390565b634e487b7160e01b600052601260045260246000fd5b848152836020820152608060408201526000611a8f60808301856117a4565b905060ff8316606083015295945050505050565b6000816000190483118215151615611abd57611abd611905565b500290565b600082611adf57634e487b7160e01b600052601260045260246000fd5b50069056fea26469706673582212207df8f5ebcaf95dbfc215c58626ca57daa6f50b685729c39a1251a6ae909051c864736f6c634300080d0033",
126
- "sourceMap": "467:982:68:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1106:341;;;;;;:::i;:::-;;:::i;:::-;;639:334;;;;;;:::i;:::-;;:::i;1106:341::-;1246:24;1273:63;1306:9;1317:4;1323:12;:10;:12::i;:::-;1273:32;:63::i;:::-;1246:90;;1388:54;1416:16;1434:7;1388:27;:54::i;:::-;1193:254;1106:341;;;:::o;639:334::-;778:24;805:63;838:9;849:4;855:12;:10;:12::i;805:63::-;778:90;;917:51;936:16;954:7;963:4;917:18;:51::i;409:228:52:-;551:23;555:14;551:23;538:37;534:2;530:46;;587:45;;-1:-1:-1;622:10:52;587:45;409:228;:::o;1504:367:45:-;716:3:47;699:20;;;-1:-1:-1;;677:18:47;;:43;1720:23:45;;;1728:4;1720:23;;;;:66;;;1780:6;1747:39;;:29;1766:9;1747:18;:29::i;:::-;:39;;;;1720:66;1716:151;;;1824:27;:16;:25;:27::i;:::-;1853:6;1803:57;;;;;;;;;;;;:::i;:::-;;;;;;;;1716:151;1504:367;;;;;:::o;4308:288:90:-;4419:16;;;4433:1;4419:16;;;;;;;;4387:29;;4419:16;;;;;;;;;;-1:-1:-1;4419:16:90;4387:48;;4468:16;4441:12;4454:1;4441:15;;;;;;;;:::i;:::-;;;;;;:45;;;;;4527:6;4518:17;;4510:26;;;4492:12;4505:1;4492:15;;;;;;;;:::i;:::-;;;;;;;;;;;:44;;;;885:56;;;902:11;885:56;;;2251:28:93;915:25:90;2295:12:93;;;2288:37;885:56:90;;;;;;;;;;2341:12:93;;885:56:90;;4543:48;;877:65;;;:::i;:::-;4578:12;4543:24;:48::i;:::-;4381:215;4308:288;;:::o;3395:319::-;3510:16;;;3524:1;3510:16;;;;;;;;3478:29;;3510:16;;;;;;;;;;-1:-1:-1;3510:16:90;3478:48;;3559:16;3532:12;3545:1;3532:15;;;;;;;;:::i;:::-;;;;;;:45;;;;;3618:6;3609:17;;3601:26;;;3583:12;3596:1;3583:15;;;;;;;;:::i;:::-;;;;;;;;;;;:44;;;;885:56;;;902:11;885:56;;;2251:28:93;915:25:90;2295:12:93;;;2288:37;885:56:90;;;;;;;;;;2341:12:93;;885:56:90;;3634:75;;877:65;;;:::i;:::-;3665:12;3679:1;3700:6;3682:26;;;;;;2877:14:93;2870:22;2865:3;2861:32;2849:45;;2919:1;2910:11;;2726:201;3682:26:90;;;;;;;;;;;;;3634:20;:75::i;2515:295:89:-;2623:16;;;2637:1;2623:16;;;;;;;;;2570:13;;;;2623:16;;;;;;;;;;;;-1:-1:-1;2623:16:89;2591:48;;2672:9;2663:20;;;2645:12;2658:1;2645:15;;;;;;;;:::i;:::-;;;;;;;;;;;:38;;;;885:56;;;2690:18;885:56;;;2251:28:93;;;915:25:89;2295:12:93;;;2288:37;2711:47:89;;2341:12:93;885:56:89;;;;;;;;;;;;;877:65;;;:::i;:::-;2742:12;2756:1;2711:20;:47::i;:::-;9399:4:22;9385:27;9379:34;2772:32:89;;;;-1:-1:-1;;;;2515:295:89:o;1392:403:47:-;1459:13;1513:16;1308:3;1288:23;;;-1:-1:-1;;1639:27:47;;;:63;;1693:9;1639:63;;;217:25;1639:63;-1:-1:-1;;1729:17:47;;;:43;;1768:4;1729:43;;;280:20;1729:43;1611:171;;-1:-1:-1;;3287:15:93;;;1611:171:47;;;3275:28:93;3333:3;3319:12;;;3312:25;3367:15;;3353:12;;;3346:37;3399:12;;1611:171:47;;;;;;;;;;;;1582:208;;;;1392:403;;;:::o;3458:213:32:-;3536:16;:14;:16::i;:::-;3532:135;;;3562:34;3585:5;3592:3;3562:22;:34::i;:::-;3458:213;;:::o;3532:135::-;3617:43;;;;;3624:10;;3617:31;;:43;;3649:5;;3656:3;;3617:43;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3458:213;;:::o;2487:274::-;2598:16;:14;:16::i;:::-;2594:163;;;2624:48;2643:5;2650:3;2655:10;2667:4;2624:18;:48::i;:::-;2594:163;;;2693:57;;;;;2700:10;;2693:27;;:57;;2721:5;;2728:3;;2733:10;;2745:4;;2693:57;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2487:274;;;;:::o;4206:285::-;4302:12;4326:16;:14;:16::i;:::-;4322:165;;;4359:42;4378:5;4385:3;4390:10;4359:18;:42::i;:::-;4352:49;;;;4322:165;4429:51;;;;;4436:10;;4429:27;;:51;;4457:5;;4464:3;;4469:10;;4429:51;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4429:51:32;;;;;;;;;;;;:::i;624:497::-;673:12;802:9;790:22;915:13;;;911:30;;937:4;930:11;;;624:497;:::o;911:30::-;1034:4;1019:29;;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1015:102;;1105:5;1095:15;;687:434;624:497;:::o;1015:102::-;1069:4;1059:14;;687:434;624:497;:::o;8889:1063:30:-;8965:13;8981:18;8991:7;8981:9;:18::i;:::-;8965:34;;9048:31;9066:7;9075:3;9048:31;;;;;;;:::i;:::-;;;;;;;;9215:22;9240:18;9250:7;9240:9;:18::i;:::-;9215:43;;9269:9;9264:133;9284:5;:12;9280:1;:16;9264:133;;;9311:15;9340:5;9346:1;9340:8;;;;;;;;:::i;:::-;;;;;;;9311:38;;9357:4;:19;;;9377:7;9386:3;9357:33;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9303:94;9298:3;;;;;:::i;:::-;;;;9264:133;;;;9429:26;9458:54;9499:7;9508:3;9458:40;:54::i;:::-;9429:83;;9518:108;9550:18;9578:1;9597:25;:6;4373:37:27;;;4279:137;9597:25:30;9587:36;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9587:36:30;;9518:13;:108::i;:::-;9687:25;:6;:23;:25::i;:::-;:30;;9716:1;9687:30;9683:43;;9719:7;;;8889:1063;;:::o;9683:43::-;9766:33;9802:61;9850:7;9859:3;9802:47;:61::i;:::-;9942:1;461:28:29;;9766:97:30;-1:-1:-1;9869:78:30;376:123:29;7911:974:30;8021:13;8037:18;8047:7;8037:9;:18::i;:::-;8021:34;;8104:46;8118:7;8127:3;8132:11;8145:4;8104:46;;;;;;;;;:::i;:::-;;;;;;;;8221:22;8246:18;8256:7;8246:9;:18::i;:::-;8221:43;;8276:9;8271:154;8291:5;:12;8287:1;:16;8271:154;;;8318:15;8347:5;8353:1;8347:8;;;;;;;;:::i;:::-;;;;;;;8318:38;;8364:4;:21;;;8386:7;8395:3;8400:11;8413:4;8364:54;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8310:115;8305:3;;;;;:::i;:::-;;;;8271:154;;;;8449:24;:6;:22;:24::i;:::-;8435:38;;:11;:38;;;8431:229;;;8483:74;8517:7;8526:3;8531:6;8539:11;8552:4;8483:33;:74::i;:::-;8431:229;;;8578:75;8613:7;8622:3;8627:6;8635:11;8648:4;8578:34;:75::i;:::-;8733:9;8728:153;8748:5;:12;8744:1;:16;8728:153;;;8775:15;8804:5;8810:1;8804:8;;;;;;;;:::i;:::-;;;;;;;8775:38;;8821:4;:20;;;8842:7;8851:3;8856:11;8869:4;8821:53;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8767:114;8762:3;;;;;:::i;:::-;;;;8728:153;;;;8015:870;;7911:974;;;;:::o;15699:214::-;15798:12;15818:13;15834:18;15844:7;15834:9;:18::i;:::-;15818:34;;15865:43;15874:7;15883:3;15888:11;15901:6;15865:8;:43::i;:::-;15858:50;15699:214;-1:-1:-1;;;;;15699:214:30:o;2576:240::-;2635:13;2665:37;2694:7;2665:28;:37::i;:::-;2656:46;-1:-1:-1;5426:35:27;2708:104:30;;2777:7;2786:18;:7;:16;:18::i;:::-;2745:60;;;;;;;;;;;;:::i;2708:104::-;2576:240;;;:::o;2349:326:37:-;2460:16;;;2474:1;2460:16;;;;;;;;;2398:22;;2428:29;;2460:16;;;;;;;;;;;;-1:-1:-1;2460:16:37;2428:48;;2509:3;2482:12;2495:1;2482:15;;;;;;;;:::i;:::-;;;;;;;;;;;:32;;;;741:55;;;758:19;741:55;;;2251:28:93;;;;779:16:37;2295:12:93;;;2288:37;2521:18:37;;2542:47;;2341:12:93;741:55:37;2009:350:93;2542:47:37;2521:68;;2603:66;:44;2624:5;2631:1;2634:5;:12;2603:20;:44::i;:::-;:64;:66::i;:::-;2595:75;2349:326;-1:-1:-1;;;;2349:326:37:o;23642:171:30:-;23736:7;16469:22;23793:7;23802:3;23776:30;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;23776:30:30;;;;;;;;;23766:41;;23776:30;23766:41;;;;;23642:171;-1:-1:-1;;;23642:171:30:o;503:238:29:-;592:21;663:4;657;653:15;636:32;;679:57;685:14;701:6;709:13;724:4;:11;679:5;:57::i;4749:134:27:-;4813:5;4191:13:22;4187:24;;;4839:38:27;4833:45;;;4749:134;-1:-1:-1;;4749:134:27:o;24716:188:30:-;24817:7;16469:22;24874:7;24883:3;24857:40;;;;;;;;;;:::i;4958:133:27:-;5021:5;4191:13:22;4187:24;;;5047:38:27;4059:181:22;18193:681:30;18410:21;18434:27;:6;:27;;;:14;:27::i;:::-;18410:51;;18507:4;:11;18471:32;:10;:30;;;;;;;;:::i;:::-;;:32::i;:::-;:47;18467:157;;18571:32;:10;:30;;;;;;;;:::i;:32::-;18605:11;;18535:82;;;;;;;;8271:25:93;;;;8312:18;;;8305:34;8244:18;;18535:82:30;8097:248:93;18467:157:30;18673:16;18692:36;18715:7;18724:3;18692:22;:36::i;:::-;18673:55;;18734:14;18751:41;18772:6;18780:11;18751:20;:41::i;:::-;18734:58;;18798:71;18830:8;18848:6;18862:4;18798:13;:71::i;18878:556::-;19035:24;19076;:6;:22;:24::i;:::-;19062:38;;:11;:38;:::i;:::-;19035:65;;19145:75;19174:7;19183:3;19188:18;19208:4;:11;19145:28;:75::i;:::-;19270:27;19300:57;19324:7;19333:3;19338:18;19300:23;:57::i;:::-;19270:87;;19363:66;19395:19;19422:4;19363:13;:66::i;16013:389::-;16147:12;16185:24;:6;:22;:24::i;:::-;16171:38;;:11;:38;;;16167:231;;;16226:68;16260:7;16269:3;16274:11;16287:6;16226:33;:68::i;:::-;16219:75;;;;16167:231;16322:69;16357:7;16366:3;16371:11;16384:6;16322:34;:69::i;16785:292::-;16882:16;;;16896:1;16882:16;;;;;;;;;16845:6;;;;16882:16;;;;;;;;;;;;-1:-1:-1;16882:16:30;16859:39;;16913:7;16904:3;16908:1;16904:6;;;;;;;;:::i;:::-;;;;;;;;;;;:16;;;;16544:56;;;16561:19;16544:56;;;2251:28:93;16582:17:30;2295:12:93;;;2288:37;16544:56:30;;;;;;;;;;2341:12:93;;16544:56:30;;-1:-1:-1;;16945:59:30;;16536:65;;;:::i;:::-;17000:3;16945:40;:59::i;:::-;16926:78;;17029:42;17060:8;3218:21:29;;3112:137;78:124:33;136:13;188:7;171:25;;;;;;8679:19:93;;8723:2;8714:12;;8550:182;171:25:33;;;;;;;;;;;;;157:40;;78:124;;;:::o;1563:570:28:-;1654:5;1752:3;1743:5;:12;;:34;;;;;1766:4;:11;1759:3;:18;;1743:34;1737:85;;1805:4;1811:5;1818:3;1787:35;;;;;;;;;;;;;:::i;1737:85::-;1890:4;1880:15;;1937:17;1949:5;1880:15;1937:17;:::i;:::-;;-1:-1:-1;1960:12:28;1975:11;1981:5;1975:3;:11;:::i;:::-;642:17;2111:15;2103:3;2091:15;;;;2090:37;;;;;;-1:-1:-1;;;;;1563:570:28:o;22003:279:41:-;22067:23;22161:29;22193:34;22211:4;22217:2;22221:5;22193:17;:34::i;875:2233:29:-;1146:2;1137:6;:11;1119:29;;;;1166:2;1156:12;;;;;;:::i;:::-;;;-1:-1:-1;1261:10:29;;1257:1071;;1459:2;:11;;;1339:21;-1:-1:-1;;790:1:34;777:14;;755:37;753:40;1487:37:29;;1685:1;1677:6;1673:14;1719:4;1708:9;1704:20;1696:28;;1772:13;1766:20;1755:9;1751:36;1733:54;;2006:4;2002:9;1985:14;1979:21;1975:37;1910:4;1898:10;1894:21;1841:183;1815:14;1797:237;;2087:13;2077:6;:23;2073:36;;2102:7;;;;2073:36;2143:19;2161:1;2143:19;;:::i;:::-;;-1:-1:-1;;2250:30:29;;;;2290:23;;1257:1071;2375:2;2365:6;:12;2358:301;;2470:20;;2447:44;;2506:19;2524:1;2454:14;2506:19;:::i;:::-;;-1:-1:-1;2620:2:29;2603:19;;;;;-1:-1:-1;;2632:12:29;2358:301;;;2727:10;;2723:381;;2747:12;-1:-1:-1;;790:1:34;777:14;;755:37;753:40;3035:21:29;;2951:20;;2947:31;;3058:9;;3031:37;2896:184;2852:238;;-1:-1:-1;875:2233:29;;;;:::o;4502:165:27:-;4572:10;4614:46;4641:6;4650:9;:5;4658:1;4650:9;:::i;:::-;4195:1:22;4191:13;4187:24;;4059:181;4614:46:27;4608:53;;4597:65;;;;;;;;:::i;3194:543:21:-;3260:7;3273:13;3295:10;3289:17;;;;;;;;:::i;:::-;3273:33;;;;3323:2;3315:5;:10;3311:229;;;3357:9;:5;3365:1;3357:9;:::i;3311:229::-;3389:2;3381:5;:10;3377:163;;;3448:2;3436:9;:5;3444:1;3436:9;:::i;:::-;:14;;;;:::i;3377:163::-;3473:2;3465:5;:10;3461:79;;;3533:2;3521:9;:5;3529:1;3521:9;:::i;3461:79::-;3586:15;3572:10;:29;;;;;;;;:::i;:::-;;3568:118;;-1:-1:-1;3616:1:21;;3194:543;-1:-1:-1;;3194:543:21:o;3568:118::-;3646:18;3632:10;:32;;;;;;;;:::i;:::-;;3628:58;;-1:-1:-1;3679:2:21;;3194:543;-1:-1:-1;;3194:543:21:o;3628:58::-;-1:-1:-1;3733:1:21;;3194:543;-1:-1:-1;;3194:543:21:o;23900:251:30:-;23987:7;;;24026:102;24046:11;24042:15;;:1;:15;24026:102;;;24082:39;:17;:6;24097:1;24082:14;:17::i;:::-;:37;;;;;;;;:::i;:39::-;24072:49;;;;:::i;:::-;;-1:-1:-1;24059:3:30;;;;:::i;:::-;;;;24026:102;;;-1:-1:-1;24140:6:30;23900:251;-1:-1:-1;;;23900:251:30:o;25428:682::-;25670:31;25704:43;25734:7;25743:3;25704:29;:43::i;:::-;25670:77;;25753:28;25803:57;25834:23;3218:21:29;;3112:137;25803:57:30;25753:108;-1:-1:-1;25919:63:30;25753:108;25919:63;;;25965:16;25919:25;:63::i;:::-;461:28:29;;;25902:80:30;-1:-1:-1;26016:89:30;376:123:29;24411:220:30;24541:7;16469:22;24598:7;24607:3;24612:11;24581:43;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;24581:43:30;;;;;;;;;24571:54;;24581:43;24571:54;;;;;24411:220;-1:-1:-1;;;;24411:220:30:o;264:108:29:-;337:30;343:14;359:1;362:4;337:5;:30::i;21935:599:30:-;22076:12;22167:21;22191:27;:6;:27;;;:14;:27::i;:::-;22167:51;;22224:18;22245:32;:10;:30;;;;;;;;:::i;:32::-;22224:53;;22283:16;22302:36;22325:7;22334:3;22302:22;:36::i;:::-;22283:55;;22344:14;22361:41;22382:6;22390:11;22361:20;:41::i;:::-;22344:58;;22451:78;22482:8;22500:10;22520:6;22451:12;:78::i;:::-;22444:85;21935:599;-1:-1:-1;;;;;;;;;21935:599:30:o;22642:552::-;22784:12;22868:24;22909;:6;:22;:24::i;:::-;22895:38;;:11;:38;:::i;:::-;22868:65;;22939:16;22958:57;22982:7;22991:3;22996:18;22958:23;:57::i;:::-;22939:76;;23021:18;23042:71;23094:18;23042:71;;:43;23072:7;23081:3;23042:29;:43::i;:::-;:51;;:71::i;:::-;23021:92;;23127:62;23158:8;23176:10;23127:12;:62::i;:::-;23120:69;22642:552;-1:-1:-1;;;;;;;;22642:552:30:o;2422:1642:43:-;2535:22;2565:21;2589;:11;2372:3:28;2350:25;;2276:104;2589:21:43;2565:45;-1:-1:-1;642:17:28;2513:38;;2616:20:43;2683:11;:39;;2707:15;:11;2721:1;2707:15;:::i;:::-;2701:21;;:3;:21;:::i;:::-;2683:39;;;2697:1;2683:39;2665:57;;2769:19;2841:11;2826:12;:26;;;;;:::i;:::-;;;-1:-1:-1;3009:26:43;3024:11;3009:12;:26;:::i;:::-;:31;3005:123;;3050:71;;;;;10748:2:93;3050:71:43;;;10730:21:93;10787:2;10767:18;;;10760:30;10826:34;10806:18;;;10799:62;10897:31;10877:18;;;10870:59;10946:19;;3050:71:43;10546:425:93;3005:123:43;3314:4;3309:2;3296:11;3292:20;3288:31;3401:4;3395:11;3386:20;;3437:13;3430:5;3426:25;3420:4;3413:39;;3502:11;3495:5;3488:26;3545:1;3585:4;3578:5;3574:16;3640:13;3522:532;3668:11;3665:1;3662:18;3522:532;;;3997:19;;3984:33;;3964:54;;3755:1;3748:9;;;;;3798:4;3781:22;;;;3867:30;;3522:532;;;3526:135;;;3182:878;;;;2422:1642;;;;;:::o;2931:1018:26:-;3059:13;3128;3059;3219:20;3128:13;2453:51;;;2356:154;3219:20;3197:42;;3245:27;3275:36;3283:13;3304:5;3275:36;;:7;:36::i;:::-;3245:66;;3398:19;3379:15;:38;3375:184;;3442:37;3460:19;3442:15;:37;:::i;:::-;3427:52;;;;:::i;:::-;;;3375:184;;;3515:37;3537:15;3515:19;:37;:::i;:::-;3500:52;;;;:::i;:::-;;;3375:184;3621:14;3642:9;:5;3650:1;3642:9;:::i;:::-;3638:13;;:1;:13;:::i;:::-;3621:30;-1:-1:-1;2900:9:22;2889:21;;3767:27:26;;;;2957:41:22;3711:84:26;-1:-1:-1;2219:20:22;2278:1;2274:13;;2270:24;;;2379:9;2368:21;;3862:31:26;;;;2447:29:22;;;2436:41;3820:74:26;2107:424:22;3498:447:29;3591:19;3768:6;3758:17;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3758:17:29;-1:-1:-1;3749:26:29;-1:-1:-1;3854:4:29;3842:17;;3870:51;3875:14;3891:6;3899;3842:17;3870:4;:51::i;24991:339:30:-;25092:13;25158:31;25192:43;25222:7;25231:3;25192:29;:43::i;2625:221:26:-;2709:7;;2745:9;:5;2753:1;2745:9;:::i;:::-;2741:13;;:1;:13;:::i;:::-;2724:30;;2782:57;2816:13;2832:6;4195:1:22;4191:13;4187:24;;4059:181;2782:57:26;2775:65;;;2625:221;-1:-1:-1;;;;2625:221:26:o;3253:140:29:-;3330:12;3357:31;3362:14;3378:6;3386:1;3357:4;:31::i;4079:2169::-;4354:2;4345:6;:11;4327:29;;;;4374:2;4364:12;;;;;;:::i;:::-;;;-1:-1:-1;4469:10:29;;4465:1005;;4667:2;:11;;;4547:21;-1:-1:-1;;790:1:34;777:14;;755:37;753:40;4695:44:29;;4915:14;4909:21;4905:1;4897:6;4893:14;4889:42;5148:4;5144:9;5128:13;5122:20;5118:36;5053:4;5041:10;5037:21;4984:182;4959:13;4941:235;;5229:13;5219:6;:23;5215:36;;5244:7;;;;5215:36;5285:19;5303:1;5285:19;;:::i;:::-;;-1:-1:-1;;5432:23:29;;;;;5392:30;4465:1005;5516:2;5506:6;:12;5499:301;;5610:21;;5588:44;;5647:19;5665:1;5616:14;5647:19;:::i;:::-;;-1:-1:-1;;;5773:12:29;;;;5761:2;5744:19;5499:301;;;5868:10;;5864:380;;5888:12;-1:-1:-1;;790:1:34;777:14;;755:37;753:40;6176:20:29;;6091:21;;6087:32;;6198:9;;6172:36;6036:184;5993:237;;-1:-1:-1;4079:2169:29;;;;:::o;14:220:93:-;82:20;;-1:-1:-1;;131:78:93;;121:89;;111:117;;224:1;221;214:12;239:457;316:6;324;332;385:2;373:9;364:7;360:23;356:32;353:52;;;401:1;398;391:12;353:52;424:29;443:9;424:29;:::i;:::-;414:39;;472:38;506:2;495:9;491:18;472:38;:::i;:::-;462:48;;560:2;549:9;545:18;532:32;604:42;597:5;593:54;586:5;583:65;573:93;;662:1;659;652:12;573:93;685:5;675:15;;;239:457;;;;;:::o;701:258::-;773:1;783:113;797:6;794:1;791:13;783:113;;;873:11;;;867:18;854:11;;;847:39;819:2;812:10;783:113;;;914:6;911:1;908:13;905:48;;;-1:-1:-1;;949:1:93;931:16;;924:27;701:258::o;964:317::-;1006:3;1044:5;1038:12;1071:6;1066:3;1059:19;1087:63;1143:6;1136:4;1131:3;1127:14;1120:4;1113:5;1109:16;1087:63;:::i;:::-;1195:2;1183:15;-1:-1:-1;;1179:88:93;1170:98;;;;1270:4;1166:109;;964:317;-1:-1:-1;;964:317:93:o;1286:340::-;1463:2;1452:9;1445:21;1426:4;1483:45;1524:2;1513:9;1509:18;1501:6;1483:45;:::i;:::-;1475:53;;1576:42;1568:6;1564:55;1559:2;1548:9;1544:18;1537:83;1286:340;;;;;:::o;1631:184::-;-1:-1:-1;;;1680:1:93;1673:88;1780:4;1777:1;1770:15;1804:4;1801:1;1794:15;1820:184;-1:-1:-1;;;1869:1:93;1862:88;1969:4;1966:1;1959:15;1993:4;1990:1;1983:15;2364:357;2482:12;;2529:4;2518:16;;;2512:23;;2482:12;2547:16;;2544:171;;;-1:-1:-1;;2627:6:93;2621:4;2617:17;2614:1;2610:25;2606:98;2599:5;2595:110;2586:119;;2544:171;;2364:357;;;:::o;3422:435::-;3475:3;3513:5;3507:12;3540:6;3535:3;3528:19;3566:4;3595:2;3590:3;3586:12;3579:19;;3632:2;3625:5;3621:14;3653:1;3663:169;3677:6;3674:1;3671:13;3663:169;;;3738:13;;3726:26;;3772:12;;;;3807:15;;;;3699:1;3692:9;3663:169;;;-1:-1:-1;3848:3:93;;3422:435;-1:-1:-1;;;;;3422:435:93:o;3862:332::-;4069:6;4058:9;4051:25;4112:2;4107;4096:9;4092:18;4085:30;4032:4;4132:56;4184:2;4173:9;4169:18;4161:6;4132:56;:::i;4199:573::-;4476:6;4465:9;4458:25;4519:3;4514:2;4503:9;4499:18;4492:31;4439:4;4546:57;4598:3;4587:9;4583:19;4575:6;4546:57;:::i;:::-;4651:4;4643:6;4639:17;4634:2;4623:9;4619:18;4612:45;4705:9;4697:6;4693:22;4688:2;4677:9;4673:18;4666:50;4733:33;4759:6;4751;4733:33;:::i;:::-;4725:41;4199:573;-1:-1:-1;;;;;;;4199:573:93:o;4777:410::-;5008:6;4997:9;4990:25;5051:2;5046;5035:9;5031:18;5024:30;4971:4;5071:56;5123:2;5112:9;5108:18;5100:6;5071:56;:::i;:::-;5063:64;;5175:4;5167:6;5163:17;5158:2;5147:9;5143:18;5136:45;4777:410;;;;;;:::o;5192:942::-;5271:6;5324:2;5312:9;5303:7;5299:23;5295:32;5292:52;;;5340:1;5337;5330:12;5292:52;5373:9;5367:16;5402:18;5443:2;5435:6;5432:14;5429:34;;;5459:1;5456;5449:12;5429:34;5497:6;5486:9;5482:22;5472:32;;5542:7;5535:4;5531:2;5527:13;5523:27;5513:55;;5564:1;5561;5554:12;5513:55;5593:2;5587:9;5615:2;5611;5608:10;5605:36;;;5621:18;;:::i;:::-;5755:2;5749:9;5817:4;5809:13;;-1:-1:-1;;5805:22:93;;;5829:2;5801:31;5797:40;5785:53;;;5853:18;;;5873:22;;;5850:46;5847:72;;;5899:18;;:::i;:::-;5939:10;5935:2;5928:22;5974:2;5966:6;5959:18;6014:7;6009:2;6004;6000;5996:11;5992:20;5989:33;5986:53;;;6035:1;6032;6025:12;5986:53;6048:55;6100:2;6095;6087:6;6083:15;6078:2;6074;6070:11;6048:55;:::i;6139:184::-;-1:-1:-1;;;6188:1:93;6181:88;6288:4;6285:1;6278:15;6312:4;6309:1;6302:15;6328:195;6367:3;-1:-1:-1;;6391:5:93;6388:77;6385:103;;6468:18;;:::i;:::-;-1:-1:-1;6515:1:93;6504:13;;6328:195::o;6528:291::-;6705:6;6694:9;6687:25;6748:2;6743;6732:9;6728:18;6721:30;6668:4;6768:45;6809:2;6798:9;6794:18;6786:6;6768:45;:::i;6824:403::-;7059:6;7048:9;7041:25;7102:6;7097:2;7086:9;7082:18;7075:34;7145:2;7140;7129:9;7125:18;7118:30;7022:4;7165:56;7217:2;7206:9;7202:18;7194:6;7165:56;:::i;7232:671::-;7568:6;7557:9;7550:25;7611:6;7606:2;7595:9;7591:18;7584:34;7654:3;7649:2;7638:9;7634:18;7627:31;7531:4;7681:57;7733:3;7722:9;7718:19;7710:6;7681:57;:::i;:::-;7786:9;7778:6;7774:22;7769:2;7758:9;7754:18;7747:50;7821:1;7813:6;7806:17;7856:8;7851:2;7843:6;7839:15;7832:33;7894:2;7886:6;7882:15;7874:23;;;7232:671;;;;;;:::o;7908:184::-;-1:-1:-1;;;7957:1:93;7950:88;8057:4;8054:1;8047:15;8081:4;8078:1;8071:15;8350:195;8388:4;8425;8422:1;8418:12;8457:4;8454:1;8450:12;8482:3;8477;8474:12;8471:38;;;8489:18;;:::i;:::-;8526:13;;;8350:195;-1:-1:-1;;;8350:195:93:o;8737:360::-;8940:2;8929:9;8922:21;8903:4;8960:45;9001:2;8990:9;8986:18;8978:6;8960:45;:::i;:::-;9036:2;9021:18;;9014:34;;;;-1:-1:-1;9079:2:93;9064:18;9057:34;8952:53;8737:360;-1:-1:-1;8737:360:93:o;9102:128::-;9142:3;9173:1;9169:6;9166:1;9163:13;9160:39;;;9179:18;;:::i;:::-;-1:-1:-1;9215:9:93;;9102:128::o;9235:125::-;9275:4;9303:1;9300;9297:8;9294:34;;;9308:18;;:::i;:::-;-1:-1:-1;9345:9:93;;9235:125::o;9365:184::-;-1:-1:-1;;;9414:1:93;9407:88;9514:4;9511:1;9504:15;9538:4;9535:1;9528:15;9554:483;9813:6;9802:9;9795:25;9856:6;9851:2;9840:9;9836:18;9829:34;9899:3;9894:2;9883:9;9879:18;9872:31;9776:4;9920:57;9972:3;9961:9;9957:19;9949:6;9920:57;:::i;:::-;9912:65;;10025:4;10017:6;10013:17;10008:2;9997:9;9993:18;9986:45;9554:483;;;;;;;:::o;10042:228::-;10082:7;10208:1;-1:-1:-1;;10136:74:93;10133:1;10130:81;10125:1;10118:9;10111:17;10107:105;10104:131;;;10215:18;;:::i;:::-;-1:-1:-1;10255:9:93;;10042:228::o;10275:266::-;10307:1;10333;10323:189;;-1:-1:-1;;;10365:1:93;10358:88;10469:4;10466:1;10459:15;10497:4;10494:1;10487:15;10323:189;-1:-1:-1;10526:9:93;;10275:266::o",
125
+ "object": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c80631e42269e1461003b578063f227e65314610050575b600080fd5b61004e610049366004611661565b610063565b005b61004e61005e366004611661565b610089565b600061007784846100726100a6565b6100d8565b9050610083818361019f565b50505050565b600061009884846100726100a6565b90506100838183600161026b565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec36013560601c806100d55750335b90565b608082901c6fffffffffffffffffffffffffffffffff1984161773ffffffffffffffffffffffffffffffffffffffff8216301480159061014c57508173ffffffffffffffffffffffffffffffffffffffff166101338561035b565b73ffffffffffffffffffffffffffffffffffffffff1614155b156101985761015a8161041d565b826040517fe64c034800000000000000000000000000000000000000000000000000000000815260040161018f929190611719565b60405180910390fd5b9392505050565b60408051600280825260608201835260009260208301908036833701905050905082816000815181106101d4576101d4611767565b6020026020010181815250508160601b6bffffffffffffffffffffffff19168160018151811061020657610206611767565b602090810291909101810191909152604080516000818401527f5265736f7572636541636365737300000000000000000000000000000000000060308201528151808203909301835281019052610266906102609061177d565b8261050c565b505050565b60408051600280825260608201835260009260208301908036833701905050905083816000815181106102a0576102a0611767565b6020026020010181815250508260601b6bffffffffffffffffffffffff1916816001815181106102d2576102d2611767565b602090810291909101810191909152604080516000818401527f5265736f75726365416363657373000000000000000000000000000000000000603082015281518082039093018352810190526100839061032c9061177d565b8260008560405160200161034791151560f81b815260010190565b60405160208183030381529060405261059b565b60408051600180825281830190925260009182919060208083019080368337019050509050826fffffffffffffffffffffffffffffffff1916816000815181106103a7576103a7611767565b6020908102919091018101919091526040805160009281018390527f4e616d6573706163654f776e6572000000000000000000000000000000000000603082015261040e91015b6040516020818303038152906040526104069061177d565b836000610633565b6020015160601c949350505050565b606081608081901b6fffffffffffffffffffffffffffffffff198216156104445781610466565b7f524f4f545f4e414d4553504143450000000000000000000000000000000000005b6fffffffffffffffffffffffffffffffff1982161561048557816104a7565b7f524f4f545f4e414d4500000000000000000000000000000000000000000000005b6040516fffffffffffffffffffffffffffffffff1992831660208201527f2f0000000000000000000000000000000000000000000000000000000000000060308201529116603182015260410160405160208183030381529060405292505050919050565b6105146106d9565b15610527576105238282610757565b5050565b6040517f505a181d000000000000000000000000000000000000000000000000000000008152339063505a181d9061056590859085906004016117df565b600060405180830381600087803b15801561057f57600080fd5b505af1158015610593573d6000803e3d6000fd5b505050505050565b6105a36106d9565b156105b9576105b4848484846108ed565b610083565b6040517f114a7266000000000000000000000000000000000000000000000000000000008152339063114a7266906105fb9087908790879087906004016117f8565b600060405180830381600087803b15801561061557600080fd5b505af1158015610629573d6000803e3d6000fd5b5050505050505050565b606061063d6106d9565b156106545761064d848484610ae1565b9050610198565b6040517fd03edb8c000000000000000000000000000000000000000000000000000000008152339063d03edb8c9061069490879087908790600401611837565b600060405180830381865afa1580156106b1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261064d9190810190611863565b6000303b8082036106ec57600191505090565b3073ffffffffffffffffffffffffffffffffffffffff1663a5c2f0076040518163ffffffff1660e01b815260040160006040518083038186803b15801561073257600080fd5b505afa925050508015610743575060015b61074f57600091505090565b600191505090565b600061076283610b05565b90507f2cc8610b80ef19409ae51ecbdd9c137960fb22ae9ef2d817d36ec1b685d68ecd83836040516107959291906117df565b60405180910390a160006107a884610b5a565b905060005b81518110156108555760008282815181106107ca576107ca611767565b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff1663b51fef6c87876040518363ffffffff1660e01b815260040161080f9291906117df565b600060405180830381600087803b15801561082957600080fd5b505af115801561083d573d6000803e3d6000fd5b5050505050808061084d9061191b565b9150506107ad565b5060006108628585610c21565b90506108bc8160006108748660f01c90565b67ffffffffffffffff81111561088c5761088c611751565b6040519080825280601f01601f1916602001820160405280156108b6576020820181803683370190505b50610c77565b6108c583610c8c565b60ff166000036108d6575050505050565b60006108e28686610c9d565b600081559050610593565b60006108f885610b05565b90507fd01f9f1368f831528fc9fe6442366b2b7d957fbfff3bcf7c24d9ab5fe51f8c468585858560405161092f94939291906117f8565b60405180910390a1600061094286610b5a565b905060005b81518110156109f357600082828151811061096457610964611767565b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff1663469b7ee2898989896040518563ffffffff1660e01b81526004016109ad94939291906117f8565b600060405180830381600087803b1580156109c757600080fd5b505af11580156109db573d6000803e3d6000fd5b505050505080806109eb9061191b565b915050610947565b506109fd82610cd4565b60ff168460ff161015610a1c57610a178686848787610ce0565b610a29565b610a298686848787610d8b565b60005b8151811015610ad8576000828281518110610a4957610a49611767565b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff16636b3d7d5f898989896040518563ffffffff1660e01b8152600401610a9294939291906117f8565b600060405180830381600087803b158015610aac57600080fd5b505af1158015610ac0573d6000803e3d6000fd5b50505050508080610ad09061191b565b915050610a2c565b50505050505050565b60606000610aee85610b05565b9050610afc85858584610dc8565b95945050505050565b6000610b1082610dff565b905080610b555781610b2183610ec4565b6040517fd623a70d00000000000000000000000000000000000000000000000000000000815260040161018f929190611935565b919050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110610b9457610b94611767565b602090810291909101810191909152604080517f6d756473746f7265000000000000000000000000000000000000000000000000928101929092527f486f6f6b730000000000000000000000000000000000000000000000000000006030830152600091610c0291016103ee565b9050610c19610c148260008451610eef565b610f7f565b949350505050565b60007f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d98383604051602001610c589392919061194e565b60408051601f1981840301815291905280516020909101209392505050565b60006020820190506100838484838551610f90565b6000601882901b5b60f81c92915050565b60007f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d98383604051602001610c589392919061196d565b6000601082901b610c94565b6000610cef8460ff851661104e565b90508151610d0d8260c5811115610d0857610d086119cd565b61107a565b14610d6457610d278160c5811115610d0857610d086119cd565b82516040517f521b3d330000000000000000000000000000000000000000000000000000000081526004810192909252602482015260440161018f565b6000610d708787610c21565b90506000610d7e868661112b565b9050610629828286610c77565b6000610d9684610cd4565b610da090846119e3565b9050610daf868683855161117f565b6000610dbc8787846111b1565b9050610ad8818461120a565b6060610dd382610cd4565b60ff168360ff161015610df357610dec85858585611216565b9050610c19565b610dec85858585611276565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610e3857610e38611767565b602090810291909101810191909152604080517f6d756473746f7265000000000000000000000000000000000000000000000000818401527f736368656d61000000000000000000000000000000000000000000000000000060308201528151808203909301835281019052600090610eba90610eb49061177d565b83610c21565b9050610c19815490565b606081604051602001610ed991815260200190565b6040516020818303038152906040529050919050565b6000818311158015610f02575083518211155b610f3e578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161018f93929190611a06565b60208401610f4c8482611a2b565b90506000610f5a8585611a43565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b6060600061019883601460006112cf565b602083048401935060208381610fa857610fa8611a5a565b06925082156110015760208390036000600019600884021c1990506008850281811c91508451811c9050811987541682821617875550818311610fec575050610083565b610ff7600187611a2b565b9550509182019190035b6020811061102a5781518455611018600185611a2b565b935060209190910190601f1901611001565b8015610083576000600019600883021c198554845182169119161785555050505050565b60006110668361105f846004611a2b565b6008021b90565b60f81c60c5811115610198576101986119cd565b6000808260c581111561108f5761108f6119cd565b60ff16905060208110156110a857610198816001611a2b565b60408110156110c85760206110be826001611a2b565b6101989190611a43565b60608110156110de5760406110be826001611a2b565b60608360c58111156110f2576110f26119cd565b036111005750600192915050565b60618360c5811115611114576111146119cd565b036111225750601492915050565b50600092915050565b600080805b8360ff1681101561117757611159611148868361104e565b60c5811115610d0857610d086119cd565b6111639083611a2b565b91508061116f8161191b565b915050611130565b509392505050565b600061118b8585610c9d565b90506000611197825490565b90506111a78160ff861685611412565b8083559050610593565b60007f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d98484846040516020016111ea9493929190611a70565b60408051601f198184030181529190528051602090910120949350505050565b61052382600083610c77565b606060006112278360ff861661104e565b905060006112408260c5811115610d0857610d086119cd565b9050600061124e8888610c21565b9050600061125c868861112b565b90506112698284836114e6565b9998505050505050505050565b6060600061128383610cd4565b61128d90856119e3565b9050600061129c8787846111b1565b905060006112b78360ff166112b18a8a61153e565b9061154b565b90506112c3828261157d565b98975050505050505050565b606060006112dd8560801c90565b90506fffffffffffffffffffffffffffffffff851660008461131557611304866008611aa3565b61131090610100611a43565b611318565b60005b9050600086838161132b5761132b611a5a565b0490506113388784611ac2565b156113c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f756e7061636b546f41727261793a207061636b65644c656e677468206d75737460448201527f2062652061206d756c7469706c65206f6620656c656d656e7453697a65000000606482015260840161018f565b602080820201604051955080860160405250808552600060208601855b83831015611404578051851c82526001929092019160209091019089016113e2565b505050505050509392505050565b600083816114208260e01c90565b90506000611431878760ff1661154b565b9050808510611455576114448186611a43565b61144e9083611a2b565b915061146c565b61145f8582611a43565b6114699083611a43565b91505b6000611479876002611aa3565b611484906004611a2b565b90507bffffffffffffffffffffffffffffffffffffffffffffffffffffffff841660e084901b1793507fffff0000000000000000000000000000000000000000000000000000000000006008820290811c19851660f088901b90911c176112c3565b60608267ffffffffffffffff81111561150157611501611751565b6040519080825280601f01601f19166020018201604052801561152b576020820181803683370190505b509050602081016111778585858461158b565b600080610eba8484610c9d565b600080611559836002611aa3565b611564906004611a2b565b905061157284826008021b90565b60f01c949350505050565b6060610198838360006114e6565b6020820484019350602082816115a3576115a3611a5a565b06915081156115f45760208290036000600019600883021c1990508554600885021b8119845116828216178452508185116115df575050610083565b6115ea600187611a2b565b9550509283900392015b6020831061161c578354815261160b600185611a2b565b9350601f19909201916020016115f4565b8215610083576000600019600885021c198251865482169119161782525050505050565b80356fffffffffffffffffffffffffffffffff1981168114610b5557600080fd5b60008060006060848603121561167657600080fd5b61167f84611640565b925061168d60208501611640565b9150604084013573ffffffffffffffffffffffffffffffffffffffff811681146116b657600080fd5b809150509250925092565b60005b838110156116dc5781810151838201526020016116c4565b838111156100835750506000910152565b600081518084526117058160208601602086016116c1565b601f01601f19169290920160200192915050565b60408152600061172c60408301856116ed565b905073ffffffffffffffffffffffffffffffffffffffff831660208301529392505050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b8051602080830151919081101561179e576000198160200360031b1b821691505b50919050565b600081518084526020808501945080840160005b838110156117d4578151875295820195908201906001016117b8565b509495945050505050565b828152604060208201526000610c1960408301846117a4565b84815260806020820152600061181160808301866117a4565b60ff85166040840152828103606084015261182c81856116ed565b979650505050505050565b83815260606020820152600061185060608301856117a4565b905060ff83166040830152949350505050565b60006020828403121561187557600080fd5b815167ffffffffffffffff8082111561188d57600080fd5b818401915084601f8301126118a157600080fd5b8151818111156118b3576118b3611751565b604051601f8201601f19908116603f011681019083821181831017156118db576118db611751565b816040528281528760208487010111156118f457600080fd5b61182c8360208301602088016116c1565b634e487b7160e01b600052601160045260246000fd5b6000600019820361192e5761192e611905565b5060010190565b828152604060208201526000610c1960408301846116ed565b838152826020820152606060408201526000610afc60608301846117a4565b83815282602082015260806040820152600061198c60808301846117a4565b8281036060840152600681527f6c656e6774680000000000000000000000000000000000000000000000000000602082015260408101915050949350505050565b634e487b7160e01b600052602160045260246000fd5b600060ff821660ff8416808210156119fd576119fd611905565b90039392505050565b606081526000611a1960608301866116ed565b60208301949094525060400152919050565b60008219821115611a3e57611a3e611905565b500190565b600082821015611a5557611a55611905565b500390565b634e487b7160e01b600052601260045260246000fd5b848152836020820152608060408201526000611a8f60808301856117a4565b905060ff8316606083015295945050505050565b6000816000190483118215151615611abd57611abd611905565b500290565b600082611adf57634e487b7160e01b600052601260045260246000fd5b50069056fea2646970667358221220315082952e709814a7df46b19d02d5672709189a87df1f5fc8b7039b394b329364736f6c634300080d0033",
126
+ "sourceMap": "467:982:68:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1106:341;;;;;;:::i;:::-;;:::i;:::-;;639:334;;;;;;:::i;:::-;;:::i;1106:341::-;1246:24;1273:63;1306:9;1317:4;1323:12;:10;:12::i;:::-;1273:32;:63::i;:::-;1246:90;;1388:54;1416:16;1434:7;1388:27;:54::i;:::-;1193:254;1106:341;;;:::o;639:334::-;778:24;805:63;838:9;849:4;855:12;:10;:12::i;805:63::-;778:90;;917:51;936:16;954:7;963:4;917:18;:51::i;409:228:52:-;551:23;555:14;551:23;538:37;534:2;530:46;;587:45;;-1:-1:-1;622:10:52;587:45;409:228;:::o;1504:367:45:-;716:3:47;699:20;;;-1:-1:-1;;677:18:47;;:43;1720:23:45;;;1728:4;1720:23;;;;:66;;;1780:6;1747:39;;:29;1766:9;1747:18;:29::i;:::-;:39;;;;1720:66;1716:151;;;1824:27;:16;:25;:27::i;:::-;1853:6;1803:57;;;;;;;;;;;;:::i;:::-;;;;;;;;1716:151;1504:367;;;;;:::o;4308:288:90:-;4419:16;;;4433:1;4419:16;;;;;;;;4387:29;;4419:16;;;;;;;;;;-1:-1:-1;4419:16:90;4387:48;;4468:16;4441:12;4454:1;4441:15;;;;;;;;:::i;:::-;;;;;;:45;;;;;4527:6;4518:17;;4510:26;;;4492:12;4505:1;4492:15;;;;;;;;:::i;:::-;;;;;;;;;;;:44;;;;885:56;;;902:11;885:56;;;2251:28:93;915:25:90;2295:12:93;;;2288:37;885:56:90;;;;;;;;;;2341:12:93;;885:56:90;;4543:48;;877:65;;;:::i;:::-;4578:12;4543:24;:48::i;:::-;4381:215;4308:288;;:::o;3395:319::-;3510:16;;;3524:1;3510:16;;;;;;;;3478:29;;3510:16;;;;;;;;;;-1:-1:-1;3510:16:90;3478:48;;3559:16;3532:12;3545:1;3532:15;;;;;;;;:::i;:::-;;;;;;:45;;;;;3618:6;3609:17;;3601:26;;;3583:12;3596:1;3583:15;;;;;;;;:::i;:::-;;;;;;;;;;;:44;;;;885:56;;;902:11;885:56;;;2251:28:93;915:25:90;2295:12:93;;;2288:37;885:56:90;;;;;;;;;;2341:12:93;;885:56:90;;3634:75;;877:65;;;:::i;:::-;3665:12;3679:1;3700:6;3682:26;;;;;;2877:14:93;2870:22;2865:3;2861:32;2849:45;;2919:1;2910:11;;2726:201;3682:26:90;;;;;;;;;;;;;3634:20;:75::i;2515:295:89:-;2623:16;;;2637:1;2623:16;;;;;;;;;2570:13;;;;2623:16;;;;;;;;;;;;-1:-1:-1;2623:16:89;2591:48;;2672:9;2663:20;;;2645:12;2658:1;2645:15;;;;;;;;:::i;:::-;;;;;;;;;;;:38;;;;885:56;;;2690:18;885:56;;;2251:28:93;;;915:25:89;2295:12:93;;;2288:37;2711:47:89;;2341:12:93;885:56:89;;;;;;;;;;;;;877:65;;;:::i;:::-;2742:12;2756:1;2711:20;:47::i;:::-;9399:4:22;9385:27;9379:34;2772:32:89;;;;-1:-1:-1;;;;2515:295:89:o;1392:403:47:-;1459:13;1513:16;1308:3;1288:23;;;-1:-1:-1;;1639:27:47;;;:63;;1693:9;1639:63;;;217:25;1639:63;-1:-1:-1;;1729:17:47;;;:43;;1768:4;1729:43;;;280:20;1729:43;1611:171;;-1:-1:-1;;3287:15:93;;;1611:171:47;;;3275:28:93;3333:3;3319:12;;;3312:25;3367:15;;3353:12;;;3346:37;3399:12;;1611:171:47;;;;;;;;;;;;1582:208;;;;1392:403;;;:::o;3729:213:32:-;3807:16;:14;:16::i;:::-;3803:135;;;3833:34;3856:5;3863:3;3833:22;:34::i;:::-;3729:213;;:::o;3803:135::-;3888:43;;;;;3895:10;;3888:31;;:43;;3920:5;;3927:3;;3888:43;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3729:213;;:::o;2438:274::-;2549:16;:14;:16::i;:::-;2545:163;;;2575:48;2594:5;2601:3;2606:10;2618:4;2575:18;:48::i;:::-;2545:163;;;2644:57;;;;;2651:10;;2644:27;;:57;;2672:5;;2679:3;;2684:10;;2696:4;;2644:57;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2438:274;;;;:::o;4477:285::-;4573:12;4597:16;:14;:16::i;:::-;4593:165;;;4630:42;4649:5;4656:3;4661:10;4630:18;:42::i;:::-;4623:49;;;;4593:165;4700:51;;;;;4707:10;;4700:27;;:51;;4728:5;;4735:3;;4740:10;;4700:51;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4700:51:32;;;;;;;;;;;;:::i;575:497::-;624:12;753:9;741:22;866:13;;;862:30;;888:4;881:11;;;575:497;:::o;862:30::-;985:4;970:29;;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;966:102;;1056:5;1046:15;;638:434;575:497;:::o;966:102::-;1020:4;1010:14;;638:434;575:497;:::o;8889:1063:30:-;8965:13;8981:18;8991:7;8981:9;:18::i;:::-;8965:34;;9048:31;9066:7;9075:3;9048:31;;;;;;;:::i;:::-;;;;;;;;9215:22;9240:18;9250:7;9240:9;:18::i;:::-;9215:43;;9269:9;9264:133;9284:5;:12;9280:1;:16;9264:133;;;9311:15;9340:5;9346:1;9340:8;;;;;;;;:::i;:::-;;;;;;;9311:38;;9357:4;:19;;;9377:7;9386:3;9357:33;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9303:94;9298:3;;;;;:::i;:::-;;;;9264:133;;;;9429:26;9458:54;9499:7;9508:3;9458:40;:54::i;:::-;9429:83;;9518:108;9550:18;9578:1;9597:25;:6;4373:37:27;;;4279:137;9597:25:30;9587:36;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9587:36:30;;9518:13;:108::i;:::-;9687:25;:6;:23;:25::i;:::-;:30;;9716:1;9687:30;9683:43;;9719:7;;;8889:1063;;:::o;9683:43::-;9766:33;9802:61;9850:7;9859:3;9802:47;:61::i;:::-;9942:1;412:28:29;;9766:97:30;-1:-1:-1;9869:78:30;327:123:29;7911:974:30;8021:13;8037:18;8047:7;8037:9;:18::i;:::-;8021:34;;8104:46;8118:7;8127:3;8132:11;8145:4;8104:46;;;;;;;;;:::i;:::-;;;;;;;;8221:22;8246:18;8256:7;8246:9;:18::i;:::-;8221:43;;8276:9;8271:154;8291:5;:12;8287:1;:16;8271:154;;;8318:15;8347:5;8353:1;8347:8;;;;;;;;:::i;:::-;;;;;;;8318:38;;8364:4;:21;;;8386:7;8395:3;8400:11;8413:4;8364:54;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8310:115;8305:3;;;;;:::i;:::-;;;;8271:154;;;;8449:24;:6;:22;:24::i;:::-;8435:38;;:11;:38;;;8431:229;;;8483:74;8517:7;8526:3;8531:6;8539:11;8552:4;8483:33;:74::i;:::-;8431:229;;;8578:75;8613:7;8622:3;8627:6;8635:11;8648:4;8578:34;:75::i;:::-;8733:9;8728:153;8748:5;:12;8744:1;:16;8728:153;;;8775:15;8804:5;8810:1;8804:8;;;;;;;;:::i;:::-;;;;;;;8775:38;;8821:4;:20;;;8842:7;8851:3;8856:11;8869:4;8821:53;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8767:114;8762:3;;;;;:::i;:::-;;;;8728:153;;;;8015:870;;7911:974;;;;:::o;17020:214::-;17119:12;17139:13;17155:18;17165:7;17155:9;:18::i;:::-;17139:34;;17186:43;17195:7;17204:3;17209:11;17222:6;17186:8;:43::i;:::-;17179:50;17020:214;-1:-1:-1;;;;;17020:214:30:o;2576:240::-;2635:13;2665:37;2694:7;2665:28;:37::i;:::-;2656:46;-1:-1:-1;5426:35:27;2708:104:30;;2777:7;2786:18;:7;:16;:18::i;:::-;2745:60;;;;;;;;;;;;:::i;2708:104::-;2576:240;;;:::o;2349:326:37:-;2460:16;;;2474:1;2460:16;;;;;;;;;2398:22;;2428:29;;2460:16;;;;;;;;;;;;-1:-1:-1;2460:16:37;2428:48;;2509:3;2482:12;2495:1;2482:15;;;;;;;;:::i;:::-;;;;;;;;;;;:32;;;;741:55;;;758:19;741:55;;;2251:28:93;;;;779:16:37;2295:12:93;;;2288:37;2521:18:37;;2542:47;;2341:12:93;741:55:37;2009:350:93;2542:47:37;2521:68;;2603:66;:44;2624:5;2631:1;2634:5;:12;2603:20;:44::i;:::-;:64;:66::i;:::-;2595:75;2349:326;-1:-1:-1;;;;2349:326:37:o;25854:171:30:-;25948:7;17790:22;26005:7;26014:3;25988:30;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;25988:30:30;;;;;;;;;25978:41;;25988:30;25978:41;;;;;25854:171;-1:-1:-1;;;25854:171:30:o;454:238:29:-;543:21;614:4;608;604:15;587:32;;630:57;636:14;652:6;660:13;675:4;:11;630:5;:57::i;4749:134:27:-;4813:5;4191:13:22;4187:24;;;4839:38:27;4833:45;;;4749:134;-1:-1:-1;;4749:134:27:o;26928:188:30:-;27029:7;17790:22;27086:7;27095:3;27069:40;;;;;;;;;;:::i;4958:133:27:-;5021:5;4191:13:22;4187:24;;;5047:38:27;4059:181:22;19514:681:30;19731:21;19755:27;:6;:27;;;:14;:27::i;:::-;19731:51;;19828:4;:11;19792:32;:10;:30;;;;;;;;:::i;:::-;;:32::i;:::-;:47;19788:157;;19892:32;:10;:30;;;;;;;;:::i;:32::-;19926:11;;19856:82;;;;;;;;8271:25:93;;;;8312:18;;;8305:34;8244:18;;19856:82:30;8097:248:93;19788:157:30;19994:16;20013:36;20036:7;20045:3;20013:22;:36::i;:::-;19994:55;;20055:14;20072:41;20093:6;20101:11;20072:20;:41::i;:::-;20055:58;;20119:71;20151:8;20169:6;20183:4;20119:13;:71::i;20199:556::-;20356:24;20397;:6;:22;:24::i;:::-;20383:38;;:11;:38;:::i;:::-;20356:65;;20466:75;20495:7;20504:3;20509:18;20529:4;:11;20466:28;:75::i;:::-;20591:27;20621:57;20645:7;20654:3;20659:18;20621:23;:57::i;:::-;20591:87;;20684:66;20716:19;20743:4;20684:13;:66::i;17334:389::-;17468:12;17506:24;:6;:22;:24::i;:::-;17492:38;;:11;:38;;;17488:231;;;17547:68;17581:7;17590:3;17595:11;17608:6;17547:33;:68::i;:::-;17540:75;;;;17488:231;17643:69;17678:7;17687:3;17692:11;17705:6;17643:34;:69::i;18106:292::-;18203:16;;;18217:1;18203:16;;;;;;;;;18166:6;;;;18203:16;;;;;;;;;;;;-1:-1:-1;18203:16:30;18180:39;;18234:7;18225:3;18229:1;18225:6;;;;;;;;:::i;:::-;;;;;;;;;;;:16;;;;17865:56;;;17882:19;17865:56;;;2251:28:93;17903:17:30;2295:12:93;;;2288:37;17865:56:30;;;;;;;;;;2341:12:93;;17865:56:30;;-1:-1:-1;;18266:59:30;;17857:65;;;:::i;:::-;18321:3;18266:40;:59::i;:::-;18247:78;;18350:42;18381:8;3169:21:29;;3063:137;78:124:33;136:13;188:7;171:25;;;;;;8679:19:93;;8723:2;8714:12;;8550:182;171:25:33;;;;;;;;;;;;;157:40;;78:124;;;:::o;1563:570:28:-;1654:5;1752:3;1743:5;:12;;:34;;;;;1766:4;:11;1759:3;:18;;1743:34;1737:85;;1805:4;1811:5;1818:3;1787:35;;;;;;;;;;;;;:::i;1737:85::-;1890:4;1880:15;;1937:17;1949:5;1880:15;1937:17;:::i;:::-;;-1:-1:-1;1960:12:28;1975:11;1981:5;1975:3;:11;:::i;:::-;642:17;2111:15;2103:3;2091:15;;;;2090:37;;;;;;-1:-1:-1;;;;;1563:570:28:o;22003:279:41:-;22067:23;22161:29;22193:34;22211:4;22217:2;22221:5;22193:17;:34::i;826:2233:29:-;1097:2;1088:6;:11;1070:29;;;;1117:2;1107:12;;;;;;:::i;:::-;;;-1:-1:-1;1212:10:29;;1208:1071;;1410:2;:11;;;1290:21;-1:-1:-1;;790:1:34;777:14;;755:37;753:40;1438:37:29;;1636:1;1628:6;1624:14;1670:4;1659:9;1655:20;1647:28;;1723:13;1717:20;1706:9;1702:36;1684:54;;1957:4;1953:9;1936:14;1930:21;1926:37;1861:4;1849:10;1845:21;1792:183;1766:14;1748:237;;2038:13;2028:6;:23;2024:36;;2053:7;;;;2024:36;2094:19;2112:1;2094:19;;:::i;:::-;;-1:-1:-1;;2201:30:29;;;;2241:23;;1208:1071;2326:2;2316:6;:12;2309:301;;2421:20;;2398:44;;2457:19;2475:1;2405:14;2457:19;:::i;:::-;;-1:-1:-1;2571:2:29;2554:19;;;;;-1:-1:-1;;2583:12:29;2309:301;;;2678:10;;2674:381;;2698:12;-1:-1:-1;;790:1:34;777:14;;755:37;753:40;2986:21:29;;2902:20;;2898:31;;3009:9;;2982:37;2847:184;2803:238;;-1:-1:-1;826:2233:29;;;;:::o;4502:165:27:-;4572:10;4614:46;4641:6;4650:9;:5;4658:1;4650:9;:::i;:::-;4195:1:22;4191:13;4187:24;;4059:181;4614:46:27;4608:53;;4597:65;;;;;;;;:::i;3194:543:21:-;3260:7;3273:13;3295:10;3289:17;;;;;;;;:::i;:::-;3273:33;;;;3323:2;3315:5;:10;3311:229;;;3357:9;:5;3365:1;3357:9;:::i;3311:229::-;3389:2;3381:5;:10;3377:163;;;3448:2;3436:9;:5;3444:1;3436:9;:::i;:::-;:14;;;;:::i;3377:163::-;3473:2;3465:5;:10;3461:79;;;3533:2;3521:9;:5;3529:1;3521:9;:::i;3461:79::-;3586:15;3572:10;:29;;;;;;;;:::i;:::-;;3568:118;;-1:-1:-1;3616:1:21;;3194:543;-1:-1:-1;;3194:543:21:o;3568:118::-;3646:18;3632:10;:32;;;;;;;;:::i;:::-;;3628:58;;-1:-1:-1;3679:2:21;;3194:543;-1:-1:-1;;3194:543:21:o;3628:58::-;-1:-1:-1;3733:1:21;;3194:543;-1:-1:-1;;3194:543:21:o;26112:251:30:-;26199:7;;;26238:102;26258:11;26254:15;;:1;:15;26238:102;;;26294:39;:17;:6;26309:1;26294:14;:17::i;:::-;:37;;;;;;;;:::i;:39::-;26284:49;;;;:::i;:::-;;-1:-1:-1;26271:3:30;;;;:::i;:::-;;;;26238:102;;;-1:-1:-1;26352:6:30;26112:251;-1:-1:-1;;;26112:251:30:o;27640:682::-;27882:31;27916:43;27946:7;27955:3;27916:29;:43::i;:::-;27882:77;;27965:28;28015:57;28046:23;3169:21:29;;3063:137;28015:57:30;27965:108;-1:-1:-1;28131:63:30;27965:108;28131:63;;;28177:16;28131:25;:63::i;:::-;412:28:29;;;28114:80:30;-1:-1:-1;28228:89:30;327:123:29;26623:220:30;26753:7;17790:22;26810:7;26819:3;26824:11;26793:43;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;26793:43:30;;;;;;;;;26783:54;;26793:43;26783:54;;;;;26623:220;-1:-1:-1;;;;26623:220:30:o;215:108:29:-;288:30;294:14;310:1;313:4;288:5;:30::i;24147:599:30:-;24288:12;24379:21;24403:27;:6;:27;;;:14;:27::i;:::-;24379:51;;24436:18;24457:32;:10;:30;;;;;;;;:::i;:32::-;24436:53;;24495:16;24514:36;24537:7;24546:3;24514:22;:36::i;:::-;24495:55;;24556:14;24573:41;24594:6;24602:11;24573:20;:41::i;:::-;24556:58;;24663:78;24694:8;24712:10;24732:6;24663:12;:78::i;:::-;24656:85;24147:599;-1:-1:-1;;;;;;;;;24147:599:30:o;24854:552::-;24996:12;25080:24;25121;:6;:22;:24::i;:::-;25107:38;;:11;:38;:::i;:::-;25080:65;;25151:16;25170:57;25194:7;25203:3;25208:18;25170:23;:57::i;:::-;25151:76;;25233:18;25254:71;25306:18;25254:71;;:43;25284:7;25293:3;25254:29;:43::i;:::-;:51;;:71::i;:::-;25233:92;;25339:62;25370:8;25388:10;25339:12;:62::i;:::-;25332:69;24854:552;-1:-1:-1;;;;;;;;24854:552:30:o;2422:1642:43:-;2535:22;2565:21;2589;:11;2372:3:28;2350:25;;2276:104;2589:21:43;2565:45;-1:-1:-1;642:17:28;2513:38;;2616:20:43;2683:11;:39;;2707:15;:11;2721:1;2707:15;:::i;:::-;2701:21;;:3;:21;:::i;:::-;2683:39;;;2697:1;2683:39;2665:57;;2769:19;2841:11;2826:12;:26;;;;;:::i;:::-;;;-1:-1:-1;3009:26:43;3024:11;3009:12;:26;:::i;:::-;:31;3005:123;;3050:71;;;;;10748:2:93;3050:71:43;;;10730:21:93;10787:2;10767:18;;;10760:30;10826:34;10806:18;;;10799:62;10897:31;10877:18;;;10870:59;10946:19;;3050:71:43;10546:425:93;3005:123:43;3314:4;3309:2;3296:11;3292:20;3288:31;3401:4;3395:11;3386:20;;3437:13;3430:5;3426:25;3420:4;3413:39;;3502:11;3495:5;3488:26;3545:1;3585:4;3578:5;3574:16;3640:13;3522:532;3668:11;3665:1;3662:18;3522:532;;;3997:19;;3984:33;;3964:54;;3755:1;3748:9;;;;;3798:4;3781:22;;;;3867:30;;3522:532;;;3526:135;;;3182:878;;;;2422:1642;;;;;:::o;2931:1018:26:-;3059:13;3128;3059;3219:20;3128:13;2453:51;;;2356:154;3219:20;3197:42;;3245:27;3275:36;3283:13;3304:5;3275:36;;:7;:36::i;:::-;3245:66;;3398:19;3379:15;:38;3375:184;;3442:37;3460:19;3442:15;:37;:::i;:::-;3427:52;;;;:::i;:::-;;;3375:184;;;3515:37;3537:15;3515:19;:37;:::i;:::-;3500:52;;;;:::i;:::-;;;3375:184;3621:14;3642:9;:5;3650:1;3642:9;:::i;:::-;3638:13;;:1;:13;:::i;:::-;3621:30;-1:-1:-1;2900:9:22;2889:21;;3767:27:26;;;;2957:41:22;3711:84:26;-1:-1:-1;2219:20:22;2278:1;2274:13;;2270:24;;;2379:9;2368:21;;3862:31:26;;;;2447:29:22;;;2436:41;3820:74:26;2107:424:22;3449:447:29;3542:19;3719:6;3709:17;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3709:17:29;-1:-1:-1;3700:26:29;-1:-1:-1;3805:4:29;3793:17;;3821:51;3826:14;3842:6;3850;3793:17;3821:4;:51::i;27203:339:30:-;27304:13;27370:31;27404:43;27434:7;27443:3;27404:29;:43::i;2625:221:26:-;2709:7;;2745:9;:5;2753:1;2745:9;:::i;:::-;2741:13;;:1;:13;:::i;:::-;2724:30;;2782:57;2816:13;2832:6;4195:1:22;4191:13;4187:24;;4059:181;2782:57:26;2775:65;;;2625:221;-1:-1:-1;;;;2625:221:26:o;3204:140:29:-;3281:12;3308:31;3313:14;3329:6;3337:1;3308:4;:31::i;4030:2169::-;4305:2;4296:6;:11;4278:29;;;;4325:2;4315:12;;;;;;:::i;:::-;;;-1:-1:-1;4420:10:29;;4416:1005;;4618:2;:11;;;4498:21;-1:-1:-1;;790:1:34;777:14;;755:37;753:40;4646:44:29;;4866:14;4860:21;4856:1;4848:6;4844:14;4840:42;5099:4;5095:9;5079:13;5073:20;5069:36;5004:4;4992:10;4988:21;4935:182;4910:13;4892:235;;5180:13;5170:6;:23;5166:36;;5195:7;;;;5166:36;5236:19;5254:1;5236:19;;:::i;:::-;;-1:-1:-1;;5383:23:29;;;;;5343:30;4416:1005;5467:2;5457:6;:12;5450:301;;5561:21;;5539:44;;5598:19;5616:1;5567:14;5598:19;:::i;:::-;;-1:-1:-1;;;5724:12:29;;;;5712:2;5695:19;5450:301;;;5819:10;;5815:380;;5839:12;-1:-1:-1;;790:1:34;777:14;;755:37;753:40;6127:20:29;;6042:21;;6038:32;;6149:9;;6123:36;5987:184;5944:237;;-1:-1:-1;4030:2169:29;;;;:::o;14:220:93:-;82:20;;-1:-1:-1;;131:78:93;;121:89;;111:117;;224:1;221;214:12;239:457;316:6;324;332;385:2;373:9;364:7;360:23;356:32;353:52;;;401:1;398;391:12;353:52;424:29;443:9;424:29;:::i;:::-;414:39;;472:38;506:2;495:9;491:18;472:38;:::i;:::-;462:48;;560:2;549:9;545:18;532:32;604:42;597:5;593:54;586:5;583:65;573:93;;662:1;659;652:12;573:93;685:5;675:15;;;239:457;;;;;:::o;701:258::-;773:1;783:113;797:6;794:1;791:13;783:113;;;873:11;;;867:18;854:11;;;847:39;819:2;812:10;783:113;;;914:6;911:1;908:13;905:48;;;-1:-1:-1;;949:1:93;931:16;;924:27;701:258::o;964:317::-;1006:3;1044:5;1038:12;1071:6;1066:3;1059:19;1087:63;1143:6;1136:4;1131:3;1127:14;1120:4;1113:5;1109:16;1087:63;:::i;:::-;1195:2;1183:15;-1:-1:-1;;1179:88:93;1170:98;;;;1270:4;1166:109;;964:317;-1:-1:-1;;964:317:93:o;1286:340::-;1463:2;1452:9;1445:21;1426:4;1483:45;1524:2;1513:9;1509:18;1501:6;1483:45;:::i;:::-;1475:53;;1576:42;1568:6;1564:55;1559:2;1548:9;1544:18;1537:83;1286:340;;;;;:::o;1631:184::-;-1:-1:-1;;;1680:1:93;1673:88;1780:4;1777:1;1770:15;1804:4;1801:1;1794:15;1820:184;-1:-1:-1;;;1869:1:93;1862:88;1969:4;1966:1;1959:15;1993:4;1990:1;1983:15;2364:357;2482:12;;2529:4;2518:16;;;2512:23;;2482:12;2547:16;;2544:171;;;-1:-1:-1;;2627:6:93;2621:4;2617:17;2614:1;2610:25;2606:98;2599:5;2595:110;2586:119;;2544:171;;2364:357;;;:::o;3422:435::-;3475:3;3513:5;3507:12;3540:6;3535:3;3528:19;3566:4;3595:2;3590:3;3586:12;3579:19;;3632:2;3625:5;3621:14;3653:1;3663:169;3677:6;3674:1;3671:13;3663:169;;;3738:13;;3726:26;;3772:12;;;;3807:15;;;;3699:1;3692:9;3663:169;;;-1:-1:-1;3848:3:93;;3422:435;-1:-1:-1;;;;;3422:435:93:o;3862:332::-;4069:6;4058:9;4051:25;4112:2;4107;4096:9;4092:18;4085:30;4032:4;4132:56;4184:2;4173:9;4169:18;4161:6;4132:56;:::i;4199:573::-;4476:6;4465:9;4458:25;4519:3;4514:2;4503:9;4499:18;4492:31;4439:4;4546:57;4598:3;4587:9;4583:19;4575:6;4546:57;:::i;:::-;4651:4;4643:6;4639:17;4634:2;4623:9;4619:18;4612:45;4705:9;4697:6;4693:22;4688:2;4677:9;4673:18;4666:50;4733:33;4759:6;4751;4733:33;:::i;:::-;4725:41;4199:573;-1:-1:-1;;;;;;;4199:573:93:o;4777:410::-;5008:6;4997:9;4990:25;5051:2;5046;5035:9;5031:18;5024:30;4971:4;5071:56;5123:2;5112:9;5108:18;5100:6;5071:56;:::i;:::-;5063:64;;5175:4;5167:6;5163:17;5158:2;5147:9;5143:18;5136:45;4777:410;;;;;;:::o;5192:942::-;5271:6;5324:2;5312:9;5303:7;5299:23;5295:32;5292:52;;;5340:1;5337;5330:12;5292:52;5373:9;5367:16;5402:18;5443:2;5435:6;5432:14;5429:34;;;5459:1;5456;5449:12;5429:34;5497:6;5486:9;5482:22;5472:32;;5542:7;5535:4;5531:2;5527:13;5523:27;5513:55;;5564:1;5561;5554:12;5513:55;5593:2;5587:9;5615:2;5611;5608:10;5605:36;;;5621:18;;:::i;:::-;5755:2;5749:9;5817:4;5809:13;;-1:-1:-1;;5805:22:93;;;5829:2;5801:31;5797:40;5785:53;;;5853:18;;;5873:22;;;5850:46;5847:72;;;5899:18;;:::i;:::-;5939:10;5935:2;5928:22;5974:2;5966:6;5959:18;6014:7;6009:2;6004;6000;5996:11;5992:20;5989:33;5986:53;;;6035:1;6032;6025:12;5986:53;6048:55;6100:2;6095;6087:6;6083:15;6078:2;6074;6070:11;6048:55;:::i;6139:184::-;-1:-1:-1;;;6188:1:93;6181:88;6288:4;6285:1;6278:15;6312:4;6309:1;6302:15;6328:195;6367:3;-1:-1:-1;;6391:5:93;6388:77;6385:103;;6468:18;;:::i;:::-;-1:-1:-1;6515:1:93;6504:13;;6328:195::o;6528:291::-;6705:6;6694:9;6687:25;6748:2;6743;6732:9;6728:18;6721:30;6668:4;6768:45;6809:2;6798:9;6794:18;6786:6;6768:45;:::i;6824:403::-;7059:6;7048:9;7041:25;7102:6;7097:2;7086:9;7082:18;7075:34;7145:2;7140;7129:9;7125:18;7118:30;7022:4;7165:56;7217:2;7206:9;7202:18;7194:6;7165:56;:::i;7232:671::-;7568:6;7557:9;7550:25;7611:6;7606:2;7595:9;7591:18;7584:34;7654:3;7649:2;7638:9;7634:18;7627:31;7531:4;7681:57;7733:3;7722:9;7718:19;7710:6;7681:57;:::i;:::-;7786:9;7778:6;7774:22;7769:2;7758:9;7754:18;7747:50;7821:1;7813:6;7806:17;7856:8;7851:2;7843:6;7839:15;7832:33;7894:2;7886:6;7882:15;7874:23;;;7232:671;;;;;;:::o;7908:184::-;-1:-1:-1;;;7957:1:93;7950:88;8057:4;8054:1;8047:15;8081:4;8078:1;8071:15;8350:195;8388:4;8425;8422:1;8418:12;8457:4;8454:1;8450:12;8482:3;8477;8474:12;8471:38;;;8489:18;;:::i;:::-;8526:13;;;8350:195;-1:-1:-1;;;8350:195:93:o;8737:360::-;8940:2;8929:9;8922:21;8903:4;8960:45;9001:2;8990:9;8986:18;8978:6;8960:45;:::i;:::-;9036:2;9021:18;;9014:34;;;;-1:-1:-1;9079:2:93;9064:18;9057:34;8952:53;8737:360;-1:-1:-1;8737:360:93:o;9102:128::-;9142:3;9173:1;9169:6;9166:1;9163:13;9160:39;;;9179:18;;:::i;:::-;-1:-1:-1;9215:9:93;;9102:128::o;9235:125::-;9275:4;9303:1;9300;9297:8;9294:34;;;9308:18;;:::i;:::-;-1:-1:-1;9345:9:93;;9235:125::o;9365:184::-;-1:-1:-1;;;9414:1:93;9407:88;9514:4;9511:1;9504:15;9538:4;9535:1;9528:15;9554:483;9813:6;9802:9;9795:25;9856:6;9851:2;9840:9;9836:18;9829:34;9899:3;9894:2;9883:9;9879:18;9872:31;9776:4;9920:57;9972:3;9961:9;9957:19;9949:6;9920:57;:::i;:::-;9912:65;;10025:4;10017:6;10013:17;10008:2;9997:9;9993:18;9986:45;9554:483;;;;;;;:::o;10042:228::-;10082:7;10208:1;-1:-1:-1;;10136:74:93;10133:1;10130:81;10125:1;10118:9;10111:17;10107:105;10104:131;;;10215:18;;:::i;:::-;-1:-1:-1;10255:9:93;;10042:228::o;10275:266::-;10307:1;10333;10323:189;;-1:-1:-1;;;10365:1:93;10358:88;10469:4;10466:1;10459:15;10497:4;10494:1;10487:15;10323:189;-1:-1:-1;10526:9:93;;10275:266::o",
127
127
  "linkReferences": {}
128
128
  },
129
129
  "methodIdentifiers": {
130
130
  "grantAccess(bytes16,bytes16,address)": "f227e653",
131
131
  "revokeAccess(bytes16,bytes16,address)": "1e42269e"
132
132
  },
133
- "rawMetadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"resource\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"AccessDenied\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"Slice_OutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"StoreCore_InvalidDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"StoreCore_TableNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes16\",\"name\":\"namespace\",\"type\":\"bytes16\"},{\"internalType\":\"bytes16\",\"name\":\"name\",\"type\":\"bytes16\"},{\"internalType\":\"address\",\"name\":\"grantee\",\"type\":\"address\"}],\"name\":\"grantAccess\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes16\",\"name\":\"namespace\",\"type\":\"bytes16\"},{\"internalType\":\"bytes16\",\"name\":\"name\",\"type\":\"bytes16\"},{\"internalType\":\"address\",\"name\":\"grantee\",\"type\":\"address\"}],\"name\":\"revokeAccess\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"grantAccess(bytes16,bytes16,address)\":{\"notice\":\"Grant access to the resource at the given namespace and name. Requires the caller to own the namespace.\"},\"revokeAccess(bytes16,bytes16,address)\":{\"notice\":\"Revoke access from the resource at the given namespace and name. Requires the caller to own the namespace.\"}},\"notice\":\"Granting and revoking access from/to resources.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/modules/core/implementations/AccessManagementSystem.sol\":\"AccessManagementSystem\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\",\":hardhat/=node_modules/hardhat/\"]},\"sources\":{\"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol\":{\"keccak256\":\"0xe881f296ba0fe410faa6395ee4a65b9bf154947aebc6aa323d41a0484504221e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ba7f706464d14365ff751936ba96f79f200df7bcd9d9f8abccd0b41387ca7967\",\"dweb:/ipfs/QmTiHgH3ZM2oJoqsbNs3iwwPFNYFNU7m8co87woxRLaUZ6\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0x117331c70b8cda783991a6b3e14861176068086526548d334cef8e1c24e16d5b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://613026caf6782e8a4ad0f366781fc13141492b667a723bdea69250c9b517c790\",\"dweb:/ipfs/QmQqwBSjcrDUoVvmXxeKZZpyGSEpeMTh2QZRExQTdZLrCt\"]},\"node_modules/@latticexyz/store/src/IErrors.sol\":{\"keccak256\":\"0xc29b8d9d2597c6e9fcfbb37714cfa02270983c95e5a54b4c70eb9d99abcfe4e9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2df9591141bec48fb57df31c0c5632085d5347d194292b14b479930bac5c8274\",\"dweb:/ipfs/Qmaa3yV9YeJ14wYyWcFYHjAhRc9qaU6WrejNAmdSP7oQRV\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0x83954f095b02ffb6ea0d391ecf6092e8304b03119dced171fbce4ee7483d3de2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://02aeafbedef0b4d5845cd8e707673872fd4fc165fe8508ad348506f053e73ee5\",\"dweb:/ipfs/QmcE33C9Mw7fdnhHKmrabwzBH2JyjF4XCG3S4D9AtzMXs2\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0x706d0d1ddd874bdcd4f73422721420b32939c1c96d4718db8b1b8e9f78bfa76c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2ed8c858fa9c3756cb70cb92bb860e0ae6429eb62551b502fb4a883e1344eb42\",\"dweb:/ipfs/QmezLAADZmFj8bKS9dccTQYHcpy4g8PSZ75AuvppSwjrW7\"]},\"node_modules/@latticexyz/store/src/PackedCounter.sol\":{\"keccak256\":\"0xd3d6a9bb72f5580e7b9794530a186e05e8d6da7c9172cb01e62fcc6e558dd052\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0625cb2a0d0e544800dff8194182aa440e1e6d61cc77b9e2d8d0186bce261146\",\"dweb:/ipfs/QmRmWWwTaJ7JPZZnJXavjJNXBzEjaK4KEzxaWj5MeJQUuH\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0xf06793dc2e9e9994403d29125359eb2f326b0e6e502d51a8e6e4e45fc9d90a3c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8cb23bf421b29839200e5584a770186309dd05cd77d4345c964f47528117a244\",\"dweb:/ipfs/QmQBvrDAtoqibky7CjCLKxGz3MquxK1iNk2Yac55Lc4xF5\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0x14879c6c859cad89451616dcee1ab6222fd565849809b89407de48f0c1a01133\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://924caa18aa0e656a295da626d586dfb120bbea321123010462b0640c7e0c52c4\",\"dweb:/ipfs/QmNueqwy4g5mwq9kXaPzue8X2mqyFjH2P2AFi3pNN3WTAt\"]},\"node_modules/@latticexyz/store/src/Storage.sol\":{\"keccak256\":\"0x86e1be7e58fbd1535c533a829f8a78c65136af92c9066e7d99d221a91dde8f9b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3d5e232aefc4a518b0cc724b4b22e7b059a7bdde02e6512b627ce8693749c8de\",\"dweb:/ipfs/QmYsxGsak61jdiyq921tKzbWC7AtgA5FVsqsT1UL6CqzPT\"]},\"node_modules/@latticexyz/store/src/StoreCore.sol\":{\"keccak256\":\"0xce2d227fc668c385bfded0a5af295a63363eb02233bafb60b4acbf048d4d4500\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://597a716eed53c2bbbc911f94e7b6440684210dec82f9dbcb31c1f18fe10d3e8e\",\"dweb:/ipfs/QmSyaRAoh56KznH1zEArkwNUg3b6r8tanP7EALnZBcs5DE\"]},\"node_modules/@latticexyz/store/src/StoreSwitch.sol\":{\"keccak256\":\"0x1f0ba0265027e9f6e945ce3ab319bafb5312f285f82bdcc2f2beabd9d7e99d64\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fa22ad06665c32e8794eea0f93d8b9e3ce08d752d37a08a669688eb53f8faa08\",\"dweb:/ipfs/QmYLTumckjQcZwt7vCj2YzM91N5mtwaSQBLEYkBJPCpMtm\"]},\"node_modules/@latticexyz/store/src/TableId.sol\":{\"keccak256\":\"0x8c55662dc4f66be577bb96bfdcb65d95fe1323c733443ab749cb9ec1e58f0a6e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://209ed70247c1c64b56d9b21f2902e67e0994cb89ac19be8e1553dac9d978fb76\",\"dweb:/ipfs/QmVLYNDwBL3GZidDpwqFZx916zoGZ5tWVztxKQFEEzVybP\"]},\"node_modules/@latticexyz/store/src/Utils.sol\":{\"keccak256\":\"0x426216bfa1c0e70640787007a6e39257cf09e586fd04831ea4fb3dd9c5768fc4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://38e657fa9cfaebe39477eaff27d1ad4d7eeaf0c0058539d2ec7e6976d93df4f4\",\"dweb:/ipfs/QmRuaxqRjUrHHC2ZyTnpmq6sfrWGCDh91B6F5chFAToU6U\"]},\"node_modules/@latticexyz/store/src/codegen/Tables.sol\":{\"keccak256\":\"0x2eba8dd4e9f07b505438a2fb744ac7da26b1f6321b8a88054e9442db947ab435\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd1a60dfff209a3f1df84aeb5d7f8a5cf0419c19be63bac428df0a779d5ba437\",\"dweb:/ipfs/QmaHem2GMJPHrtr1f7fk1ThTBESdYipmBxEEoKT1DBRmsd\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Callbacks.sol\":{\"keccak256\":\"0x81f25ea159146621a7add30f6701d4787bdf828f8782488d5f9be3eb9b965130\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://64c3fdcafe59b27faaf03d5102b83defad59679099d9d1616b2d928ab1e86727\",\"dweb:/ipfs/Qmdr1W6j6bHnE7tjjLMo3G4sAWr4mKePWGDycPEDuKUAJX\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol\":{\"keccak256\":\"0xc06e9aef4d145b3e10c1b210ea48a609744638609674c74bc7f77628f1b051d4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://94ea702795469b50d8c2cab53869caa456fe17d8b850445c59b9a1fd516d4b75\",\"dweb:/ipfs/QmNyiNVHyL2YnhiJfCpfjgNq7bSqCHghfS9wgQ8tTQ5x6e\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Mixed.sol\":{\"keccak256\":\"0xe48f64075029fd088e33201f451bf3fe9baed3db4360a58f7c710e5fd904fb21\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9e58e6ee54b6681f9ccb39259c4e22e74fdc1876c915c0143048810b03f4b3be\",\"dweb:/ipfs/QmQrxD8NDMd9DvrY5A9f1uRBjPwMgppoGn7w8R79qgdXuo\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreMetadata.sol\":{\"keccak256\":\"0x03eac5a0bbface43a3a01da3226443356a7aeeb6a88a063f6d9d18551613346c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f681ef065f0fed547f2675f4f21d8dd38e6d4845cccff0ac01e3d5b7b1a5c156\",\"dweb:/ipfs/QmcjEWQghNK2g1QHRqUWRmDXwweWhZTAJNRdyhyLpJf1V4\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Vector2.sol\":{\"keccak256\":\"0x6f77096a6301fa2438365eb4c577e5086f4e45369be801705f2a064af7de0d51\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://44b3fa75b4475ff46cbdb9bc9907a766716090e077e1e4a95314b20857a70136\",\"dweb:/ipfs/QmNwqMe3ehQL8aJkvU93nXMSyr9vMCYFXBUdZZ3BqKRKdz\"]},\"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol\":{\"keccak256\":\"0xe760dfb8ff20cfb44eee6a5f03ac84abbc91382fca2e36c88c92046e6b3a66e0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://75eb4b355c547ffee62031d8dfb80844fa31fa4460543a088278083662dc4c12\",\"dweb:/ipfs/Qmf8sRcrjJ6hEQ8TPwwe6KcXcE2MPw7Juvf7fKBZ1fBCt6\"]},\"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol\":{\"keccak256\":\"0x046f0a2dc543c7a80be91ff26b19990a10fbe73cb605f4944af38e04326a43df\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d94f038e70179571d2aed3cbe03e812ce79a471372171fb78e8189bebd7ae1ac\",\"dweb:/ipfs/QmUV4bkaEc8hefLpLRaGwmu4WZsqRLE9e6R8UdaKPExb6p\"]},\"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol\":{\"keccak256\":\"0xff0278a4e35174bbed8a38dad8ae7506f725bfe95f0b7c13829c353d68dd25dc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://26249ec0c2fa3a3430a2f8edbfc5cd678e34ea1cf1d7490ecaf1e925c976eb85\",\"dweb:/ipfs/QmUpkhr5kFiDKc7rZ2z5HcTf5PkrWVJu5sa31tYv911cPL\"]},\"node_modules/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"src/AccessControl.sol\":{\"keccak256\":\"0x1709609787c064269c201ba1683bb965746ecfffc2fd3ca945665150c1452b61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d40409726d6ebb08666be0c098a45ae2992535d0acb785cd9283daf3173fe45b\",\"dweb:/ipfs/QmdELXD8o41THzejXXWeBBYgb38U5TcK3Q4EygbmBkMRE9\"]},\"src/Call.sol\":{\"keccak256\":\"0x27114d009081f1f0a5c0b62c9ebe30415c76ed02fa46b305202bb5163711d926\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a553cf84c877160c8db6978083f09632800032de6dcc5d8a5c3b9c18cabeb578\",\"dweb:/ipfs/QmWyCDz5NobNAHEs1PCftXJzV5oCu5SKfmzfA9BynSccGn\"]},\"src/ResourceSelector.sol\":{\"keccak256\":\"0xf6a1714d556e95fda532f630ac1bd8fd9843e980dffce29f81a29c0b6f02d368\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5075e64cc1224bcd8ab46c16f85874ac91efecbf5cbeb82e5c1e3fa4f1a1edfa\",\"dweb:/ipfs/QmTqCVF6k7CMsiUJ223mXumjVyoCCNU2uE9fUHDgBmDdRj\"]},\"src/System.sol\":{\"keccak256\":\"0xf1342c8461adb4c5821c1ca106a67ba34402b36265fa63bf766eed937bd92bf9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ea41f96a27a26d56d62824e007b3b0234d44fcd94361e5c8f40fdb334cbf444b\",\"dweb:/ipfs/QmRfj4iS5Lu9V4e47wsPQy4op1qQ6hqaJpERLB5EyzqW38\"]},\"src/WorldContext.sol\":{\"keccak256\":\"0xd44a445ff07ac1551e5a8f17450381664ecf68dcb1c89fee8fb11b9b73c9cd7b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1235cc5636743b9afbb313676fc4c84ac5607142c758b0bfc59107aff79ed30c\",\"dweb:/ipfs/QmUtTUFjxKy7GtQC1Uzn6B2bRNZpcASFySPDjd16T47Rcz\"]},\"src/constants.sol\":{\"keccak256\":\"0xa0ae422aceefe0e7f200448201769e2bc527fa9e647475f65401558a03c0a83d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a2473ca8ab5e184b7320c476fd07bdff31ff450fc750ab9eabb9c0a2ee43776e\",\"dweb:/ipfs/QmQ7sBqwPgj4AtsENyzCMFWVQeMzV5uuCN8ygNU2pKYotE\"]},\"src/interfaces/IErrors.sol\":{\"keccak256\":\"0x8a8a5caf964d336b38123704893463589b3bf6195405c9929c21291faf0e2f6b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3aa3dcd4d059015580dbcad309db99db7a18fe7c015f1f83f56d84684f27bd14\",\"dweb:/ipfs/QmVpQW1kF4ruDmXtnTSnGRuxr7RtJqo8NwEXtfdA5TVKq1\"]},\"src/interfaces/IModule.sol\":{\"keccak256\":\"0x0c9f5a12f8b27ae6f02b6ca7ccfd7ab1de349e5c4773f99cfab1fd4721bc4a06\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cafb66fbd4b3587121a2f2ff6fc5e4c32796e6469719899e181c3abac1479178\",\"dweb:/ipfs/QmT6GKskhqmLadhuNVVbgDEgJ92jMsCdyLcfrSaiVQeZYf\"]},\"src/modules/core/implementations/AccessManagementSystem.sol\":{\"keccak256\":\"0x0a423051cc36004d7deadbc109c545e0f40230acc4f9d770a352f3e3ae84cacb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7dfc31e43d8b64f58db6faa9f2cd72c8ad5fdd1c9161a6444c8f4e880f456be6\",\"dweb:/ipfs/QmQa9bP1bw18JRhWd9yBwz8HpNDxqbWwQZH1W6necobdP7\"]},\"src/modules/core/tables/FunctionSelectors.sol\":{\"keccak256\":\"0x3d8a4cac9dcd5f479faa48b5e5a82f4100615afa674c96e35a840847fedd043e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a1f1136dc47239b2032ddbc77f907a2aac632f66f7a8b7f4596e848b2b47263c\",\"dweb:/ipfs/Qmd4XZ8mZs5R1B4oVJwSxxFWGj5VcZ6buKoWPeHJQr6oCu\"]},\"src/modules/core/tables/Systems.sol\":{\"keccak256\":\"0x4bac2d11ed8b4c4ebd9a5ad7fe194c23c799d21aa222877896f0781c71c46eec\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8df7240855a018acdc348724c495110ef8313841bfb33a1fe4bd2c67c378cbc\",\"dweb:/ipfs/QmevZAkn4ohkjUzzTp1nYEFENKTt8p8xY2eXAkofV7Pwkk\"]},\"src/tables/InstalledModules.sol\":{\"keccak256\":\"0x0a2a13f174a53839754ab151d26d6d30018a9811e386691431660d0f19cd37fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c1e2784f21144cb127d3f18473541d33c7ad8f2f8e18f64fccc6f03bc34a667\",\"dweb:/ipfs/QmbAVUb6feHKm8weavZw4bzovsYHp9GqVzAw1LmA15xgNf\"]},\"src/tables/NamespaceOwner.sol\":{\"keccak256\":\"0x305c60ea746f91db681eb9beaadbe3cd39e5d6839bb9499c0181c53fa312beb8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3166cf67b2dc066ccd2145452b26069b8b849b68de52d759b226396f0f95c362\",\"dweb:/ipfs/QmSkM1zDeAVQay9XHNtKBS8Vv9hPmhzDbJ1Y9ihZjQsziU\"]},\"src/tables/ResourceAccess.sol\":{\"keccak256\":\"0x8bbcbae889a7c9b71d3606309f9013911693a23f110d869aa24f4c19636ef97c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2d49a931783a91c903e7915c7489a6813dfb30bfdc9a634aaff0cb6b9894a45a\",\"dweb:/ipfs/QmeU9CzyZBAoYK7pRxDsAq22vXd6o5cnEAGQ26q7eQUoRc\"]}},\"version\":1}",
133
+ "rawMetadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"resource\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"AccessDenied\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"Slice_OutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"StoreCore_InvalidDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"StoreCore_TableNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes16\",\"name\":\"namespace\",\"type\":\"bytes16\"},{\"internalType\":\"bytes16\",\"name\":\"name\",\"type\":\"bytes16\"},{\"internalType\":\"address\",\"name\":\"grantee\",\"type\":\"address\"}],\"name\":\"grantAccess\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes16\",\"name\":\"namespace\",\"type\":\"bytes16\"},{\"internalType\":\"bytes16\",\"name\":\"name\",\"type\":\"bytes16\"},{\"internalType\":\"address\",\"name\":\"grantee\",\"type\":\"address\"}],\"name\":\"revokeAccess\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"grantAccess(bytes16,bytes16,address)\":{\"notice\":\"Grant access to the resource at the given namespace and name. Requires the caller to own the namespace.\"},\"revokeAccess(bytes16,bytes16,address)\":{\"notice\":\"Revoke access from the resource at the given namespace and name. Requires the caller to own the namespace.\"}},\"notice\":\"Granting and revoking access from/to resources.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/modules/core/implementations/AccessManagementSystem.sol\":\"AccessManagementSystem\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\",\":hardhat/=node_modules/hardhat/\"]},\"sources\":{\"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol\":{\"keccak256\":\"0xe881f296ba0fe410faa6395ee4a65b9bf154947aebc6aa323d41a0484504221e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ba7f706464d14365ff751936ba96f79f200df7bcd9d9f8abccd0b41387ca7967\",\"dweb:/ipfs/QmTiHgH3ZM2oJoqsbNs3iwwPFNYFNU7m8co87woxRLaUZ6\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0x117331c70b8cda783991a6b3e14861176068086526548d334cef8e1c24e16d5b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://613026caf6782e8a4ad0f366781fc13141492b667a723bdea69250c9b517c790\",\"dweb:/ipfs/QmQqwBSjcrDUoVvmXxeKZZpyGSEpeMTh2QZRExQTdZLrCt\"]},\"node_modules/@latticexyz/store/src/IErrors.sol\":{\"keccak256\":\"0xc29b8d9d2597c6e9fcfbb37714cfa02270983c95e5a54b4c70eb9d99abcfe4e9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2df9591141bec48fb57df31c0c5632085d5347d194292b14b479930bac5c8274\",\"dweb:/ipfs/Qmaa3yV9YeJ14wYyWcFYHjAhRc9qaU6WrejNAmdSP7oQRV\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0x465c23c85a77fdc6001f06a6899080c1d6cfef9858886d7d922e54fce1eb79e6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6358088868fa52711e65d3462eb6b6762fe736eb7f033909e3260280b6a87957\",\"dweb:/ipfs/QmdkwwvTa9Hzc5SDP4C1hvrKzc8SxWNDrxNqQKw4ZoCKzL\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0x706d0d1ddd874bdcd4f73422721420b32939c1c96d4718db8b1b8e9f78bfa76c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2ed8c858fa9c3756cb70cb92bb860e0ae6429eb62551b502fb4a883e1344eb42\",\"dweb:/ipfs/QmezLAADZmFj8bKS9dccTQYHcpy4g8PSZ75AuvppSwjrW7\"]},\"node_modules/@latticexyz/store/src/PackedCounter.sol\":{\"keccak256\":\"0xd3d6a9bb72f5580e7b9794530a186e05e8d6da7c9172cb01e62fcc6e558dd052\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0625cb2a0d0e544800dff8194182aa440e1e6d61cc77b9e2d8d0186bce261146\",\"dweb:/ipfs/QmRmWWwTaJ7JPZZnJXavjJNXBzEjaK4KEzxaWj5MeJQUuH\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0xf06793dc2e9e9994403d29125359eb2f326b0e6e502d51a8e6e4e45fc9d90a3c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8cb23bf421b29839200e5584a770186309dd05cd77d4345c964f47528117a244\",\"dweb:/ipfs/QmQBvrDAtoqibky7CjCLKxGz3MquxK1iNk2Yac55Lc4xF5\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0x14879c6c859cad89451616dcee1ab6222fd565849809b89407de48f0c1a01133\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://924caa18aa0e656a295da626d586dfb120bbea321123010462b0640c7e0c52c4\",\"dweb:/ipfs/QmNueqwy4g5mwq9kXaPzue8X2mqyFjH2P2AFi3pNN3WTAt\"]},\"node_modules/@latticexyz/store/src/Storage.sol\":{\"keccak256\":\"0x2ccca6556a3c2595479914d30efa84fc3b61cff30036522714a0ef99289ee2af\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9d169812a4159454be580d42fedee63d121646102e6462fe3b2ea905b69bee07\",\"dweb:/ipfs/QmXiKsMeN4nsdiqDwhuWfb4J3UF57B4rkuwkfbrRXA6vtb\"]},\"node_modules/@latticexyz/store/src/StoreCore.sol\":{\"keccak256\":\"0xba4d729be15ad4fd887f2bbaadd12a902af5470b62c58bd9157661177c60a671\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cfcf8588c9641afb6e2ed658f584f378909f0615da7a5bc5c919cf51c15b12ff\",\"dweb:/ipfs/QmZEbMyZZRL7oLKC8VMLmTFEK5LL1BAJyxnvmgSNiy5kVg\"]},\"node_modules/@latticexyz/store/src/StoreSwitch.sol\":{\"keccak256\":\"0x341c555b911581dc6a19e8eb6f64f9875ff92f8e1c9f3a9c3333129e802e130c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0809c8e9a4e46d7cce2d9a21fb315d5a3895d0e9af862fcc9b84733431ec94e0\",\"dweb:/ipfs/QmetNXMWrE1K57YJTEZMiFuEPa3yxnRvFnZFpSJRpQoTQi\"]},\"node_modules/@latticexyz/store/src/TableId.sol\":{\"keccak256\":\"0x8c55662dc4f66be577bb96bfdcb65d95fe1323c733443ab749cb9ec1e58f0a6e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://209ed70247c1c64b56d9b21f2902e67e0994cb89ac19be8e1553dac9d978fb76\",\"dweb:/ipfs/QmVLYNDwBL3GZidDpwqFZx916zoGZ5tWVztxKQFEEzVybP\"]},\"node_modules/@latticexyz/store/src/Utils.sol\":{\"keccak256\":\"0x426216bfa1c0e70640787007a6e39257cf09e586fd04831ea4fb3dd9c5768fc4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://38e657fa9cfaebe39477eaff27d1ad4d7eeaf0c0058539d2ec7e6976d93df4f4\",\"dweb:/ipfs/QmRuaxqRjUrHHC2ZyTnpmq6sfrWGCDh91B6F5chFAToU6U\"]},\"node_modules/@latticexyz/store/src/codegen/Tables.sol\":{\"keccak256\":\"0x2eba8dd4e9f07b505438a2fb744ac7da26b1f6321b8a88054e9442db947ab435\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd1a60dfff209a3f1df84aeb5d7f8a5cf0419c19be63bac428df0a779d5ba437\",\"dweb:/ipfs/QmaHem2GMJPHrtr1f7fk1ThTBESdYipmBxEEoKT1DBRmsd\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Callbacks.sol\":{\"keccak256\":\"0x81f25ea159146621a7add30f6701d4787bdf828f8782488d5f9be3eb9b965130\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://64c3fdcafe59b27faaf03d5102b83defad59679099d9d1616b2d928ab1e86727\",\"dweb:/ipfs/Qmdr1W6j6bHnE7tjjLMo3G4sAWr4mKePWGDycPEDuKUAJX\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol\":{\"keccak256\":\"0xc06e9aef4d145b3e10c1b210ea48a609744638609674c74bc7f77628f1b051d4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://94ea702795469b50d8c2cab53869caa456fe17d8b850445c59b9a1fd516d4b75\",\"dweb:/ipfs/QmNyiNVHyL2YnhiJfCpfjgNq7bSqCHghfS9wgQ8tTQ5x6e\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Mixed.sol\":{\"keccak256\":\"0xe48f64075029fd088e33201f451bf3fe9baed3db4360a58f7c710e5fd904fb21\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9e58e6ee54b6681f9ccb39259c4e22e74fdc1876c915c0143048810b03f4b3be\",\"dweb:/ipfs/QmQrxD8NDMd9DvrY5A9f1uRBjPwMgppoGn7w8R79qgdXuo\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreMetadata.sol\":{\"keccak256\":\"0x03eac5a0bbface43a3a01da3226443356a7aeeb6a88a063f6d9d18551613346c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f681ef065f0fed547f2675f4f21d8dd38e6d4845cccff0ac01e3d5b7b1a5c156\",\"dweb:/ipfs/QmcjEWQghNK2g1QHRqUWRmDXwweWhZTAJNRdyhyLpJf1V4\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Vector2.sol\":{\"keccak256\":\"0x6f77096a6301fa2438365eb4c577e5086f4e45369be801705f2a064af7de0d51\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://44b3fa75b4475ff46cbdb9bc9907a766716090e077e1e4a95314b20857a70136\",\"dweb:/ipfs/QmNwqMe3ehQL8aJkvU93nXMSyr9vMCYFXBUdZZ3BqKRKdz\"]},\"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol\":{\"keccak256\":\"0xe760dfb8ff20cfb44eee6a5f03ac84abbc91382fca2e36c88c92046e6b3a66e0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://75eb4b355c547ffee62031d8dfb80844fa31fa4460543a088278083662dc4c12\",\"dweb:/ipfs/Qmf8sRcrjJ6hEQ8TPwwe6KcXcE2MPw7Juvf7fKBZ1fBCt6\"]},\"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol\":{\"keccak256\":\"0x046f0a2dc543c7a80be91ff26b19990a10fbe73cb605f4944af38e04326a43df\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d94f038e70179571d2aed3cbe03e812ce79a471372171fb78e8189bebd7ae1ac\",\"dweb:/ipfs/QmUV4bkaEc8hefLpLRaGwmu4WZsqRLE9e6R8UdaKPExb6p\"]},\"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol\":{\"keccak256\":\"0xff0278a4e35174bbed8a38dad8ae7506f725bfe95f0b7c13829c353d68dd25dc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://26249ec0c2fa3a3430a2f8edbfc5cd678e34ea1cf1d7490ecaf1e925c976eb85\",\"dweb:/ipfs/QmUpkhr5kFiDKc7rZ2z5HcTf5PkrWVJu5sa31tYv911cPL\"]},\"node_modules/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"src/AccessControl.sol\":{\"keccak256\":\"0x1709609787c064269c201ba1683bb965746ecfffc2fd3ca945665150c1452b61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d40409726d6ebb08666be0c098a45ae2992535d0acb785cd9283daf3173fe45b\",\"dweb:/ipfs/QmdELXD8o41THzejXXWeBBYgb38U5TcK3Q4EygbmBkMRE9\"]},\"src/Call.sol\":{\"keccak256\":\"0x27114d009081f1f0a5c0b62c9ebe30415c76ed02fa46b305202bb5163711d926\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a553cf84c877160c8db6978083f09632800032de6dcc5d8a5c3b9c18cabeb578\",\"dweb:/ipfs/QmWyCDz5NobNAHEs1PCftXJzV5oCu5SKfmzfA9BynSccGn\"]},\"src/ResourceSelector.sol\":{\"keccak256\":\"0xf6a1714d556e95fda532f630ac1bd8fd9843e980dffce29f81a29c0b6f02d368\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5075e64cc1224bcd8ab46c16f85874ac91efecbf5cbeb82e5c1e3fa4f1a1edfa\",\"dweb:/ipfs/QmTqCVF6k7CMsiUJ223mXumjVyoCCNU2uE9fUHDgBmDdRj\"]},\"src/System.sol\":{\"keccak256\":\"0xf1342c8461adb4c5821c1ca106a67ba34402b36265fa63bf766eed937bd92bf9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ea41f96a27a26d56d62824e007b3b0234d44fcd94361e5c8f40fdb334cbf444b\",\"dweb:/ipfs/QmRfj4iS5Lu9V4e47wsPQy4op1qQ6hqaJpERLB5EyzqW38\"]},\"src/WorldContext.sol\":{\"keccak256\":\"0xd44a445ff07ac1551e5a8f17450381664ecf68dcb1c89fee8fb11b9b73c9cd7b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1235cc5636743b9afbb313676fc4c84ac5607142c758b0bfc59107aff79ed30c\",\"dweb:/ipfs/QmUtTUFjxKy7GtQC1Uzn6B2bRNZpcASFySPDjd16T47Rcz\"]},\"src/constants.sol\":{\"keccak256\":\"0xa0ae422aceefe0e7f200448201769e2bc527fa9e647475f65401558a03c0a83d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a2473ca8ab5e184b7320c476fd07bdff31ff450fc750ab9eabb9c0a2ee43776e\",\"dweb:/ipfs/QmQ7sBqwPgj4AtsENyzCMFWVQeMzV5uuCN8ygNU2pKYotE\"]},\"src/interfaces/IErrors.sol\":{\"keccak256\":\"0x8a8a5caf964d336b38123704893463589b3bf6195405c9929c21291faf0e2f6b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3aa3dcd4d059015580dbcad309db99db7a18fe7c015f1f83f56d84684f27bd14\",\"dweb:/ipfs/QmVpQW1kF4ruDmXtnTSnGRuxr7RtJqo8NwEXtfdA5TVKq1\"]},\"src/interfaces/IModule.sol\":{\"keccak256\":\"0x0c9f5a12f8b27ae6f02b6ca7ccfd7ab1de349e5c4773f99cfab1fd4721bc4a06\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cafb66fbd4b3587121a2f2ff6fc5e4c32796e6469719899e181c3abac1479178\",\"dweb:/ipfs/QmT6GKskhqmLadhuNVVbgDEgJ92jMsCdyLcfrSaiVQeZYf\"]},\"src/modules/core/implementations/AccessManagementSystem.sol\":{\"keccak256\":\"0x0a423051cc36004d7deadbc109c545e0f40230acc4f9d770a352f3e3ae84cacb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7dfc31e43d8b64f58db6faa9f2cd72c8ad5fdd1c9161a6444c8f4e880f456be6\",\"dweb:/ipfs/QmQa9bP1bw18JRhWd9yBwz8HpNDxqbWwQZH1W6necobdP7\"]},\"src/modules/core/tables/FunctionSelectors.sol\":{\"keccak256\":\"0x3d8a4cac9dcd5f479faa48b5e5a82f4100615afa674c96e35a840847fedd043e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a1f1136dc47239b2032ddbc77f907a2aac632f66f7a8b7f4596e848b2b47263c\",\"dweb:/ipfs/Qmd4XZ8mZs5R1B4oVJwSxxFWGj5VcZ6buKoWPeHJQr6oCu\"]},\"src/modules/core/tables/Systems.sol\":{\"keccak256\":\"0x4bac2d11ed8b4c4ebd9a5ad7fe194c23c799d21aa222877896f0781c71c46eec\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8df7240855a018acdc348724c495110ef8313841bfb33a1fe4bd2c67c378cbc\",\"dweb:/ipfs/QmevZAkn4ohkjUzzTp1nYEFENKTt8p8xY2eXAkofV7Pwkk\"]},\"src/tables/InstalledModules.sol\":{\"keccak256\":\"0x0a2a13f174a53839754ab151d26d6d30018a9811e386691431660d0f19cd37fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c1e2784f21144cb127d3f18473541d33c7ad8f2f8e18f64fccc6f03bc34a667\",\"dweb:/ipfs/QmbAVUb6feHKm8weavZw4bzovsYHp9GqVzAw1LmA15xgNf\"]},\"src/tables/NamespaceOwner.sol\":{\"keccak256\":\"0x305c60ea746f91db681eb9beaadbe3cd39e5d6839bb9499c0181c53fa312beb8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3166cf67b2dc066ccd2145452b26069b8b849b68de52d759b226396f0f95c362\",\"dweb:/ipfs/QmSkM1zDeAVQay9XHNtKBS8Vv9hPmhzDbJ1Y9ihZjQsziU\"]},\"src/tables/ResourceAccess.sol\":{\"keccak256\":\"0x8bbcbae889a7c9b71d3606309f9013911693a23f110d869aa24f4c19636ef97c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2d49a931783a91c903e7915c7489a6813dfb30bfdc9a634aaff0cb6b9894a45a\",\"dweb:/ipfs/QmeU9CzyZBAoYK7pRxDsAq22vXd6o5cnEAGQ26q7eQUoRc\"]}},\"version\":1}",
134
134
  "metadata": {
135
135
  "compiler": {
136
136
  "version": "0.8.13+commit.abaa5c0e"
@@ -315,10 +315,10 @@
315
315
  "license": "MIT"
316
316
  },
317
317
  "node_modules/@latticexyz/store/src/IStore.sol": {
318
- "keccak256": "0x83954f095b02ffb6ea0d391ecf6092e8304b03119dced171fbce4ee7483d3de2",
318
+ "keccak256": "0x465c23c85a77fdc6001f06a6899080c1d6cfef9858886d7d922e54fce1eb79e6",
319
319
  "urls": [
320
- "bzz-raw://02aeafbedef0b4d5845cd8e707673872fd4fc165fe8508ad348506f053e73ee5",
321
- "dweb:/ipfs/QmcE33C9Mw7fdnhHKmrabwzBH2JyjF4XCG3S4D9AtzMXs2"
320
+ "bzz-raw://6358088868fa52711e65d3462eb6b6762fe736eb7f033909e3260280b6a87957",
321
+ "dweb:/ipfs/QmdkwwvTa9Hzc5SDP4C1hvrKzc8SxWNDrxNqQKw4ZoCKzL"
322
322
  ],
323
323
  "license": "MIT"
324
324
  },
@@ -355,26 +355,26 @@
355
355
  "license": "MIT"
356
356
  },
357
357
  "node_modules/@latticexyz/store/src/Storage.sol": {
358
- "keccak256": "0x86e1be7e58fbd1535c533a829f8a78c65136af92c9066e7d99d221a91dde8f9b",
358
+ "keccak256": "0x2ccca6556a3c2595479914d30efa84fc3b61cff30036522714a0ef99289ee2af",
359
359
  "urls": [
360
- "bzz-raw://3d5e232aefc4a518b0cc724b4b22e7b059a7bdde02e6512b627ce8693749c8de",
361
- "dweb:/ipfs/QmYsxGsak61jdiyq921tKzbWC7AtgA5FVsqsT1UL6CqzPT"
360
+ "bzz-raw://9d169812a4159454be580d42fedee63d121646102e6462fe3b2ea905b69bee07",
361
+ "dweb:/ipfs/QmXiKsMeN4nsdiqDwhuWfb4J3UF57B4rkuwkfbrRXA6vtb"
362
362
  ],
363
363
  "license": "MIT"
364
364
  },
365
365
  "node_modules/@latticexyz/store/src/StoreCore.sol": {
366
- "keccak256": "0xce2d227fc668c385bfded0a5af295a63363eb02233bafb60b4acbf048d4d4500",
366
+ "keccak256": "0xba4d729be15ad4fd887f2bbaadd12a902af5470b62c58bd9157661177c60a671",
367
367
  "urls": [
368
- "bzz-raw://597a716eed53c2bbbc911f94e7b6440684210dec82f9dbcb31c1f18fe10d3e8e",
369
- "dweb:/ipfs/QmSyaRAoh56KznH1zEArkwNUg3b6r8tanP7EALnZBcs5DE"
368
+ "bzz-raw://cfcf8588c9641afb6e2ed658f584f378909f0615da7a5bc5c919cf51c15b12ff",
369
+ "dweb:/ipfs/QmZEbMyZZRL7oLKC8VMLmTFEK5LL1BAJyxnvmgSNiy5kVg"
370
370
  ],
371
371
  "license": "MIT"
372
372
  },
373
373
  "node_modules/@latticexyz/store/src/StoreSwitch.sol": {
374
- "keccak256": "0x1f0ba0265027e9f6e945ce3ab319bafb5312f285f82bdcc2f2beabd9d7e99d64",
374
+ "keccak256": "0x341c555b911581dc6a19e8eb6f64f9875ff92f8e1c9f3a9c3333129e802e130c",
375
375
  "urls": [
376
- "bzz-raw://fa22ad06665c32e8794eea0f93d8b9e3ce08d752d37a08a669688eb53f8faa08",
377
- "dweb:/ipfs/QmYLTumckjQcZwt7vCj2YzM91N5mtwaSQBLEYkBJPCpMtm"
376
+ "bzz-raw://0809c8e9a4e46d7cce2d9a21fb315d5a3895d0e9af862fcc9b84733431ec94e0",
377
+ "dweb:/ipfs/QmetNXMWrE1K57YJTEZMiFuEPa3yxnRvFnZFpSJRpQoTQi"
378
378
  ],
379
379
  "license": "MIT"
380
380
  },
@@ -591,35 +591,35 @@
591
591
  },
592
592
  "ast": {
593
593
  "absolutePath": "src/modules/core/implementations/AccessManagementSystem.sol",
594
- "id": 33967,
594
+ "id": 34568,
595
595
  "exportedSymbols": {
596
596
  "AccessControl": [
597
- 32296
597
+ 32820
598
598
  ],
599
599
  "AccessManagementSystem": [
600
- 33966
600
+ 34567
601
601
  ],
602
602
  "Call": [
603
- 32352
603
+ 32876
604
604
  ],
605
605
  "IModule": [
606
- 33277
606
+ 33863
607
607
  ],
608
608
  "InstalledModules": [
609
- 40742
609
+ 41343
610
610
  ],
611
611
  "ResourceAccess": [
612
- 41825
612
+ 42426
613
613
  ],
614
614
  "System": [
615
- 32532
615
+ 33056
616
616
  ]
617
617
  },
618
618
  "nodeType": "SourceUnit",
619
619
  "src": "32:1418:68",
620
620
  "nodes": [
621
621
  {
622
- "id": 33893,
622
+ "id": 34494,
623
623
  "nodeType": "PragmaDirective",
624
624
  "src": "32:24:68",
625
625
  "nodes": [],
@@ -631,23 +631,23 @@
631
631
  ]
632
632
  },
633
633
  {
634
- "id": 33895,
634
+ "id": 34496,
635
635
  "nodeType": "ImportDirective",
636
636
  "src": "58:58:68",
637
637
  "nodes": [],
638
638
  "absolutePath": "src/interfaces/IModule.sol",
639
639
  "file": "../../../interfaces/IModule.sol",
640
640
  "nameLocation": "-1:-1:-1",
641
- "scope": 33967,
642
- "sourceUnit": 33278,
641
+ "scope": 34568,
642
+ "sourceUnit": 33864,
643
643
  "symbolAliases": [
644
644
  {
645
645
  "foreign": {
646
- "id": 33894,
646
+ "id": 34495,
647
647
  "name": "IModule",
648
648
  "nodeType": "Identifier",
649
649
  "overloadedDeclarations": [],
650
- "referencedDeclaration": 33277,
650
+ "referencedDeclaration": 33863,
651
651
  "src": "67:7:68",
652
652
  "typeDescriptions": {}
653
653
  },
@@ -657,23 +657,23 @@
657
657
  "unitAlias": ""
658
658
  },
659
659
  {
660
- "id": 33897,
660
+ "id": 34498,
661
661
  "nodeType": "ImportDirective",
662
662
  "src": "117:45:68",
663
663
  "nodes": [],
664
664
  "absolutePath": "src/System.sol",
665
665
  "file": "../../../System.sol",
666
666
  "nameLocation": "-1:-1:-1",
667
- "scope": 33967,
668
- "sourceUnit": 32533,
667
+ "scope": 34568,
668
+ "sourceUnit": 33057,
669
669
  "symbolAliases": [
670
670
  {
671
671
  "foreign": {
672
- "id": 33896,
672
+ "id": 34497,
673
673
  "name": "System",
674
674
  "nodeType": "Identifier",
675
675
  "overloadedDeclarations": [],
676
- "referencedDeclaration": 32532,
676
+ "referencedDeclaration": 33056,
677
677
  "src": "126:6:68",
678
678
  "typeDescriptions": {}
679
679
  },
@@ -683,23 +683,23 @@
683
683
  "unitAlias": ""
684
684
  },
685
685
  {
686
- "id": 33899,
686
+ "id": 34500,
687
687
  "nodeType": "ImportDirective",
688
688
  "src": "163:59:68",
689
689
  "nodes": [],
690
690
  "absolutePath": "src/AccessControl.sol",
691
691
  "file": "../../../AccessControl.sol",
692
692
  "nameLocation": "-1:-1:-1",
693
- "scope": 33967,
694
- "sourceUnit": 32297,
693
+ "scope": 34568,
694
+ "sourceUnit": 32821,
695
695
  "symbolAliases": [
696
696
  {
697
697
  "foreign": {
698
- "id": 33898,
698
+ "id": 34499,
699
699
  "name": "AccessControl",
700
700
  "nodeType": "Identifier",
701
701
  "overloadedDeclarations": [],
702
- "referencedDeclaration": 32296,
702
+ "referencedDeclaration": 32820,
703
703
  "src": "172:13:68",
704
704
  "typeDescriptions": {}
705
705
  },
@@ -709,23 +709,23 @@
709
709
  "unitAlias": ""
710
710
  },
711
711
  {
712
- "id": 33901,
712
+ "id": 34502,
713
713
  "nodeType": "ImportDirective",
714
714
  "src": "223:41:68",
715
715
  "nodes": [],
716
716
  "absolutePath": "src/Call.sol",
717
717
  "file": "../../../Call.sol",
718
718
  "nameLocation": "-1:-1:-1",
719
- "scope": 33967,
720
- "sourceUnit": 32353,
719
+ "scope": 34568,
720
+ "sourceUnit": 32877,
721
721
  "symbolAliases": [
722
722
  {
723
723
  "foreign": {
724
- "id": 33900,
724
+ "id": 34501,
725
725
  "name": "Call",
726
726
  "nodeType": "Identifier",
727
727
  "overloadedDeclarations": [],
728
- "referencedDeclaration": 32352,
728
+ "referencedDeclaration": 32876,
729
729
  "src": "232:4:68",
730
730
  "typeDescriptions": {}
731
731
  },
@@ -735,23 +735,23 @@
735
735
  "unitAlias": ""
736
736
  },
737
737
  {
738
- "id": 33903,
738
+ "id": 34504,
739
739
  "nodeType": "ImportDirective",
740
740
  "src": "265:68:68",
741
741
  "nodes": [],
742
742
  "absolutePath": "src/tables/ResourceAccess.sol",
743
743
  "file": "../../../tables/ResourceAccess.sol",
744
744
  "nameLocation": "-1:-1:-1",
745
- "scope": 33967,
746
- "sourceUnit": 41835,
745
+ "scope": 34568,
746
+ "sourceUnit": 42436,
747
747
  "symbolAliases": [
748
748
  {
749
749
  "foreign": {
750
- "id": 33902,
750
+ "id": 34503,
751
751
  "name": "ResourceAccess",
752
752
  "nodeType": "Identifier",
753
753
  "overloadedDeclarations": [],
754
- "referencedDeclaration": 41825,
754
+ "referencedDeclaration": 42426,
755
755
  "src": "274:14:68",
756
756
  "typeDescriptions": {}
757
757
  },
@@ -761,23 +761,23 @@
761
761
  "unitAlias": ""
762
762
  },
763
763
  {
764
- "id": 33905,
764
+ "id": 34506,
765
765
  "nodeType": "ImportDirective",
766
766
  "src": "334:72:68",
767
767
  "nodes": [],
768
768
  "absolutePath": "src/tables/InstalledModules.sol",
769
769
  "file": "../../../tables/InstalledModules.sol",
770
770
  "nameLocation": "-1:-1:-1",
771
- "scope": 33967,
772
- "sourceUnit": 40743,
771
+ "scope": 34568,
772
+ "sourceUnit": 41344,
773
773
  "symbolAliases": [
774
774
  {
775
775
  "foreign": {
776
- "id": 33904,
776
+ "id": 34505,
777
777
  "name": "InstalledModules",
778
778
  "nodeType": "Identifier",
779
779
  "overloadedDeclarations": [],
780
- "referencedDeclaration": 40742,
780
+ "referencedDeclaration": 41343,
781
781
  "src": "343:16:68",
782
782
  "typeDescriptions": {}
783
783
  },
@@ -787,34 +787,34 @@
787
787
  "unitAlias": ""
788
788
  },
789
789
  {
790
- "id": 33966,
790
+ "id": 34567,
791
791
  "nodeType": "ContractDefinition",
792
792
  "src": "467:982:68",
793
793
  "nodes": [
794
794
  {
795
- "id": 33937,
795
+ "id": 34538,
796
796
  "nodeType": "FunctionDefinition",
797
797
  "src": "639:334:68",
798
798
  "nodes": [],
799
799
  "body": {
800
- "id": 33936,
800
+ "id": 34537,
801
801
  "nodeType": "Block",
802
802
  "src": "725:248:68",
803
803
  "nodes": [],
804
804
  "statements": [
805
805
  {
806
806
  "assignments": [
807
- 33919
807
+ 34520
808
808
  ],
809
809
  "declarations": [
810
810
  {
811
811
  "constant": false,
812
- "id": 33919,
812
+ "id": 34520,
813
813
  "mutability": "mutable",
814
814
  "name": "resourceSelector",
815
815
  "nameLocation": "786:16:68",
816
816
  "nodeType": "VariableDeclaration",
817
- "scope": 33936,
817
+ "scope": 34537,
818
818
  "src": "778:24:68",
819
819
  "stateVariable": false,
820
820
  "storageLocation": "default",
@@ -823,7 +823,7 @@
823
823
  "typeString": "bytes32"
824
824
  },
825
825
  "typeName": {
826
- "id": 33918,
826
+ "id": 34519,
827
827
  "name": "bytes32",
828
828
  "nodeType": "ElementaryTypeName",
829
829
  "src": "778:7:68",
@@ -835,15 +835,15 @@
835
835
  "visibility": "internal"
836
836
  }
837
837
  ],
838
- "id": 33927,
838
+ "id": 34528,
839
839
  "initialValue": {
840
840
  "arguments": [
841
841
  {
842
- "id": 33922,
842
+ "id": 34523,
843
843
  "name": "namespace",
844
844
  "nodeType": "Identifier",
845
845
  "overloadedDeclarations": [],
846
- "referencedDeclaration": 33911,
846
+ "referencedDeclaration": 34512,
847
847
  "src": "838:9:68",
848
848
  "typeDescriptions": {
849
849
  "typeIdentifier": "t_bytes16",
@@ -851,11 +851,11 @@
851
851
  }
852
852
  },
853
853
  {
854
- "id": 33923,
854
+ "id": 34524,
855
855
  "name": "name",
856
856
  "nodeType": "Identifier",
857
857
  "overloadedDeclarations": [],
858
- "referencedDeclaration": 33913,
858
+ "referencedDeclaration": 34514,
859
859
  "src": "849:4:68",
860
860
  "typeDescriptions": {
861
861
  "typeIdentifier": "t_bytes16",
@@ -866,18 +866,18 @@
866
866
  "arguments": [],
867
867
  "expression": {
868
868
  "argumentTypes": [],
869
- "id": 33924,
869
+ "id": 34525,
870
870
  "name": "_msgSender",
871
871
  "nodeType": "Identifier",
872
872
  "overloadedDeclarations": [],
873
- "referencedDeclaration": 33150,
873
+ "referencedDeclaration": 33736,
874
874
  "src": "855:10:68",
875
875
  "typeDescriptions": {
876
876
  "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$",
877
877
  "typeString": "function () view returns (address)"
878
878
  }
879
879
  },
880
- "id": 33925,
880
+ "id": 34526,
881
881
  "isConstant": false,
882
882
  "isLValue": false,
883
883
  "isPure": false,
@@ -909,32 +909,32 @@
909
909
  }
910
910
  ],
911
911
  "expression": {
912
- "id": 33920,
912
+ "id": 34521,
913
913
  "name": "AccessControl",
914
914
  "nodeType": "Identifier",
915
915
  "overloadedDeclarations": [],
916
- "referencedDeclaration": 32296,
916
+ "referencedDeclaration": 32820,
917
917
  "src": "805:13:68",
918
918
  "typeDescriptions": {
919
- "typeIdentifier": "t_type$_t_contract$_AccessControl_$32296_$",
919
+ "typeIdentifier": "t_type$_t_contract$_AccessControl_$32820_$",
920
920
  "typeString": "type(library AccessControl)"
921
921
  }
922
922
  },
923
- "id": 33921,
923
+ "id": 34522,
924
924
  "isConstant": false,
925
925
  "isLValue": false,
926
926
  "isPure": false,
927
927
  "lValueRequested": false,
928
928
  "memberName": "requireOwnerOrSelf",
929
929
  "nodeType": "MemberAccess",
930
- "referencedDeclaration": 32295,
930
+ "referencedDeclaration": 32819,
931
931
  "src": "805:32:68",
932
932
  "typeDescriptions": {
933
933
  "typeIdentifier": "t_function_internal_view$_t_bytes16_$_t_bytes16_$_t_address_$returns$_t_bytes32_$",
934
934
  "typeString": "function (bytes16,bytes16,address) view returns (bytes32)"
935
935
  }
936
936
  },
937
- "id": 33926,
937
+ "id": 34527,
938
938
  "isConstant": false,
939
939
  "isLValue": false,
940
940
  "isPure": false,
@@ -956,11 +956,11 @@
956
956
  "expression": {
957
957
  "arguments": [
958
958
  {
959
- "id": 33931,
959
+ "id": 34532,
960
960
  "name": "resourceSelector",
961
961
  "nodeType": "Identifier",
962
962
  "overloadedDeclarations": [],
963
- "referencedDeclaration": 33919,
963
+ "referencedDeclaration": 34520,
964
964
  "src": "936:16:68",
965
965
  "typeDescriptions": {
966
966
  "typeIdentifier": "t_bytes32",
@@ -968,11 +968,11 @@
968
968
  }
969
969
  },
970
970
  {
971
- "id": 33932,
971
+ "id": 34533,
972
972
  "name": "grantee",
973
973
  "nodeType": "Identifier",
974
974
  "overloadedDeclarations": [],
975
- "referencedDeclaration": 33915,
975
+ "referencedDeclaration": 34516,
976
976
  "src": "954:7:68",
977
977
  "typeDescriptions": {
978
978
  "typeIdentifier": "t_address",
@@ -981,7 +981,7 @@
981
981
  },
982
982
  {
983
983
  "hexValue": "74727565",
984
- "id": 33933,
984
+ "id": 34534,
985
985
  "isConstant": false,
986
986
  "isLValue": false,
987
987
  "isPure": true,
@@ -1012,32 +1012,32 @@
1012
1012
  }
1013
1013
  ],
1014
1014
  "expression": {
1015
- "id": 33928,
1015
+ "id": 34529,
1016
1016
  "name": "ResourceAccess",
1017
1017
  "nodeType": "Identifier",
1018
1018
  "overloadedDeclarations": [],
1019
- "referencedDeclaration": 41825,
1019
+ "referencedDeclaration": 42426,
1020
1020
  "src": "917:14:68",
1021
1021
  "typeDescriptions": {
1022
- "typeIdentifier": "t_type$_t_contract$_ResourceAccess_$41825_$",
1022
+ "typeIdentifier": "t_type$_t_contract$_ResourceAccess_$42426_$",
1023
1023
  "typeString": "type(library ResourceAccess)"
1024
1024
  }
1025
1025
  },
1026
- "id": 33930,
1026
+ "id": 34531,
1027
1027
  "isConstant": false,
1028
1028
  "isLValue": false,
1029
1029
  "isPure": false,
1030
1030
  "lValueRequested": false,
1031
1031
  "memberName": "set",
1032
1032
  "nodeType": "MemberAccess",
1033
- "referencedDeclaration": 41648,
1033
+ "referencedDeclaration": 42249,
1034
1034
  "src": "917:18:68",
1035
1035
  "typeDescriptions": {
1036
1036
  "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$_t_bool_$returns$__$",
1037
1037
  "typeString": "function (bytes32,address,bool)"
1038
1038
  }
1039
1039
  },
1040
- "id": 33934,
1040
+ "id": 34535,
1041
1041
  "isConstant": false,
1042
1042
  "isLValue": false,
1043
1043
  "isPure": false,
@@ -1052,14 +1052,14 @@
1052
1052
  "typeString": "tuple()"
1053
1053
  }
1054
1054
  },
1055
- "id": 33935,
1055
+ "id": 34536,
1056
1056
  "nodeType": "ExpressionStatement",
1057
1057
  "src": "917:51:68"
1058
1058
  }
1059
1059
  ]
1060
1060
  },
1061
1061
  "documentation": {
1062
- "id": 33909,
1062
+ "id": 34510,
1063
1063
  "nodeType": "StructuredDocumentation",
1064
1064
  "src": "513:123:68",
1065
1065
  "text": " Grant access to the resource at the given namespace and name.\n Requires the caller to own the namespace."
@@ -1071,17 +1071,17 @@
1071
1071
  "name": "grantAccess",
1072
1072
  "nameLocation": "648:11:68",
1073
1073
  "parameters": {
1074
- "id": 33916,
1074
+ "id": 34517,
1075
1075
  "nodeType": "ParameterList",
1076
1076
  "parameters": [
1077
1077
  {
1078
1078
  "constant": false,
1079
- "id": 33911,
1079
+ "id": 34512,
1080
1080
  "mutability": "mutable",
1081
1081
  "name": "namespace",
1082
1082
  "nameLocation": "668:9:68",
1083
1083
  "nodeType": "VariableDeclaration",
1084
- "scope": 33937,
1084
+ "scope": 34538,
1085
1085
  "src": "660:17:68",
1086
1086
  "stateVariable": false,
1087
1087
  "storageLocation": "default",
@@ -1090,7 +1090,7 @@
1090
1090
  "typeString": "bytes16"
1091
1091
  },
1092
1092
  "typeName": {
1093
- "id": 33910,
1093
+ "id": 34511,
1094
1094
  "name": "bytes16",
1095
1095
  "nodeType": "ElementaryTypeName",
1096
1096
  "src": "660:7:68",
@@ -1103,12 +1103,12 @@
1103
1103
  },
1104
1104
  {
1105
1105
  "constant": false,
1106
- "id": 33913,
1106
+ "id": 34514,
1107
1107
  "mutability": "mutable",
1108
1108
  "name": "name",
1109
1109
  "nameLocation": "687:4:68",
1110
1110
  "nodeType": "VariableDeclaration",
1111
- "scope": 33937,
1111
+ "scope": 34538,
1112
1112
  "src": "679:12:68",
1113
1113
  "stateVariable": false,
1114
1114
  "storageLocation": "default",
@@ -1117,7 +1117,7 @@
1117
1117
  "typeString": "bytes16"
1118
1118
  },
1119
1119
  "typeName": {
1120
- "id": 33912,
1120
+ "id": 34513,
1121
1121
  "name": "bytes16",
1122
1122
  "nodeType": "ElementaryTypeName",
1123
1123
  "src": "679:7:68",
@@ -1130,12 +1130,12 @@
1130
1130
  },
1131
1131
  {
1132
1132
  "constant": false,
1133
- "id": 33915,
1133
+ "id": 34516,
1134
1134
  "mutability": "mutable",
1135
1135
  "name": "grantee",
1136
1136
  "nameLocation": "701:7:68",
1137
1137
  "nodeType": "VariableDeclaration",
1138
- "scope": 33937,
1138
+ "scope": 34538,
1139
1139
  "src": "693:15:68",
1140
1140
  "stateVariable": false,
1141
1141
  "storageLocation": "default",
@@ -1144,7 +1144,7 @@
1144
1144
  "typeString": "address"
1145
1145
  },
1146
1146
  "typeName": {
1147
- "id": 33914,
1147
+ "id": 34515,
1148
1148
  "name": "address",
1149
1149
  "nodeType": "ElementaryTypeName",
1150
1150
  "src": "693:7:68",
@@ -1160,40 +1160,40 @@
1160
1160
  "src": "659:50:68"
1161
1161
  },
1162
1162
  "returnParameters": {
1163
- "id": 33917,
1163
+ "id": 34518,
1164
1164
  "nodeType": "ParameterList",
1165
1165
  "parameters": [],
1166
1166
  "src": "725:0:68"
1167
1167
  },
1168
- "scope": 33966,
1168
+ "scope": 34567,
1169
1169
  "stateMutability": "nonpayable",
1170
1170
  "virtual": true,
1171
1171
  "visibility": "public"
1172
1172
  },
1173
1173
  {
1174
- "id": 33965,
1174
+ "id": 34566,
1175
1175
  "nodeType": "FunctionDefinition",
1176
1176
  "src": "1106:341:68",
1177
1177
  "nodes": [],
1178
1178
  "body": {
1179
- "id": 33964,
1179
+ "id": 34565,
1180
1180
  "nodeType": "Block",
1181
1181
  "src": "1193:254:68",
1182
1182
  "nodes": [],
1183
1183
  "statements": [
1184
1184
  {
1185
1185
  "assignments": [
1186
- 33948
1186
+ 34549
1187
1187
  ],
1188
1188
  "declarations": [
1189
1189
  {
1190
1190
  "constant": false,
1191
- "id": 33948,
1191
+ "id": 34549,
1192
1192
  "mutability": "mutable",
1193
1193
  "name": "resourceSelector",
1194
1194
  "nameLocation": "1254:16:68",
1195
1195
  "nodeType": "VariableDeclaration",
1196
- "scope": 33964,
1196
+ "scope": 34565,
1197
1197
  "src": "1246:24:68",
1198
1198
  "stateVariable": false,
1199
1199
  "storageLocation": "default",
@@ -1202,7 +1202,7 @@
1202
1202
  "typeString": "bytes32"
1203
1203
  },
1204
1204
  "typeName": {
1205
- "id": 33947,
1205
+ "id": 34548,
1206
1206
  "name": "bytes32",
1207
1207
  "nodeType": "ElementaryTypeName",
1208
1208
  "src": "1246:7:68",
@@ -1214,15 +1214,15 @@
1214
1214
  "visibility": "internal"
1215
1215
  }
1216
1216
  ],
1217
- "id": 33956,
1217
+ "id": 34557,
1218
1218
  "initialValue": {
1219
1219
  "arguments": [
1220
1220
  {
1221
- "id": 33951,
1221
+ "id": 34552,
1222
1222
  "name": "namespace",
1223
1223
  "nodeType": "Identifier",
1224
1224
  "overloadedDeclarations": [],
1225
- "referencedDeclaration": 33940,
1225
+ "referencedDeclaration": 34541,
1226
1226
  "src": "1306:9:68",
1227
1227
  "typeDescriptions": {
1228
1228
  "typeIdentifier": "t_bytes16",
@@ -1230,11 +1230,11 @@
1230
1230
  }
1231
1231
  },
1232
1232
  {
1233
- "id": 33952,
1233
+ "id": 34553,
1234
1234
  "name": "name",
1235
1235
  "nodeType": "Identifier",
1236
1236
  "overloadedDeclarations": [],
1237
- "referencedDeclaration": 33942,
1237
+ "referencedDeclaration": 34543,
1238
1238
  "src": "1317:4:68",
1239
1239
  "typeDescriptions": {
1240
1240
  "typeIdentifier": "t_bytes16",
@@ -1245,18 +1245,18 @@
1245
1245
  "arguments": [],
1246
1246
  "expression": {
1247
1247
  "argumentTypes": [],
1248
- "id": 33953,
1248
+ "id": 34554,
1249
1249
  "name": "_msgSender",
1250
1250
  "nodeType": "Identifier",
1251
1251
  "overloadedDeclarations": [],
1252
- "referencedDeclaration": 33150,
1252
+ "referencedDeclaration": 33736,
1253
1253
  "src": "1323:10:68",
1254
1254
  "typeDescriptions": {
1255
1255
  "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$",
1256
1256
  "typeString": "function () view returns (address)"
1257
1257
  }
1258
1258
  },
1259
- "id": 33954,
1259
+ "id": 34555,
1260
1260
  "isConstant": false,
1261
1261
  "isLValue": false,
1262
1262
  "isPure": false,
@@ -1288,32 +1288,32 @@
1288
1288
  }
1289
1289
  ],
1290
1290
  "expression": {
1291
- "id": 33949,
1291
+ "id": 34550,
1292
1292
  "name": "AccessControl",
1293
1293
  "nodeType": "Identifier",
1294
1294
  "overloadedDeclarations": [],
1295
- "referencedDeclaration": 32296,
1295
+ "referencedDeclaration": 32820,
1296
1296
  "src": "1273:13:68",
1297
1297
  "typeDescriptions": {
1298
- "typeIdentifier": "t_type$_t_contract$_AccessControl_$32296_$",
1298
+ "typeIdentifier": "t_type$_t_contract$_AccessControl_$32820_$",
1299
1299
  "typeString": "type(library AccessControl)"
1300
1300
  }
1301
1301
  },
1302
- "id": 33950,
1302
+ "id": 34551,
1303
1303
  "isConstant": false,
1304
1304
  "isLValue": false,
1305
1305
  "isPure": false,
1306
1306
  "lValueRequested": false,
1307
1307
  "memberName": "requireOwnerOrSelf",
1308
1308
  "nodeType": "MemberAccess",
1309
- "referencedDeclaration": 32295,
1309
+ "referencedDeclaration": 32819,
1310
1310
  "src": "1273:32:68",
1311
1311
  "typeDescriptions": {
1312
1312
  "typeIdentifier": "t_function_internal_view$_t_bytes16_$_t_bytes16_$_t_address_$returns$_t_bytes32_$",
1313
1313
  "typeString": "function (bytes16,bytes16,address) view returns (bytes32)"
1314
1314
  }
1315
1315
  },
1316
- "id": 33955,
1316
+ "id": 34556,
1317
1317
  "isConstant": false,
1318
1318
  "isLValue": false,
1319
1319
  "isPure": false,
@@ -1335,11 +1335,11 @@
1335
1335
  "expression": {
1336
1336
  "arguments": [
1337
1337
  {
1338
- "id": 33960,
1338
+ "id": 34561,
1339
1339
  "name": "resourceSelector",
1340
1340
  "nodeType": "Identifier",
1341
1341
  "overloadedDeclarations": [],
1342
- "referencedDeclaration": 33948,
1342
+ "referencedDeclaration": 34549,
1343
1343
  "src": "1416:16:68",
1344
1344
  "typeDescriptions": {
1345
1345
  "typeIdentifier": "t_bytes32",
@@ -1347,11 +1347,11 @@
1347
1347
  }
1348
1348
  },
1349
1349
  {
1350
- "id": 33961,
1350
+ "id": 34562,
1351
1351
  "name": "grantee",
1352
1352
  "nodeType": "Identifier",
1353
1353
  "overloadedDeclarations": [],
1354
- "referencedDeclaration": 33944,
1354
+ "referencedDeclaration": 34545,
1355
1355
  "src": "1434:7:68",
1356
1356
  "typeDescriptions": {
1357
1357
  "typeIdentifier": "t_address",
@@ -1371,32 +1371,32 @@
1371
1371
  }
1372
1372
  ],
1373
1373
  "expression": {
1374
- "id": 33957,
1374
+ "id": 34558,
1375
1375
  "name": "ResourceAccess",
1376
1376
  "nodeType": "Identifier",
1377
1377
  "overloadedDeclarations": [],
1378
- "referencedDeclaration": 41825,
1378
+ "referencedDeclaration": 42426,
1379
1379
  "src": "1388:14:68",
1380
1380
  "typeDescriptions": {
1381
- "typeIdentifier": "t_type$_t_contract$_ResourceAccess_$41825_$",
1381
+ "typeIdentifier": "t_type$_t_contract$_ResourceAccess_$42426_$",
1382
1382
  "typeString": "type(library ResourceAccess)"
1383
1383
  }
1384
1384
  },
1385
- "id": 33959,
1385
+ "id": 34560,
1386
1386
  "isConstant": false,
1387
1387
  "isLValue": false,
1388
1388
  "isPure": false,
1389
1389
  "lValueRequested": false,
1390
1390
  "memberName": "deleteRecord",
1391
1391
  "nodeType": "MemberAccess",
1392
- "referencedDeclaration": 41772,
1392
+ "referencedDeclaration": 42373,
1393
1393
  "src": "1388:27:68",
1394
1394
  "typeDescriptions": {
1395
1395
  "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$",
1396
1396
  "typeString": "function (bytes32,address)"
1397
1397
  }
1398
1398
  },
1399
- "id": 33962,
1399
+ "id": 34563,
1400
1400
  "isConstant": false,
1401
1401
  "isLValue": false,
1402
1402
  "isPure": false,
@@ -1411,14 +1411,14 @@
1411
1411
  "typeString": "tuple()"
1412
1412
  }
1413
1413
  },
1414
- "id": 33963,
1414
+ "id": 34564,
1415
1415
  "nodeType": "ExpressionStatement",
1416
1416
  "src": "1388:54:68"
1417
1417
  }
1418
1418
  ]
1419
1419
  },
1420
1420
  "documentation": {
1421
- "id": 33938,
1421
+ "id": 34539,
1422
1422
  "nodeType": "StructuredDocumentation",
1423
1423
  "src": "977:126:68",
1424
1424
  "text": " Revoke access from the resource at the given namespace and name.\n Requires the caller to own the namespace."
@@ -1430,17 +1430,17 @@
1430
1430
  "name": "revokeAccess",
1431
1431
  "nameLocation": "1115:12:68",
1432
1432
  "parameters": {
1433
- "id": 33945,
1433
+ "id": 34546,
1434
1434
  "nodeType": "ParameterList",
1435
1435
  "parameters": [
1436
1436
  {
1437
1437
  "constant": false,
1438
- "id": 33940,
1438
+ "id": 34541,
1439
1439
  "mutability": "mutable",
1440
1440
  "name": "namespace",
1441
1441
  "nameLocation": "1136:9:68",
1442
1442
  "nodeType": "VariableDeclaration",
1443
- "scope": 33965,
1443
+ "scope": 34566,
1444
1444
  "src": "1128:17:68",
1445
1445
  "stateVariable": false,
1446
1446
  "storageLocation": "default",
@@ -1449,7 +1449,7 @@
1449
1449
  "typeString": "bytes16"
1450
1450
  },
1451
1451
  "typeName": {
1452
- "id": 33939,
1452
+ "id": 34540,
1453
1453
  "name": "bytes16",
1454
1454
  "nodeType": "ElementaryTypeName",
1455
1455
  "src": "1128:7:68",
@@ -1462,12 +1462,12 @@
1462
1462
  },
1463
1463
  {
1464
1464
  "constant": false,
1465
- "id": 33942,
1465
+ "id": 34543,
1466
1466
  "mutability": "mutable",
1467
1467
  "name": "name",
1468
1468
  "nameLocation": "1155:4:68",
1469
1469
  "nodeType": "VariableDeclaration",
1470
- "scope": 33965,
1470
+ "scope": 34566,
1471
1471
  "src": "1147:12:68",
1472
1472
  "stateVariable": false,
1473
1473
  "storageLocation": "default",
@@ -1476,7 +1476,7 @@
1476
1476
  "typeString": "bytes16"
1477
1477
  },
1478
1478
  "typeName": {
1479
- "id": 33941,
1479
+ "id": 34542,
1480
1480
  "name": "bytes16",
1481
1481
  "nodeType": "ElementaryTypeName",
1482
1482
  "src": "1147:7:68",
@@ -1489,12 +1489,12 @@
1489
1489
  },
1490
1490
  {
1491
1491
  "constant": false,
1492
- "id": 33944,
1492
+ "id": 34545,
1493
1493
  "mutability": "mutable",
1494
1494
  "name": "grantee",
1495
1495
  "nameLocation": "1169:7:68",
1496
1496
  "nodeType": "VariableDeclaration",
1497
- "scope": 33965,
1497
+ "scope": 34566,
1498
1498
  "src": "1161:15:68",
1499
1499
  "stateVariable": false,
1500
1500
  "storageLocation": "default",
@@ -1503,7 +1503,7 @@
1503
1503
  "typeString": "address"
1504
1504
  },
1505
1505
  "typeName": {
1506
- "id": 33943,
1506
+ "id": 34544,
1507
1507
  "name": "address",
1508
1508
  "nodeType": "ElementaryTypeName",
1509
1509
  "src": "1161:7:68",
@@ -1519,12 +1519,12 @@
1519
1519
  "src": "1127:50:68"
1520
1520
  },
1521
1521
  "returnParameters": {
1522
- "id": 33946,
1522
+ "id": 34547,
1523
1523
  "nodeType": "ParameterList",
1524
1524
  "parameters": [],
1525
1525
  "src": "1193:0:68"
1526
1526
  },
1527
- "scope": 33966,
1527
+ "scope": 34567,
1528
1528
  "stateMutability": "nonpayable",
1529
1529
  "virtual": true,
1530
1530
  "visibility": "public"
@@ -1534,13 +1534,13 @@
1534
1534
  "baseContracts": [
1535
1535
  {
1536
1536
  "baseName": {
1537
- "id": 33907,
1537
+ "id": 34508,
1538
1538
  "name": "System",
1539
1539
  "nodeType": "IdentifierPath",
1540
- "referencedDeclaration": 32532,
1540
+ "referencedDeclaration": 33056,
1541
1541
  "src": "502:6:68"
1542
1542
  },
1543
- "id": 33908,
1543
+ "id": 34509,
1544
1544
  "nodeType": "InheritanceSpecifier",
1545
1545
  "src": "502:6:68"
1546
1546
  }
@@ -1549,25 +1549,25 @@
1549
1549
  "contractDependencies": [],
1550
1550
  "contractKind": "contract",
1551
1551
  "documentation": {
1552
- "id": 33906,
1552
+ "id": 34507,
1553
1553
  "nodeType": "StructuredDocumentation",
1554
1554
  "src": "408:58:68",
1555
1555
  "text": " Granting and revoking access from/to resources."
1556
1556
  },
1557
1557
  "fullyImplemented": true,
1558
1558
  "linearizedBaseContracts": [
1559
- 33966,
1560
- 32532,
1561
- 33161
1559
+ 34567,
1560
+ 33056,
1561
+ 33747
1562
1562
  ],
1563
1563
  "name": "AccessManagementSystem",
1564
1564
  "nameLocation": "476:22:68",
1565
- "scope": 33967,
1565
+ "scope": 34568,
1566
1566
  "usedErrors": [
1567
- 18710,
1568
- 33237,
1569
- 43007,
1570
- 43017
1567
+ 18983,
1568
+ 33823,
1569
+ 43608,
1570
+ 43618
1571
1571
  ]
1572
1572
  }
1573
1573
  ],