diff --git a/.github/workflows/sharing-smart-contract-deploy.yml b/.github/workflows/sharing-smart-contract-deploy.yml index dbe584e05..08b72be3d 100644 --- a/.github/workflows/sharing-smart-contract-deploy.yml +++ b/.github/workflows/sharing-smart-contract-deploy.yml @@ -66,7 +66,8 @@ jobs: if [ "${{ inputs.network }}" == "arbitrumSepolia" ]; then echo "POCO_ADDRESS=0x14B465079537655E1662F012e99EBa3863c8B9E0" >> $GITHUB_ENV echo "DATASET_REGISTRY_ADDRESS=0x3441A0C9FE488c51fcABa2bAAA048720f4D4F72D" >> $GITHUB_ENV - echo "ARBISCAN_API_KEY=${{ secrets.ARBISCAN_API_KEY }}" >> $GITHUB_ENV + echo "ETHERSCAN_API_KEY=${{ secrets.ETHERSCAN_API_KEY }}" >> $GITHUB_ENV + echo "DEPLOYMENT_ID=chain-421614" >> $GITHUB_ENV fi - uses: actions/checkout@v4 @@ -101,7 +102,6 @@ jobs: commit_user_email: 'github-actions[bot]@users.noreply.github.com' commit_author: 'GitHub Actions Bot ' - # TODO - name: Verify contracts working-directory: packages/sharing-smart-contract - run: echo "Verify contracts" # npm run verify:ignition -- + run: echo "TODO" # npm run verify:ignition -- $DEPLOYMENT_ID diff --git a/packages/sharing-smart-contract/.openzeppelin/unknown-421614.json b/packages/sharing-smart-contract/.openzeppelin/unknown-421614.json index 4089346ec..b1086adf7 100644 --- a/packages/sharing-smart-contract/.openzeppelin/unknown-421614.json +++ b/packages/sharing-smart-contract/.openzeppelin/unknown-421614.json @@ -2,17 +2,17 @@ "manifestVersion": "3.2", "proxies": [ { - "address": "0x636bDecb02390064bb938760473d76FfB47c4FDa", + "address": "0x9902e2F89DCC4dcCb75805096Ead2e58Fc389b7D", "kind": "transparent" }, { - "address": "0xD754A70f2174674A8FF0fa41BCAAe310D26dbEaA", + "address": "0x2485Ed90d4566516298B7D01462df8d1A41E13AE", "kind": "transparent" } ], "impls": { "a8715b6ebae5c408bf687445be9061c544bc405b8b556bcfce0b94dc04009ebb": { - "address": "0xd617e6772DE4B66257292FF299227d9D2eB5d7E8", + "address": "0x31FA12A2B8067e7aca306A507CC706ac80b2d20e", "layout": { "solcVersion": "0.8.24", "storage": [ @@ -199,8 +199,8 @@ } } }, - "6a970f037904f927c4aee3f9cd63a53166c7aaacbb8e71111924c35fe10c644d": { - "address": "0x74ACB9B3493fCC2308cb701d547a4b460f1Ad861", + "79c23ed7636921573eb8c93e5c1add5695ee9342b5060e87cbf2b4b9356dd8be": { + "address": "0x2FBDcc656607389B9D87966F10aFC6Fd94130cAb", "layout": { "solcVersion": "0.8.24", "storage": [ diff --git a/packages/sharing-smart-contract/CHANGELOG.md b/packages/sharing-smart-contract/CHANGELOG.md index 6fd6bbbcf..0887bf029 100644 --- a/packages/sharing-smart-contract/CHANGELOG.md +++ b/packages/sharing-smart-contract/CHANGELOG.md @@ -6,7 +6,7 @@ All notable changes to this project will be documented in this file. ### Changed -- Deploy on testnet and save artifacts (#444) +- Deploy on testnet and save artifacts (#444, #445) - Deploy DPS contract using Github action (#443) - Refactor sharing contract CI to use reusable workflows (#442) - Import Ignition deployment in OZ upgrades plugin (#441) diff --git a/packages/sharing-smart-contract/README.md b/packages/sharing-smart-contract/README.md index 9624fcf0f..27b789089 100644 --- a/packages/sharing-smart-contract/README.md +++ b/packages/sharing-smart-contract/README.md @@ -90,7 +90,7 @@ npm run verify --
--network ## Docs and diagrams -#### UML Diagrams +#### UML diagrams To generate UML diagrams for smart contracts (storage + class): diff --git a/packages/sharing-smart-contract/config/env.cjs b/packages/sharing-smart-contract/config/env.cjs index 6d754368a..86581a00d 100644 --- a/packages/sharing-smart-contract/config/env.cjs +++ b/packages/sharing-smart-contract/config/env.cjs @@ -44,8 +44,8 @@ const envSchema = z.object({ .string() .url('ARBITRUM_SEPOLIA_RPC_URL must be a valid URL') .optional(), + + ETHERSCAN_API_KEY: z.string().optional(), }); -module.exports = { - env: envSchema.parse(process.env), -}; +module.exports = envSchema.parse(process.env); diff --git a/packages/sharing-smart-contract/config/env.js b/packages/sharing-smart-contract/config/env.js index a95a9d745..f3b1053c8 100644 --- a/packages/sharing-smart-contract/config/env.js +++ b/packages/sharing-smart-contract/config/env.js @@ -1,3 +1,3 @@ -import _env from './env.cjs'; +import env from './env.cjs'; -export const env = _env.env; +export default env; diff --git a/packages/sharing-smart-contract/hardhat.config.cjs b/packages/sharing-smart-contract/hardhat.config.cjs index 9df8dfb1c..1163697d0 100644 --- a/packages/sharing-smart-contract/hardhat.config.cjs +++ b/packages/sharing-smart-contract/hardhat.config.cjs @@ -50,7 +50,7 @@ module.exports = { chainId: 421614, url: env.ARBITRUM_SEPOLIA_RPC_URL || 'https://sepolia-rollup.arbitrum.io/rpc', accounts: [ - process.env.PRIVATE_KEY || + env.PRIVATE_KEY || '0x0000000000000000000000000000000000000000000000000000000000000000', ], blockGasLimit: 30_000_000, @@ -74,7 +74,7 @@ module.exports = { apiKey: { bellecour: 'nothing', // a non-empty string is needed by the plugin. avalancheFujiTestnet: 'nothing', // a non-empty string is needed by the plugin. - arbitrumSepolia: process.env.ETHERSCAN_API_KEY || '', + arbitrumSepolia: env.ETHERSCAN_API_KEY || '', }, customChains: [ { @@ -111,7 +111,7 @@ module.exports = { ignition: { strategyConfig: { create2: { - salt: "0x0000000000000000000000000000000000000000000000000000000000000000", + salt: "0x0000000000000000000000000000000000000000000000000000000000000001", }, }, }, diff --git a/packages/sharing-smart-contract/ignition/deployments/chain-421614/deployed_addresses.json b/packages/sharing-smart-contract/ignition/deployments/chain-421614/deployed_addresses.json index 64484cf77..6343909b5 100644 --- a/packages/sharing-smart-contract/ignition/deployments/chain-421614/deployed_addresses.json +++ b/packages/sharing-smart-contract/ignition/deployments/chain-421614/deployed_addresses.json @@ -1,8 +1,8 @@ { - "DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl": "0xd617e6772DE4B66257292FF299227d9D2eB5d7E8", - "DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy": "0x636bDecb02390064bb938760473d76FfB47c4FDa", - "DataProtectorSharingModule#AddOnlyAppWhitelistRegistry": "0x636bDecb02390064bb938760473d76FfB47c4FDa", - "DataProtectorSharingModule#DataProtectorSharingImpl": "0x74ACB9B3493fCC2308cb701d547a4b460f1Ad861", - "DataProtectorSharingModule#DataProtectorSharingProxy": "0xD754A70f2174674A8FF0fa41BCAAe310D26dbEaA", - "DataProtectorSharingModule#DataProtectorSharing": "0xD754A70f2174674A8FF0fa41BCAAe310D26dbEaA" + "DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl": "0x31FA12A2B8067e7aca306A507CC706ac80b2d20e", + "DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy": "0x9902e2F89DCC4dcCb75805096Ead2e58Fc389b7D", + "DataProtectorSharingModule#AddOnlyAppWhitelistRegistry": "0x9902e2F89DCC4dcCb75805096Ead2e58Fc389b7D", + "DataProtectorSharingModule#DataProtectorSharingImpl": "0x2FBDcc656607389B9D87966F10aFC6Fd94130cAb", + "DataProtectorSharingModule#DataProtectorSharingProxy": "0x2485Ed90d4566516298B7D01462df8d1A41E13AE", + "DataProtectorSharingModule#DataProtectorSharing": "0x2485Ed90d4566516298B7D01462df8d1A41E13AE" } diff --git a/packages/sharing-smart-contract/ignition/deployments/chain-421614/journal.jsonl b/packages/sharing-smart-contract/ignition/deployments/chain-421614/journal.jsonl index b57da4ff6..afb3b9cb0 100644 --- a/packages/sharing-smart-contract/ignition/deployments/chain-421614/journal.jsonl +++ b/packages/sharing-smart-contract/ignition/deployments/chain-421614/journal.jsonl @@ -1,28 +1,28 @@ {"chainId":421614,"type":"DEPLOYMENT_INITIALIZE"} -{"artifactId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl","constructorArgs":[],"contractName":"AddOnlyAppWhitelistRegistry","dependencies":[],"from":"0x29d9fb59587af02ae3bee909babdd0ac75580009","futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl","futureType":"NAMED_ARTIFACT_CONTRACT_DEPLOYMENT","libraries":{},"strategy":"create2","strategyConfig":{"salt":"0x0000000000000000000000000000000000000000000000000000000000000000"},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} -{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl","networkInteraction":{"data":"0x26307668000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001c62608060405234801561001057600080fd5b5061001961001e565b6100d0565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161561006e5760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146100cd5780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b611b83806100df6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806370a08231116100a25780639a0d319e116100715780639a0d319e1461021d578063a22cb46514610230578063b88d4fde14610243578063c87b56dd14610256578063e985e9c51461026957600080fd5b806370a08231146101d95780638129fc1c146101fa57806395d89b41146102025780639680579d1461020a57600080fd5b806323b872dd116100de57806323b872dd1461018d5780632972b0f0146101a057806342842e0e146101b35780636352211e146101c657600080fd5b806301ffc9a71461011057806306fdde0314610138578063081812fc1461014d578063095ea7b314610178575b600080fd5b61012361011e3660046110ab565b61027c565b60405190151581526020015b60405180910390f35b6101406102ce565b60405161012f9190611118565b61016061015b36600461112b565b610372565b6040516001600160a01b03909116815260200161012f565b61018b610186366004611160565b610387565b005b61018b61019b36600461118a565b610396565b6101236101ae366004611160565b610426565b61018b6101c136600461118a565b610442565b6101606101d436600461112b565b610462565b6101ec6101e73660046111c6565b61046d565b60405190815260200161012f565b61018b6104c9565b61014061063e565b6101606102183660046111c6565b61067d565b600054610160906001600160a01b031681565b61018b61023e3660046111e1565b6106aa565b61018b610251366004611233565b6106b5565b61014061026436600461112b565b6106cd565b61012361027736600461130f565b610741565b60006001600160e01b031982166380ac58cd60e01b14806102ad57506001600160e01b03198216635b5e139f60e01b145b806102c857506301ffc9a760e01b6001600160e01b03198316145b92915050565b600080516020611b0283398151915280546060919081906102ee90611342565b80601f016020809104026020016040519081016040528092919081815260200182805461031a90611342565b80156103675780601f1061033c57610100808354040283529160200191610367565b820191906000526020600020905b81548152906001019060200180831161034a57829003601f168201915b505050505091505090565b600061037d8261078e565b506102c8826107c6565b610392828233610800565b5050565b6001600160a01b0382166103c557604051633250574960e11b8152600060048201526024015b60405180910390fd5b60006103d283833361080d565b9050836001600160a01b0316816001600160a01b031614610420576040516364283d7b60e01b81526001600160a01b03808616600483015260248201849052821660448201526064016103bc565b50505050565b600061043b61043483610462565b8484610917565b9392505050565b61045d838383604051806020016040528060008152506106b5565b505050565b60006102c88261078e565b6000600080516020611b028339815191526001600160a01b0383166104a8576040516322718ad960e21b8152600060048201526024016103bc565b6001600160a01b039092166000908152600390920160205250604090205490565b60006104d361093f565b805490915060ff600160401b820416159067ffffffffffffffff166000811580156104fb5750825b905060008267ffffffffffffffff1660011480156105185750303b155b905081158015610526575080155b156105445760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561056e57845460ff60401b1916600160401b1785555b6105a8604051806060016040528060398152602001611ac9603991396040518060600160405280602c8152602001611b22602c9139610968565b6040516105b490611085565b604051809103906000f0801580156105d0573d6000803e3d6000fd5b50600080546001600160a01b0319166001600160a01b0392909216919091179055831561063757845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793018054606091600080516020611b02833981519152916102ee90611342565b600080548190610695906001600160a01b031661097a565b90506102c883826001600160a01b0316610987565b6103923383836109a1565b6106c0848484610396565b6104203385858585610a52565b60606106d88261078e565b5060006106f060408051602081019091526000815290565b90506000815111610710576040518060200160405280600081525061043b565b8061071a84610b7c565b60405160200161072b92919061137c565b6040516020818303038152906040529392505050565b6001600160a01b0391821660009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793056020908152604080832093909416825291909152205460ff1690565b60008061079a83610c0f565b90506001600160a01b0381166102c857604051637e27328960e01b8152600481018490526024016103bc565b60009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930460205260409020546001600160a01b031690565b61045d8383836001610c49565b6000600080516020611b028339815191528161082885610c0f565b90506001600160a01b0384161561084457610844818587610d5f565b6001600160a01b0381161561088457610861600086600080610c49565b6001600160a01b0381166000908152600383016020526040902080546000190190555b6001600160a01b038616156108b5576001600160a01b03861660009081526003830160205260409020805460010190555b600085815260028301602052604080822080546001600160a01b0319166001600160a01b038a811691821790925591518893918516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a495945050505050565b6000610924848484610dc3565b80610937575081836001600160a01b0316145b949350505050565b6000807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a006102c8565b610970610e28565b6103928282610e4f565b60006102c8826000610e80565b610392828260405180602001604052806000815250610f16565b600080516020611b028339815191526001600160a01b0383166109e257604051630b61174360e31b81526001600160a01b03841660048201526024016103bc565b6001600160a01b038481166000818152600584016020908152604080832094881680845294825291829020805460ff191687151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a350505050565b6001600160a01b0383163b1561063757604051630a85bd0160e11b81526001600160a01b0384169063150b7a0290610a949088908890879087906004016113ab565b6020604051808303816000875af1925050508015610acf575060408051601f3d908101601f19168201909252610acc918101906113e8565b60015b610b38573d808015610afd576040519150601f19603f3d011682016040523d82523d6000602084013e610b02565b606091505b508051600003610b3057604051633250574960e11b81526001600160a01b03851660048201526024016103bc565b805181602001fd5b6001600160e01b03198116630a85bd0160e11b14610b7457604051633250574960e11b81526001600160a01b03851660048201526024016103bc565b505050505050565b60606000610b8983610f2e565b600101905060008167ffffffffffffffff811115610ba957610ba961121d565b6040519080825280601f01601f191660200182016040528015610bd3576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084610bdd57509392505050565b60009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930260205260409020546001600160a01b031690565b600080516020611b028339815191528180610c6c57506001600160a01b03831615155b15610d2e576000610c7c8561078e565b90506001600160a01b03841615801590610ca85750836001600160a01b0316816001600160a01b031614155b8015610cbb5750610cb98185610741565b155b15610ce45760405163a9fbf51f60e01b81526001600160a01b03851660048201526024016103bc565b8215610d2c5784866001600160a01b0316826001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b600093845260040160205250506040902080546001600160a01b0319166001600160a01b0392909216919091179055565b610d6a838383610917565b61045d576001600160a01b038316610d9857604051637e27328960e01b8152600481018290526024016103bc565b60405163177e802f60e01b81526001600160a01b0383166004820152602481018290526044016103bc565b60006001600160a01b038316158015906109375750826001600160a01b0316846001600160a01b03161480610dfd5750610dfd8484610741565b806109375750826001600160a01b0316610e16836107c6565b6001600160a01b031614949350505050565b610e30611006565b610e4d57604051631afcd79f60e31b815260040160405180910390fd5b565b610e57610e28565b600080516020611b0283398151915280610e71848261144d565b5060018101610420838261144d565b600081471015610eac5760405163cf47918160e01b8152476004820152602481018390526044016103bc565b763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b176020526037600983f090506001600160a01b0381166102c85760405163b06ebf3d60e01b815260040160405180910390fd5b610f208383611020565b61045d336000858585610a52565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310610f6d5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310610f99576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310610fb757662386f26fc10000830492506010015b6305f5e1008310610fcf576305f5e100830492506008015b6127108310610fe357612710830492506004015b60648310610ff5576064830492506002015b600a83106102c85760010192915050565b600061101061093f565b54600160401b900460ff16919050565b6001600160a01b03821661104a57604051633250574960e11b8152600060048201526024016103bc565b60006110588383600061080d565b90506001600160a01b0381161561045d576040516339e3563760e11b8152600060048201526024016103bc565b6105bb8061150e83390190565b6001600160e01b0319811681146110a857600080fd5b50565b6000602082840312156110bd57600080fd5b813561043b81611092565b60005b838110156110e35781810151838201526020016110cb565b50506000910152565b600081518084526111048160208601602086016110c8565b601f01601f19169290920160200192915050565b60208152600061043b60208301846110ec565b60006020828403121561113d57600080fd5b5035919050565b80356001600160a01b038116811461115b57600080fd5b919050565b6000806040838503121561117357600080fd5b61117c83611144565b946020939093013593505050565b60008060006060848603121561119f57600080fd5b6111a884611144565b92506111b660208501611144565b9150604084013590509250925092565b6000602082840312156111d857600080fd5b61043b82611144565b600080604083850312156111f457600080fd5b6111fd83611144565b91506020830135801515811461121257600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b6000806000806080858703121561124957600080fd5b61125285611144565b935061126060208601611144565b925060408501359150606085013567ffffffffffffffff8082111561128457600080fd5b818701915087601f83011261129857600080fd5b8135818111156112aa576112aa61121d565b604051601f8201601f19908116603f011681019083821181831017156112d2576112d261121d565b816040528281528a60208487010111156112eb57600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561132257600080fd5b61132b83611144565b915061133960208401611144565b90509250929050565b600181811c9082168061135657607f821691505b60208210810361137657634e487b7160e01b600052602260045260246000fd5b50919050565b6000835161138e8184602088016110c8565b8351908301906113a28183602088016110c8565b01949350505050565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906113de908301846110ec565b9695505050505050565b6000602082840312156113fa57600080fd5b815161043b81611092565b601f82111561045d576000816000526020600020601f850160051c8101602086101561142e5750805b601f850160051c820191505b81811015610b745782815560010161143a565b815167ffffffffffffffff8111156114675761146761121d565b61147b816114758454611342565b84611405565b602080601f8311600181146114b057600084156114985750858301515b600019600386901b1c1916600185901b178555610b74565b600085815260208120601f198616915b828110156114df578886015182559484019460019091019084016114c0565b50858210156114fd5787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe60a06040523360805234801561001457600080fd5b5060805161057061004b60003960008181606c01528181610129015281816101bc01528181610306015261039801526105706000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80637c236c63146100675780638da5cb5b146100ab57806393ac9b16146100b3578063c3c5a547146100c8578063d202158d146100eb578063f2fde38b146100fe575b600080fd5b61008e7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b61008e610111565b6100c66100c13660046104bc565b6101a1565b005b6100db6100d63660046104bc565b6102a1565b60405190151581526020016100a2565b6100db6100f93660046104d9565b6102bd565b6100c661010c3660046104bc565b6102eb565b6040516331a9108f60e11b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa158015610178573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061019c91906104fb565b905090565b6040516302972b0f60e41b81523360048201523060248201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632972b0f090604401602060405180830381865afa15801561020b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061022f9190610518565b61024c5760405163686458e760e11b815260040160405180910390fd5b6102626001600160a01b03821660046001610437565b6040516001600160a01b03821681527ff4ef25a4fef731446d3e674bcf3bd90bba639303a0b8f40a21401bf5cf8a19bd9060200160405180910390a150565b60006102b76001600160a01b03831660046102bd565b92915050565b600082815260208181526040808320600885901c8452909152812054600160ff84161b1615155b9392505050565b6040516302972b0f60e41b81523360048201523060248201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632972b0f090604401602060405180830381865afa158015610355573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103799190610518565b6103965760405163686458e760e11b815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166323b872dd6103cd610111565b60405160e083901b6001600160e01b03191681526001600160a01b0391821660048201529084166024820152306044820152606401600060405180830381600087803b15801561041c57600080fd5b505af1158015610430573d6000803e3d6000fd5b5050505050565b6000838152602081905260409020610450908383610455565b505050565b801561047f57600882901c60009081526020849052604090208054600160ff85161b179055505050565b600882901c60009081526020849052604090208054600160ff85161b19169055505050565b6001600160a01b03811681146104b957600080fd5b50565b6000602082840312156104ce57600080fd5b81356102e4816104a4565b600080604083850312156104ec57600080fd5b50508035926020909101359150565b60006020828403121561050d57600080fd5b81516102e4816104a4565b60006020828403121561052a57600080fd5b815180151581146102e457600080fdfea2646970667358221220a9df888a790e374adfdcec15c9c29018563a2c35f6567d14b96cbe6423ce5a1364736f6c634300081800336945786563204461746150726f746563746f7253686172696e67204170706c69636174696f6e2057686974656c69737420526567697374727980bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930069457865634461746150726f746563746f7253686172696e674164644f6e6c7941707057686974656c697374a26469706673582212207ebaae22a072b8d41c86e96d4851a6bbdf8707029ec7f565b8a78dc4fa22805164736f6c63430008180033000000000000000000000000000000000000000000000000000000000000","id":1,"to":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} -{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl","networkInteractionId":1,"nonce":51,"type":"TRANSACTION_PREPARE_SEND"} -{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl","networkInteractionId":1,"nonce":51,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xaf2de72bb6dd53d4a7377799b88a566c7226e8893c20c2195905148335e3090e"},"type":"TRANSACTION_SEND"} -{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl","hash":"0xaf2de72bb6dd53d4a7377799b88a566c7226e8893c20c2195905148335e3090e","networkInteractionId":1,"receipt":{"blockHash":"0xa44ae30481dbdc118c69922790a132c657b62bfad263ae375bde71d65743630c","blockNumber":153571790,"logs":[{"address":"0xd617e6772DE4B66257292FF299227d9D2eB5d7E8","data":"0x000000000000000000000000000000000000000000000000ffffffffffffffff","logIndex":13,"topics":["0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2"]},{"address":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","data":"0x","logIndex":14,"topics":["0xb8fda7e00c6b06a2b54e58521bc5894fee35f1090e5a3bb6390bfe2b98b497f7","0x000000000000000000000000d617e6772de4b66257292ff299227d9d2eb5d7e8","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} -{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl","result":{"address":"0xd617e6772DE4B66257292FF299227d9D2eB5d7E8","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} -{"artifactId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy","constructorArgs":["0xd617e6772DE4B66257292FF299227d9D2eB5d7E8","0x29d9fb59587af02ae3bee909babdd0ac75580009","0x"],"contractName":"TransparentUpgradeableProxy","dependencies":["DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl"],"from":"0x29d9fb59587af02ae3bee909babdd0ac75580009","futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy","futureType":"NAMED_ARTIFACT_CONTRACT_DEPLOYMENT","libraries":{},"strategy":"create2","strategyConfig":{"salt":"0x0000000000000000000000000000000000000000000000000000000000000000"},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} -{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy","networkInteraction":{"data":"0x26307668000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000f3160a060405260405162000eb138038062000eb18339810160408190526200002691620003cd565b82816200003482826200009c565b505081604051620000459062000366565b6001600160a01b039091168152602001604051809103906000f08015801562000072573d6000803e3d6000fd5b506001600160a01b0316608052620000936200008d60805190565b62000102565b505050620004cb565b620000a78262000174565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115620000f457620000ef8282620001f4565b505050565b620000fe62000271565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200014460008051602062000e91833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620001718162000293565b50565b806001600160a01b03163b600003620001b057604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b031684604051620002139190620004ad565b600060405180830381855af49150503d806000811462000250576040519150601f19603f3d011682016040523d82523d6000602084013e62000255565b606091505b50909250905062000268858383620002d6565b95945050505050565b3415620002915760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116620002bf57604051633173bdd160e11b815260006004820152602401620001a7565b8060008051602062000e91833981519152620001d3565b606082620002ef57620002e9826200033c565b62000335565b81511580156200030757506001600160a01b0384163b155b156200033257604051639996b31560e01b81526001600160a01b0385166004820152602401620001a7565b50805b9392505050565b8051156200034d5780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b610524806200096d83390190565b80516001600160a01b03811681146200038c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003c4578181015183820152602001620003aa565b50506000910152565b600080600060608486031215620003e357600080fd5b620003ee8462000374565b9250620003fe6020850162000374565b60408501519092506001600160401b03808211156200041c57600080fd5b818601915086601f8301126200043157600080fd5b81518181111562000446576200044662000391565b604051601f8201601f19908116603f0116810190838211818310171562000471576200047162000391565b816040528281528960208487010111156200048b57600080fd5b6200049e836020830160208801620003a7565b80955050505050509250925092565b60008251620004c1818460208701620003a7565b9190910192915050565b608051610487620004e66000396000601001526104876000f3fe608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea26469706673582212209337d136f2b4b2154746672e0df2cca2e33bea3e3fa6951ce31fc75a0d2ec5c364736f6c63430008180033608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220fa82b8f95f3eb9534a5d44b3fe7a934376995efa5e3d86fa4073fefdb114e5c164736f6c63430008180033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103000000000000000000000000d617e6772de4b66257292ff299227d9d2eb5d7e800000000000000000000000029d9fb59587af02ae3bee909babdd0ac7558000900000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","id":1,"to":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} -{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy","networkInteractionId":1,"nonce":52,"type":"TRANSACTION_PREPARE_SEND"} -{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy","networkInteractionId":1,"nonce":52,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x2be29bf8eb4f6574569725c4801975c0ccd989d93a8f708731cfa53490ac064e"},"type":"TRANSACTION_SEND"} -{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy","hash":"0x2be29bf8eb4f6574569725c4801975c0ccd989d93a8f708731cfa53490ac064e","networkInteractionId":1,"receipt":{"blockHash":"0x05bc3cffa214d1027c773fff8a0cd9f7c7efa7cbf05ddbdfa9507802bc09ffc5","blockNumber":153571802,"logs":[{"address":"0x636bDecb02390064bb938760473d76FfB47c4FDa","data":"0x","logIndex":15,"topics":["0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b","0x000000000000000000000000d617e6772de4b66257292ff299227d9d2eb5d7e8"]},{"address":"0x39149e24208759F67AB2bB43aF4F54B6a6F0adD2","data":"0x","logIndex":16,"topics":["0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000029d9fb59587af02ae3bee909babdd0ac75580009"]},{"address":"0x636bDecb02390064bb938760473d76FfB47c4FDa","data":"0x000000000000000000000000000000000000000000000000000000000000000000000000000000000000000039149e24208759f67ab2bb43af4f54b6a6f0add2","logIndex":17,"topics":["0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f"]},{"address":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","data":"0x","logIndex":18,"topics":["0xb8fda7e00c6b06a2b54e58521bc5894fee35f1090e5a3bb6390bfe2b98b497f7","0x000000000000000000000000636bdecb02390064bb938760473d76ffb47c4fda","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} -{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy","result":{"address":"0x636bDecb02390064bb938760473d76FfB47c4FDa","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} -{"artifactId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistry","contractAddress":"0x636bDecb02390064bb938760473d76FfB47c4FDa","contractName":"AddOnlyAppWhitelistRegistry","dependencies":["DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy"],"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistry","futureType":"NAMED_ARTIFACT_CONTRACT_AT","strategy":"create2","strategyConfig":{"salt":"0x0000000000000000000000000000000000000000000000000000000000000000"},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} -{"artifactId":"DataProtectorSharingModule#DataProtectorSharingImpl","constructorArgs":["0x14B465079537655E1662F012e99EBa3863c8B9E0","0x3441A0C9FE488c51fcABa2bAAA048720f4D4F72D","0x636bDecb02390064bb938760473d76FfB47c4FDa"],"contractName":"DataProtectorSharing","dependencies":["DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy"],"from":"0x29d9fb59587af02ae3bee909babdd0ac75580009","futureId":"DataProtectorSharingModule#DataProtectorSharingImpl","futureType":"NAMED_ARTIFACT_CONTRACT_DEPLOYMENT","libraries":{},"strategy":"create2","strategyConfig":{"salt":"0x0000000000000000000000000000000000000000000000000000000000000000"},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} -{"futureId":"DataProtectorSharingModule#DataProtectorSharingImpl","networkInteraction":{"data":"0x26307668000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000004a0260e06040523480156200001157600080fd5b50604051620049a2380380620049a283398101604081905262000034916200012e565b6001600160a01b0383166080526200004b62000064565b6001600160a01b0391821660c0521660a0525062000182565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000b55760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620001155780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6001600160a01b03811681146200011557600080fd5b6000806000606084860312156200014457600080fd5b8351620001518162000118565b6020850151909350620001648162000118565b6040850151909250620001778162000118565b809150509250925092565b60805160a05160c0516147956200020d60003960008181610b960152818161144f01528181611c5201528181611cf101528181611d920152611f8c0152600081816104ca0152610b0b015260008181610ff9015281816115af01528181611e3001528181611fea015281816122b7015281816124fe01528181612ab20152612cf001526147956000f3fe608060405234801561001057600080fd5b506004361061027f5760003560e01c80638129fc1c1161015c578063d0b06c66116100ce578063e985e9c511610087578063e985e9c51461070f578063ea46d1aa14610722578063f4c0fab414610767578063fe4c31a414610787578063ff19d9df1461079a578063ff811f60146107ad57600080fd5b8063d0b06c661461063b578063d3c523891461064e578063d547741f14610661578063d835c33714610674578063dc30b8fc14610687578063dfe0bc111461069a57600080fd5b8063a217fddf11610120578063a217fddf14610598578063a22cb465146105a0578063ac9650d8146105b3578063b88d4fde146105d3578063c3533ba2146105e6578063c87b56dd1461062857600080fd5b80638129fc1c146105385780638f4ffcb11461054057806391d148541461055357806395d89b41146105665780639a82c2bd1461056e57600080fd5b80632f2ff15d116101f557806342966c68116101b957806342966c68146104b25780634afecaff146104c557806353574f9e146104ec5780636352211e146104ff57806370a082311461051257806372d570ce1461052557600080fd5b80632f2ff15d146103ad578063328cb1f7146103c057806336568abe1461047957806340e6158d1461048c57806342842e0e1461049f57600080fd5b80630b9f187b116102475780630b9f187b14610314578063150b7a0214610327578063185e4e8d146103535780632069e9531461036657806323b872dd14610387578063248a9ca31461039a57600080fd5b806301d0b6341461028457806301ffc9a71461029957806306fdde03146102c1578063081812fc146102d6578063095ea7b314610301575b600080fd5b61029761029236600461351d565b6107c0565b005b6102ac6102a7366004613550565b610836565b60405190151581526020015b60405180910390f35b6102c9610847565b6040516102b891906135bd565b6102e96102e43660046135d0565b6108eb565b6040516001600160a01b0390911681526020016102b8565b61029761030f3660046135e9565b610900565b6102976103223660046136a0565b61090f565b61033a6103353660046136e8565b61092b565b6040516001600160e01b031990911681526020016102b8565b61029761036136600461351d565b61093c565b61037961037436600461351d565b6109b6565b6040519081526020016102b8565b610297610395366004613767565b6109d9565b6103796103a83660046135d0565b610a69565b6102976103bb3660046137a8565b610a8b565b6104676103ce36600461351d565b600560209081526000918252604091829020805460018201548451808601865260028401546001600160481b038082168352600160481b90910464ffffffffff1682870152865180880190975260049094015460ff808216151588526101009091049094169486019490945290936001600160a01b03821693600160a01b830465ffffffffffff1693600160d01b909304909216919086565b6040516102b8969594939291906137d8565b6102976104873660046137a8565b610aa7565b61029761049a366004613853565b610ada565b6102976104ad366004613767565b610d34565b6102976104c03660046135d0565b610d4f565b6102e97f000000000000000000000000000000000000000000000000000000000000000081565b6102976104fa3660046138aa565b610d5b565b6102e961050d3660046135d0565b610d67565b61037961052036600461351d565b610d72565b61029761053336600461351d565b610dce565b610297610e47565b6102ac61054e3660046138ea565b610fec565b6102ac6105613660046137a8565b61116e565b6102c96111a6565b61058161057c3660046139fd565b6111e5565b60405165ffffffffffff90911681526020016102b8565b610379600081565b6102976105ae366004613a41565b6111f9565b6105c66105c1366004613a6f565b611204565b6040516102b89190613ae3565b6102976105e13660046136e8565b6112eb565b6105816105f43660046137a8565b60008281526006602090815260408083206001600160a01b038516845260030190915290205465ffffffffffff1692915050565b6102c96106363660046135d0565b611303565b61029761064936600461351d565b611377565b61058161065c366004613b47565b611505565b61029761066f3660046137a8565b611512565b610379610682366004613b6b565b61152e565b610297610695366004613bb9565b611675565b6107006106a83660046135d0565b6006602090815260009182526040918290208054600182015484518086019095526002909201546001600160481b0381168552600160481b900464ffffffffff1692840192909252909165ffffffffffff9091169083565b6040516102b893929190613be7565b6102ac61071d366004613c23565b6117a3565b610581610730366004613c23565b6001600160a01b0391821660009081526005602090815260408083209390941682526003909201909152205465ffffffffffff1690565b61037961077536600461351d565b60046020526000908152604090205481565b61029761079536600461351d565b6117f0565b6102976107a8366004613c69565b61186f565b6102976107bb366004613c8d565b6118c9565b6001600160a01b038116600090815260056020526040902080546107e38161198b565b60048201805460ff19169055604080518281526001600160a01b03851660208201527f3fb0561a34a824ad00e49427875f49120aeba57a15999baef5fbae14e664d97291015b60405180910390a1505050565b6000610841826119c1565b92915050565b600080516020614720833981519152805460609190819061086790613cba565b80601f016020809104026020016040519081016040528092919081815260200182805461089390613cba565b80156108e05780601f106108b5576101008083540402835291602001916108e0565b820191906000526020600020905b8154815290600101906020018083116108c357829003601f168201915b505050505091505090565b60006108f6826119e6565b5061084182611a1e565b61090b828233611a58565b5050565b600061091a81611a65565b60006109268382613d36565b505050565b630a85bd0160e11b5b949350505050565b6001600160a01b0381166000908152600560205260409020805461095f8161198b565b6002820180546dffffffffff00000000000000000019169055604080518281526001600160a01b03851660208201527fb76a4377a20c8298064cd897c0095e802f478ccb93d1150d391a2dd268d7e5fb9101610829565b6000806003600081546109c890613e0b565b918290555090506108418382611a6f565b6001600160a01b038216610a0857604051633250574960e11b8152600060048201526024015b60405180910390fd5b6000610a15838333611a89565b9050836001600160a01b0316816001600160a01b031614610a63576040516364283d7b60e01b81526001600160a01b03808616600483015260248201849052821660448201526064016109ff565b50505050565b6000908152600080516020614740833981519152602052604090206001015490565b610a9482610a69565b610a9d81611a65565b610a638383611b05565b6001600160a01b0381163314610ad05760405163334bd91960e11b815260040160405180910390fd5b6109268282611bb1565b610ae38361198b565b610aec82611c2d565b6040516331a9108f60e11b81526001600160a01b0382811660048301527f00000000000000000000000000000000000000000000000000000000000000001690636352211e90602401602060405180830381865afa158015610b52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b769190613e24565b506040516331a9108f60e11b81526001600160a01b0383811660048301527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e908290636352211e90602401602060405180830381865afa158015610be5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c099190613e24565b6040516001600160e01b031960e084901b1681526001600160a01b0391821660048201523060248201529085166044820152606401600060405180830381600087803b158015610c5857600080fd5b505af1158015610c6c573d6000803e3d6000fd5b505050506001600160a01b038281166000908152600560209081526040808320600180820180546001600160a01b031916968816969096179095558781558784526006909252822080549193929091610cc6908490613e41565b90915550610cd690508383611e1a565b50604080516001600160a01b0380861682526020820187905260009282019290925290831660608201527f701e4990df91f34f0c6e42c039715e077aa32f81af006f9f5e8165cbda0fdddd906080015b60405180910390a150505050565b610926838383604051806020016040528060008152506112eb565b61090b60008233611a89565b61092683338484611ef0565b6000610841826119e6565b60006000805160206147208339815191526001600160a01b038316610dad576040516322718ad960e21b8152600060048201526024016109ff565b6001600160a01b039092166000908152600390920160205250604090205490565b6001600160a01b03811660009081526005602052604090208054610df18161198b565b610dfa81612141565b60018201805460ff60d01b19169055604080518281526001600160a01b03851660208201527f619bc890d3c88741caaba887a528d314fe6fa1c2ba35730eb1db180c8bdc17579101610829565b6000610e5161217f565b805490915060ff600160401b82041615906001600160401b0316600081158015610e785750825b90506000826001600160401b03166001148015610e945750303b155b905081158015610ea2575080155b15610ec05760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610eea57845460ff60401b1916600160401b1785555b610f5e6040518060400160405280601a81526020017f6945786563204461746150726f746563746f7253686172696e670000000000008152506040518060400160405280601981526020017f69457865634461746150726f746563746f7253686172696e67000000000000008152506121a8565b610f666121ba565b610f6e6121ba565b610f79600033611b05565b50610f9f604051806040016040528060048152602001636970667360e01b81525061090f565b8315610fe557845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b6000336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146110395760405163ca41b30160e01b81523360048201526024016109ff565b600082900361105b57604051633e0f836160e21b815260040160405180910390fd5b600061106a6004828587613e54565b61107391613e7e565b9050632c3adc7760e01b6001600160e01b03198216016110c65760008061109d8560048189613e54565b8101906110aa9190613b47565b915091506110b9828a836121c4565b5060019350505050611165565b63657d3d4360e01b6001600160e01b031982160161110a576000806110ee8560048189613e54565b8101906110fb91906139fd565b915091506110b9828a836123b6565b635654583160e11b6001600160e01b031982160161115f5760008080611133866004818a613e54565b81019061114091906138aa565b925092509250611152838b8484611ef0565b6001945050505050611165565b60009150505b95945050505050565b6000918252600080516020614740833981519152602090815260408084206001600160a01b0393909316845291905290205460ff1690565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930180546060916000805160206147208339815191529161086790613cba565b60006111f28333846123b6565b9392505050565b61090b33838361260e565b604080516000815260208101909152606090826001600160401b0381111561122e5761122e613615565b60405190808252806020026020018201604052801561126157816020015b606081526020019060019003908161124c5790505b50915060005b838110156112e3576112be3086868481811061128557611285613ebf565b90506020028101906112979190613ed5565b856040516020016112aa93929190613f22565b6040516020818303038152906040526126bf565b8382815181106112d0576112d0613ebf565b6020908102919091010152600101611267565b505092915050565b6112f68484846109d9565b610a63338585858561272c565b606061130e826119e6565b50600061132660408051602081019091526000815290565b9050600081511161134657604051806020016040528060008152506111f2565b8061135084612856565b604051602001611361929190613f49565b6040516020818303038152906040529392505050565b6001600160a01b0381166000908152600560205260409020546113998161198b565b6113a281612141565b6113ab826128e8565b6001600160a01b0382166000908152600560209081526040808320838155600180820180546001600160d81b03191690556002820180546001600160701b03191690556004909101805469ffffffffffffffffffff191690558484526006909252822080549192909161141f908490613eac565b9091555050604051632142170760e11b81523060048201523360248201526001600160a01b0383811660448301527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e90606401600060405180830381600087803b15801561149357600080fd5b505af11580156114a7573d6000803e3d6000fd5b5050604080516001600160a01b038616815260006020820181905291810185905260608101919091527f701e4990df91f34f0c6e42c039715e077aa32f81af006f9f5e8165cbda0fdddd925060800190505b60405180910390a15050565b60006111f28333846121c4565b61151b82610a69565b61152481611a65565b610a638383611bb1565b60008061153b858561293e565b6001600160a01b038087166000908152600560205260408120600101549293509161156891889116612a31565b9050600061157585612a9d565b90506000611595888761158b60208b018b61351d565b8a60800135612b71565b604051630558653560e21b81529091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063156194d4906115ea90859087908c908790600401614283565b6020604051808303816000875af1158015611609573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061162d91906142d0565b94507f09bb563d4351a41cfcb2e1a9e3caabd85077d013afa5ef5b60cd460c56f7ff128589866040516116629392919061431d565b60405180910390a1505050509392505050565b6001600160a01b038216600090815260056020526040902080546116988161198b565b6116a1846128e8565b6001820154600160d01b900460ff16156116e05760405163123c6c3b60e11b8152600481018290526001600160a01b03851660248201526044016109ff565b6002820154600160481b900464ffffffffff161561172357604051631e6991f160e21b8152600481018290526001600160a01b03851660248201526044016109ff565b6004820180546001600160481b0385166101000269ffffffffffffffffffff199091161760011790556040517fec81370602852d2a562027f306877d179384b7df480e4f2c68d233de886cfd9290610d26908390879087909283526001600160a01b039190911660208301526001600160481b0316604082015260600190565b6001600160a01b0391821660009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793056020908152604080832093909416825291909152205460ff1690565b6001600160a01b038116600090815260056020526040902080546118138161198b565b61181c83612d6a565b60018201805460ff60d01b1916600160d01b179055604080518281526001600160a01b03851660208201527f806e162c7ef4165a275b5df55317f9f7be1e2bb257c6cc87fbbb0fabb6b2f97b9101610829565b6118788261198b565b6000828152600660205260409020819060020161189582826143b2565b9050507fd33315cb494162d759f3ab7d813be7d0a6e0e70f717fc31c258f84a729004f7882826040516114f99291906143f2565b6001600160a01b038216600090815260056020526040902080546118ec8161198b565b6118f584612d6a565b6119056040840160208501614406565b64ffffffffff16600003611946576119236040840160208501614406565b604051632a94078b60e01b815264ffffffffff90911660048201526024016109ff565b826002830161195582826143b2565b9050507f796fca2de82b5272091ddfd0ab5d10f279e96eb8f47150d0f63f8411399b32ac818585604051610d2693929190614423565b61199e61199782610d67565b3383612db2565b6119be576040516373ed018760e01b8152600481018290526024016109ff565b50565b60006001600160e01b03198216637965db0b60e01b1480610841575061084182612e17565b6000806119f283612e67565b90506001600160a01b03811661084157604051637e27328960e01b8152600481018490526024016109ff565b60009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930460205260409020546001600160a01b031690565b6109268383836001612ea1565b6119be8133612fb7565b61090b828260405180602001604052806000815250612ff0565b60008281526006602052604081206001600160a01b038516611afa57805415611ac8576040516386acf7fd60e01b8152600481018590526024016109ff565b60018101544265ffffffffffff9091161115611afa57604051634aee26f760e11b8152600481018590526024016109ff565b611165858585613008565b6000600080516020614740833981519152611b20848461116e565b611ba0576000848152602082815260408083206001600160a01b03871684529091529020805460ff19166001179055611b563390565b6001600160a01b0316836001600160a01b0316857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a46001915050610841565b6000915050610841565b5092915050565b6000600080516020614740833981519152611bcc848461116e565b15611ba0576000848152602082815260408083206001600160a01b0387168085529252808320805460ff1916905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a46001915050610841565b6040516331a9108f60e11b81526001600160a01b0382811660048301819052916000917f00000000000000000000000000000000000000000000000000000000000000001690636352211e90602401602060405180830381865afa158015611c99573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cbd9190613e24565b9050336001600160a01b0382161480611d67575060405163020604bf60e21b81526004810183905233906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063081812fc90602401602060405180830381865afa158015611d38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d5c9190613e24565b6001600160a01b0316145b80611dfd575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015611dd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dfd9190614446565b6109265760405163ede508e560e01b815260040160405180910390fd5b611e226134aa565b611e2c8383612a31565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634b747106604051806060016040528084815260200160006001811115611e8157611e816142e9565b815260408051600081526020808201835290920191909152516001600160e01b031960e084901b168152611eb891906004016144a6565b600060405180830381600087803b158015611ed257600080fd5b505af1158015611ee6573d6000803e3d6000fd5b5050505092915050565b6001600160a01b0384166000908152600560205260409020611f1185613112565b60048101546001600160481b038381166101009092041614611f5f576040516255350960e21b81526001600160a01b03861660048201526001600160481b03831660248201526044016109ff565b604051632142170760e11b81523060048201526001600160a01b03848116602483015286811660448301527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e90606401600060405180830381600087803b158015611fd057600080fd5b505af1158015611fe4573d6000803e3d6000fd5b505050507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166323b872dd856120258460000154610d67565b60048581015460405160e086901b6001600160e01b031916815261205b9493926101009092046001600160481b031691016144b9565b6020604051808303816000875af115801561207a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061209e9190614446565b508054604080519182526001600160a01b038581166020840152871682820152517f39e9de3f8fb17aa9d0e1df99a67605205f5e86d0ac765ee0299fb8ea4f2baa219181900360600190a1505050506001600160a01b031660009081526005602052604081209081556001810180546001600160d81b03191690556002810180546001600160701b0319169055600401805469ffffffffffffffffffff19169055565b6000818152600660205260409020600101544265ffffffffffff909116106119be57604051634aee26f760e11b8152600481018290526024016109ff565b6000807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00610841565b6121b0613159565b61090b828261317e565b6121c2613159565b565b6000838152600660205260408120825160028201546001600160481b03908116911614158061220d575060208301516002820154600160481b900464ffffffffff908116911614155b1561222f578483604051632441e4e360e11b81526004016109ff9291906144e5565b600281015461224c90600160481b900464ffffffffff1642614513565b6001600160a01b03851660009081526003830160205260409020805465ffffffffffff191665ffffffffffff8381169182179092556001840154929450612295929091166131af565b60018201805465ffffffffffff191665ffffffffffff929092169190911790557f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166323b872dd856122ee88610d67565b60028501546040516001600160e01b031960e086901b16815261231f9392916001600160481b0316906004016144b9565b6020604051808303816000875af115801561233e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123629190614446565b506040805186815265ffffffffffff841660208201526001600160a01b038616917f2366234d2d402efc07153c0d03fc5ec74a9ef5496e1accadc4b1aaf51d7f73b9910160405180910390a2509392505050565b6001600160a01b03831660009081526005602052604081206002810154600160481b900464ffffffffff16820361240b57604051631446018560e11b81526001600160a01b03861660048201526024016109ff565b60208301516002820154600160481b900464ffffffffff90811691161415806124465750825160028201546001600160481b03908116911614155b156124685784836040516346aa951560e01b81526004016109ff929190614532565b600281015461248590600160481b900464ffffffffff1642614513565b6001600160a01b03851660009081526003830160205260409020805465ffffffffffff191665ffffffffffff83811691821790925560018401549294506124d6929091600160a01b909104166131af565b8160010160146101000a81548165ffffffffffff021916908365ffffffffffff1602179055507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166323b872dd856125398460000154610d67565b60028501546040516001600160e01b031960e086901b16815261256a9392916001600160481b0316906004016144b9565b6020604051808303816000875af1158015612589573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125ad9190614446565b508054604080519182526001600160a01b03878116602084015286168282015265ffffffffffff84166060830152517fe2d5d453d44004623a821ef386e026d37fccbac3f56cef0cb5918cab5c11dc889181900360800190a1509392505050565b6000805160206147208339815191526001600160a01b03831661264f57604051630b61174360e31b81526001600160a01b03841660048201526024016109ff565b6001600160a01b038481166000818152600584016020908152604080832094881680845294825291829020805460ff191687151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a350505050565b6060600080846001600160a01b0316846040516126dc9190614569565b600060405180830381855af49150503d8060008114612717576040519150601f19603f3d011682016040523d82523d6000602084013e61271c565b606091505b50915091506111658583836131bf565b6001600160a01b0383163b15610fe557604051630a85bd0160e11b81526001600160a01b0384169063150b7a029061276e908890889087908790600401614585565b6020604051808303816000875af19250505080156127a9575060408051601f3d908101601f191682019092526127a6918101906145b8565b60015b612812573d8080156127d7576040519150601f19603f3d011682016040523d82523d6000602084013e6127dc565b606091505b50805160000361280a57604051633250574960e11b81526001600160a01b03851660048201526024016109ff565b805181602001fd5b6001600160e01b03198116630a85bd0160e11b1461284e57604051633250574960e11b81526001600160a01b03851660048201526024016109ff565b505050505050565b606060006128638361321b565b60010190506000816001600160401b0381111561288257612882613615565b6040519080825280601f01601f1916602001820160405280156128ac576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846128b657509392505050565b6001600160a01b03811660009081526005602052604090206001015442600160a01b90910465ffffffffffff16106119be57604051637e448f1b60e11b81526001600160a01b03821660048201526024016109ff565b600060208201351561296557816040516385461e9b60e01b81526004016109ff91906145d5565b6001600160a01b03831660009081526005602090815260408083208054338552600382019093529220544265ffffffffffff909116106129aa57600192505050610841565b80158015906129c457506001820154600160d01b900460ff165b80156129f6575060008181526006602090815260408083203384526003019091529020544265ffffffffffff90911610155b15612a0657600092505050610841565b604051630e39d6b360e01b8152600481018290526001600160a01b03861660248201526044016109ff565b612a396134aa565b5060408051610120810182526001600160a01b03938416815260006020808301829052600019838501526003606084015293909416608082015260a081018490523060c082015260e081018490528151938452918301905261010081019190915290565b612aa56134aa565b612aae826132f3565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b2b07e66604051806060016040528084815260200160006001811115612b0357612b036142e9565b815260408051600081526020808201835290920191909152516001600160e01b031960e084901b168152612b3a91906004016144a6565b600060405180830381600087803b158015612b5457600080fd5b505af1158015612b68573d6000803e3d6000fd5b50505050919050565b604080516102008101825260008082526020820181905291810182905260608082018390526080820183905260a0820183905260c0820183905260e08201839052610100820183905261012082018390526101408201839052610160820183905261018082018390526101a082018190526101c08201929092526101e081019190915260006040518060600160405280604051806102000160405280886001600160a01b0316815260200160008152602001896001600160a01b0316815260200160008152602001876001600160a01b0316815260200160008152602001306001600160a01b0316815260200160018152602001600360001b815260200186815260200160008152602001336001600160a01b0316815260200160006001600160a01b03168152602001612ca361335b565b8152602001612cb0613383565b81526040805160008082526020808301845293840191909152928452838201839052805192835290820181529182015251638dd971d560e01b81529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690638dd971d590612d2d9084906004016145e8565b600060405180830381600087803b158015612d4757600080fd5b505af1158015612d5b573d6000803e3d6000fd5b50509151979650505050505050565b6001600160a01b03811660009081526005602052604090206004015460ff16156119be576040516325e3e05d60e21b81526001600160a01b03821660048201526024016109ff565b60006001600160a01b038316158015906109345750826001600160a01b0316846001600160a01b03161480612dec5750612dec84846117a3565b806109345750826001600160a01b0316612e0583611a1e565b6001600160a01b031614949350505050565b60006001600160e01b031982166380ac58cd60e01b1480612e4857506001600160e01b03198216635b5e139f60e01b145b8061084157506301ffc9a760e01b6001600160e01b0319831614610841565b60009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930260205260409020546001600160a01b031690565b6000805160206147208339815191528180612ec457506001600160a01b03831615155b15612f86576000612ed4856119e6565b90506001600160a01b03841615801590612f005750836001600160a01b0316816001600160a01b031614155b8015612f135750612f1181856117a3565b155b15612f3c5760405163a9fbf51f60e01b81526001600160a01b03851660048201526024016109ff565b8215612f845784866001600160a01b0316826001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b600093845260040160205250506040902080546001600160a01b0319166001600160a01b0392909216919091179055565b612fc1828261116e565b61090b5760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044016109ff565b612ffa838361339e565b61092633600085858561272c565b60006000805160206147208339815191528161302385612e67565b90506001600160a01b0384161561303f5761303f818587613403565b6001600160a01b0381161561307f5761305c600086600080612ea1565b6001600160a01b0381166000908152600383016020526040902080546000190190555b6001600160a01b038616156130b0576001600160a01b03861660009081526003830160205260409020805460010190555b600085815260028301602052604080822080546001600160a01b0319166001600160a01b038a811691821790925591518893918516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a495945050505050565b6001600160a01b03811660009081526005602052604090206004015460ff166119be576040516346bb405d60e01b81526001600160a01b03821660048201526024016109ff565b613161613467565b6121c257604051631afcd79f60e31b815260040160405180910390fd5b613186613159565b600080516020614720833981519152806131a08482613d36565b5060018101610a638382613d36565b60008282188284110282186111f2565b6060826131d4576131cf82613481565b6111f2565b81511580156131eb57506001600160a01b0384163b155b1561321457604051639996b31560e01b81526001600160a01b03851660048201526024016109ff565b50806111f2565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061325a5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310613286576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106132a457662386f26fc10000830492506010015b6305f5e10083106132bc576305f5e100830492506008015b61271083106132d057612710830492506004015b606483106132e2576064830492506002015b600a83106108415760010192915050565b6132fb6134aa565b5060408051610120810182526001600160a01b039290921682526000602080840182905260001984840152600360608501526080840182905260a084018290523060c085015260e084018290528251918252810190915261010082015290565b6060600060405160200161336f9190614636565b604051602081830303815290604052905090565b600060026000815461339490613e0b565b9182905550919050565b6001600160a01b0382166133c857604051633250574960e11b8152600060048201526024016109ff565b60006133d683836000611a89565b90506001600160a01b03811615610926576040516339e3563760e11b8152600060048201526024016109ff565b61340e838383612db2565b610926576001600160a01b03831661343c57604051637e27328960e01b8152600481018290526024016109ff565b60405163177e802f60e01b81526001600160a01b0383166004820152602481018290526044016109ff565b600061347161217f565b54600160401b900460ff16919050565b8051156134915780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b604080516101208101825260008082526020820181905291810182905260608082018390526080820183905260a0820183905260c0820183905260e082019290925261010081019190915290565b6001600160a01b03811681146119be57600080fd5b8035613518816134f8565b919050565b60006020828403121561352f57600080fd5b81356111f2816134f8565b6001600160e01b0319811681146119be57600080fd5b60006020828403121561356257600080fd5b81356111f28161353a565b60005b83811015613588578181015183820152602001613570565b50506000910152565b600081518084526135a981602086016020860161356d565b601f01601f19169290920160200192915050565b6020815260006111f26020830184613591565b6000602082840312156135e257600080fd5b5035919050565b600080604083850312156135fc57600080fd5b8235613607816134f8565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b038084111561364557613645613615565b604051601f8501601f19908116603f0116810190828211818310171561366d5761366d613615565b8160405280935085815286868601111561368657600080fd5b858560208301376000602087830101525050509392505050565b6000602082840312156136b257600080fd5b81356001600160401b038111156136c857600080fd5b8201601f810184136136d957600080fd5b6109348482356020840161362b565b600080600080608085870312156136fe57600080fd5b8435613709816134f8565b93506020850135613719816134f8565b92506040850135915060608501356001600160401b0381111561373b57600080fd5b8501601f8101871361374c57600080fd5b61375b8782356020840161362b565b91505092959194509250565b60008060006060848603121561377c57600080fd5b8335613787816134f8565b92506020840135613797816134f8565b929592945050506040919091013590565b600080604083850312156137bb57600080fd5b8235915060208301356137cd816134f8565b809150509250929050565b8681526001600160a01b038616602082015265ffffffffffff851660408201528315156060820152610100810161382c608083018580516001600160481b0316825260209081015164ffffffffff16910152565b8251151560c08301526001600160481b0360208401511660e0830152979650505050505050565b60008060006060848603121561386857600080fd5b83359250602084013561387a816134f8565b9150604084013561388a816134f8565b809150509250925092565b6001600160481b03811681146119be57600080fd5b6000806000606084860312156138bf57600080fd5b83356138ca816134f8565b925060208401356138da816134f8565b9150604084013561388a81613895565b60008060008060006080868803121561390257600080fd5b853561390d816134f8565b9450602086013593506040860135613924816134f8565b925060608601356001600160401b038082111561394057600080fd5b818801915088601f83011261395457600080fd5b81358181111561396357600080fd5b89602082850101111561397557600080fd5b9699959850939650602001949392505050565b64ffffffffff811681146119be57600080fd5b6000604082840312156139ad57600080fd5b604051604081018181106001600160401b03821117156139cf576139cf613615565b60405290508082356139e081613895565b815260208301356139f081613988565b6020919091015292915050565b60008060608385031215613a1057600080fd5b8235613a1b816134f8565b9150613a2a846020850161399b565b90509250929050565b80151581146119be57600080fd5b60008060408385031215613a5457600080fd5b8235613a5f816134f8565b915060208301356137cd81613a33565b60008060208385031215613a8257600080fd5b82356001600160401b0380821115613a9957600080fd5b818501915085601f830112613aad57600080fd5b813581811115613abc57600080fd5b8660208260051b8501011115613ad157600080fd5b60209290920196919550909350505050565b600060208083016020845280855180835260408601915060408160051b87010192506020870160005b82811015613b3a57603f19888603018452613b28858351613591565b94509285019290850190600101613b0c565b5092979650505050505050565b60008060608385031215613b5a57600080fd5b82359150613a2a846020850161399b565b600080600060608486031215613b8057600080fd5b8335613b8b816134f8565b925060208401356001600160401b03811115613ba657600080fd5b8401610160818703121561387a57600080fd5b60008060408385031215613bcc57600080fd5b8235613bd7816134f8565b915060208301356137cd81613895565b83815265ffffffffffff8316602082015260808101610934604083018480516001600160481b0316825260209081015164ffffffffff16910152565b60008060408385031215613c3657600080fd5b8235613c41816134f8565b915060208301356137cd816134f8565b600060408284031215613c6357600080fd5b50919050565b60008060608385031215613c7c57600080fd5b82359150613a2a8460208501613c51565b60008060608385031215613ca057600080fd5b8235613cab816134f8565b9150613a2a8460208501613c51565b600181811c90821680613cce57607f821691505b602082108103613c6357634e487b7160e01b600052602260045260246000fd5b601f821115610926576000816000526020600020601f850160051c81016020861015613d175750805b601f850160051c820191505b8181101561284e57828155600101613d23565b81516001600160401b03811115613d4f57613d4f613615565b613d6381613d5d8454613cba565b84613cee565b602080601f831160018114613d985760008415613d805750858301515b600019600386901b1c1916600185901b17855561284e565b600085815260208120601f198616915b82811015613dc757888601518255948401946001909101908401613da8565b5085821015613de55787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600060018201613e1d57613e1d613df5565b5060010190565b600060208284031215613e3657600080fd5b81516111f2816134f8565b8082018082111561084157610841613df5565b60008085851115613e6457600080fd5b83861115613e7157600080fd5b5050820193919092039150565b6001600160e01b031981358181169160048510156112e35760049490940360031b84901b1690921692915050565b8181038181111561084157610841613df5565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112613eec57600080fd5b8301803591506001600160401b03821115613f0657600080fd5b602001915036819003821315613f1b57600080fd5b9250929050565b828482376000838201600081528351613f3f81836020880161356d565b0195945050505050565b60008351613f5b81846020880161356d565b835190830190613f6f81836020880161356d565b01949350505050565b600061012060018060a01b0383511684526020830151602085015260408301516040850152606083015160608501526080830151613fc160808601826001600160a01b03169052565b5060a0830151613fdc60a08601826001600160a01b03169052565b5060c0830151613ff760c08601826001600160a01b03169052565b5060e083015160e085015261010080840151828287015261401a83870182613591565b9695505050505050565b6000808335601e1984360301811261403b57600080fd5b83016020810192503590506001600160401b0381111561405a57600080fd5b803603821315613f1b57600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60006101606140b1846140a48561350d565b6001600160a01b03169052565b6020830135602085015260408301356040850152606083013560608501526080830135608085015260a083013560a08501526140ef60c0840161350d565b6001600160a01b031660c085015261410960e0840161350d565b6001600160a01b031660e085015261010061412584820161350d565b6001600160a01b031690850152610120838101359085015261014061414c81850185614024565b838388015261415e8488018284614069565b979650505050505050565b80516001600160a01b03168252600061020060208301516020850152604083015161419f60408601826001600160a01b03169052565b506060830151606085015260808301516141c460808601826001600160a01b03169052565b5060a083015160a085015260c08301516141e960c08601826001600160a01b03169052565b5060e08381015190850152610100808401519085015261012080840151908501526101408084015190850152610160808401516001600160a01b038116828701525050610180838101516001600160a01b0381168683015250506101a080840151828287015261425b83870182613591565b925050506101c08084015181860152506101e0808401518583038287015261401a8382613591565b6080815260006142966080830187613f78565b82810360208401526142a88187613f78565b905082810360408401526142bc8186614092565b9050828103606084015261415e8185614169565b6000602082840312156142e257600080fd5b5051919050565b634e487b7160e01b600052602160045260246000fd5b600281106119be57634e487b7160e01b600052602160045260246000fd5b8381526001600160a01b03831660208201526060810161433c836142ff565b826040830152949350505050565b813561435581613895565b6001600160481b03811690508154816001600160481b03198216178355602084013561438081613988565b6dffffffffff0000000000000000008160481b16836dffffffffffffffffffffffffffff198416171784555050505050565b61090b828261434a565b80356143c781613895565b6001600160481b0316825260208101356143e081613988565b64ffffffffff81166020840152505050565b828152606081016111f260208301846143bc565b60006020828403121561441857600080fd5b81356111f281613988565b8381526001600160a01b03831660208201526080810161093460408301846143bc565b60006020828403121561445857600080fd5b81516111f281613a33565b60008151606084526144786060850182613f78565b90506020830151614488816142ff565b80602086015250604083015184820360408601526111658282613591565b6020815260006111f26020830184614463565b6001600160a01b0393841681529190921660208201526001600160481b03909116604082015260600190565b828152606081016111f2602083018480516001600160481b0316825260209081015164ffffffffff16910152565b65ffffffffffff818116838216019080821115611baa57611baa613df5565b6001600160a01b0383168152606081016111f2602083018480516001600160481b0316825260209081015164ffffffffff16910152565b6000825161457b81846020870161356d565b9190910192915050565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061401a90830184613591565b6000602082840312156145ca57600080fd5b81516111f28161353a565b6020815260006111f26020830184614092565b6020815260008251606060208401526146046080840182614169565b90506020840151614614816142ff565b806040850152506040840151601f198483030160608501526111658282613591565b7f7b2269657865635f726573756c745f656e6372797074696f6e223a747275650081527f2c2269657865635f726573756c745f73746f726167655f70726f766964657222601f820152611d1160f11b603f820152600060416000845461469b81613cba565b600182811680156146b357600181146146ce57614702565b60ff1984166041890152604183151584028901019450614702565b8860005260208060002060005b858110156146f65781548b82018a01529084019082016146db565b50505060418389010194505b505050506147148161227d60f01b9052565b60020194935050505056fe80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930002dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800a26469706673582212205e4f08e222ec4a667caf0a065c5f78c597e426b7bad918a04f472d624bbec20a64736f6c6343000818003300000000000000000000000014b465079537655e1662f012e99eba3863c8b9e00000000000000000000000003441a0c9fe488c51fcaba2baaa048720f4d4f72d000000000000000000000000636bdecb02390064bb938760473d76ffb47c4fda000000000000000000000000000000000000000000000000000000000000","id":1,"to":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} -{"futureId":"DataProtectorSharingModule#DataProtectorSharingImpl","networkInteractionId":1,"nonce":53,"type":"TRANSACTION_PREPARE_SEND"} -{"futureId":"DataProtectorSharingModule#DataProtectorSharingImpl","networkInteractionId":1,"nonce":53,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xd9ed02437845eb1cafb37d7e11a93b3de8287a2a128a1bf765f30b63e81f46d8"},"type":"TRANSACTION_SEND"} -{"futureId":"DataProtectorSharingModule#DataProtectorSharingImpl","hash":"0xd9ed02437845eb1cafb37d7e11a93b3de8287a2a128a1bf765f30b63e81f46d8","networkInteractionId":1,"receipt":{"blockHash":"0xb153b023e16421f3df74d7db649c1158fa968298e95a007e93b74f03892572f3","blockNumber":153571816,"logs":[{"address":"0x74ACB9B3493fCC2308cb701d547a4b460f1Ad861","data":"0x000000000000000000000000000000000000000000000000ffffffffffffffff","logIndex":11,"topics":["0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2"]},{"address":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","data":"0x","logIndex":12,"topics":["0xb8fda7e00c6b06a2b54e58521bc5894fee35f1090e5a3bb6390bfe2b98b497f7","0x00000000000000000000000074acb9b3493fcc2308cb701d547a4b460f1ad861","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} -{"futureId":"DataProtectorSharingModule#DataProtectorSharingImpl","result":{"address":"0x74ACB9B3493fCC2308cb701d547a4b460f1Ad861","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} -{"artifactId":"DataProtectorSharingModule#DataProtectorSharingProxy","constructorArgs":["0x74ACB9B3493fCC2308cb701d547a4b460f1Ad861","0x29d9fb59587af02ae3bee909babdd0ac75580009","0x"],"contractName":"TransparentUpgradeableProxy","dependencies":["DataProtectorSharingModule#DataProtectorSharingImpl"],"from":"0x29d9fb59587af02ae3bee909babdd0ac75580009","futureId":"DataProtectorSharingModule#DataProtectorSharingProxy","futureType":"NAMED_ARTIFACT_CONTRACT_DEPLOYMENT","libraries":{},"strategy":"create2","strategyConfig":{"salt":"0x0000000000000000000000000000000000000000000000000000000000000000"},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} -{"futureId":"DataProtectorSharingModule#DataProtectorSharingProxy","networkInteraction":{"data":"0x26307668000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000f3160a060405260405162000eb138038062000eb18339810160408190526200002691620003cd565b82816200003482826200009c565b505081604051620000459062000366565b6001600160a01b039091168152602001604051809103906000f08015801562000072573d6000803e3d6000fd5b506001600160a01b0316608052620000936200008d60805190565b62000102565b505050620004cb565b620000a78262000174565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115620000f457620000ef8282620001f4565b505050565b620000fe62000271565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200014460008051602062000e91833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620001718162000293565b50565b806001600160a01b03163b600003620001b057604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b031684604051620002139190620004ad565b600060405180830381855af49150503d806000811462000250576040519150601f19603f3d011682016040523d82523d6000602084013e62000255565b606091505b50909250905062000268858383620002d6565b95945050505050565b3415620002915760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116620002bf57604051633173bdd160e11b815260006004820152602401620001a7565b8060008051602062000e91833981519152620001d3565b606082620002ef57620002e9826200033c565b62000335565b81511580156200030757506001600160a01b0384163b155b156200033257604051639996b31560e01b81526001600160a01b0385166004820152602401620001a7565b50805b9392505050565b8051156200034d5780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b610524806200096d83390190565b80516001600160a01b03811681146200038c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003c4578181015183820152602001620003aa565b50506000910152565b600080600060608486031215620003e357600080fd5b620003ee8462000374565b9250620003fe6020850162000374565b60408501519092506001600160401b03808211156200041c57600080fd5b818601915086601f8301126200043157600080fd5b81518181111562000446576200044662000391565b604051601f8201601f19908116603f0116810190838211818310171562000471576200047162000391565b816040528281528960208487010111156200048b57600080fd5b6200049e836020830160208801620003a7565b80955050505050509250925092565b60008251620004c1818460208701620003a7565b9190910192915050565b608051610487620004e66000396000601001526104876000f3fe608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea26469706673582212209337d136f2b4b2154746672e0df2cca2e33bea3e3fa6951ce31fc75a0d2ec5c364736f6c63430008180033608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220fa82b8f95f3eb9534a5d44b3fe7a934376995efa5e3d86fa4073fefdb114e5c164736f6c63430008180033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610300000000000000000000000074acb9b3493fcc2308cb701d547a4b460f1ad86100000000000000000000000029d9fb59587af02ae3bee909babdd0ac7558000900000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","id":1,"to":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} -{"futureId":"DataProtectorSharingModule#DataProtectorSharingProxy","networkInteractionId":1,"nonce":54,"type":"TRANSACTION_PREPARE_SEND"} -{"futureId":"DataProtectorSharingModule#DataProtectorSharingProxy","networkInteractionId":1,"nonce":54,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xbc6963e819742b762ea8e394f09155ccb78ce4c19d7f6c2397cb87a6c1aad19d"},"type":"TRANSACTION_SEND"} -{"futureId":"DataProtectorSharingModule#DataProtectorSharingProxy","hash":"0xbc6963e819742b762ea8e394f09155ccb78ce4c19d7f6c2397cb87a6c1aad19d","networkInteractionId":1,"receipt":{"blockHash":"0x8a513b0a5532d21c102d8119d72c9252f7bdd5c1a8af17aa6975f4effbd45323","blockNumber":153571828,"logs":[{"address":"0xD754A70f2174674A8FF0fa41BCAAe310D26dbEaA","data":"0x","logIndex":12,"topics":["0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b","0x00000000000000000000000074acb9b3493fcc2308cb701d547a4b460f1ad861"]},{"address":"0x8dB0C36Ad3FC89E7e8eD4D77d041B5bF998823ea","data":"0x","logIndex":13,"topics":["0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000029d9fb59587af02ae3bee909babdd0ac75580009"]},{"address":"0xD754A70f2174674A8FF0fa41BCAAe310D26dbEaA","data":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000008db0c36ad3fc89e7e8ed4d77d041b5bf998823ea","logIndex":14,"topics":["0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f"]},{"address":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","data":"0x","logIndex":15,"topics":["0xb8fda7e00c6b06a2b54e58521bc5894fee35f1090e5a3bb6390bfe2b98b497f7","0x000000000000000000000000d754a70f2174674a8ff0fa41bcaae310d26dbeaa","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} -{"futureId":"DataProtectorSharingModule#DataProtectorSharingProxy","result":{"address":"0xD754A70f2174674A8FF0fa41BCAAe310D26dbEaA","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} -{"artifactId":"DataProtectorSharingModule#DataProtectorSharing","contractAddress":"0xD754A70f2174674A8FF0fa41BCAAe310D26dbEaA","contractName":"DataProtectorSharing","dependencies":["DataProtectorSharingModule#DataProtectorSharingProxy"],"futureId":"DataProtectorSharingModule#DataProtectorSharing","futureType":"NAMED_ARTIFACT_CONTRACT_AT","strategy":"create2","strategyConfig":{"salt":"0x0000000000000000000000000000000000000000000000000000000000000000"},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} \ No newline at end of file +{"artifactId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl","constructorArgs":[],"contractName":"AddOnlyAppWhitelistRegistry","dependencies":[],"from":"0x9990cfb1feb7f47297f54bef4d4ebedf6c5463a3","futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl","futureType":"NAMED_ARTIFACT_CONTRACT_DEPLOYMENT","libraries":{},"strategy":"create2","strategyConfig":{"salt":"0x0000000000000000000000000000000000000000000000000000000000000001"},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl","networkInteraction":{"data":"0x26307668000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001c62608060405234801561001057600080fd5b5061001961001e565b6100d0565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161561006e5760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146100cd5780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b611b83806100df6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806370a08231116100a25780639a0d319e116100715780639a0d319e1461021d578063a22cb46514610230578063b88d4fde14610243578063c87b56dd14610256578063e985e9c51461026957600080fd5b806370a08231146101d95780638129fc1c146101fa57806395d89b41146102025780639680579d1461020a57600080fd5b806323b872dd116100de57806323b872dd1461018d5780632972b0f0146101a057806342842e0e146101b35780636352211e146101c657600080fd5b806301ffc9a71461011057806306fdde0314610138578063081812fc1461014d578063095ea7b314610178575b600080fd5b61012361011e3660046110ab565b61027c565b60405190151581526020015b60405180910390f35b6101406102ce565b60405161012f9190611118565b61016061015b36600461112b565b610372565b6040516001600160a01b03909116815260200161012f565b61018b610186366004611160565b610387565b005b61018b61019b36600461118a565b610396565b6101236101ae366004611160565b610426565b61018b6101c136600461118a565b610442565b6101606101d436600461112b565b610462565b6101ec6101e73660046111c6565b61046d565b60405190815260200161012f565b61018b6104c9565b61014061063e565b6101606102183660046111c6565b61067d565b600054610160906001600160a01b031681565b61018b61023e3660046111e1565b6106aa565b61018b610251366004611233565b6106b5565b61014061026436600461112b565b6106cd565b61012361027736600461130f565b610741565b60006001600160e01b031982166380ac58cd60e01b14806102ad57506001600160e01b03198216635b5e139f60e01b145b806102c857506301ffc9a760e01b6001600160e01b03198316145b92915050565b600080516020611b0283398151915280546060919081906102ee90611342565b80601f016020809104026020016040519081016040528092919081815260200182805461031a90611342565b80156103675780601f1061033c57610100808354040283529160200191610367565b820191906000526020600020905b81548152906001019060200180831161034a57829003601f168201915b505050505091505090565b600061037d8261078e565b506102c8826107c6565b610392828233610800565b5050565b6001600160a01b0382166103c557604051633250574960e11b8152600060048201526024015b60405180910390fd5b60006103d283833361080d565b9050836001600160a01b0316816001600160a01b031614610420576040516364283d7b60e01b81526001600160a01b03808616600483015260248201849052821660448201526064016103bc565b50505050565b600061043b61043483610462565b8484610917565b9392505050565b61045d838383604051806020016040528060008152506106b5565b505050565b60006102c88261078e565b6000600080516020611b028339815191526001600160a01b0383166104a8576040516322718ad960e21b8152600060048201526024016103bc565b6001600160a01b039092166000908152600390920160205250604090205490565b60006104d361093f565b805490915060ff600160401b820416159067ffffffffffffffff166000811580156104fb5750825b905060008267ffffffffffffffff1660011480156105185750303b155b905081158015610526575080155b156105445760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561056e57845460ff60401b1916600160401b1785555b6105a8604051806060016040528060398152602001611ac9603991396040518060600160405280602c8152602001611b22602c9139610968565b6040516105b490611085565b604051809103906000f0801580156105d0573d6000803e3d6000fd5b50600080546001600160a01b0319166001600160a01b0392909216919091179055831561063757845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793018054606091600080516020611b02833981519152916102ee90611342565b600080548190610695906001600160a01b031661097a565b90506102c883826001600160a01b0316610987565b6103923383836109a1565b6106c0848484610396565b6104203385858585610a52565b60606106d88261078e565b5060006106f060408051602081019091526000815290565b90506000815111610710576040518060200160405280600081525061043b565b8061071a84610b7c565b60405160200161072b92919061137c565b6040516020818303038152906040529392505050565b6001600160a01b0391821660009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793056020908152604080832093909416825291909152205460ff1690565b60008061079a83610c0f565b90506001600160a01b0381166102c857604051637e27328960e01b8152600481018490526024016103bc565b60009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930460205260409020546001600160a01b031690565b61045d8383836001610c49565b6000600080516020611b028339815191528161082885610c0f565b90506001600160a01b0384161561084457610844818587610d5f565b6001600160a01b0381161561088457610861600086600080610c49565b6001600160a01b0381166000908152600383016020526040902080546000190190555b6001600160a01b038616156108b5576001600160a01b03861660009081526003830160205260409020805460010190555b600085815260028301602052604080822080546001600160a01b0319166001600160a01b038a811691821790925591518893918516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a495945050505050565b6000610924848484610dc3565b80610937575081836001600160a01b0316145b949350505050565b6000807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a006102c8565b610970610e28565b6103928282610e4f565b60006102c8826000610e80565b610392828260405180602001604052806000815250610f16565b600080516020611b028339815191526001600160a01b0383166109e257604051630b61174360e31b81526001600160a01b03841660048201526024016103bc565b6001600160a01b038481166000818152600584016020908152604080832094881680845294825291829020805460ff191687151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a350505050565b6001600160a01b0383163b1561063757604051630a85bd0160e11b81526001600160a01b0384169063150b7a0290610a949088908890879087906004016113ab565b6020604051808303816000875af1925050508015610acf575060408051601f3d908101601f19168201909252610acc918101906113e8565b60015b610b38573d808015610afd576040519150601f19603f3d011682016040523d82523d6000602084013e610b02565b606091505b508051600003610b3057604051633250574960e11b81526001600160a01b03851660048201526024016103bc565b805181602001fd5b6001600160e01b03198116630a85bd0160e11b14610b7457604051633250574960e11b81526001600160a01b03851660048201526024016103bc565b505050505050565b60606000610b8983610f2e565b600101905060008167ffffffffffffffff811115610ba957610ba961121d565b6040519080825280601f01601f191660200182016040528015610bd3576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084610bdd57509392505050565b60009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930260205260409020546001600160a01b031690565b600080516020611b028339815191528180610c6c57506001600160a01b03831615155b15610d2e576000610c7c8561078e565b90506001600160a01b03841615801590610ca85750836001600160a01b0316816001600160a01b031614155b8015610cbb5750610cb98185610741565b155b15610ce45760405163a9fbf51f60e01b81526001600160a01b03851660048201526024016103bc565b8215610d2c5784866001600160a01b0316826001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b600093845260040160205250506040902080546001600160a01b0319166001600160a01b0392909216919091179055565b610d6a838383610917565b61045d576001600160a01b038316610d9857604051637e27328960e01b8152600481018290526024016103bc565b60405163177e802f60e01b81526001600160a01b0383166004820152602481018290526044016103bc565b60006001600160a01b038316158015906109375750826001600160a01b0316846001600160a01b03161480610dfd5750610dfd8484610741565b806109375750826001600160a01b0316610e16836107c6565b6001600160a01b031614949350505050565b610e30611006565b610e4d57604051631afcd79f60e31b815260040160405180910390fd5b565b610e57610e28565b600080516020611b0283398151915280610e71848261144d565b5060018101610420838261144d565b600081471015610eac5760405163cf47918160e01b8152476004820152602481018390526044016103bc565b763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b176020526037600983f090506001600160a01b0381166102c85760405163b06ebf3d60e01b815260040160405180910390fd5b610f208383611020565b61045d336000858585610a52565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310610f6d5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310610f99576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310610fb757662386f26fc10000830492506010015b6305f5e1008310610fcf576305f5e100830492506008015b6127108310610fe357612710830492506004015b60648310610ff5576064830492506002015b600a83106102c85760010192915050565b600061101061093f565b54600160401b900460ff16919050565b6001600160a01b03821661104a57604051633250574960e11b8152600060048201526024016103bc565b60006110588383600061080d565b90506001600160a01b0381161561045d576040516339e3563760e11b8152600060048201526024016103bc565b6105bb8061150e83390190565b6001600160e01b0319811681146110a857600080fd5b50565b6000602082840312156110bd57600080fd5b813561043b81611092565b60005b838110156110e35781810151838201526020016110cb565b50506000910152565b600081518084526111048160208601602086016110c8565b601f01601f19169290920160200192915050565b60208152600061043b60208301846110ec565b60006020828403121561113d57600080fd5b5035919050565b80356001600160a01b038116811461115b57600080fd5b919050565b6000806040838503121561117357600080fd5b61117c83611144565b946020939093013593505050565b60008060006060848603121561119f57600080fd5b6111a884611144565b92506111b660208501611144565b9150604084013590509250925092565b6000602082840312156111d857600080fd5b61043b82611144565b600080604083850312156111f457600080fd5b6111fd83611144565b91506020830135801515811461121257600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b6000806000806080858703121561124957600080fd5b61125285611144565b935061126060208601611144565b925060408501359150606085013567ffffffffffffffff8082111561128457600080fd5b818701915087601f83011261129857600080fd5b8135818111156112aa576112aa61121d565b604051601f8201601f19908116603f011681019083821181831017156112d2576112d261121d565b816040528281528a60208487010111156112eb57600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561132257600080fd5b61132b83611144565b915061133960208401611144565b90509250929050565b600181811c9082168061135657607f821691505b60208210810361137657634e487b7160e01b600052602260045260246000fd5b50919050565b6000835161138e8184602088016110c8565b8351908301906113a28183602088016110c8565b01949350505050565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906113de908301846110ec565b9695505050505050565b6000602082840312156113fa57600080fd5b815161043b81611092565b601f82111561045d576000816000526020600020601f850160051c8101602086101561142e5750805b601f850160051c820191505b81811015610b745782815560010161143a565b815167ffffffffffffffff8111156114675761146761121d565b61147b816114758454611342565b84611405565b602080601f8311600181146114b057600084156114985750858301515b600019600386901b1c1916600185901b178555610b74565b600085815260208120601f198616915b828110156114df578886015182559484019460019091019084016114c0565b50858210156114fd5787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe60a06040523360805234801561001457600080fd5b5060805161057061004b60003960008181606c01528181610129015281816101bc01528181610306015261039801526105706000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80637c236c63146100675780638da5cb5b146100ab57806393ac9b16146100b3578063c3c5a547146100c8578063d202158d146100eb578063f2fde38b146100fe575b600080fd5b61008e7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b61008e610111565b6100c66100c13660046104bc565b6101a1565b005b6100db6100d63660046104bc565b6102a1565b60405190151581526020016100a2565b6100db6100f93660046104d9565b6102bd565b6100c661010c3660046104bc565b6102eb565b6040516331a9108f60e11b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa158015610178573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061019c91906104fb565b905090565b6040516302972b0f60e41b81523360048201523060248201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632972b0f090604401602060405180830381865afa15801561020b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061022f9190610518565b61024c5760405163686458e760e11b815260040160405180910390fd5b6102626001600160a01b03821660046001610437565b6040516001600160a01b03821681527ff4ef25a4fef731446d3e674bcf3bd90bba639303a0b8f40a21401bf5cf8a19bd9060200160405180910390a150565b60006102b76001600160a01b03831660046102bd565b92915050565b600082815260208181526040808320600885901c8452909152812054600160ff84161b1615155b9392505050565b6040516302972b0f60e41b81523360048201523060248201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632972b0f090604401602060405180830381865afa158015610355573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103799190610518565b6103965760405163686458e760e11b815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166323b872dd6103cd610111565b60405160e083901b6001600160e01b03191681526001600160a01b0391821660048201529084166024820152306044820152606401600060405180830381600087803b15801561041c57600080fd5b505af1158015610430573d6000803e3d6000fd5b5050505050565b6000838152602081905260409020610450908383610455565b505050565b801561047f57600882901c60009081526020849052604090208054600160ff85161b179055505050565b600882901c60009081526020849052604090208054600160ff85161b19169055505050565b6001600160a01b03811681146104b957600080fd5b50565b6000602082840312156104ce57600080fd5b81356102e4816104a4565b600080604083850312156104ec57600080fd5b50508035926020909101359150565b60006020828403121561050d57600080fd5b81516102e4816104a4565b60006020828403121561052a57600080fd5b815180151581146102e457600080fdfea2646970667358221220a9df888a790e374adfdcec15c9c29018563a2c35f6567d14b96cbe6423ce5a1364736f6c634300081800336945786563204461746150726f746563746f7253686172696e67204170706c69636174696f6e2057686974656c69737420526567697374727980bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930069457865634461746150726f746563746f7253686172696e674164644f6e6c7941707057686974656c697374a26469706673582212207ebaae22a072b8d41c86e96d4851a6bbdf8707029ec7f565b8a78dc4fa22805164736f6c63430008180033000000000000000000000000000000000000000000000000000000000000","id":1,"to":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl","networkInteractionId":1,"nonce":106,"type":"TRANSACTION_PREPARE_SEND"} +{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl","networkInteractionId":1,"nonce":106,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"956580000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x6cd876e82759916edd5d41881d01ac2bc581ffd0f20e907a2de64a245ef6ea60"},"type":"TRANSACTION_SEND"} +{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl","hash":"0x6cd876e82759916edd5d41881d01ac2bc581ffd0f20e907a2de64a245ef6ea60","networkInteractionId":1,"receipt":{"blockHash":"0x3822e055254a61f1f7435e3676cfaf09e4327777579c45451d3d67551ac836d6","blockNumber":154612602,"logs":[{"address":"0x31FA12A2B8067e7aca306A507CC706ac80b2d20e","data":"0x000000000000000000000000000000000000000000000000ffffffffffffffff","logIndex":4,"topics":["0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2"]},{"address":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","data":"0x","logIndex":5,"topics":["0xb8fda7e00c6b06a2b54e58521bc5894fee35f1090e5a3bb6390bfe2b98b497f7","0x00000000000000000000000031fa12a2b8067e7aca306a507cc706ac80b2d20e","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl","result":{"address":"0x31FA12A2B8067e7aca306A507CC706ac80b2d20e","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy","constructorArgs":["0x31FA12A2B8067e7aca306A507CC706ac80b2d20e","0x9990cfb1feb7f47297f54bef4d4ebedf6c5463a3","0x"],"contractName":"TransparentUpgradeableProxy","dependencies":["DataProtectorSharingModule#AddOnlyAppWhitelistRegistryImpl"],"from":"0x9990cfb1feb7f47297f54bef4d4ebedf6c5463a3","futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy","futureType":"NAMED_ARTIFACT_CONTRACT_DEPLOYMENT","libraries":{},"strategy":"create2","strategyConfig":{"salt":"0x0000000000000000000000000000000000000000000000000000000000000001"},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy","networkInteraction":{"data":"0x26307668000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000f3160a060405260405162000eb138038062000eb18339810160408190526200002691620003cd565b82816200003482826200009c565b505081604051620000459062000366565b6001600160a01b039091168152602001604051809103906000f08015801562000072573d6000803e3d6000fd5b506001600160a01b0316608052620000936200008d60805190565b62000102565b505050620004cb565b620000a78262000174565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115620000f457620000ef8282620001f4565b505050565b620000fe62000271565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200014460008051602062000e91833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620001718162000293565b50565b806001600160a01b03163b600003620001b057604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b031684604051620002139190620004ad565b600060405180830381855af49150503d806000811462000250576040519150601f19603f3d011682016040523d82523d6000602084013e62000255565b606091505b50909250905062000268858383620002d6565b95945050505050565b3415620002915760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116620002bf57604051633173bdd160e11b815260006004820152602401620001a7565b8060008051602062000e91833981519152620001d3565b606082620002ef57620002e9826200033c565b62000335565b81511580156200030757506001600160a01b0384163b155b156200033257604051639996b31560e01b81526001600160a01b0385166004820152602401620001a7565b50805b9392505050565b8051156200034d5780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b610524806200096d83390190565b80516001600160a01b03811681146200038c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003c4578181015183820152602001620003aa565b50506000910152565b600080600060608486031215620003e357600080fd5b620003ee8462000374565b9250620003fe6020850162000374565b60408501519092506001600160401b03808211156200041c57600080fd5b818601915086601f8301126200043157600080fd5b81518181111562000446576200044662000391565b604051601f8201601f19908116603f0116810190838211818310171562000471576200047162000391565b816040528281528960208487010111156200048b57600080fd5b6200049e836020830160208801620003a7565b80955050505050509250925092565b60008251620004c1818460208701620003a7565b9190910192915050565b608051610487620004e66000396000601001526104876000f3fe608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea26469706673582212209337d136f2b4b2154746672e0df2cca2e33bea3e3fa6951ce31fc75a0d2ec5c364736f6c63430008180033608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220fa82b8f95f3eb9534a5d44b3fe7a934376995efa5e3d86fa4073fefdb114e5c164736f6c63430008180033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610300000000000000000000000031fa12a2b8067e7aca306a507cc706ac80b2d20e0000000000000000000000009990cfb1feb7f47297f54bef4d4ebedf6c5463a300000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","id":1,"to":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy","networkInteractionId":1,"nonce":107,"type":"TRANSACTION_PREPARE_SEND"} +{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy","networkInteractionId":1,"nonce":107,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"954300000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x8361b7763a075983df22a1a819e33c02040d08e123ecbcb425dba7f66cfc0b12"},"type":"TRANSACTION_SEND"} +{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy","hash":"0x8361b7763a075983df22a1a819e33c02040d08e123ecbcb425dba7f66cfc0b12","networkInteractionId":1,"receipt":{"blockHash":"0x177697d91a4e3a96a914fb9646f1f75575f417bef9cc7fe7958b0bc515ac3828","blockNumber":154612616,"logs":[{"address":"0x9902e2F89DCC4dcCb75805096Ead2e58Fc389b7D","data":"0x","logIndex":15,"topics":["0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b","0x00000000000000000000000031fa12a2b8067e7aca306a507cc706ac80b2d20e"]},{"address":"0x1c43c8EFeA6A30EdCD9Db5D2574637071adc3001","data":"0x","logIndex":16,"topics":["0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000009990cfb1feb7f47297f54bef4d4ebedf6c5463a3"]},{"address":"0x9902e2F89DCC4dcCb75805096Ead2e58Fc389b7D","data":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c43c8efea6a30edcd9db5d2574637071adc3001","logIndex":17,"topics":["0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f"]},{"address":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","data":"0x","logIndex":18,"topics":["0xb8fda7e00c6b06a2b54e58521bc5894fee35f1090e5a3bb6390bfe2b98b497f7","0x0000000000000000000000009902e2f89dcc4dccb75805096ead2e58fc389b7d","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy","result":{"address":"0x9902e2F89DCC4dcCb75805096Ead2e58Fc389b7D","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistry","contractAddress":"0x9902e2F89DCC4dcCb75805096Ead2e58Fc389b7D","contractName":"AddOnlyAppWhitelistRegistry","dependencies":["DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy"],"futureId":"DataProtectorSharingModule#AddOnlyAppWhitelistRegistry","futureType":"NAMED_ARTIFACT_CONTRACT_AT","strategy":"create2","strategyConfig":{"salt":"0x0000000000000000000000000000000000000000000000000000000000000001"},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"DataProtectorSharingModule#DataProtectorSharingImpl","constructorArgs":["0x14B465079537655E1662F012e99EBa3863c8B9E0","0x3441A0C9FE488c51fcABa2bAAA048720f4D4F72D","0x9902e2F89DCC4dcCb75805096Ead2e58Fc389b7D"],"contractName":"DataProtectorSharing","dependencies":["DataProtectorSharingModule#AddOnlyAppWhitelistRegistryProxy"],"from":"0x9990cfb1feb7f47297f54bef4d4ebedf6c5463a3","futureId":"DataProtectorSharingModule#DataProtectorSharingImpl","futureType":"NAMED_ARTIFACT_CONTRACT_DEPLOYMENT","libraries":{},"strategy":"create2","strategyConfig":{"salt":"0x0000000000000000000000000000000000000000000000000000000000000001"},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"DataProtectorSharingModule#DataProtectorSharingImpl","networkInteraction":{"data":"0x26307668000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000004a0260e06040523480156200001157600080fd5b50604051620049a2380380620049a283398101604081905262000034916200012e565b6001600160a01b0383166080526200004b62000064565b6001600160a01b0391821660c0521660a0525062000182565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000b55760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620001155780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6001600160a01b03811681146200011557600080fd5b6000806000606084860312156200014457600080fd5b8351620001518162000118565b6020850151909350620001648162000118565b6040850151909250620001778162000118565b809150509250925092565b60805160a05160c0516147956200020d60003960008181610b960152818161144f01528181611c5201528181611cf101528181611d920152611f8c0152600081816104ca0152610b0b015260008181610ff9015281816115af01528181611e3001528181611fea015281816122b7015281816124fe01528181612ab20152612cf001526147956000f3fe608060405234801561001057600080fd5b506004361061027f5760003560e01c80638129fc1c1161015c578063d0b06c66116100ce578063e985e9c511610087578063e985e9c51461070f578063ea46d1aa14610722578063f4c0fab414610767578063fe4c31a414610787578063ff19d9df1461079a578063ff811f60146107ad57600080fd5b8063d0b06c661461063b578063d3c523891461064e578063d547741f14610661578063d835c33714610674578063dc30b8fc14610687578063dfe0bc111461069a57600080fd5b8063a217fddf11610120578063a217fddf14610598578063a22cb465146105a0578063ac9650d8146105b3578063b88d4fde146105d3578063c3533ba2146105e6578063c87b56dd1461062857600080fd5b80638129fc1c146105385780638f4ffcb11461054057806391d148541461055357806395d89b41146105665780639a82c2bd1461056e57600080fd5b80632f2ff15d116101f557806342966c68116101b957806342966c68146104b25780634afecaff146104c557806353574f9e146104ec5780636352211e146104ff57806370a082311461051257806372d570ce1461052557600080fd5b80632f2ff15d146103ad578063328cb1f7146103c057806336568abe1461047957806340e6158d1461048c57806342842e0e1461049f57600080fd5b80630b9f187b116102475780630b9f187b14610314578063150b7a0214610327578063185e4e8d146103535780632069e9531461036657806323b872dd14610387578063248a9ca31461039a57600080fd5b806301d0b6341461028457806301ffc9a71461029957806306fdde03146102c1578063081812fc146102d6578063095ea7b314610301575b600080fd5b61029761029236600461351d565b6107c0565b005b6102ac6102a7366004613550565b610836565b60405190151581526020015b60405180910390f35b6102c9610847565b6040516102b891906135bd565b6102e96102e43660046135d0565b6108eb565b6040516001600160a01b0390911681526020016102b8565b61029761030f3660046135e9565b610900565b6102976103223660046136a0565b61090f565b61033a6103353660046136e8565b61092b565b6040516001600160e01b031990911681526020016102b8565b61029761036136600461351d565b61093c565b61037961037436600461351d565b6109b6565b6040519081526020016102b8565b610297610395366004613767565b6109d9565b6103796103a83660046135d0565b610a69565b6102976103bb3660046137a8565b610a8b565b6104676103ce36600461351d565b600560209081526000918252604091829020805460018201548451808601865260028401546001600160481b038082168352600160481b90910464ffffffffff1682870152865180880190975260049094015460ff808216151588526101009091049094169486019490945290936001600160a01b03821693600160a01b830465ffffffffffff1693600160d01b909304909216919086565b6040516102b8969594939291906137d8565b6102976104873660046137a8565b610aa7565b61029761049a366004613853565b610ada565b6102976104ad366004613767565b610d34565b6102976104c03660046135d0565b610d4f565b6102e97f000000000000000000000000000000000000000000000000000000000000000081565b6102976104fa3660046138aa565b610d5b565b6102e961050d3660046135d0565b610d67565b61037961052036600461351d565b610d72565b61029761053336600461351d565b610dce565b610297610e47565b6102ac61054e3660046138ea565b610fec565b6102ac6105613660046137a8565b61116e565b6102c96111a6565b61058161057c3660046139fd565b6111e5565b60405165ffffffffffff90911681526020016102b8565b610379600081565b6102976105ae366004613a41565b6111f9565b6105c66105c1366004613a6f565b611204565b6040516102b89190613ae3565b6102976105e13660046136e8565b6112eb565b6105816105f43660046137a8565b60008281526006602090815260408083206001600160a01b038516845260030190915290205465ffffffffffff1692915050565b6102c96106363660046135d0565b611303565b61029761064936600461351d565b611377565b61058161065c366004613b47565b611505565b61029761066f3660046137a8565b611512565b610379610682366004613b6b565b61152e565b610297610695366004613bb9565b611675565b6107006106a83660046135d0565b6006602090815260009182526040918290208054600182015484518086019095526002909201546001600160481b0381168552600160481b900464ffffffffff1692840192909252909165ffffffffffff9091169083565b6040516102b893929190613be7565b6102ac61071d366004613c23565b6117a3565b610581610730366004613c23565b6001600160a01b0391821660009081526005602090815260408083209390941682526003909201909152205465ffffffffffff1690565b61037961077536600461351d565b60046020526000908152604090205481565b61029761079536600461351d565b6117f0565b6102976107a8366004613c69565b61186f565b6102976107bb366004613c8d565b6118c9565b6001600160a01b038116600090815260056020526040902080546107e38161198b565b60048201805460ff19169055604080518281526001600160a01b03851660208201527f3fb0561a34a824ad00e49427875f49120aeba57a15999baef5fbae14e664d97291015b60405180910390a1505050565b6000610841826119c1565b92915050565b600080516020614720833981519152805460609190819061086790613cba565b80601f016020809104026020016040519081016040528092919081815260200182805461089390613cba565b80156108e05780601f106108b5576101008083540402835291602001916108e0565b820191906000526020600020905b8154815290600101906020018083116108c357829003601f168201915b505050505091505090565b60006108f6826119e6565b5061084182611a1e565b61090b828233611a58565b5050565b600061091a81611a65565b60006109268382613d36565b505050565b630a85bd0160e11b5b949350505050565b6001600160a01b0381166000908152600560205260409020805461095f8161198b565b6002820180546dffffffffff00000000000000000019169055604080518281526001600160a01b03851660208201527fb76a4377a20c8298064cd897c0095e802f478ccb93d1150d391a2dd268d7e5fb9101610829565b6000806003600081546109c890613e0b565b918290555090506108418382611a6f565b6001600160a01b038216610a0857604051633250574960e11b8152600060048201526024015b60405180910390fd5b6000610a15838333611a89565b9050836001600160a01b0316816001600160a01b031614610a63576040516364283d7b60e01b81526001600160a01b03808616600483015260248201849052821660448201526064016109ff565b50505050565b6000908152600080516020614740833981519152602052604090206001015490565b610a9482610a69565b610a9d81611a65565b610a638383611b05565b6001600160a01b0381163314610ad05760405163334bd91960e11b815260040160405180910390fd5b6109268282611bb1565b610ae38361198b565b610aec82611c2d565b6040516331a9108f60e11b81526001600160a01b0382811660048301527f00000000000000000000000000000000000000000000000000000000000000001690636352211e90602401602060405180830381865afa158015610b52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b769190613e24565b506040516331a9108f60e11b81526001600160a01b0383811660048301527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e908290636352211e90602401602060405180830381865afa158015610be5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c099190613e24565b6040516001600160e01b031960e084901b1681526001600160a01b0391821660048201523060248201529085166044820152606401600060405180830381600087803b158015610c5857600080fd5b505af1158015610c6c573d6000803e3d6000fd5b505050506001600160a01b038281166000908152600560209081526040808320600180820180546001600160a01b031916968816969096179095558781558784526006909252822080549193929091610cc6908490613e41565b90915550610cd690508383611e1a565b50604080516001600160a01b0380861682526020820187905260009282019290925290831660608201527f701e4990df91f34f0c6e42c039715e077aa32f81af006f9f5e8165cbda0fdddd906080015b60405180910390a150505050565b610926838383604051806020016040528060008152506112eb565b61090b60008233611a89565b61092683338484611ef0565b6000610841826119e6565b60006000805160206147208339815191526001600160a01b038316610dad576040516322718ad960e21b8152600060048201526024016109ff565b6001600160a01b039092166000908152600390920160205250604090205490565b6001600160a01b03811660009081526005602052604090208054610df18161198b565b610dfa81612141565b60018201805460ff60d01b19169055604080518281526001600160a01b03851660208201527f619bc890d3c88741caaba887a528d314fe6fa1c2ba35730eb1db180c8bdc17579101610829565b6000610e5161217f565b805490915060ff600160401b82041615906001600160401b0316600081158015610e785750825b90506000826001600160401b03166001148015610e945750303b155b905081158015610ea2575080155b15610ec05760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610eea57845460ff60401b1916600160401b1785555b610f5e6040518060400160405280601a81526020017f6945786563204461746150726f746563746f7253686172696e670000000000008152506040518060400160405280601981526020017f69457865634461746150726f746563746f7253686172696e67000000000000008152506121a8565b610f666121ba565b610f6e6121ba565b610f79600033611b05565b50610f9f604051806040016040528060048152602001636970667360e01b81525061090f565b8315610fe557845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b6000336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146110395760405163ca41b30160e01b81523360048201526024016109ff565b600082900361105b57604051633e0f836160e21b815260040160405180910390fd5b600061106a6004828587613e54565b61107391613e7e565b9050632c3adc7760e01b6001600160e01b03198216016110c65760008061109d8560048189613e54565b8101906110aa9190613b47565b915091506110b9828a836121c4565b5060019350505050611165565b63657d3d4360e01b6001600160e01b031982160161110a576000806110ee8560048189613e54565b8101906110fb91906139fd565b915091506110b9828a836123b6565b635654583160e11b6001600160e01b031982160161115f5760008080611133866004818a613e54565b81019061114091906138aa565b925092509250611152838b8484611ef0565b6001945050505050611165565b60009150505b95945050505050565b6000918252600080516020614740833981519152602090815260408084206001600160a01b0393909316845291905290205460ff1690565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930180546060916000805160206147208339815191529161086790613cba565b60006111f28333846123b6565b9392505050565b61090b33838361260e565b604080516000815260208101909152606090826001600160401b0381111561122e5761122e613615565b60405190808252806020026020018201604052801561126157816020015b606081526020019060019003908161124c5790505b50915060005b838110156112e3576112be3086868481811061128557611285613ebf565b90506020028101906112979190613ed5565b856040516020016112aa93929190613f22565b6040516020818303038152906040526126bf565b8382815181106112d0576112d0613ebf565b6020908102919091010152600101611267565b505092915050565b6112f68484846109d9565b610a63338585858561272c565b606061130e826119e6565b50600061132660408051602081019091526000815290565b9050600081511161134657604051806020016040528060008152506111f2565b8061135084612856565b604051602001611361929190613f49565b6040516020818303038152906040529392505050565b6001600160a01b0381166000908152600560205260409020546113998161198b565b6113a281612141565b6113ab826128e8565b6001600160a01b0382166000908152600560209081526040808320838155600180820180546001600160d81b03191690556002820180546001600160701b03191690556004909101805469ffffffffffffffffffff191690558484526006909252822080549192909161141f908490613eac565b9091555050604051632142170760e11b81523060048201523360248201526001600160a01b0383811660448301527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e90606401600060405180830381600087803b15801561149357600080fd5b505af11580156114a7573d6000803e3d6000fd5b5050604080516001600160a01b038616815260006020820181905291810185905260608101919091527f701e4990df91f34f0c6e42c039715e077aa32f81af006f9f5e8165cbda0fdddd925060800190505b60405180910390a15050565b60006111f28333846121c4565b61151b82610a69565b61152481611a65565b610a638383611bb1565b60008061153b858561293e565b6001600160a01b038087166000908152600560205260408120600101549293509161156891889116612a31565b9050600061157585612a9d565b90506000611595888761158b60208b018b61351d565b8a60800135612b71565b604051630558653560e21b81529091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063156194d4906115ea90859087908c908790600401614283565b6020604051808303816000875af1158015611609573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061162d91906142d0565b94507f09bb563d4351a41cfcb2e1a9e3caabd85077d013afa5ef5b60cd460c56f7ff128589866040516116629392919061431d565b60405180910390a1505050509392505050565b6001600160a01b038216600090815260056020526040902080546116988161198b565b6116a1846128e8565b6001820154600160d01b900460ff16156116e05760405163123c6c3b60e11b8152600481018290526001600160a01b03851660248201526044016109ff565b6002820154600160481b900464ffffffffff161561172357604051631e6991f160e21b8152600481018290526001600160a01b03851660248201526044016109ff565b6004820180546001600160481b0385166101000269ffffffffffffffffffff199091161760011790556040517fec81370602852d2a562027f306877d179384b7df480e4f2c68d233de886cfd9290610d26908390879087909283526001600160a01b039190911660208301526001600160481b0316604082015260600190565b6001600160a01b0391821660009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793056020908152604080832093909416825291909152205460ff1690565b6001600160a01b038116600090815260056020526040902080546118138161198b565b61181c83612d6a565b60018201805460ff60d01b1916600160d01b179055604080518281526001600160a01b03851660208201527f806e162c7ef4165a275b5df55317f9f7be1e2bb257c6cc87fbbb0fabb6b2f97b9101610829565b6118788261198b565b6000828152600660205260409020819060020161189582826143b2565b9050507fd33315cb494162d759f3ab7d813be7d0a6e0e70f717fc31c258f84a729004f7882826040516114f99291906143f2565b6001600160a01b038216600090815260056020526040902080546118ec8161198b565b6118f584612d6a565b6119056040840160208501614406565b64ffffffffff16600003611946576119236040840160208501614406565b604051632a94078b60e01b815264ffffffffff90911660048201526024016109ff565b826002830161195582826143b2565b9050507f796fca2de82b5272091ddfd0ab5d10f279e96eb8f47150d0f63f8411399b32ac818585604051610d2693929190614423565b61199e61199782610d67565b3383612db2565b6119be576040516373ed018760e01b8152600481018290526024016109ff565b50565b60006001600160e01b03198216637965db0b60e01b1480610841575061084182612e17565b6000806119f283612e67565b90506001600160a01b03811661084157604051637e27328960e01b8152600481018490526024016109ff565b60009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930460205260409020546001600160a01b031690565b6109268383836001612ea1565b6119be8133612fb7565b61090b828260405180602001604052806000815250612ff0565b60008281526006602052604081206001600160a01b038516611afa57805415611ac8576040516386acf7fd60e01b8152600481018590526024016109ff565b60018101544265ffffffffffff9091161115611afa57604051634aee26f760e11b8152600481018590526024016109ff565b611165858585613008565b6000600080516020614740833981519152611b20848461116e565b611ba0576000848152602082815260408083206001600160a01b03871684529091529020805460ff19166001179055611b563390565b6001600160a01b0316836001600160a01b0316857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a46001915050610841565b6000915050610841565b5092915050565b6000600080516020614740833981519152611bcc848461116e565b15611ba0576000848152602082815260408083206001600160a01b0387168085529252808320805460ff1916905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a46001915050610841565b6040516331a9108f60e11b81526001600160a01b0382811660048301819052916000917f00000000000000000000000000000000000000000000000000000000000000001690636352211e90602401602060405180830381865afa158015611c99573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cbd9190613e24565b9050336001600160a01b0382161480611d67575060405163020604bf60e21b81526004810183905233906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063081812fc90602401602060405180830381865afa158015611d38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d5c9190613e24565b6001600160a01b0316145b80611dfd575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015611dd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dfd9190614446565b6109265760405163ede508e560e01b815260040160405180910390fd5b611e226134aa565b611e2c8383612a31565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634b747106604051806060016040528084815260200160006001811115611e8157611e816142e9565b815260408051600081526020808201835290920191909152516001600160e01b031960e084901b168152611eb891906004016144a6565b600060405180830381600087803b158015611ed257600080fd5b505af1158015611ee6573d6000803e3d6000fd5b5050505092915050565b6001600160a01b0384166000908152600560205260409020611f1185613112565b60048101546001600160481b038381166101009092041614611f5f576040516255350960e21b81526001600160a01b03861660048201526001600160481b03831660248201526044016109ff565b604051632142170760e11b81523060048201526001600160a01b03848116602483015286811660448301527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e90606401600060405180830381600087803b158015611fd057600080fd5b505af1158015611fe4573d6000803e3d6000fd5b505050507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166323b872dd856120258460000154610d67565b60048581015460405160e086901b6001600160e01b031916815261205b9493926101009092046001600160481b031691016144b9565b6020604051808303816000875af115801561207a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061209e9190614446565b508054604080519182526001600160a01b038581166020840152871682820152517f39e9de3f8fb17aa9d0e1df99a67605205f5e86d0ac765ee0299fb8ea4f2baa219181900360600190a1505050506001600160a01b031660009081526005602052604081209081556001810180546001600160d81b03191690556002810180546001600160701b0319169055600401805469ffffffffffffffffffff19169055565b6000818152600660205260409020600101544265ffffffffffff909116106119be57604051634aee26f760e11b8152600481018290526024016109ff565b6000807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00610841565b6121b0613159565b61090b828261317e565b6121c2613159565b565b6000838152600660205260408120825160028201546001600160481b03908116911614158061220d575060208301516002820154600160481b900464ffffffffff908116911614155b1561222f578483604051632441e4e360e11b81526004016109ff9291906144e5565b600281015461224c90600160481b900464ffffffffff1642614513565b6001600160a01b03851660009081526003830160205260409020805465ffffffffffff191665ffffffffffff8381169182179092556001840154929450612295929091166131af565b60018201805465ffffffffffff191665ffffffffffff929092169190911790557f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166323b872dd856122ee88610d67565b60028501546040516001600160e01b031960e086901b16815261231f9392916001600160481b0316906004016144b9565b6020604051808303816000875af115801561233e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123629190614446565b506040805186815265ffffffffffff841660208201526001600160a01b038616917f2366234d2d402efc07153c0d03fc5ec74a9ef5496e1accadc4b1aaf51d7f73b9910160405180910390a2509392505050565b6001600160a01b03831660009081526005602052604081206002810154600160481b900464ffffffffff16820361240b57604051631446018560e11b81526001600160a01b03861660048201526024016109ff565b60208301516002820154600160481b900464ffffffffff90811691161415806124465750825160028201546001600160481b03908116911614155b156124685784836040516346aa951560e01b81526004016109ff929190614532565b600281015461248590600160481b900464ffffffffff1642614513565b6001600160a01b03851660009081526003830160205260409020805465ffffffffffff191665ffffffffffff83811691821790925560018401549294506124d6929091600160a01b909104166131af565b8160010160146101000a81548165ffffffffffff021916908365ffffffffffff1602179055507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166323b872dd856125398460000154610d67565b60028501546040516001600160e01b031960e086901b16815261256a9392916001600160481b0316906004016144b9565b6020604051808303816000875af1158015612589573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125ad9190614446565b508054604080519182526001600160a01b03878116602084015286168282015265ffffffffffff84166060830152517fe2d5d453d44004623a821ef386e026d37fccbac3f56cef0cb5918cab5c11dc889181900360800190a1509392505050565b6000805160206147208339815191526001600160a01b03831661264f57604051630b61174360e31b81526001600160a01b03841660048201526024016109ff565b6001600160a01b038481166000818152600584016020908152604080832094881680845294825291829020805460ff191687151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a350505050565b6060600080846001600160a01b0316846040516126dc9190614569565b600060405180830381855af49150503d8060008114612717576040519150601f19603f3d011682016040523d82523d6000602084013e61271c565b606091505b50915091506111658583836131bf565b6001600160a01b0383163b15610fe557604051630a85bd0160e11b81526001600160a01b0384169063150b7a029061276e908890889087908790600401614585565b6020604051808303816000875af19250505080156127a9575060408051601f3d908101601f191682019092526127a6918101906145b8565b60015b612812573d8080156127d7576040519150601f19603f3d011682016040523d82523d6000602084013e6127dc565b606091505b50805160000361280a57604051633250574960e11b81526001600160a01b03851660048201526024016109ff565b805181602001fd5b6001600160e01b03198116630a85bd0160e11b1461284e57604051633250574960e11b81526001600160a01b03851660048201526024016109ff565b505050505050565b606060006128638361321b565b60010190506000816001600160401b0381111561288257612882613615565b6040519080825280601f01601f1916602001820160405280156128ac576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846128b657509392505050565b6001600160a01b03811660009081526005602052604090206001015442600160a01b90910465ffffffffffff16106119be57604051637e448f1b60e11b81526001600160a01b03821660048201526024016109ff565b600060208201351561296557816040516385461e9b60e01b81526004016109ff91906145d5565b6001600160a01b03831660009081526005602090815260408083208054338552600382019093529220544265ffffffffffff909116106129aa57600192505050610841565b80158015906129c457506001820154600160d01b900460ff165b80156129f6575060008181526006602090815260408083203384526003019091529020544265ffffffffffff90911610155b15612a0657600092505050610841565b604051630e39d6b360e01b8152600481018290526001600160a01b03861660248201526044016109ff565b612a396134aa565b5060408051610120810182526001600160a01b03938416815260006020808301829052600019838501526003606084015293909416608082015260a081018490523060c082015260e081018490528151938452918301905261010081019190915290565b612aa56134aa565b612aae826132f3565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b2b07e66604051806060016040528084815260200160006001811115612b0357612b036142e9565b815260408051600081526020808201835290920191909152516001600160e01b031960e084901b168152612b3a91906004016144a6565b600060405180830381600087803b158015612b5457600080fd5b505af1158015612b68573d6000803e3d6000fd5b50505050919050565b604080516102008101825260008082526020820181905291810182905260608082018390526080820183905260a0820183905260c0820183905260e08201839052610100820183905261012082018390526101408201839052610160820183905261018082018390526101a082018190526101c08201929092526101e081019190915260006040518060600160405280604051806102000160405280886001600160a01b0316815260200160008152602001896001600160a01b0316815260200160008152602001876001600160a01b0316815260200160008152602001306001600160a01b0316815260200160018152602001600360001b815260200186815260200160008152602001336001600160a01b0316815260200160006001600160a01b03168152602001612ca361335b565b8152602001612cb0613383565b81526040805160008082526020808301845293840191909152928452838201839052805192835290820181529182015251638dd971d560e01b81529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690638dd971d590612d2d9084906004016145e8565b600060405180830381600087803b158015612d4757600080fd5b505af1158015612d5b573d6000803e3d6000fd5b50509151979650505050505050565b6001600160a01b03811660009081526005602052604090206004015460ff16156119be576040516325e3e05d60e21b81526001600160a01b03821660048201526024016109ff565b60006001600160a01b038316158015906109345750826001600160a01b0316846001600160a01b03161480612dec5750612dec84846117a3565b806109345750826001600160a01b0316612e0583611a1e565b6001600160a01b031614949350505050565b60006001600160e01b031982166380ac58cd60e01b1480612e4857506001600160e01b03198216635b5e139f60e01b145b8061084157506301ffc9a760e01b6001600160e01b0319831614610841565b60009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930260205260409020546001600160a01b031690565b6000805160206147208339815191528180612ec457506001600160a01b03831615155b15612f86576000612ed4856119e6565b90506001600160a01b03841615801590612f005750836001600160a01b0316816001600160a01b031614155b8015612f135750612f1181856117a3565b155b15612f3c5760405163a9fbf51f60e01b81526001600160a01b03851660048201526024016109ff565b8215612f845784866001600160a01b0316826001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b600093845260040160205250506040902080546001600160a01b0319166001600160a01b0392909216919091179055565b612fc1828261116e565b61090b5760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044016109ff565b612ffa838361339e565b61092633600085858561272c565b60006000805160206147208339815191528161302385612e67565b90506001600160a01b0384161561303f5761303f818587613403565b6001600160a01b0381161561307f5761305c600086600080612ea1565b6001600160a01b0381166000908152600383016020526040902080546000190190555b6001600160a01b038616156130b0576001600160a01b03861660009081526003830160205260409020805460010190555b600085815260028301602052604080822080546001600160a01b0319166001600160a01b038a811691821790925591518893918516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a495945050505050565b6001600160a01b03811660009081526005602052604090206004015460ff166119be576040516346bb405d60e01b81526001600160a01b03821660048201526024016109ff565b613161613467565b6121c257604051631afcd79f60e31b815260040160405180910390fd5b613186613159565b600080516020614720833981519152806131a08482613d36565b5060018101610a638382613d36565b60008282188284110282186111f2565b6060826131d4576131cf82613481565b6111f2565b81511580156131eb57506001600160a01b0384163b155b1561321457604051639996b31560e01b81526001600160a01b03851660048201526024016109ff565b50806111f2565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061325a5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310613286576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106132a457662386f26fc10000830492506010015b6305f5e10083106132bc576305f5e100830492506008015b61271083106132d057612710830492506004015b606483106132e2576064830492506002015b600a83106108415760010192915050565b6132fb6134aa565b5060408051610120810182526001600160a01b039290921682526000602080840182905260001984840152600360608501526080840182905260a084018290523060c085015260e084018290528251918252810190915261010082015290565b6060600060405160200161336f9190614636565b604051602081830303815290604052905090565b600060026000815461339490613e0b565b9182905550919050565b6001600160a01b0382166133c857604051633250574960e11b8152600060048201526024016109ff565b60006133d683836000611a89565b90506001600160a01b03811615610926576040516339e3563760e11b8152600060048201526024016109ff565b61340e838383612db2565b610926576001600160a01b03831661343c57604051637e27328960e01b8152600481018290526024016109ff565b60405163177e802f60e01b81526001600160a01b0383166004820152602481018290526044016109ff565b600061347161217f565b54600160401b900460ff16919050565b8051156134915780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b604080516101208101825260008082526020820181905291810182905260608082018390526080820183905260a0820183905260c0820183905260e082019290925261010081019190915290565b6001600160a01b03811681146119be57600080fd5b8035613518816134f8565b919050565b60006020828403121561352f57600080fd5b81356111f2816134f8565b6001600160e01b0319811681146119be57600080fd5b60006020828403121561356257600080fd5b81356111f28161353a565b60005b83811015613588578181015183820152602001613570565b50506000910152565b600081518084526135a981602086016020860161356d565b601f01601f19169290920160200192915050565b6020815260006111f26020830184613591565b6000602082840312156135e257600080fd5b5035919050565b600080604083850312156135fc57600080fd5b8235613607816134f8565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b038084111561364557613645613615565b604051601f8501601f19908116603f0116810190828211818310171561366d5761366d613615565b8160405280935085815286868601111561368657600080fd5b858560208301376000602087830101525050509392505050565b6000602082840312156136b257600080fd5b81356001600160401b038111156136c857600080fd5b8201601f810184136136d957600080fd5b6109348482356020840161362b565b600080600080608085870312156136fe57600080fd5b8435613709816134f8565b93506020850135613719816134f8565b92506040850135915060608501356001600160401b0381111561373b57600080fd5b8501601f8101871361374c57600080fd5b61375b8782356020840161362b565b91505092959194509250565b60008060006060848603121561377c57600080fd5b8335613787816134f8565b92506020840135613797816134f8565b929592945050506040919091013590565b600080604083850312156137bb57600080fd5b8235915060208301356137cd816134f8565b809150509250929050565b8681526001600160a01b038616602082015265ffffffffffff851660408201528315156060820152610100810161382c608083018580516001600160481b0316825260209081015164ffffffffff16910152565b8251151560c08301526001600160481b0360208401511660e0830152979650505050505050565b60008060006060848603121561386857600080fd5b83359250602084013561387a816134f8565b9150604084013561388a816134f8565b809150509250925092565b6001600160481b03811681146119be57600080fd5b6000806000606084860312156138bf57600080fd5b83356138ca816134f8565b925060208401356138da816134f8565b9150604084013561388a81613895565b60008060008060006080868803121561390257600080fd5b853561390d816134f8565b9450602086013593506040860135613924816134f8565b925060608601356001600160401b038082111561394057600080fd5b818801915088601f83011261395457600080fd5b81358181111561396357600080fd5b89602082850101111561397557600080fd5b9699959850939650602001949392505050565b64ffffffffff811681146119be57600080fd5b6000604082840312156139ad57600080fd5b604051604081018181106001600160401b03821117156139cf576139cf613615565b60405290508082356139e081613895565b815260208301356139f081613988565b6020919091015292915050565b60008060608385031215613a1057600080fd5b8235613a1b816134f8565b9150613a2a846020850161399b565b90509250929050565b80151581146119be57600080fd5b60008060408385031215613a5457600080fd5b8235613a5f816134f8565b915060208301356137cd81613a33565b60008060208385031215613a8257600080fd5b82356001600160401b0380821115613a9957600080fd5b818501915085601f830112613aad57600080fd5b813581811115613abc57600080fd5b8660208260051b8501011115613ad157600080fd5b60209290920196919550909350505050565b600060208083016020845280855180835260408601915060408160051b87010192506020870160005b82811015613b3a57603f19888603018452613b28858351613591565b94509285019290850190600101613b0c565b5092979650505050505050565b60008060608385031215613b5a57600080fd5b82359150613a2a846020850161399b565b600080600060608486031215613b8057600080fd5b8335613b8b816134f8565b925060208401356001600160401b03811115613ba657600080fd5b8401610160818703121561387a57600080fd5b60008060408385031215613bcc57600080fd5b8235613bd7816134f8565b915060208301356137cd81613895565b83815265ffffffffffff8316602082015260808101610934604083018480516001600160481b0316825260209081015164ffffffffff16910152565b60008060408385031215613c3657600080fd5b8235613c41816134f8565b915060208301356137cd816134f8565b600060408284031215613c6357600080fd5b50919050565b60008060608385031215613c7c57600080fd5b82359150613a2a8460208501613c51565b60008060608385031215613ca057600080fd5b8235613cab816134f8565b9150613a2a8460208501613c51565b600181811c90821680613cce57607f821691505b602082108103613c6357634e487b7160e01b600052602260045260246000fd5b601f821115610926576000816000526020600020601f850160051c81016020861015613d175750805b601f850160051c820191505b8181101561284e57828155600101613d23565b81516001600160401b03811115613d4f57613d4f613615565b613d6381613d5d8454613cba565b84613cee565b602080601f831160018114613d985760008415613d805750858301515b600019600386901b1c1916600185901b17855561284e565b600085815260208120601f198616915b82811015613dc757888601518255948401946001909101908401613da8565b5085821015613de55787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600060018201613e1d57613e1d613df5565b5060010190565b600060208284031215613e3657600080fd5b81516111f2816134f8565b8082018082111561084157610841613df5565b60008085851115613e6457600080fd5b83861115613e7157600080fd5b5050820193919092039150565b6001600160e01b031981358181169160048510156112e35760049490940360031b84901b1690921692915050565b8181038181111561084157610841613df5565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112613eec57600080fd5b8301803591506001600160401b03821115613f0657600080fd5b602001915036819003821315613f1b57600080fd5b9250929050565b828482376000838201600081528351613f3f81836020880161356d565b0195945050505050565b60008351613f5b81846020880161356d565b835190830190613f6f81836020880161356d565b01949350505050565b600061012060018060a01b0383511684526020830151602085015260408301516040850152606083015160608501526080830151613fc160808601826001600160a01b03169052565b5060a0830151613fdc60a08601826001600160a01b03169052565b5060c0830151613ff760c08601826001600160a01b03169052565b5060e083015160e085015261010080840151828287015261401a83870182613591565b9695505050505050565b6000808335601e1984360301811261403b57600080fd5b83016020810192503590506001600160401b0381111561405a57600080fd5b803603821315613f1b57600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60006101606140b1846140a48561350d565b6001600160a01b03169052565b6020830135602085015260408301356040850152606083013560608501526080830135608085015260a083013560a08501526140ef60c0840161350d565b6001600160a01b031660c085015261410960e0840161350d565b6001600160a01b031660e085015261010061412584820161350d565b6001600160a01b031690850152610120838101359085015261014061414c81850185614024565b838388015261415e8488018284614069565b979650505050505050565b80516001600160a01b03168252600061020060208301516020850152604083015161419f60408601826001600160a01b03169052565b506060830151606085015260808301516141c460808601826001600160a01b03169052565b5060a083015160a085015260c08301516141e960c08601826001600160a01b03169052565b5060e08381015190850152610100808401519085015261012080840151908501526101408084015190850152610160808401516001600160a01b038116828701525050610180838101516001600160a01b0381168683015250506101a080840151828287015261425b83870182613591565b925050506101c08084015181860152506101e0808401518583038287015261401a8382613591565b6080815260006142966080830187613f78565b82810360208401526142a88187613f78565b905082810360408401526142bc8186614092565b9050828103606084015261415e8185614169565b6000602082840312156142e257600080fd5b5051919050565b634e487b7160e01b600052602160045260246000fd5b600281106119be57634e487b7160e01b600052602160045260246000fd5b8381526001600160a01b03831660208201526060810161433c836142ff565b826040830152949350505050565b813561435581613895565b6001600160481b03811690508154816001600160481b03198216178355602084013561438081613988565b6dffffffffff0000000000000000008160481b16836dffffffffffffffffffffffffffff198416171784555050505050565b61090b828261434a565b80356143c781613895565b6001600160481b0316825260208101356143e081613988565b64ffffffffff81166020840152505050565b828152606081016111f260208301846143bc565b60006020828403121561441857600080fd5b81356111f281613988565b8381526001600160a01b03831660208201526080810161093460408301846143bc565b60006020828403121561445857600080fd5b81516111f281613a33565b60008151606084526144786060850182613f78565b90506020830151614488816142ff565b80602086015250604083015184820360408601526111658282613591565b6020815260006111f26020830184614463565b6001600160a01b0393841681529190921660208201526001600160481b03909116604082015260600190565b828152606081016111f2602083018480516001600160481b0316825260209081015164ffffffffff16910152565b65ffffffffffff818116838216019080821115611baa57611baa613df5565b6001600160a01b0383168152606081016111f2602083018480516001600160481b0316825260209081015164ffffffffff16910152565b6000825161457b81846020870161356d565b9190910192915050565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061401a90830184613591565b6000602082840312156145ca57600080fd5b81516111f28161353a565b6020815260006111f26020830184614092565b6020815260008251606060208401526146046080840182614169565b90506020840151614614816142ff565b806040850152506040840151601f198483030160608501526111658282613591565b7f7b2269657865635f726573756c745f656e6372797074696f6e223a747275650081527f2c2269657865635f726573756c745f73746f726167655f70726f766964657222601f820152611d1160f11b603f820152600060416000845461469b81613cba565b600182811680156146b357600181146146ce57614702565b60ff1984166041890152604183151584028901019450614702565b8860005260208060002060005b858110156146f65781548b82018a01529084019082016146db565b50505060418389010194505b505050506147148161227d60f01b9052565b60020194935050505056fe80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930002dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800a26469706673582212205e4f08e222ec4a667caf0a065c5f78c597e426b7bad918a04f472d624bbec20a64736f6c6343000818003300000000000000000000000014b465079537655e1662f012e99eba3863c8b9e00000000000000000000000003441a0c9fe488c51fcaba2baaa048720f4d4f72d0000000000000000000000009902e2f89dcc4dccb75805096ead2e58fc389b7d000000000000000000000000000000000000000000000000000000000000","id":1,"to":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"DataProtectorSharingModule#DataProtectorSharingImpl","networkInteractionId":1,"nonce":108,"type":"TRANSACTION_PREPARE_SEND"} +{"futureId":"DataProtectorSharingModule#DataProtectorSharingImpl","networkInteractionId":1,"nonce":108,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"953500000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xed7d82a6d8a0b7235b3e75e796b984bbd3ad3a1cf9756dfbd88b95d4068928fd"},"type":"TRANSACTION_SEND"} +{"futureId":"DataProtectorSharingModule#DataProtectorSharingImpl","hash":"0xed7d82a6d8a0b7235b3e75e796b984bbd3ad3a1cf9756dfbd88b95d4068928fd","networkInteractionId":1,"receipt":{"blockHash":"0x1c963c03be5923e25d8872f4a8c5f8c7772a0737b1c3de7c9ff542ff16c09dba","blockNumber":154612629,"logs":[{"address":"0x2FBDcc656607389B9D87966F10aFC6Fd94130cAb","data":"0x000000000000000000000000000000000000000000000000ffffffffffffffff","logIndex":5,"topics":["0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2"]},{"address":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","data":"0x","logIndex":6,"topics":["0xb8fda7e00c6b06a2b54e58521bc5894fee35f1090e5a3bb6390bfe2b98b497f7","0x0000000000000000000000002fbdcc656607389b9d87966f10afc6fd94130cab","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"DataProtectorSharingModule#DataProtectorSharingImpl","result":{"address":"0x2FBDcc656607389B9D87966F10aFC6Fd94130cAb","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"DataProtectorSharingModule#DataProtectorSharingProxy","constructorArgs":["0x2FBDcc656607389B9D87966F10aFC6Fd94130cAb","0x9990cfb1feb7f47297f54bef4d4ebedf6c5463a3","0x"],"contractName":"TransparentUpgradeableProxy","dependencies":["DataProtectorSharingModule#DataProtectorSharingImpl"],"from":"0x9990cfb1feb7f47297f54bef4d4ebedf6c5463a3","futureId":"DataProtectorSharingModule#DataProtectorSharingProxy","futureType":"NAMED_ARTIFACT_CONTRACT_DEPLOYMENT","libraries":{},"strategy":"create2","strategyConfig":{"salt":"0x0000000000000000000000000000000000000000000000000000000000000001"},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"DataProtectorSharingModule#DataProtectorSharingProxy","networkInteraction":{"data":"0x26307668000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000f3160a060405260405162000eb138038062000eb18339810160408190526200002691620003cd565b82816200003482826200009c565b505081604051620000459062000366565b6001600160a01b039091168152602001604051809103906000f08015801562000072573d6000803e3d6000fd5b506001600160a01b0316608052620000936200008d60805190565b62000102565b505050620004cb565b620000a78262000174565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115620000f457620000ef8282620001f4565b505050565b620000fe62000271565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200014460008051602062000e91833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620001718162000293565b50565b806001600160a01b03163b600003620001b057604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b031684604051620002139190620004ad565b600060405180830381855af49150503d806000811462000250576040519150601f19603f3d011682016040523d82523d6000602084013e62000255565b606091505b50909250905062000268858383620002d6565b95945050505050565b3415620002915760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116620002bf57604051633173bdd160e11b815260006004820152602401620001a7565b8060008051602062000e91833981519152620001d3565b606082620002ef57620002e9826200033c565b62000335565b81511580156200030757506001600160a01b0384163b155b156200033257604051639996b31560e01b81526001600160a01b0385166004820152602401620001a7565b50805b9392505050565b8051156200034d5780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b610524806200096d83390190565b80516001600160a01b03811681146200038c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003c4578181015183820152602001620003aa565b50506000910152565b600080600060608486031215620003e357600080fd5b620003ee8462000374565b9250620003fe6020850162000374565b60408501519092506001600160401b03808211156200041c57600080fd5b818601915086601f8301126200043157600080fd5b81518181111562000446576200044662000391565b604051601f8201601f19908116603f0116810190838211818310171562000471576200047162000391565b816040528281528960208487010111156200048b57600080fd5b6200049e836020830160208801620003a7565b80955050505050509250925092565b60008251620004c1818460208701620003a7565b9190910192915050565b608051610487620004e66000396000601001526104876000f3fe608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea26469706673582212209337d136f2b4b2154746672e0df2cca2e33bea3e3fa6951ce31fc75a0d2ec5c364736f6c63430008180033608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220fa82b8f95f3eb9534a5d44b3fe7a934376995efa5e3d86fa4073fefdb114e5c164736f6c63430008180033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61030000000000000000000000002fbdcc656607389b9d87966f10afc6fd94130cab0000000000000000000000009990cfb1feb7f47297f54bef4d4ebedf6c5463a300000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","id":1,"to":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"DataProtectorSharingModule#DataProtectorSharingProxy","networkInteractionId":1,"nonce":109,"type":"TRANSACTION_PREPARE_SEND"} +{"futureId":"DataProtectorSharingModule#DataProtectorSharingProxy","networkInteractionId":1,"nonce":109,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"954680000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x6d4a6d04ce8f21c7dfa74afd304aad7f133133da1fa52c4438087c0f5fa8a218"},"type":"TRANSACTION_SEND"} +{"futureId":"DataProtectorSharingModule#DataProtectorSharingProxy","hash":"0x6d4a6d04ce8f21c7dfa74afd304aad7f133133da1fa52c4438087c0f5fa8a218","networkInteractionId":1,"receipt":{"blockHash":"0xb3d0592216c10cec347863c16908264cbbdf052481df34cc3593087b586d5bb8","blockNumber":154612641,"logs":[{"address":"0x2485Ed90d4566516298B7D01462df8d1A41E13AE","data":"0x","logIndex":10,"topics":["0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b","0x0000000000000000000000002fbdcc656607389b9d87966f10afc6fd94130cab"]},{"address":"0xf33a0e927Fba4f56595f19E55b60E742cC52D291","data":"0x","logIndex":11,"topics":["0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000009990cfb1feb7f47297f54bef4d4ebedf6c5463a3"]},{"address":"0x2485Ed90d4566516298B7D01462df8d1A41E13AE","data":"0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f33a0e927fba4f56595f19e55b60e742cc52d291","logIndex":12,"topics":["0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f"]},{"address":"0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed","data":"0x","logIndex":13,"topics":["0xb8fda7e00c6b06a2b54e58521bc5894fee35f1090e5a3bb6390bfe2b98b497f7","0x0000000000000000000000002485ed90d4566516298b7d01462df8d1a41e13ae","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"DataProtectorSharingModule#DataProtectorSharingProxy","result":{"address":"0x2485Ed90d4566516298B7D01462df8d1A41E13AE","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"DataProtectorSharingModule#DataProtectorSharing","contractAddress":"0x2485Ed90d4566516298B7D01462df8d1A41E13AE","contractName":"DataProtectorSharing","dependencies":["DataProtectorSharingModule#DataProtectorSharingProxy"],"futureId":"DataProtectorSharingModule#DataProtectorSharing","futureType":"NAMED_ARTIFACT_CONTRACT_AT","strategy":"create2","strategyConfig":{"salt":"0x0000000000000000000000000000000000000000000000000000000000000001"},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} \ No newline at end of file diff --git a/packages/sharing-smart-contract/ignition/modules/DataProtectorSharingModule.cjs b/packages/sharing-smart-contract/ignition/modules/DataProtectorSharingModule.cjs index f6de52ecd..8ccff47fc 100644 --- a/packages/sharing-smart-contract/ignition/modules/DataProtectorSharingModule.cjs +++ b/packages/sharing-smart-contract/ignition/modules/DataProtectorSharingModule.cjs @@ -5,7 +5,7 @@ const { DATASET_REGISTRY_ADDRESS: defaultDatasetRegistryAddress, POCO_ADDRESS: defaultPocoAddress, } = require('../../config/config.cjs'); -const { env } = require('../../config/env.cjs'); +const env = require('../../config/env.cjs'); // Hardhat Ignition does not support ESM yet. diff --git a/packages/sharing-smart-contract/scripts/deploy.js b/packages/sharing-smart-contract/scripts/deploy.js index 6c92e51db..c490ac6ca 100644 --- a/packages/sharing-smart-contract/scripts/deploy.js +++ b/packages/sharing-smart-contract/scripts/deploy.js @@ -1,5 +1,5 @@ import hre from 'hardhat'; -import { env } from '../config/env.js'; +import env from '../config/env.js'; import DataProtectorSharingModule from '../ignition/modules/DataProtectorSharingModule.cjs'; const { ethers, upgrades } = hre; @@ -16,7 +16,8 @@ async function main() { if (!pocoAddress || !datasetRegistryAddress) { throw new Error('POCO_ADDRESS and DATASET_REGISTRY_ADDRESS are required.'); } - console.log('Deploying DataProtectorSharingModule...'); + const [deployer] = await ethers.getSigners(); + console.log(`Deploying DataProtectorSharingModule [Deployer:${deployer.address}]`); console.log('PoCo address:', pocoAddress); console.log('DatasetRegistry address:', datasetRegistryAddress); // Check if the CreateX factory is supported on the current network. diff --git a/packages/sharing-smart-contract/scripts/fillCollection.js b/packages/sharing-smart-contract/scripts/fillCollection.js index 8dbefcabb..6d8ace7d1 100644 --- a/packages/sharing-smart-contract/scripts/fillCollection.js +++ b/packages/sharing-smart-contract/scripts/fillCollection.js @@ -3,7 +3,7 @@ /* eslint-disable no-await-in-loop */ import { getEnvironment } from '@iexec/dataprotector-environments'; import pkg from 'hardhat'; -import { env } from '../config/env.js'; +import env from '../config/env.js'; import { createAppFor } from './singleFunction/app.js'; import { createDatasetFor } from './singleFunction/dataset.js'; import { createWorkerpool, createWorkerpoolOrder } from './singleFunction/workerpool.js'; diff --git a/packages/sharing-smart-contract/scripts/updateEnv.js b/packages/sharing-smart-contract/scripts/updateEnv.js index 71d368b11..1b6d4b077 100644 --- a/packages/sharing-smart-contract/scripts/updateEnv.js +++ b/packages/sharing-smart-contract/scripts/updateEnv.js @@ -1,7 +1,7 @@ /* eslint-disable no-console */ import { getEnvironment } from '@iexec/dataprotector-environments'; import pkg from 'hardhat'; -import { env } from '../config/env.js'; +import env from '../config/env.js'; const { ethers } = pkg; async function main() { diff --git a/packages/sharing-smart-contract/scripts/upgrade-local-fork.js b/packages/sharing-smart-contract/scripts/upgrade-local-fork.js index 08cb3ee5a..158113421 100644 --- a/packages/sharing-smart-contract/scripts/upgrade-local-fork.js +++ b/packages/sharing-smart-contract/scripts/upgrade-local-fork.js @@ -2,7 +2,7 @@ import { getEnvironment } from '@iexec/dataprotector-environments'; import hre from 'hardhat'; import { DATASET_REGISTRY_ADDRESS, POCO_ADDRESS } from '../config/config.js'; -import { env } from '../config/env.js'; +import env from '../config/env.js'; import { impersonate, stopImpersonate } from './singleFunction/utils.js'; const { ethers, upgrades } = hre; diff --git a/packages/sharing-smart-contract/scripts/upgrade.js b/packages/sharing-smart-contract/scripts/upgrade.js index 340e16f32..35110567e 100644 --- a/packages/sharing-smart-contract/scripts/upgrade.js +++ b/packages/sharing-smart-contract/scripts/upgrade.js @@ -2,7 +2,7 @@ import { getEnvironment } from '@iexec/dataprotector-environments'; import hre from 'hardhat'; import { DATASET_REGISTRY_ADDRESS, POCO_ADDRESS } from '../config/config.js'; -import { env } from '../config/env.js'; +import env from '../config/env.js'; const { ethers, upgrades } = hre;