From d96b41d755a1f45d190224e6892d6e379a3c299a Mon Sep 17 00:00:00 2001 From: Barry Gitarts Date: Wed, 7 Aug 2019 13:44:16 -0400 Subject: [PATCH] add initial subgraph assets --- README.md | 1 + abi/config/blockchain.json | 7 + abi/config/communication.json | 7 + abi/config/storage.json | 10 + abi/contracts/ACL.js | 4 + abi/contracts/ACLHelpers.js | 4 + abi/contracts/ACLOracle.js | 4 + abi/contracts/ACLSyntaxSugar.js | 4 + abi/contracts/AppProxyBase.js | 4 + abi/contracts/AppProxyFactory.js | 4 + abi/contracts/AppProxyPinned.js | 4 + abi/contracts/AppProxyUpgradeable.js | 4 + abi/contracts/AppStorage.js | 4 + abi/contracts/AragonApp.js | 4 + abi/contracts/CallsScript.js | 4 + abi/contracts/DAI.js | 4 + abi/contracts/DAOFactory.js | 4 + abi/contracts/DelegateProxy.js | 4 + abi/contracts/DelegateScript.js | 4 + abi/contracts/DelegateScriptTarget.js | 4 + abi/contracts/DeployDelegateScript.js | 4 + abi/contracts/DepositableDelegateProxy.js | 4 + abi/contracts/ERC20.js | 4 + abi/contracts/ERC20Basic.js | 4 + abi/contracts/ERCProxy.js | 4 + abi/contracts/EVMScriptRegistry.js | 4 + abi/contracts/EVMScriptRegistryConstants.js | 4 + abi/contracts/EVMScriptRegistryFactory.js | 4 + abi/contracts/EVMScriptRunner.js | 4 + abi/contracts/EtherTokenConstant.js | 4 + abi/contracts/IACL.js | 4 + abi/contracts/IEVMScriptExecutor.js | 4 + abi/contracts/IEVMScriptRegistry.js | 4 + abi/contracts/IKernel.js | 4 + abi/contracts/ILPVault.js | 4 + abi/contracts/ILiquidPledging.js | 4 + abi/contracts/ILiquidPledgingPlugin.js | 4 + abi/contracts/IVaultRecoverable.js | 4 + abi/contracts/Initializable.js | 4 + abi/contracts/IsContract.js | 4 + abi/contracts/Kernel.js | 4 + abi/contracts/KernelConstants.js | 4 + abi/contracts/KernelProxy.js | 4 + abi/contracts/KernelStorage.js | 4 + abi/contracts/LPConstants.js | 4 + abi/contracts/LPFactory.js | 4 + abi/contracts/LPVault.js | 4 + abi/contracts/LiquidPledging.js | 4 + abi/contracts/LiquidPledging.json | 1 + abi/contracts/LiquidPledgingACLHelpers.js | 4 + abi/contracts/LiquidPledgingBase.js | 4 + abi/contracts/LiquidPledgingMock.js | 4 + abi/contracts/LiquidPledgingPlugins.js | 4 + abi/contracts/LiquidPledgingStorage.js | 4 + abi/contracts/PledgeAdmins.js | 4 + abi/contracts/Pledges.js | 4 + abi/contracts/RecoveryVault.js | 4 + abi/contracts/SNT.js | 4 + abi/contracts/ScriptHelpers.js | 4 + abi/contracts/StandardToken.js | 4 + abi/contracts/TestSimpleDelegatePlugin.js | 4 + .../TestSimpleDelegatePluginFactory.js | 4 + abi/contracts/TestSimpleProjectPlugin.js | 4 + .../TestSimpleProjectPluginFactory.js | 4 + abi/contracts/VaultRecoverable.js | 4 + abi/contracts/cDAI.js | 4 + abi/contracts/cETH.js | 4 + abi/contracts/fileParser.js | 22 + abi/contracts/index.js | 62 + abi/embarkjs.js | 100 + abi/embarkjs.node.js | 120 + abi/modules/embarkjs | 1 + abi/modules/web3 | 1 + subgraph/abis/Contract.json | 686 +++++ subgraph/build/Contract/Contract.wasm | Bin 0 -> 5694 bytes subgraph/build/Contract/abis/Contract.json | 1223 ++++++++ subgraph/build/schema.graphql | 6 + subgraph/build/subgraph.yaml | 44 + subgraph/generated/Contract/Contract.ts | 1568 ++++++++++ subgraph/generated/schema.ts | 71 + subgraph/package.json | 16 + subgraph/schema.graphql | 6 + subgraph/src/mapping.ts | 95 + subgraph/subgraph.yaml | 44 + subgraph/yarn.lock | 2607 +++++++++++++++++ 85 files changed, 6946 insertions(+) create mode 100644 README.md create mode 100644 abi/config/blockchain.json create mode 100644 abi/config/communication.json create mode 100644 abi/config/storage.json create mode 100644 abi/contracts/ACL.js create mode 100644 abi/contracts/ACLHelpers.js create mode 100644 abi/contracts/ACLOracle.js create mode 100644 abi/contracts/ACLSyntaxSugar.js create mode 100644 abi/contracts/AppProxyBase.js create mode 100644 abi/contracts/AppProxyFactory.js create mode 100644 abi/contracts/AppProxyPinned.js create mode 100644 abi/contracts/AppProxyUpgradeable.js create mode 100644 abi/contracts/AppStorage.js create mode 100644 abi/contracts/AragonApp.js create mode 100644 abi/contracts/CallsScript.js create mode 100644 abi/contracts/DAI.js create mode 100644 abi/contracts/DAOFactory.js create mode 100644 abi/contracts/DelegateProxy.js create mode 100644 abi/contracts/DelegateScript.js create mode 100644 abi/contracts/DelegateScriptTarget.js create mode 100644 abi/contracts/DeployDelegateScript.js create mode 100644 abi/contracts/DepositableDelegateProxy.js create mode 100644 abi/contracts/ERC20.js create mode 100644 abi/contracts/ERC20Basic.js create mode 100644 abi/contracts/ERCProxy.js create mode 100644 abi/contracts/EVMScriptRegistry.js create mode 100644 abi/contracts/EVMScriptRegistryConstants.js create mode 100644 abi/contracts/EVMScriptRegistryFactory.js create mode 100644 abi/contracts/EVMScriptRunner.js create mode 100644 abi/contracts/EtherTokenConstant.js create mode 100644 abi/contracts/IACL.js create mode 100644 abi/contracts/IEVMScriptExecutor.js create mode 100644 abi/contracts/IEVMScriptRegistry.js create mode 100644 abi/contracts/IKernel.js create mode 100644 abi/contracts/ILPVault.js create mode 100644 abi/contracts/ILiquidPledging.js create mode 100644 abi/contracts/ILiquidPledgingPlugin.js create mode 100644 abi/contracts/IVaultRecoverable.js create mode 100644 abi/contracts/Initializable.js create mode 100644 abi/contracts/IsContract.js create mode 100644 abi/contracts/Kernel.js create mode 100644 abi/contracts/KernelConstants.js create mode 100644 abi/contracts/KernelProxy.js create mode 100644 abi/contracts/KernelStorage.js create mode 100644 abi/contracts/LPConstants.js create mode 100644 abi/contracts/LPFactory.js create mode 100644 abi/contracts/LPVault.js create mode 100644 abi/contracts/LiquidPledging.js create mode 100644 abi/contracts/LiquidPledging.json create mode 100644 abi/contracts/LiquidPledgingACLHelpers.js create mode 100644 abi/contracts/LiquidPledgingBase.js create mode 100644 abi/contracts/LiquidPledgingMock.js create mode 100644 abi/contracts/LiquidPledgingPlugins.js create mode 100644 abi/contracts/LiquidPledgingStorage.js create mode 100644 abi/contracts/PledgeAdmins.js create mode 100644 abi/contracts/Pledges.js create mode 100644 abi/contracts/RecoveryVault.js create mode 100644 abi/contracts/SNT.js create mode 100644 abi/contracts/ScriptHelpers.js create mode 100644 abi/contracts/StandardToken.js create mode 100644 abi/contracts/TestSimpleDelegatePlugin.js create mode 100644 abi/contracts/TestSimpleDelegatePluginFactory.js create mode 100644 abi/contracts/TestSimpleProjectPlugin.js create mode 100644 abi/contracts/TestSimpleProjectPluginFactory.js create mode 100644 abi/contracts/VaultRecoverable.js create mode 100644 abi/contracts/cDAI.js create mode 100644 abi/contracts/cETH.js create mode 100644 abi/contracts/fileParser.js create mode 100644 abi/contracts/index.js create mode 100644 abi/embarkjs.js create mode 100644 abi/embarkjs.node.js create mode 120000 abi/modules/embarkjs create mode 120000 abi/modules/web3 create mode 100644 subgraph/abis/Contract.json create mode 100644 subgraph/build/Contract/Contract.wasm create mode 100644 subgraph/build/Contract/abis/Contract.json create mode 100644 subgraph/build/schema.graphql create mode 100644 subgraph/build/subgraph.yaml create mode 100644 subgraph/generated/Contract/Contract.ts create mode 100644 subgraph/generated/schema.ts create mode 100644 subgraph/package.json create mode 100644 subgraph/schema.graphql create mode 100644 subgraph/src/mapping.ts create mode 100644 subgraph/subgraph.yaml create mode 100644 subgraph/yarn.lock diff --git a/README.md b/README.md new file mode 100644 index 0000000..e746cd0 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# liquid-funding-subgraph diff --git a/abi/config/blockchain.json b/abi/config/blockchain.json new file mode 100644 index 0000000..b661ad4 --- /dev/null +++ b/abi/config/blockchain.json @@ -0,0 +1,7 @@ +{ + "dappConnection": [ + "$WEB3" + ], + "dappAutoEnable": true, + "blockchainClient": "geth" +} \ No newline at end of file diff --git a/abi/config/communication.json b/abi/config/communication.json new file mode 100644 index 0000000..ef08e9b --- /dev/null +++ b/abi/config/communication.json @@ -0,0 +1,7 @@ +{ + "connection": { + "host": "localhost", + "port": 8546, + "type": "ws" + } +} \ No newline at end of file diff --git a/abi/config/storage.json b/abi/config/storage.json new file mode 100644 index 0000000..49079b1 --- /dev/null +++ b/abi/config/storage.json @@ -0,0 +1,10 @@ +{ + "dappConnection": [ + { + "provider": "ipfs", + "host": "localhost", + "port": 5001, + "getUrl": "http://localhost:8080/ipfs/" + } + ] +} \ No newline at end of file diff --git a/abi/contracts/ACL.js b/abi/contracts/ACL.js new file mode 100644 index 0000000..63d70c8 --- /dev/null +++ b/abi/contracts/ACL.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let ACLJSONConfig = {"contract_name":{"file":"@aragon/os/contracts/acl/ACL.sol","className":"ACL","args":[],"code":"6060604052341561000f57600080fd5b611ae28061001e6000396000f30060606040526004361061015b5763ffffffff60e060020a6000350416630a8ed3db811461016057806315949ed71461018a578063178e6079146101c45780631b5e75be146101d757806332f0a3b5146102595780633d6ab68f1461028857806360b1e0571461029b5780636815c992146102ae5780636d6712d814610318578063710a8315146103405780637e7db6e11461038d57806380afdea8146103ac5780638322fff2146103bf5780638b3dd749146103d25780639b3fdf4c146103e55780639d0effdb146103f85780639d4941d814610420578063a03c58321461043f578063a1658fad1461046a578063a885508a146104cd578063afd925df146104ef578063b190572714610517578063be03847814610539578063c4d66de814610568578063c513f66e14610587578063d4aae0c41461059a578063f520b58d146105ad578063f92a79ff14610617578063fdef910614610668575b600080fd5b341561016b57600080fd5b610188600160a060020a03600435811690602435166044356106d4565b005b341561019557600080fd5b6101b2600160a060020a0360043581169060243516604435610704565b60405190815260200160405180910390f35b34156101cf57600080fd5b6101b2610747565b34156101e257600080fd5b6102456004803590600160a060020a0360248035821692604435909216916064359160a490608435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061076b95505050505050565b604051901515815260200160405180910390f35b341561026457600080fd5b61026c6107a6565b604051600160a060020a03909116815260200160405180910390f35b341561029357600080fd5b6101b2610827565b34156102a657600080fd5b6101b261084b565b34156102b957600080fd5b610188600160a060020a0360048035821691602480359091169160443591608490606435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061086f95505050505050565b341561032357600080fd5b610245600160a060020a03600435811690602435166044356108d9565b341561034b57600080fd5b610359600435602435610911565b60405160ff9384168152919092166020820152600160f060020a039091166040808301919091526060909101905180910390f35b341561039857600080fd5b610245600160a060020a0360043516610959565b34156103b757600080fd5b6101b261095f565b34156103ca57600080fd5b61026c610965565b34156103dd57600080fd5b6101b261096a565b34156103f057600080fd5b6101b2610970565b341561040357600080fd5b610188600160a060020a0360043581169060243516604435610994565b341561042b57600080fd5b610188600160a060020a03600435166109d3565b341561044a57600080fd5b610359600160a060020a0360043581169060243516604435606435610b4a565b341561047557600080fd5b61024560048035600160a060020a0316906024803591906064906044359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650610bc995505050505050565b34156104d857600080fd5b610188600160a060020a0360043516602435610d07565b34156104fa57600080fd5b610188600160a060020a0360043581169060243516604435610d44565b341561052257600080fd5b61026c600160a060020a0360043516602435610d7a565b341561054457600080fd5b610188600160a060020a036004358116906024358116906044359060643516610dab565b341561057357600080fd5b610188600160a060020a0360043516610ded565b341561059257600080fd5b6101b2610e4c565b34156105a557600080fd5b61026c610e5e565b34156105b857600080fd5b610245600160a060020a03600480358216916024803590911691604435916084906064359081019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650610e6d95505050505050565b341561062257600080fd5b61026c60046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610f1395505050505050565b341561067357600080fd5b610245600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610fef95505050505050565b6106ff83838360006040518059106106e95750595b908082528060200260200182016040525061086f565b505050565b60006065600060646000610719888888611028565b81526020808201929092526040908101600090812054845291830193909352910190205490505b9392505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b6000600080516020611a9783398151915286141561078b5750600161079d565b61079a86600087878787611078565b90505b95945050505050565b60008054600160a060020a031615156107be57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561080757600080fd5b6102c65a03f1151561081857600080fd5b50505060405180519150505b90565b7f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6000838361087d8282610d7a565b600160a060020a031633600160a060020a031614151561089c57600080fd5b60008451116108b957600080516020611a978339815191526108c2565b6108c284611293565b92506108d0878787866113e8565b50505050505050565b60006108e3611a2b565b60006040518059106108f25750595b9080825280602002602001820160405250905061079d85858584610e6d565b60656020528160005260406000208181548110151561092c57fe5b60009182526020909120015460ff80821693506101008204169150620100009004600160f060020a031683565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b81816109a08282610d7a565b600160a060020a031633600160a060020a03161415156109bf57600080fd5b6109cc85858560006113e8565b5050505050565b6000806109df83610959565b15156109ea57600080fd5b6109f26107a6565b91506109fd8261145d565b1515610a0857600080fd5b600160a060020a0383161515610a5a5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515610a5557600080fd5b6106ff565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515610ab157600080fd5b6102c65a03f11515610ac257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610b2a57600080fd5b6102c65a03f11515610b3b57600080fd5b50505060405180515050505050565b6000806000806065600060646000610b638c8c8c611028565b8152602080820192909252604090810160009081205484529183019390935291019020805486908110610b9257fe5b60009182526020909120015460ff8082169a6101008304909116995062010000909104600160f060020a0316975095505050505050565b6000610bd3611a2b565b60008084511115610bec57835160200290508391508082525b600054600160a060020a03161580610cfd575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610c93578082015183820152602001610c7b565b50505050905090810190601f168015610cc05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610ce157600080fd5b6102c65a03f11515610cf257600080fd5b505050604051805190505b9695505050505050565b8181610d138282610d7a565b600160a060020a031633600160a060020a0316141515610d3257600080fd5b610d3e6000858561148a565b50505050565b8181610d508282610d7a565b600160a060020a031633600160a060020a0316141515610d6f57600080fd5b6109cc85858561148a565b600060666000610d8a858561150c565b8152602081019190915260400160002054600160a060020a03169392505050565b610dd633307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a6108d9565b1515610de157600080fd5b610d3e84848484611550565b60035415610dfa57600080fd5b610e02611594565b60005433600160a060020a03908116911614610e1d57600080fd5b610e4981307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a82611550565b50565b600080516020611a9783398151915281565b600054600160a060020a031681565b600080600060646000610e81898989611028565b815260208101919091526040016000205491508115801590610eab5750610eab828888888861076b565b15610eb95760019250610f09565b60646000610eca6000198989611028565b815260208101919091526040016000205490508015801590610ef65750610ef68160001988888861076b565b15610f045760019250610f09565b600092505b5050949350505050565b6000610f1d6115ae565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f84578082015183820152602001610f6c565b50505050905090810190601f168015610fb15780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610fcf57600080fd5b6102c65a03f11515610fe057600080fd5b50505060405180519392505050565b6000610ff9611a2b565b60006020845181151561100857fe5b04905083915080825261101d87878785610e6d565b979650505050505050565b600060028484846040519384526c01000000000000000000000000600160a060020a0393841681026020860152919092160260348301526048820152606801604051809103902090509392505050565b6000611082611a3d565b600088815260656020526040812054819063ffffffff8a16106110a85760009350611286565b60008a8152606560205260409020805463ffffffff8b169081106110c857fe5b906000526020600020900160606040519081016040908152915460ff80821683526101008204166020830152620100009004600160f060020a031691810191909152925060cc835160ff16141561112e57611127838b8a8a8a8a611645565b9350611286565b8260400151600160f060020a0316905060cb835160ff1614156111785761115c8360400151898989896117e8565b61116757600061116a565b60015b60ff16915060019050611235565b60c8835160ff1614156111945761118d611902565b9150611235565b60c9835160ff1614156111ba576111a9611906565b67ffffffffffffffff169150611235565b60ca835160ff1614156111d85733600160a060020a03169150611235565b60cd835160ff1614156111fa578260400151600160f060020a03169150611235565b8451835160ff161061120f5760009350611286565b84835160ff168151811061121f57fe5b90602001906020020151600160f060020a031691505b6007836020015160ff16600c81111561124a57fe5b600c81111561125557fe5b141561126657600082119350611286565b61128382846020015160ff16600c81111561127d57fe5b8361190a565b93505b5050509695505050505050565b60008060008060006112a3611a3d565b8660405180828051906020019060200280838360005b838110156112d15780820151838201526020016112b9565b5050505090500191505060405190819003902060008181526065602052604090208054919650945015156113dd57600092505b86518310156113dd5786838151811061131957fe5b90602001906020020151915060606040519081016040528061133a846119c7565b60ff16815260200161134b846119ed565b60ff16815260200183600160f060020a031681525090508380548060010182816113759190611a5d565b600092835260209092208391018151815460ff191660ff919091161781556020820151815460ff919091166101000261ff001990911617815560408201518154600160f060020a0391909116620100000261ffff909116179055505060019290920191611304565b509295945050505050565b80606460006113f8878787611028565b815260208101919091526040908101600020919091558290600160a060020a0380861691908716907f759b9a74d5354b5801710a0c1b283cc9f0d32b607ac8ced10c83ac8e75c77d52908515159051901515815260200160405180910390a450505050565b600080600160a060020a03831615156114795760009150611484565b823b90506000811191505b50919050565b8260666000611499858561150c565b815260208101919091526040908101600020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03938416179055848216918391908516907ff3addc8b8e25ee11528a61b0e65092cae0666ef0ec0c64cb303993c88d689b4d905160405180910390a4505050565b600060018383604051928352600160a060020a03919091166c0100000000000000000000000002602083015260348201526054016040518091039020905092915050565b600061155c8484610d7a565b600160a060020a03161461156f57600080fd5b611589848484600080516020611a978339815191526113e8565b610d3e81848461148a565b600354156115a157600080fd5b6115a9611902565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561162157600080fd5b6102c65a03f1151561163257600080fd5b50505060405180519250829150505b5090565b60008080808080808080600c8f6020015160ff16600c81111561166457fe5b600c81111561166f57fe5b14156116c25761168b8f60400151600160f060020a0316611a12565b97509750975061169f8e898f8f8f8f611078565b94506116bb8e866116b057876116b2565b885b8f8f8f8f611078565b98506117d6565b6116d88f60400151600160f060020a0316611a12565b50935093506116eb8e858f8f8f8f611078565b915060088f6020015160ff16600c81111561170257fe5b600c81111561170d57fe5b141561171c57811598506117d6565b8180156117465750600a8f6020015160ff16600c81111561173957fe5b600c81111561174457fe5b145b1561175457600198506117d6565b8115801561177f575060098f6020015160ff16600c81111561177257fe5b600c81111561177d57fe5b145b1561178d57600098506117d6565b61179b8e848f8f8f8f611078565b9050600b8f6020015160ff16600c8111156117b257fe5b600c8111156117bd57fe5b14156117d257801515821515141598506117d6565b8098505b50505050505050509695505050505050565b60007f2a15109000000000000000000000000000000000000000000000000000000000818080600160a060020a038a16632a1510908a8a8a60808b518c60405160e060020a63ffffffff8916028152600160a060020a038088166004830190815290871660248301526044820186905260ff85166064830152608482018490529060a401828051906020019060200280838360005b8381101561189557808201518382015260200161187d565b50505050905001965050505050505060006040518083038160008761646e5a03f19250505092508215156118cc57600094506118f5565b3d9150602082146118e057600094506118f5565b604051826000823e8051915060008152508094505b5050505095945050505050565b4390565b4290565b6000600183600c81111561191a57fe5b14156119295750828114610740565b600283600c81111561193757fe5b1415611947575082811415610740565b600383600c81111561195557fe5b14156119645750808311610740565b600483600c81111561197257fe5b14156119815750808310610740565b600583600c81111561198f57fe5b141561199f575080831015610740565b600683600c8111156119ad57fe5b14156119bd575080831115610740565b5060009392505050565b7f0100000000000000000000000000000000000000000000000000000000000000900490565b7e01000000000000000000000000000000000000000000000000000000000000900490565b9064010000000082049068010000000000000000830490565b60206040519081016040526000815290565b606060405190810160409081526000808352602083018190529082015290565b8154818355818115116106ff576000838152602090206106ff91810190830161082491905b808211156116415760008155600101611a825600290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563a165627a7a72305820c8c7706565e577c700b506e25b648b75607841f84879ab724b4801482c87f51d0029","runtimeBytecode":"60606040526004361061015b5763ffffffff60e060020a6000350416630a8ed3db811461016057806315949ed71461018a578063178e6079146101c45780631b5e75be146101d757806332f0a3b5146102595780633d6ab68f1461028857806360b1e0571461029b5780636815c992146102ae5780636d6712d814610318578063710a8315146103405780637e7db6e11461038d57806380afdea8146103ac5780638322fff2146103bf5780638b3dd749146103d25780639b3fdf4c146103e55780639d0effdb146103f85780639d4941d814610420578063a03c58321461043f578063a1658fad1461046a578063a885508a146104cd578063afd925df146104ef578063b190572714610517578063be03847814610539578063c4d66de814610568578063c513f66e14610587578063d4aae0c41461059a578063f520b58d146105ad578063f92a79ff14610617578063fdef910614610668575b600080fd5b341561016b57600080fd5b610188600160a060020a03600435811690602435166044356106d4565b005b341561019557600080fd5b6101b2600160a060020a0360043581169060243516604435610704565b60405190815260200160405180910390f35b34156101cf57600080fd5b6101b2610747565b34156101e257600080fd5b6102456004803590600160a060020a0360248035821692604435909216916064359160a490608435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061076b95505050505050565b604051901515815260200160405180910390f35b341561026457600080fd5b61026c6107a6565b604051600160a060020a03909116815260200160405180910390f35b341561029357600080fd5b6101b2610827565b34156102a657600080fd5b6101b261084b565b34156102b957600080fd5b610188600160a060020a0360048035821691602480359091169160443591608490606435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061086f95505050505050565b341561032357600080fd5b610245600160a060020a03600435811690602435166044356108d9565b341561034b57600080fd5b610359600435602435610911565b60405160ff9384168152919092166020820152600160f060020a039091166040808301919091526060909101905180910390f35b341561039857600080fd5b610245600160a060020a0360043516610959565b34156103b757600080fd5b6101b261095f565b34156103ca57600080fd5b61026c610965565b34156103dd57600080fd5b6101b261096a565b34156103f057600080fd5b6101b2610970565b341561040357600080fd5b610188600160a060020a0360043581169060243516604435610994565b341561042b57600080fd5b610188600160a060020a03600435166109d3565b341561044a57600080fd5b610359600160a060020a0360043581169060243516604435606435610b4a565b341561047557600080fd5b61024560048035600160a060020a0316906024803591906064906044359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650610bc995505050505050565b34156104d857600080fd5b610188600160a060020a0360043516602435610d07565b34156104fa57600080fd5b610188600160a060020a0360043581169060243516604435610d44565b341561052257600080fd5b61026c600160a060020a0360043516602435610d7a565b341561054457600080fd5b610188600160a060020a036004358116906024358116906044359060643516610dab565b341561057357600080fd5b610188600160a060020a0360043516610ded565b341561059257600080fd5b6101b2610e4c565b34156105a557600080fd5b61026c610e5e565b34156105b857600080fd5b610245600160a060020a03600480358216916024803590911691604435916084906064359081019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650610e6d95505050505050565b341561062257600080fd5b61026c60046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610f1395505050505050565b341561067357600080fd5b610245600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610fef95505050505050565b6106ff83838360006040518059106106e95750595b908082528060200260200182016040525061086f565b505050565b60006065600060646000610719888888611028565b81526020808201929092526040908101600090812054845291830193909352910190205490505b9392505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b6000600080516020611a9783398151915286141561078b5750600161079d565b61079a86600087878787611078565b90505b95945050505050565b60008054600160a060020a031615156107be57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561080757600080fd5b6102c65a03f1151561081857600080fd5b50505060405180519150505b90565b7f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6000838361087d8282610d7a565b600160a060020a031633600160a060020a031614151561089c57600080fd5b60008451116108b957600080516020611a978339815191526108c2565b6108c284611293565b92506108d0878787866113e8565b50505050505050565b60006108e3611a2b565b60006040518059106108f25750595b9080825280602002602001820160405250905061079d85858584610e6d565b60656020528160005260406000208181548110151561092c57fe5b60009182526020909120015460ff80821693506101008204169150620100009004600160f060020a031683565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b81816109a08282610d7a565b600160a060020a031633600160a060020a03161415156109bf57600080fd5b6109cc85858560006113e8565b5050505050565b6000806109df83610959565b15156109ea57600080fd5b6109f26107a6565b91506109fd8261145d565b1515610a0857600080fd5b600160a060020a0383161515610a5a5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515610a5557600080fd5b6106ff565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515610ab157600080fd5b6102c65a03f11515610ac257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610b2a57600080fd5b6102c65a03f11515610b3b57600080fd5b50505060405180515050505050565b6000806000806065600060646000610b638c8c8c611028565b8152602080820192909252604090810160009081205484529183019390935291019020805486908110610b9257fe5b60009182526020909120015460ff8082169a6101008304909116995062010000909104600160f060020a0316975095505050505050565b6000610bd3611a2b565b60008084511115610bec57835160200290508391508082525b600054600160a060020a03161580610cfd575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610c93578082015183820152602001610c7b565b50505050905090810190601f168015610cc05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610ce157600080fd5b6102c65a03f11515610cf257600080fd5b505050604051805190505b9695505050505050565b8181610d138282610d7a565b600160a060020a031633600160a060020a0316141515610d3257600080fd5b610d3e6000858561148a565b50505050565b8181610d508282610d7a565b600160a060020a031633600160a060020a0316141515610d6f57600080fd5b6109cc85858561148a565b600060666000610d8a858561150c565b8152602081019190915260400160002054600160a060020a03169392505050565b610dd633307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a6108d9565b1515610de157600080fd5b610d3e84848484611550565b60035415610dfa57600080fd5b610e02611594565b60005433600160a060020a03908116911614610e1d57600080fd5b610e4981307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a82611550565b50565b600080516020611a9783398151915281565b600054600160a060020a031681565b600080600060646000610e81898989611028565b815260208101919091526040016000205491508115801590610eab5750610eab828888888861076b565b15610eb95760019250610f09565b60646000610eca6000198989611028565b815260208101919091526040016000205490508015801590610ef65750610ef68160001988888861076b565b15610f045760019250610f09565b600092505b5050949350505050565b6000610f1d6115ae565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f84578082015183820152602001610f6c565b50505050905090810190601f168015610fb15780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610fcf57600080fd5b6102c65a03f11515610fe057600080fd5b50505060405180519392505050565b6000610ff9611a2b565b60006020845181151561100857fe5b04905083915080825261101d87878785610e6d565b979650505050505050565b600060028484846040519384526c01000000000000000000000000600160a060020a0393841681026020860152919092160260348301526048820152606801604051809103902090509392505050565b6000611082611a3d565b600088815260656020526040812054819063ffffffff8a16106110a85760009350611286565b60008a8152606560205260409020805463ffffffff8b169081106110c857fe5b906000526020600020900160606040519081016040908152915460ff80821683526101008204166020830152620100009004600160f060020a031691810191909152925060cc835160ff16141561112e57611127838b8a8a8a8a611645565b9350611286565b8260400151600160f060020a0316905060cb835160ff1614156111785761115c8360400151898989896117e8565b61116757600061116a565b60015b60ff16915060019050611235565b60c8835160ff1614156111945761118d611902565b9150611235565b60c9835160ff1614156111ba576111a9611906565b67ffffffffffffffff169150611235565b60ca835160ff1614156111d85733600160a060020a03169150611235565b60cd835160ff1614156111fa578260400151600160f060020a03169150611235565b8451835160ff161061120f5760009350611286565b84835160ff168151811061121f57fe5b90602001906020020151600160f060020a031691505b6007836020015160ff16600c81111561124a57fe5b600c81111561125557fe5b141561126657600082119350611286565b61128382846020015160ff16600c81111561127d57fe5b8361190a565b93505b5050509695505050505050565b60008060008060006112a3611a3d565b8660405180828051906020019060200280838360005b838110156112d15780820151838201526020016112b9565b5050505090500191505060405190819003902060008181526065602052604090208054919650945015156113dd57600092505b86518310156113dd5786838151811061131957fe5b90602001906020020151915060606040519081016040528061133a846119c7565b60ff16815260200161134b846119ed565b60ff16815260200183600160f060020a031681525090508380548060010182816113759190611a5d565b600092835260209092208391018151815460ff191660ff919091161781556020820151815460ff919091166101000261ff001990911617815560408201518154600160f060020a0391909116620100000261ffff909116179055505060019290920191611304565b509295945050505050565b80606460006113f8878787611028565b815260208101919091526040908101600020919091558290600160a060020a0380861691908716907f759b9a74d5354b5801710a0c1b283cc9f0d32b607ac8ced10c83ac8e75c77d52908515159051901515815260200160405180910390a450505050565b600080600160a060020a03831615156114795760009150611484565b823b90506000811191505b50919050565b8260666000611499858561150c565b815260208101919091526040908101600020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03938416179055848216918391908516907ff3addc8b8e25ee11528a61b0e65092cae0666ef0ec0c64cb303993c88d689b4d905160405180910390a4505050565b600060018383604051928352600160a060020a03919091166c0100000000000000000000000002602083015260348201526054016040518091039020905092915050565b600061155c8484610d7a565b600160a060020a03161461156f57600080fd5b611589848484600080516020611a978339815191526113e8565b610d3e81848461148a565b600354156115a157600080fd5b6115a9611902565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561162157600080fd5b6102c65a03f1151561163257600080fd5b50505060405180519250829150505b5090565b60008080808080808080600c8f6020015160ff16600c81111561166457fe5b600c81111561166f57fe5b14156116c25761168b8f60400151600160f060020a0316611a12565b97509750975061169f8e898f8f8f8f611078565b94506116bb8e866116b057876116b2565b885b8f8f8f8f611078565b98506117d6565b6116d88f60400151600160f060020a0316611a12565b50935093506116eb8e858f8f8f8f611078565b915060088f6020015160ff16600c81111561170257fe5b600c81111561170d57fe5b141561171c57811598506117d6565b8180156117465750600a8f6020015160ff16600c81111561173957fe5b600c81111561174457fe5b145b1561175457600198506117d6565b8115801561177f575060098f6020015160ff16600c81111561177257fe5b600c81111561177d57fe5b145b1561178d57600098506117d6565b61179b8e848f8f8f8f611078565b9050600b8f6020015160ff16600c8111156117b257fe5b600c8111156117bd57fe5b14156117d257801515821515141598506117d6565b8098505b50505050505050509695505050505050565b60007f2a15109000000000000000000000000000000000000000000000000000000000818080600160a060020a038a16632a1510908a8a8a60808b518c60405160e060020a63ffffffff8916028152600160a060020a038088166004830190815290871660248301526044820186905260ff85166064830152608482018490529060a401828051906020019060200280838360005b8381101561189557808201518382015260200161187d565b50505050905001965050505050505060006040518083038160008761646e5a03f19250505092508215156118cc57600094506118f5565b3d9150602082146118e057600094506118f5565b604051826000823e8051915060008152508094505b5050505095945050505050565b4390565b4290565b6000600183600c81111561191a57fe5b14156119295750828114610740565b600283600c81111561193757fe5b1415611947575082811415610740565b600383600c81111561195557fe5b14156119645750808311610740565b600483600c81111561197257fe5b14156119815750808310610740565b600583600c81111561198f57fe5b141561199f575080831015610740565b600683600c8111156119ad57fe5b14156119bd575080831115610740565b5060009392505050565b7f0100000000000000000000000000000000000000000000000000000000000000900490565b7e01000000000000000000000000000000000000000000000000000000000000900490565b9064010000000082049068010000000000000000830490565b60206040519081016040526000815290565b606060405190810160409081526000808352602083018190529082015290565b8154818355818115116106ff576000838152602090206106ff91810190830161082491905b808211156116415760008155600101611a825600290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563a165627a7a72305820c8c7706565e577c700b506e25b648b75607841f84879ab724b4801482c87f51d0029","realRuntimeBytecode":"60606040526004361061015b5763ffffffff60e060020a6000350416630a8ed3db811461016057806315949ed71461018a578063178e6079146101c45780631b5e75be146101d757806332f0a3b5146102595780633d6ab68f1461028857806360b1e0571461029b5780636815c992146102ae5780636d6712d814610318578063710a8315146103405780637e7db6e11461038d57806380afdea8146103ac5780638322fff2146103bf5780638b3dd749146103d25780639b3fdf4c146103e55780639d0effdb146103f85780639d4941d814610420578063a03c58321461043f578063a1658fad1461046a578063a885508a146104cd578063afd925df146104ef578063b190572714610517578063be03847814610539578063c4d66de814610568578063c513f66e14610587578063d4aae0c41461059a578063f520b58d146105ad578063f92a79ff14610617578063fdef910614610668575b600080fd5b341561016b57600080fd5b610188600160a060020a03600435811690602435166044356106d4565b005b341561019557600080fd5b6101b2600160a060020a0360043581169060243516604435610704565b60405190815260200160405180910390f35b34156101cf57600080fd5b6101b2610747565b34156101e257600080fd5b6102456004803590600160a060020a0360248035821692604435909216916064359160a490608435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061076b95505050505050565b604051901515815260200160405180910390f35b341561026457600080fd5b61026c6107a6565b604051600160a060020a03909116815260200160405180910390f35b341561029357600080fd5b6101b2610827565b34156102a657600080fd5b6101b261084b565b34156102b957600080fd5b610188600160a060020a0360048035821691602480359091169160443591608490606435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061086f95505050505050565b341561032357600080fd5b610245600160a060020a03600435811690602435166044356108d9565b341561034b57600080fd5b610359600435602435610911565b60405160ff9384168152919092166020820152600160f060020a039091166040808301919091526060909101905180910390f35b341561039857600080fd5b610245600160a060020a0360043516610959565b34156103b757600080fd5b6101b261095f565b34156103ca57600080fd5b61026c610965565b34156103dd57600080fd5b6101b261096a565b34156103f057600080fd5b6101b2610970565b341561040357600080fd5b610188600160a060020a0360043581169060243516604435610994565b341561042b57600080fd5b610188600160a060020a03600435166109d3565b341561044a57600080fd5b610359600160a060020a0360043581169060243516604435606435610b4a565b341561047557600080fd5b61024560048035600160a060020a0316906024803591906064906044359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650610bc995505050505050565b34156104d857600080fd5b610188600160a060020a0360043516602435610d07565b34156104fa57600080fd5b610188600160a060020a0360043581169060243516604435610d44565b341561052257600080fd5b61026c600160a060020a0360043516602435610d7a565b341561054457600080fd5b610188600160a060020a036004358116906024358116906044359060643516610dab565b341561057357600080fd5b610188600160a060020a0360043516610ded565b341561059257600080fd5b6101b2610e4c565b34156105a557600080fd5b61026c610e5e565b34156105b857600080fd5b610245600160a060020a03600480358216916024803590911691604435916084906064359081019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650610e6d95505050505050565b341561062257600080fd5b61026c60046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610f1395505050505050565b341561067357600080fd5b610245600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610fef95505050505050565b6106ff83838360006040518059106106e95750595b908082528060200260200182016040525061086f565b505050565b60006065600060646000610719888888611028565b81526020808201929092526040908101600090812054845291830193909352910190205490505b9392505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b6000600080516020611a9783398151915286141561078b5750600161079d565b61079a86600087878787611078565b90505b95945050505050565b60008054600160a060020a031615156107be57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561080757600080fd5b6102c65a03f1151561081857600080fd5b50505060405180519150505b90565b7f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6000838361087d8282610d7a565b600160a060020a031633600160a060020a031614151561089c57600080fd5b60008451116108b957600080516020611a978339815191526108c2565b6108c284611293565b92506108d0878787866113e8565b50505050505050565b60006108e3611a2b565b60006040518059106108f25750595b9080825280602002602001820160405250905061079d85858584610e6d565b60656020528160005260406000208181548110151561092c57fe5b60009182526020909120015460ff80821693506101008204169150620100009004600160f060020a031683565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b81816109a08282610d7a565b600160a060020a031633600160a060020a03161415156109bf57600080fd5b6109cc85858560006113e8565b5050505050565b6000806109df83610959565b15156109ea57600080fd5b6109f26107a6565b91506109fd8261145d565b1515610a0857600080fd5b600160a060020a0383161515610a5a5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515610a5557600080fd5b6106ff565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515610ab157600080fd5b6102c65a03f11515610ac257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610b2a57600080fd5b6102c65a03f11515610b3b57600080fd5b50505060405180515050505050565b6000806000806065600060646000610b638c8c8c611028565b8152602080820192909252604090810160009081205484529183019390935291019020805486908110610b9257fe5b60009182526020909120015460ff8082169a6101008304909116995062010000909104600160f060020a0316975095505050505050565b6000610bd3611a2b565b60008084511115610bec57835160200290508391508082525b600054600160a060020a03161580610cfd575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610c93578082015183820152602001610c7b565b50505050905090810190601f168015610cc05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610ce157600080fd5b6102c65a03f11515610cf257600080fd5b505050604051805190505b9695505050505050565b8181610d138282610d7a565b600160a060020a031633600160a060020a0316141515610d3257600080fd5b610d3e6000858561148a565b50505050565b8181610d508282610d7a565b600160a060020a031633600160a060020a0316141515610d6f57600080fd5b6109cc85858561148a565b600060666000610d8a858561150c565b8152602081019190915260400160002054600160a060020a03169392505050565b610dd633307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a6108d9565b1515610de157600080fd5b610d3e84848484611550565b60035415610dfa57600080fd5b610e02611594565b60005433600160a060020a03908116911614610e1d57600080fd5b610e4981307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a82611550565b50565b600080516020611a9783398151915281565b600054600160a060020a031681565b600080600060646000610e81898989611028565b815260208101919091526040016000205491508115801590610eab5750610eab828888888861076b565b15610eb95760019250610f09565b60646000610eca6000198989611028565b815260208101919091526040016000205490508015801590610ef65750610ef68160001988888861076b565b15610f045760019250610f09565b600092505b5050949350505050565b6000610f1d6115ae565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f84578082015183820152602001610f6c565b50505050905090810190601f168015610fb15780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610fcf57600080fd5b6102c65a03f11515610fe057600080fd5b50505060405180519392505050565b6000610ff9611a2b565b60006020845181151561100857fe5b04905083915080825261101d87878785610e6d565b979650505050505050565b600060028484846040519384526c01000000000000000000000000600160a060020a0393841681026020860152919092160260348301526048820152606801604051809103902090509392505050565b6000611082611a3d565b600088815260656020526040812054819063ffffffff8a16106110a85760009350611286565b60008a8152606560205260409020805463ffffffff8b169081106110c857fe5b906000526020600020900160606040519081016040908152915460ff80821683526101008204166020830152620100009004600160f060020a031691810191909152925060cc835160ff16141561112e57611127838b8a8a8a8a611645565b9350611286565b8260400151600160f060020a0316905060cb835160ff1614156111785761115c8360400151898989896117e8565b61116757600061116a565b60015b60ff16915060019050611235565b60c8835160ff1614156111945761118d611902565b9150611235565b60c9835160ff1614156111ba576111a9611906565b67ffffffffffffffff169150611235565b60ca835160ff1614156111d85733600160a060020a03169150611235565b60cd835160ff1614156111fa578260400151600160f060020a03169150611235565b8451835160ff161061120f5760009350611286565b84835160ff168151811061121f57fe5b90602001906020020151600160f060020a031691505b6007836020015160ff16600c81111561124a57fe5b600c81111561125557fe5b141561126657600082119350611286565b61128382846020015160ff16600c81111561127d57fe5b8361190a565b93505b5050509695505050505050565b60008060008060006112a3611a3d565b8660405180828051906020019060200280838360005b838110156112d15780820151838201526020016112b9565b5050505090500191505060405190819003902060008181526065602052604090208054919650945015156113dd57600092505b86518310156113dd5786838151811061131957fe5b90602001906020020151915060606040519081016040528061133a846119c7565b60ff16815260200161134b846119ed565b60ff16815260200183600160f060020a031681525090508380548060010182816113759190611a5d565b600092835260209092208391018151815460ff191660ff919091161781556020820151815460ff919091166101000261ff001990911617815560408201518154600160f060020a0391909116620100000261ffff909116179055505060019290920191611304565b509295945050505050565b80606460006113f8878787611028565b815260208101919091526040908101600020919091558290600160a060020a0380861691908716907f759b9a74d5354b5801710a0c1b283cc9f0d32b607ac8ced10c83ac8e75c77d52908515159051901515815260200160405180910390a450505050565b600080600160a060020a03831615156114795760009150611484565b823b90506000811191505b50919050565b8260666000611499858561150c565b815260208101919091526040908101600020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03938416179055848216918391908516907ff3addc8b8e25ee11528a61b0e65092cae0666ef0ec0c64cb303993c88d689b4d905160405180910390a4505050565b600060018383604051928352600160a060020a03919091166c0100000000000000000000000002602083015260348201526054016040518091039020905092915050565b600061155c8484610d7a565b600160a060020a03161461156f57600080fd5b611589848484600080516020611a978339815191526113e8565b610d3e81848461148a565b600354156115a157600080fd5b6115a9611902565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561162157600080fd5b6102c65a03f1151561163257600080fd5b50505060405180519250829150505b5090565b60008080808080808080600c8f6020015160ff16600c81111561166457fe5b600c81111561166f57fe5b14156116c25761168b8f60400151600160f060020a0316611a12565b97509750975061169f8e898f8f8f8f611078565b94506116bb8e866116b057876116b2565b885b8f8f8f8f611078565b98506117d6565b6116d88f60400151600160f060020a0316611a12565b50935093506116eb8e858f8f8f8f611078565b915060088f6020015160ff16600c81111561170257fe5b600c81111561170d57fe5b141561171c57811598506117d6565b8180156117465750600a8f6020015160ff16600c81111561173957fe5b600c81111561174457fe5b145b1561175457600198506117d6565b8115801561177f575060098f6020015160ff16600c81111561177257fe5b600c81111561177d57fe5b145b1561178d57600098506117d6565b61179b8e848f8f8f8f611078565b9050600b8f6020015160ff16600c8111156117b257fe5b600c8111156117bd57fe5b14156117d257801515821515141598506117d6565b8098505b50505050505050509695505050505050565b60007f2a15109000000000000000000000000000000000000000000000000000000000818080600160a060020a038a16632a1510908a8a8a60808b518c60405160e060020a63ffffffff8916028152600160a060020a038088166004830190815290871660248301526044820186905260ff85166064830152608482018490529060a401828051906020019060200280838360005b8381101561189557808201518382015260200161187d565b50505050905001965050505050505060006040518083038160008761646e5a03f19250505092508215156118cc57600094506118f5565b3d9150602082146118e057600094506118f5565b604051826000823e8051915060008152508094505b5050505095945050505050565b4390565b4290565b6000600183600c81111561191a57fe5b14156119295750828114610740565b600283600c81111561193757fe5b1415611947575082811415610740565b600383600c81111561195557fe5b14156119645750808311610740565b600483600c81111561197257fe5b14156119815750808310610740565b600583600c81111561198f57fe5b141561199f575080831015610740565b600683600c8111156119ad57fe5b14156119bd575080831115610740565b5060009392505050565b7f0100000000000000000000000000000000000000000000000000000000000000900490565b7e01000000000000000000000000000000000000000000000000000000000000900490565b9064010000000082049068010000000000000000830490565b60206040519081016040526000815290565b606060405190810160409081526000808352602083018190529082015290565b8154818355818115116106ff576000838152602090206106ff91810190830161082491905b808211156116415760008155600101611a825600290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563a165627a7a72305820","linkReferences":{},"swarmHash":"c8c7706565e577c700b506e25b648b75607841f84879ab724b4801482c87f51d","gasEstimates":{"creation":{"codeDepositCost":"1376400","executionCost":"1433","totalCost":"1377833"},"external":{"APP_ADDR_NAMESPACE()":"280","CREATE_PERMISSIONS_ROLE()":"346","EMPTY_PARAM_HASH()":"infinite","ETH()":"581","EVMSCRIPT_REGISTRY_APP()":"544","EVMSCRIPT_REGISTRY_APP_ID()":"368","allowRecoverability(address)":"545","appId()":"678","canPerform(address,bytes32,uint256[])":"infinite","createPermission(address,address,bytes32,address)":"infinite","evalParams(bytes32,address,address,bytes32,uint256[])":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"722","getPermissionManager(address,bytes32)":"1500","getPermissionParam(address,address,bytes32,uint256)":"2201","getPermissionParamsLength(address,address,bytes32)":"1270","getRecoveryVault()":"infinite","grantPermission(address,address,bytes32)":"infinite","grantPermissionP(address,address,bytes32,uint256[])":"infinite","hasPermission(address,address,bytes32)":"infinite","hasPermission(address,address,bytes32,bytes)":"infinite","hasPermission(address,address,bytes32,uint256[])":"infinite","initialize(address)":"infinite","kernel()":"1142","permissionParams(bytes32,uint256)":"1273","removePermissionManager(address,bytes32)":"infinite","revokePermission(address,address,bytes32)":"9160","setPermissionManager(address,address,bytes32)":"infinite","transferToVault(address)":"infinite"},"internal":{"_createPermission(address,address,bytes32,address)":"infinite","_saveParams(uint256[] memory)":"infinite","_setPermission(address,address,bytes32,bytes32)":"infinite","_setPermissionManager(address,address,bytes32)":"infinite","blockN()":"14","checkOracle(address,address,address,bytes32,uint256[] memory)":"infinite","compare(uint256,enum ACL.Op,uint256)":"361","evalLogic(struct ACL.Param memory,bytes32,address,address,bytes32,uint256[] memory)":"infinite","evalParam(bytes32,uint32,address,address,bytes32,uint256[] memory)":"infinite","permissionHash(address,address,bytes32)":"infinite","roleHash(address,bytes32)":"infinite","time()":"14"}},"functionHashes":{"APP_ADDR_NAMESPACE()":"178e6079","CREATE_PERMISSIONS_ROLE()":"3d6ab68f","EMPTY_PARAM_HASH()":"c513f66e","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","createPermission(address,address,bytes32,address)":"be038478","evalParams(bytes32,address,address,bytes32,uint256[])":"1b5e75be","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getPermissionManager(address,bytes32)":"b1905727","getPermissionParam(address,address,bytes32,uint256)":"a03c5832","getPermissionParamsLength(address,address,bytes32)":"15949ed7","getRecoveryVault()":"32f0a3b5","grantPermission(address,address,bytes32)":"0a8ed3db","grantPermissionP(address,address,bytes32,uint256[])":"6815c992","hasPermission(address,address,bytes32)":"6d6712d8","hasPermission(address,address,bytes32,bytes)":"fdef9106","hasPermission(address,address,bytes32,uint256[])":"f520b58d","initialize(address)":"c4d66de8","kernel()":"d4aae0c4","permissionParams(bytes32,uint256)":"710a8315","removePermissionManager(address,bytes32)":"a885508a","revokePermission(address,address,bytes32)":"9d0effdb","setPermissionManager(address,address,bytes32)":"afd925df","transferToVault(address)":"9d4941d8"},"abiDefinition":[{"constant":false,"inputs":[{"name":"_entity","type":"address"},{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"}],"name":"grantPermission","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x0a8ed3db"},{"constant":true,"inputs":[{"name":"_entity","type":"address"},{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"}],"name":"getPermissionParamsLength","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x15949ed7"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x178e6079"},{"constant":true,"inputs":[{"name":"_paramsHash","type":"bytes32"},{"name":"_who","type":"address"},{"name":"_where","type":"address"},{"name":"_what","type":"bytes32"},{"name":"_how","type":"uint256[]"}],"name":"evalParams","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x1b5e75be"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x32f0a3b5"},{"constant":true,"inputs":[],"name":"CREATE_PERMISSIONS_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x3d6ab68f"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x60b1e057"},{"constant":false,"inputs":[{"name":"_entity","type":"address"},{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"},{"name":"_params","type":"uint256[]"}],"name":"grantPermissionP","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x6815c992"},{"constant":true,"inputs":[{"name":"_who","type":"address"},{"name":"_where","type":"address"},{"name":"_what","type":"bytes32"}],"name":"hasPermission","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x6d6712d8"},{"constant":true,"inputs":[{"name":"","type":"bytes32"},{"name":"","type":"uint256"}],"name":"permissionParams","outputs":[{"name":"id","type":"uint8"},{"name":"op","type":"uint8"},{"name":"value","type":"uint240"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x710a8315"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x7e7db6e1"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x80afdea8"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8322fff2"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8b3dd749"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x9b3fdf4c"},{"constant":false,"inputs":[{"name":"_entity","type":"address"},{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"}],"name":"revokePermission","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x9d0effdb"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x9d4941d8"},{"constant":true,"inputs":[{"name":"_entity","type":"address"},{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"},{"name":"_index","type":"uint256"}],"name":"getPermissionParam","outputs":[{"name":"id","type":"uint8"},{"name":"op","type":"uint8"},{"name":"value","type":"uint240"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xa03c5832"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xa1658fad"},{"constant":false,"inputs":[{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"}],"name":"removePermissionManager","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa885508a"},{"constant":false,"inputs":[{"name":"_newManager","type":"address"},{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"}],"name":"setPermissionManager","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xafd925df"},{"constant":true,"inputs":[{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"}],"name":"getPermissionManager","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xb1905727"},{"constant":false,"inputs":[{"name":"_entity","type":"address"},{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"},{"name":"_manager","type":"address"}],"name":"createPermission","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xbe038478"},{"constant":false,"inputs":[{"name":"_permissionsCreator","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xc4d66de8"},{"constant":true,"inputs":[],"name":"EMPTY_PARAM_HASH","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xc513f66e"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xd4aae0c4"},{"constant":true,"inputs":[{"name":"_who","type":"address"},{"name":"_where","type":"address"},{"name":"_what","type":"bytes32"},{"name":"_how","type":"uint256[]"}],"name":"hasPermission","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xf520b58d"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xf92a79ff"},{"constant":true,"inputs":[{"name":"_who","type":"address"},{"name":"_where","type":"address"},{"name":"_what","type":"bytes32"},{"name":"_how","type":"bytes"}],"name":"hasPermission","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xfdef9106"},{"anonymous":false,"inputs":[{"indexed":true,"name":"entity","type":"address"},{"indexed":true,"name":"app","type":"address"},{"indexed":true,"name":"role","type":"bytes32"},{"indexed":false,"name":"allowed","type":"bool"}],"name":"SetPermission","type":"event","signature":"0x759b9a74d5354b5801710a0c1b283cc9f0d32b607ac8ced10c83ac8e75c77d52"},{"anonymous":false,"inputs":[{"indexed":true,"name":"app","type":"address"},{"indexed":true,"name":"role","type":"bytes32"},{"indexed":true,"name":"manager","type":"address"}],"name":"ChangePermissionManager","type":"event","signature":"0xf3addc8b8e25ee11528a61b0e65092cae0666ef0ec0c64cb303993c88d689b4d"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/acl/ACL.sol","originalFilename":"node_modules/@aragon/os/contracts/acl/ACL.sol","path":"/Users/Barry/projects/status-im/liquid-funding/node_modules/@aragon/os/contracts/acl/ACL.sol","gas":"auto","type":"file","deploy":true,"_gasLimit":6000000,"error":false,"deploymentAccount":"0x1179823e34aBF984C52fC0CdD7b7b9F5dd394aB9","realArgs":[],"address":"0xEb14c564dfA6ac88d28087138Dde59c8888bF928","deployedAddress":"0xEb14c564dfA6ac88d28087138Dde59c8888bF928"},"address":"0xEb14c564dfA6ac88d28087138Dde59c8888bF928","code":"6060604052341561000f57600080fd5b611ae28061001e6000396000f30060606040526004361061015b5763ffffffff60e060020a6000350416630a8ed3db811461016057806315949ed71461018a578063178e6079146101c45780631b5e75be146101d757806332f0a3b5146102595780633d6ab68f1461028857806360b1e0571461029b5780636815c992146102ae5780636d6712d814610318578063710a8315146103405780637e7db6e11461038d57806380afdea8146103ac5780638322fff2146103bf5780638b3dd749146103d25780639b3fdf4c146103e55780639d0effdb146103f85780639d4941d814610420578063a03c58321461043f578063a1658fad1461046a578063a885508a146104cd578063afd925df146104ef578063b190572714610517578063be03847814610539578063c4d66de814610568578063c513f66e14610587578063d4aae0c41461059a578063f520b58d146105ad578063f92a79ff14610617578063fdef910614610668575b600080fd5b341561016b57600080fd5b610188600160a060020a03600435811690602435166044356106d4565b005b341561019557600080fd5b6101b2600160a060020a0360043581169060243516604435610704565b60405190815260200160405180910390f35b34156101cf57600080fd5b6101b2610747565b34156101e257600080fd5b6102456004803590600160a060020a0360248035821692604435909216916064359160a490608435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061076b95505050505050565b604051901515815260200160405180910390f35b341561026457600080fd5b61026c6107a6565b604051600160a060020a03909116815260200160405180910390f35b341561029357600080fd5b6101b2610827565b34156102a657600080fd5b6101b261084b565b34156102b957600080fd5b610188600160a060020a0360048035821691602480359091169160443591608490606435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061086f95505050505050565b341561032357600080fd5b610245600160a060020a03600435811690602435166044356108d9565b341561034b57600080fd5b610359600435602435610911565b60405160ff9384168152919092166020820152600160f060020a039091166040808301919091526060909101905180910390f35b341561039857600080fd5b610245600160a060020a0360043516610959565b34156103b757600080fd5b6101b261095f565b34156103ca57600080fd5b61026c610965565b34156103dd57600080fd5b6101b261096a565b34156103f057600080fd5b6101b2610970565b341561040357600080fd5b610188600160a060020a0360043581169060243516604435610994565b341561042b57600080fd5b610188600160a060020a03600435166109d3565b341561044a57600080fd5b610359600160a060020a0360043581169060243516604435606435610b4a565b341561047557600080fd5b61024560048035600160a060020a0316906024803591906064906044359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650610bc995505050505050565b34156104d857600080fd5b610188600160a060020a0360043516602435610d07565b34156104fa57600080fd5b610188600160a060020a0360043581169060243516604435610d44565b341561052257600080fd5b61026c600160a060020a0360043516602435610d7a565b341561054457600080fd5b610188600160a060020a036004358116906024358116906044359060643516610dab565b341561057357600080fd5b610188600160a060020a0360043516610ded565b341561059257600080fd5b6101b2610e4c565b34156105a557600080fd5b61026c610e5e565b34156105b857600080fd5b610245600160a060020a03600480358216916024803590911691604435916084906064359081019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650610e6d95505050505050565b341561062257600080fd5b61026c60046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610f1395505050505050565b341561067357600080fd5b610245600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610fef95505050505050565b6106ff83838360006040518059106106e95750595b908082528060200260200182016040525061086f565b505050565b60006065600060646000610719888888611028565b81526020808201929092526040908101600090812054845291830193909352910190205490505b9392505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b6000600080516020611a9783398151915286141561078b5750600161079d565b61079a86600087878787611078565b90505b95945050505050565b60008054600160a060020a031615156107be57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561080757600080fd5b6102c65a03f1151561081857600080fd5b50505060405180519150505b90565b7f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6000838361087d8282610d7a565b600160a060020a031633600160a060020a031614151561089c57600080fd5b60008451116108b957600080516020611a978339815191526108c2565b6108c284611293565b92506108d0878787866113e8565b50505050505050565b60006108e3611a2b565b60006040518059106108f25750595b9080825280602002602001820160405250905061079d85858584610e6d565b60656020528160005260406000208181548110151561092c57fe5b60009182526020909120015460ff80821693506101008204169150620100009004600160f060020a031683565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b81816109a08282610d7a565b600160a060020a031633600160a060020a03161415156109bf57600080fd5b6109cc85858560006113e8565b5050505050565b6000806109df83610959565b15156109ea57600080fd5b6109f26107a6565b91506109fd8261145d565b1515610a0857600080fd5b600160a060020a0383161515610a5a5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515610a5557600080fd5b6106ff565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515610ab157600080fd5b6102c65a03f11515610ac257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610b2a57600080fd5b6102c65a03f11515610b3b57600080fd5b50505060405180515050505050565b6000806000806065600060646000610b638c8c8c611028565b8152602080820192909252604090810160009081205484529183019390935291019020805486908110610b9257fe5b60009182526020909120015460ff8082169a6101008304909116995062010000909104600160f060020a0316975095505050505050565b6000610bd3611a2b565b60008084511115610bec57835160200290508391508082525b600054600160a060020a03161580610cfd575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610c93578082015183820152602001610c7b565b50505050905090810190601f168015610cc05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610ce157600080fd5b6102c65a03f11515610cf257600080fd5b505050604051805190505b9695505050505050565b8181610d138282610d7a565b600160a060020a031633600160a060020a0316141515610d3257600080fd5b610d3e6000858561148a565b50505050565b8181610d508282610d7a565b600160a060020a031633600160a060020a0316141515610d6f57600080fd5b6109cc85858561148a565b600060666000610d8a858561150c565b8152602081019190915260400160002054600160a060020a03169392505050565b610dd633307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a6108d9565b1515610de157600080fd5b610d3e84848484611550565b60035415610dfa57600080fd5b610e02611594565b60005433600160a060020a03908116911614610e1d57600080fd5b610e4981307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a82611550565b50565b600080516020611a9783398151915281565b600054600160a060020a031681565b600080600060646000610e81898989611028565b815260208101919091526040016000205491508115801590610eab5750610eab828888888861076b565b15610eb95760019250610f09565b60646000610eca6000198989611028565b815260208101919091526040016000205490508015801590610ef65750610ef68160001988888861076b565b15610f045760019250610f09565b600092505b5050949350505050565b6000610f1d6115ae565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f84578082015183820152602001610f6c565b50505050905090810190601f168015610fb15780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610fcf57600080fd5b6102c65a03f11515610fe057600080fd5b50505060405180519392505050565b6000610ff9611a2b565b60006020845181151561100857fe5b04905083915080825261101d87878785610e6d565b979650505050505050565b600060028484846040519384526c01000000000000000000000000600160a060020a0393841681026020860152919092160260348301526048820152606801604051809103902090509392505050565b6000611082611a3d565b600088815260656020526040812054819063ffffffff8a16106110a85760009350611286565b60008a8152606560205260409020805463ffffffff8b169081106110c857fe5b906000526020600020900160606040519081016040908152915460ff80821683526101008204166020830152620100009004600160f060020a031691810191909152925060cc835160ff16141561112e57611127838b8a8a8a8a611645565b9350611286565b8260400151600160f060020a0316905060cb835160ff1614156111785761115c8360400151898989896117e8565b61116757600061116a565b60015b60ff16915060019050611235565b60c8835160ff1614156111945761118d611902565b9150611235565b60c9835160ff1614156111ba576111a9611906565b67ffffffffffffffff169150611235565b60ca835160ff1614156111d85733600160a060020a03169150611235565b60cd835160ff1614156111fa578260400151600160f060020a03169150611235565b8451835160ff161061120f5760009350611286565b84835160ff168151811061121f57fe5b90602001906020020151600160f060020a031691505b6007836020015160ff16600c81111561124a57fe5b600c81111561125557fe5b141561126657600082119350611286565b61128382846020015160ff16600c81111561127d57fe5b8361190a565b93505b5050509695505050505050565b60008060008060006112a3611a3d565b8660405180828051906020019060200280838360005b838110156112d15780820151838201526020016112b9565b5050505090500191505060405190819003902060008181526065602052604090208054919650945015156113dd57600092505b86518310156113dd5786838151811061131957fe5b90602001906020020151915060606040519081016040528061133a846119c7565b60ff16815260200161134b846119ed565b60ff16815260200183600160f060020a031681525090508380548060010182816113759190611a5d565b600092835260209092208391018151815460ff191660ff919091161781556020820151815460ff919091166101000261ff001990911617815560408201518154600160f060020a0391909116620100000261ffff909116179055505060019290920191611304565b509295945050505050565b80606460006113f8878787611028565b815260208101919091526040908101600020919091558290600160a060020a0380861691908716907f759b9a74d5354b5801710a0c1b283cc9f0d32b607ac8ced10c83ac8e75c77d52908515159051901515815260200160405180910390a450505050565b600080600160a060020a03831615156114795760009150611484565b823b90506000811191505b50919050565b8260666000611499858561150c565b815260208101919091526040908101600020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03938416179055848216918391908516907ff3addc8b8e25ee11528a61b0e65092cae0666ef0ec0c64cb303993c88d689b4d905160405180910390a4505050565b600060018383604051928352600160a060020a03919091166c0100000000000000000000000002602083015260348201526054016040518091039020905092915050565b600061155c8484610d7a565b600160a060020a03161461156f57600080fd5b611589848484600080516020611a978339815191526113e8565b610d3e81848461148a565b600354156115a157600080fd5b6115a9611902565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561162157600080fd5b6102c65a03f1151561163257600080fd5b50505060405180519250829150505b5090565b60008080808080808080600c8f6020015160ff16600c81111561166457fe5b600c81111561166f57fe5b14156116c25761168b8f60400151600160f060020a0316611a12565b97509750975061169f8e898f8f8f8f611078565b94506116bb8e866116b057876116b2565b885b8f8f8f8f611078565b98506117d6565b6116d88f60400151600160f060020a0316611a12565b50935093506116eb8e858f8f8f8f611078565b915060088f6020015160ff16600c81111561170257fe5b600c81111561170d57fe5b141561171c57811598506117d6565b8180156117465750600a8f6020015160ff16600c81111561173957fe5b600c81111561174457fe5b145b1561175457600198506117d6565b8115801561177f575060098f6020015160ff16600c81111561177257fe5b600c81111561177d57fe5b145b1561178d57600098506117d6565b61179b8e848f8f8f8f611078565b9050600b8f6020015160ff16600c8111156117b257fe5b600c8111156117bd57fe5b14156117d257801515821515141598506117d6565b8098505b50505050505050509695505050505050565b60007f2a15109000000000000000000000000000000000000000000000000000000000818080600160a060020a038a16632a1510908a8a8a60808b518c60405160e060020a63ffffffff8916028152600160a060020a038088166004830190815290871660248301526044820186905260ff85166064830152608482018490529060a401828051906020019060200280838360005b8381101561189557808201518382015260200161187d565b50505050905001965050505050505060006040518083038160008761646e5a03f19250505092508215156118cc57600094506118f5565b3d9150602082146118e057600094506118f5565b604051826000823e8051915060008152508094505b5050505095945050505050565b4390565b4290565b6000600183600c81111561191a57fe5b14156119295750828114610740565b600283600c81111561193757fe5b1415611947575082811415610740565b600383600c81111561195557fe5b14156119645750808311610740565b600483600c81111561197257fe5b14156119815750808310610740565b600583600c81111561198f57fe5b141561199f575080831015610740565b600683600c8111156119ad57fe5b14156119bd575080831115610740565b5060009392505050565b7f0100000000000000000000000000000000000000000000000000000000000000900490565b7e01000000000000000000000000000000000000000000000000000000000000900490565b9064010000000082049068010000000000000000830490565b60206040519081016040526000815290565b606060405190810160409081526000808352602083018190529082015290565b8154818355818115116106ff576000838152602090206106ff91810190830161082491905b808211156116415760008155600101611a825600290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563a165627a7a72305820c8c7706565e577c700b506e25b648b75607841f84879ab724b4801482c87f51d0029","runtime_bytecode":"60606040526004361061015b5763ffffffff60e060020a6000350416630a8ed3db811461016057806315949ed71461018a578063178e6079146101c45780631b5e75be146101d757806332f0a3b5146102595780633d6ab68f1461028857806360b1e0571461029b5780636815c992146102ae5780636d6712d814610318578063710a8315146103405780637e7db6e11461038d57806380afdea8146103ac5780638322fff2146103bf5780638b3dd749146103d25780639b3fdf4c146103e55780639d0effdb146103f85780639d4941d814610420578063a03c58321461043f578063a1658fad1461046a578063a885508a146104cd578063afd925df146104ef578063b190572714610517578063be03847814610539578063c4d66de814610568578063c513f66e14610587578063d4aae0c41461059a578063f520b58d146105ad578063f92a79ff14610617578063fdef910614610668575b600080fd5b341561016b57600080fd5b610188600160a060020a03600435811690602435166044356106d4565b005b341561019557600080fd5b6101b2600160a060020a0360043581169060243516604435610704565b60405190815260200160405180910390f35b34156101cf57600080fd5b6101b2610747565b34156101e257600080fd5b6102456004803590600160a060020a0360248035821692604435909216916064359160a490608435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061076b95505050505050565b604051901515815260200160405180910390f35b341561026457600080fd5b61026c6107a6565b604051600160a060020a03909116815260200160405180910390f35b341561029357600080fd5b6101b2610827565b34156102a657600080fd5b6101b261084b565b34156102b957600080fd5b610188600160a060020a0360048035821691602480359091169160443591608490606435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061086f95505050505050565b341561032357600080fd5b610245600160a060020a03600435811690602435166044356108d9565b341561034b57600080fd5b610359600435602435610911565b60405160ff9384168152919092166020820152600160f060020a039091166040808301919091526060909101905180910390f35b341561039857600080fd5b610245600160a060020a0360043516610959565b34156103b757600080fd5b6101b261095f565b34156103ca57600080fd5b61026c610965565b34156103dd57600080fd5b6101b261096a565b34156103f057600080fd5b6101b2610970565b341561040357600080fd5b610188600160a060020a0360043581169060243516604435610994565b341561042b57600080fd5b610188600160a060020a03600435166109d3565b341561044a57600080fd5b610359600160a060020a0360043581169060243516604435606435610b4a565b341561047557600080fd5b61024560048035600160a060020a0316906024803591906064906044359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650610bc995505050505050565b34156104d857600080fd5b610188600160a060020a0360043516602435610d07565b34156104fa57600080fd5b610188600160a060020a0360043581169060243516604435610d44565b341561052257600080fd5b61026c600160a060020a0360043516602435610d7a565b341561054457600080fd5b610188600160a060020a036004358116906024358116906044359060643516610dab565b341561057357600080fd5b610188600160a060020a0360043516610ded565b341561059257600080fd5b6101b2610e4c565b34156105a557600080fd5b61026c610e5e565b34156105b857600080fd5b610245600160a060020a03600480358216916024803590911691604435916084906064359081019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650610e6d95505050505050565b341561062257600080fd5b61026c60046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610f1395505050505050565b341561067357600080fd5b610245600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610fef95505050505050565b6106ff83838360006040518059106106e95750595b908082528060200260200182016040525061086f565b505050565b60006065600060646000610719888888611028565b81526020808201929092526040908101600090812054845291830193909352910190205490505b9392505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b6000600080516020611a9783398151915286141561078b5750600161079d565b61079a86600087878787611078565b90505b95945050505050565b60008054600160a060020a031615156107be57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561080757600080fd5b6102c65a03f1151561081857600080fd5b50505060405180519150505b90565b7f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6000838361087d8282610d7a565b600160a060020a031633600160a060020a031614151561089c57600080fd5b60008451116108b957600080516020611a978339815191526108c2565b6108c284611293565b92506108d0878787866113e8565b50505050505050565b60006108e3611a2b565b60006040518059106108f25750595b9080825280602002602001820160405250905061079d85858584610e6d565b60656020528160005260406000208181548110151561092c57fe5b60009182526020909120015460ff80821693506101008204169150620100009004600160f060020a031683565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b81816109a08282610d7a565b600160a060020a031633600160a060020a03161415156109bf57600080fd5b6109cc85858560006113e8565b5050505050565b6000806109df83610959565b15156109ea57600080fd5b6109f26107a6565b91506109fd8261145d565b1515610a0857600080fd5b600160a060020a0383161515610a5a5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515610a5557600080fd5b6106ff565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515610ab157600080fd5b6102c65a03f11515610ac257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610b2a57600080fd5b6102c65a03f11515610b3b57600080fd5b50505060405180515050505050565b6000806000806065600060646000610b638c8c8c611028565b8152602080820192909252604090810160009081205484529183019390935291019020805486908110610b9257fe5b60009182526020909120015460ff8082169a6101008304909116995062010000909104600160f060020a0316975095505050505050565b6000610bd3611a2b565b60008084511115610bec57835160200290508391508082525b600054600160a060020a03161580610cfd575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610c93578082015183820152602001610c7b565b50505050905090810190601f168015610cc05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610ce157600080fd5b6102c65a03f11515610cf257600080fd5b505050604051805190505b9695505050505050565b8181610d138282610d7a565b600160a060020a031633600160a060020a0316141515610d3257600080fd5b610d3e6000858561148a565b50505050565b8181610d508282610d7a565b600160a060020a031633600160a060020a0316141515610d6f57600080fd5b6109cc85858561148a565b600060666000610d8a858561150c565b8152602081019190915260400160002054600160a060020a03169392505050565b610dd633307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a6108d9565b1515610de157600080fd5b610d3e84848484611550565b60035415610dfa57600080fd5b610e02611594565b60005433600160a060020a03908116911614610e1d57600080fd5b610e4981307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a82611550565b50565b600080516020611a9783398151915281565b600054600160a060020a031681565b600080600060646000610e81898989611028565b815260208101919091526040016000205491508115801590610eab5750610eab828888888861076b565b15610eb95760019250610f09565b60646000610eca6000198989611028565b815260208101919091526040016000205490508015801590610ef65750610ef68160001988888861076b565b15610f045760019250610f09565b600092505b5050949350505050565b6000610f1d6115ae565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f84578082015183820152602001610f6c565b50505050905090810190601f168015610fb15780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610fcf57600080fd5b6102c65a03f11515610fe057600080fd5b50505060405180519392505050565b6000610ff9611a2b565b60006020845181151561100857fe5b04905083915080825261101d87878785610e6d565b979650505050505050565b600060028484846040519384526c01000000000000000000000000600160a060020a0393841681026020860152919092160260348301526048820152606801604051809103902090509392505050565b6000611082611a3d565b600088815260656020526040812054819063ffffffff8a16106110a85760009350611286565b60008a8152606560205260409020805463ffffffff8b169081106110c857fe5b906000526020600020900160606040519081016040908152915460ff80821683526101008204166020830152620100009004600160f060020a031691810191909152925060cc835160ff16141561112e57611127838b8a8a8a8a611645565b9350611286565b8260400151600160f060020a0316905060cb835160ff1614156111785761115c8360400151898989896117e8565b61116757600061116a565b60015b60ff16915060019050611235565b60c8835160ff1614156111945761118d611902565b9150611235565b60c9835160ff1614156111ba576111a9611906565b67ffffffffffffffff169150611235565b60ca835160ff1614156111d85733600160a060020a03169150611235565b60cd835160ff1614156111fa578260400151600160f060020a03169150611235565b8451835160ff161061120f5760009350611286565b84835160ff168151811061121f57fe5b90602001906020020151600160f060020a031691505b6007836020015160ff16600c81111561124a57fe5b600c81111561125557fe5b141561126657600082119350611286565b61128382846020015160ff16600c81111561127d57fe5b8361190a565b93505b5050509695505050505050565b60008060008060006112a3611a3d565b8660405180828051906020019060200280838360005b838110156112d15780820151838201526020016112b9565b5050505090500191505060405190819003902060008181526065602052604090208054919650945015156113dd57600092505b86518310156113dd5786838151811061131957fe5b90602001906020020151915060606040519081016040528061133a846119c7565b60ff16815260200161134b846119ed565b60ff16815260200183600160f060020a031681525090508380548060010182816113759190611a5d565b600092835260209092208391018151815460ff191660ff919091161781556020820151815460ff919091166101000261ff001990911617815560408201518154600160f060020a0391909116620100000261ffff909116179055505060019290920191611304565b509295945050505050565b80606460006113f8878787611028565b815260208101919091526040908101600020919091558290600160a060020a0380861691908716907f759b9a74d5354b5801710a0c1b283cc9f0d32b607ac8ced10c83ac8e75c77d52908515159051901515815260200160405180910390a450505050565b600080600160a060020a03831615156114795760009150611484565b823b90506000811191505b50919050565b8260666000611499858561150c565b815260208101919091526040908101600020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03938416179055848216918391908516907ff3addc8b8e25ee11528a61b0e65092cae0666ef0ec0c64cb303993c88d689b4d905160405180910390a4505050565b600060018383604051928352600160a060020a03919091166c0100000000000000000000000002602083015260348201526054016040518091039020905092915050565b600061155c8484610d7a565b600160a060020a03161461156f57600080fd5b611589848484600080516020611a978339815191526113e8565b610d3e81848461148a565b600354156115a157600080fd5b6115a9611902565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561162157600080fd5b6102c65a03f1151561163257600080fd5b50505060405180519250829150505b5090565b60008080808080808080600c8f6020015160ff16600c81111561166457fe5b600c81111561166f57fe5b14156116c25761168b8f60400151600160f060020a0316611a12565b97509750975061169f8e898f8f8f8f611078565b94506116bb8e866116b057876116b2565b885b8f8f8f8f611078565b98506117d6565b6116d88f60400151600160f060020a0316611a12565b50935093506116eb8e858f8f8f8f611078565b915060088f6020015160ff16600c81111561170257fe5b600c81111561170d57fe5b141561171c57811598506117d6565b8180156117465750600a8f6020015160ff16600c81111561173957fe5b600c81111561174457fe5b145b1561175457600198506117d6565b8115801561177f575060098f6020015160ff16600c81111561177257fe5b600c81111561177d57fe5b145b1561178d57600098506117d6565b61179b8e848f8f8f8f611078565b9050600b8f6020015160ff16600c8111156117b257fe5b600c8111156117bd57fe5b14156117d257801515821515141598506117d6565b8098505b50505050505050509695505050505050565b60007f2a15109000000000000000000000000000000000000000000000000000000000818080600160a060020a038a16632a1510908a8a8a60808b518c60405160e060020a63ffffffff8916028152600160a060020a038088166004830190815290871660248301526044820186905260ff85166064830152608482018490529060a401828051906020019060200280838360005b8381101561189557808201518382015260200161187d565b50505050905001965050505050505060006040518083038160008761646e5a03f19250505092508215156118cc57600094506118f5565b3d9150602082146118e057600094506118f5565b604051826000823e8051915060008152508094505b5050505095945050505050565b4390565b4290565b6000600183600c81111561191a57fe5b14156119295750828114610740565b600283600c81111561193757fe5b1415611947575082811415610740565b600383600c81111561195557fe5b14156119645750808311610740565b600483600c81111561197257fe5b14156119815750808310610740565b600583600c81111561198f57fe5b141561199f575080831015610740565b600683600c8111156119ad57fe5b14156119bd575080831115610740565b5060009392505050565b7f0100000000000000000000000000000000000000000000000000000000000000900490565b7e01000000000000000000000000000000000000000000000000000000000000900490565b9064010000000082049068010000000000000000830490565b60206040519081016040526000815290565b606060405190810160409081526000808352602083018190529082015290565b8154818355818115116106ff576000838152602090206106ff91810190830161082491905b808211156116415760008155600101611a825600290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563a165627a7a72305820c8c7706565e577c700b506e25b648b75607841f84879ab724b4801482c87f51d0029","real_runtime_bytecode":"60606040526004361061015b5763ffffffff60e060020a6000350416630a8ed3db811461016057806315949ed71461018a578063178e6079146101c45780631b5e75be146101d757806332f0a3b5146102595780633d6ab68f1461028857806360b1e0571461029b5780636815c992146102ae5780636d6712d814610318578063710a8315146103405780637e7db6e11461038d57806380afdea8146103ac5780638322fff2146103bf5780638b3dd749146103d25780639b3fdf4c146103e55780639d0effdb146103f85780639d4941d814610420578063a03c58321461043f578063a1658fad1461046a578063a885508a146104cd578063afd925df146104ef578063b190572714610517578063be03847814610539578063c4d66de814610568578063c513f66e14610587578063d4aae0c41461059a578063f520b58d146105ad578063f92a79ff14610617578063fdef910614610668575b600080fd5b341561016b57600080fd5b610188600160a060020a03600435811690602435166044356106d4565b005b341561019557600080fd5b6101b2600160a060020a0360043581169060243516604435610704565b60405190815260200160405180910390f35b34156101cf57600080fd5b6101b2610747565b34156101e257600080fd5b6102456004803590600160a060020a0360248035821692604435909216916064359160a490608435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061076b95505050505050565b604051901515815260200160405180910390f35b341561026457600080fd5b61026c6107a6565b604051600160a060020a03909116815260200160405180910390f35b341561029357600080fd5b6101b2610827565b34156102a657600080fd5b6101b261084b565b34156102b957600080fd5b610188600160a060020a0360048035821691602480359091169160443591608490606435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061086f95505050505050565b341561032357600080fd5b610245600160a060020a03600435811690602435166044356108d9565b341561034b57600080fd5b610359600435602435610911565b60405160ff9384168152919092166020820152600160f060020a039091166040808301919091526060909101905180910390f35b341561039857600080fd5b610245600160a060020a0360043516610959565b34156103b757600080fd5b6101b261095f565b34156103ca57600080fd5b61026c610965565b34156103dd57600080fd5b6101b261096a565b34156103f057600080fd5b6101b2610970565b341561040357600080fd5b610188600160a060020a0360043581169060243516604435610994565b341561042b57600080fd5b610188600160a060020a03600435166109d3565b341561044a57600080fd5b610359600160a060020a0360043581169060243516604435606435610b4a565b341561047557600080fd5b61024560048035600160a060020a0316906024803591906064906044359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650610bc995505050505050565b34156104d857600080fd5b610188600160a060020a0360043516602435610d07565b34156104fa57600080fd5b610188600160a060020a0360043581169060243516604435610d44565b341561052257600080fd5b61026c600160a060020a0360043516602435610d7a565b341561054457600080fd5b610188600160a060020a036004358116906024358116906044359060643516610dab565b341561057357600080fd5b610188600160a060020a0360043516610ded565b341561059257600080fd5b6101b2610e4c565b34156105a557600080fd5b61026c610e5e565b34156105b857600080fd5b610245600160a060020a03600480358216916024803590911691604435916084906064359081019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650610e6d95505050505050565b341561062257600080fd5b61026c60046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610f1395505050505050565b341561067357600080fd5b610245600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610fef95505050505050565b6106ff83838360006040518059106106e95750595b908082528060200260200182016040525061086f565b505050565b60006065600060646000610719888888611028565b81526020808201929092526040908101600090812054845291830193909352910190205490505b9392505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b6000600080516020611a9783398151915286141561078b5750600161079d565b61079a86600087878787611078565b90505b95945050505050565b60008054600160a060020a031615156107be57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561080757600080fd5b6102c65a03f1151561081857600080fd5b50505060405180519150505b90565b7f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6000838361087d8282610d7a565b600160a060020a031633600160a060020a031614151561089c57600080fd5b60008451116108b957600080516020611a978339815191526108c2565b6108c284611293565b92506108d0878787866113e8565b50505050505050565b60006108e3611a2b565b60006040518059106108f25750595b9080825280602002602001820160405250905061079d85858584610e6d565b60656020528160005260406000208181548110151561092c57fe5b60009182526020909120015460ff80821693506101008204169150620100009004600160f060020a031683565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b81816109a08282610d7a565b600160a060020a031633600160a060020a03161415156109bf57600080fd5b6109cc85858560006113e8565b5050505050565b6000806109df83610959565b15156109ea57600080fd5b6109f26107a6565b91506109fd8261145d565b1515610a0857600080fd5b600160a060020a0383161515610a5a5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515610a5557600080fd5b6106ff565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515610ab157600080fd5b6102c65a03f11515610ac257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610b2a57600080fd5b6102c65a03f11515610b3b57600080fd5b50505060405180515050505050565b6000806000806065600060646000610b638c8c8c611028565b8152602080820192909252604090810160009081205484529183019390935291019020805486908110610b9257fe5b60009182526020909120015460ff8082169a6101008304909116995062010000909104600160f060020a0316975095505050505050565b6000610bd3611a2b565b60008084511115610bec57835160200290508391508082525b600054600160a060020a03161580610cfd575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610c93578082015183820152602001610c7b565b50505050905090810190601f168015610cc05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610ce157600080fd5b6102c65a03f11515610cf257600080fd5b505050604051805190505b9695505050505050565b8181610d138282610d7a565b600160a060020a031633600160a060020a0316141515610d3257600080fd5b610d3e6000858561148a565b50505050565b8181610d508282610d7a565b600160a060020a031633600160a060020a0316141515610d6f57600080fd5b6109cc85858561148a565b600060666000610d8a858561150c565b8152602081019190915260400160002054600160a060020a03169392505050565b610dd633307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a6108d9565b1515610de157600080fd5b610d3e84848484611550565b60035415610dfa57600080fd5b610e02611594565b60005433600160a060020a03908116911614610e1d57600080fd5b610e4981307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a82611550565b50565b600080516020611a9783398151915281565b600054600160a060020a031681565b600080600060646000610e81898989611028565b815260208101919091526040016000205491508115801590610eab5750610eab828888888861076b565b15610eb95760019250610f09565b60646000610eca6000198989611028565b815260208101919091526040016000205490508015801590610ef65750610ef68160001988888861076b565b15610f045760019250610f09565b600092505b5050949350505050565b6000610f1d6115ae565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f84578082015183820152602001610f6c565b50505050905090810190601f168015610fb15780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610fcf57600080fd5b6102c65a03f11515610fe057600080fd5b50505060405180519392505050565b6000610ff9611a2b565b60006020845181151561100857fe5b04905083915080825261101d87878785610e6d565b979650505050505050565b600060028484846040519384526c01000000000000000000000000600160a060020a0393841681026020860152919092160260348301526048820152606801604051809103902090509392505050565b6000611082611a3d565b600088815260656020526040812054819063ffffffff8a16106110a85760009350611286565b60008a8152606560205260409020805463ffffffff8b169081106110c857fe5b906000526020600020900160606040519081016040908152915460ff80821683526101008204166020830152620100009004600160f060020a031691810191909152925060cc835160ff16141561112e57611127838b8a8a8a8a611645565b9350611286565b8260400151600160f060020a0316905060cb835160ff1614156111785761115c8360400151898989896117e8565b61116757600061116a565b60015b60ff16915060019050611235565b60c8835160ff1614156111945761118d611902565b9150611235565b60c9835160ff1614156111ba576111a9611906565b67ffffffffffffffff169150611235565b60ca835160ff1614156111d85733600160a060020a03169150611235565b60cd835160ff1614156111fa578260400151600160f060020a03169150611235565b8451835160ff161061120f5760009350611286565b84835160ff168151811061121f57fe5b90602001906020020151600160f060020a031691505b6007836020015160ff16600c81111561124a57fe5b600c81111561125557fe5b141561126657600082119350611286565b61128382846020015160ff16600c81111561127d57fe5b8361190a565b93505b5050509695505050505050565b60008060008060006112a3611a3d565b8660405180828051906020019060200280838360005b838110156112d15780820151838201526020016112b9565b5050505090500191505060405190819003902060008181526065602052604090208054919650945015156113dd57600092505b86518310156113dd5786838151811061131957fe5b90602001906020020151915060606040519081016040528061133a846119c7565b60ff16815260200161134b846119ed565b60ff16815260200183600160f060020a031681525090508380548060010182816113759190611a5d565b600092835260209092208391018151815460ff191660ff919091161781556020820151815460ff919091166101000261ff001990911617815560408201518154600160f060020a0391909116620100000261ffff909116179055505060019290920191611304565b509295945050505050565b80606460006113f8878787611028565b815260208101919091526040908101600020919091558290600160a060020a0380861691908716907f759b9a74d5354b5801710a0c1b283cc9f0d32b607ac8ced10c83ac8e75c77d52908515159051901515815260200160405180910390a450505050565b600080600160a060020a03831615156114795760009150611484565b823b90506000811191505b50919050565b8260666000611499858561150c565b815260208101919091526040908101600020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03938416179055848216918391908516907ff3addc8b8e25ee11528a61b0e65092cae0666ef0ec0c64cb303993c88d689b4d905160405180910390a4505050565b600060018383604051928352600160a060020a03919091166c0100000000000000000000000002602083015260348201526054016040518091039020905092915050565b600061155c8484610d7a565b600160a060020a03161461156f57600080fd5b611589848484600080516020611a978339815191526113e8565b610d3e81848461148a565b600354156115a157600080fd5b6115a9611902565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561162157600080fd5b6102c65a03f1151561163257600080fd5b50505060405180519250829150505b5090565b60008080808080808080600c8f6020015160ff16600c81111561166457fe5b600c81111561166f57fe5b14156116c25761168b8f60400151600160f060020a0316611a12565b97509750975061169f8e898f8f8f8f611078565b94506116bb8e866116b057876116b2565b885b8f8f8f8f611078565b98506117d6565b6116d88f60400151600160f060020a0316611a12565b50935093506116eb8e858f8f8f8f611078565b915060088f6020015160ff16600c81111561170257fe5b600c81111561170d57fe5b141561171c57811598506117d6565b8180156117465750600a8f6020015160ff16600c81111561173957fe5b600c81111561174457fe5b145b1561175457600198506117d6565b8115801561177f575060098f6020015160ff16600c81111561177257fe5b600c81111561177d57fe5b145b1561178d57600098506117d6565b61179b8e848f8f8f8f611078565b9050600b8f6020015160ff16600c8111156117b257fe5b600c8111156117bd57fe5b14156117d257801515821515141598506117d6565b8098505b50505050505050509695505050505050565b60007f2a15109000000000000000000000000000000000000000000000000000000000818080600160a060020a038a16632a1510908a8a8a60808b518c60405160e060020a63ffffffff8916028152600160a060020a038088166004830190815290871660248301526044820186905260ff85166064830152608482018490529060a401828051906020019060200280838360005b8381101561189557808201518382015260200161187d565b50505050905001965050505050505060006040518083038160008761646e5a03f19250505092508215156118cc57600094506118f5565b3d9150602082146118e057600094506118f5565b604051826000823e8051915060008152508094505b5050505095945050505050565b4390565b4290565b6000600183600c81111561191a57fe5b14156119295750828114610740565b600283600c81111561193757fe5b1415611947575082811415610740565b600383600c81111561195557fe5b14156119645750808311610740565b600483600c81111561197257fe5b14156119815750808310610740565b600583600c81111561198f57fe5b141561199f575080831015610740565b600683600c8111156119ad57fe5b14156119bd575080831115610740565b5060009392505050565b7f0100000000000000000000000000000000000000000000000000000000000000900490565b7e01000000000000000000000000000000000000000000000000000000000000900490565b9064010000000082049068010000000000000000830490565b60206040519081016040526000815290565b606060405190810160409081526000808352602083018190529082015290565b8154818355818115116106ff576000838152602090206106ff91810190830161082491905b808211156116415760008155600101611a825600290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563a165627a7a72305820","swarm_hash":"c8c7706565e577c700b506e25b648b75607841f84879ab724b4801482c87f51d","gas_estimates":{"creation":{"codeDepositCost":"1376400","executionCost":"1433","totalCost":"1377833"},"external":{"APP_ADDR_NAMESPACE()":"280","CREATE_PERMISSIONS_ROLE()":"346","EMPTY_PARAM_HASH()":"infinite","ETH()":"581","EVMSCRIPT_REGISTRY_APP()":"544","EVMSCRIPT_REGISTRY_APP_ID()":"368","allowRecoverability(address)":"545","appId()":"678","canPerform(address,bytes32,uint256[])":"infinite","createPermission(address,address,bytes32,address)":"infinite","evalParams(bytes32,address,address,bytes32,uint256[])":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"722","getPermissionManager(address,bytes32)":"1500","getPermissionParam(address,address,bytes32,uint256)":"2201","getPermissionParamsLength(address,address,bytes32)":"1270","getRecoveryVault()":"infinite","grantPermission(address,address,bytes32)":"infinite","grantPermissionP(address,address,bytes32,uint256[])":"infinite","hasPermission(address,address,bytes32)":"infinite","hasPermission(address,address,bytes32,bytes)":"infinite","hasPermission(address,address,bytes32,uint256[])":"infinite","initialize(address)":"infinite","kernel()":"1142","permissionParams(bytes32,uint256)":"1273","removePermissionManager(address,bytes32)":"infinite","revokePermission(address,address,bytes32)":"9160","setPermissionManager(address,address,bytes32)":"infinite","transferToVault(address)":"infinite"},"internal":{"_createPermission(address,address,bytes32,address)":"infinite","_saveParams(uint256[] memory)":"infinite","_setPermission(address,address,bytes32,bytes32)":"infinite","_setPermissionManager(address,address,bytes32)":"infinite","blockN()":"14","checkOracle(address,address,address,bytes32,uint256[] memory)":"infinite","compare(uint256,enum ACL.Op,uint256)":"361","evalLogic(struct ACL.Param memory,bytes32,address,address,bytes32,uint256[] memory)":"infinite","evalParam(bytes32,uint32,address,address,bytes32,uint256[] memory)":"infinite","permissionHash(address,address,bytes32)":"infinite","roleHash(address,bytes32)":"infinite","time()":"14"}},"function_hashes":{"APP_ADDR_NAMESPACE()":"178e6079","CREATE_PERMISSIONS_ROLE()":"3d6ab68f","EMPTY_PARAM_HASH()":"c513f66e","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","createPermission(address,address,bytes32,address)":"be038478","evalParams(bytes32,address,address,bytes32,uint256[])":"1b5e75be","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getPermissionManager(address,bytes32)":"b1905727","getPermissionParam(address,address,bytes32,uint256)":"a03c5832","getPermissionParamsLength(address,address,bytes32)":"15949ed7","getRecoveryVault()":"32f0a3b5","grantPermission(address,address,bytes32)":"0a8ed3db","grantPermissionP(address,address,bytes32,uint256[])":"6815c992","hasPermission(address,address,bytes32)":"6d6712d8","hasPermission(address,address,bytes32,bytes)":"fdef9106","hasPermission(address,address,bytes32,uint256[])":"f520b58d","initialize(address)":"c4d66de8","kernel()":"d4aae0c4","permissionParams(bytes32,uint256)":"710a8315","removePermissionManager(address,bytes32)":"a885508a","revokePermission(address,address,bytes32)":"9d0effdb","setPermissionManager(address,address,bytes32)":"afd925df","transferToVault(address)":"9d4941d8"},"abi":[{"constant":false,"inputs":[{"name":"_entity","type":"address"},{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"}],"name":"grantPermission","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x0a8ed3db"},{"constant":true,"inputs":[{"name":"_entity","type":"address"},{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"}],"name":"getPermissionParamsLength","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x15949ed7"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x178e6079"},{"constant":true,"inputs":[{"name":"_paramsHash","type":"bytes32"},{"name":"_who","type":"address"},{"name":"_where","type":"address"},{"name":"_what","type":"bytes32"},{"name":"_how","type":"uint256[]"}],"name":"evalParams","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x1b5e75be"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x32f0a3b5"},{"constant":true,"inputs":[],"name":"CREATE_PERMISSIONS_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x3d6ab68f"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x60b1e057"},{"constant":false,"inputs":[{"name":"_entity","type":"address"},{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"},{"name":"_params","type":"uint256[]"}],"name":"grantPermissionP","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x6815c992"},{"constant":true,"inputs":[{"name":"_who","type":"address"},{"name":"_where","type":"address"},{"name":"_what","type":"bytes32"}],"name":"hasPermission","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x6d6712d8"},{"constant":true,"inputs":[{"name":"","type":"bytes32"},{"name":"","type":"uint256"}],"name":"permissionParams","outputs":[{"name":"id","type":"uint8"},{"name":"op","type":"uint8"},{"name":"value","type":"uint240"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x710a8315"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x7e7db6e1"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x80afdea8"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8322fff2"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8b3dd749"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x9b3fdf4c"},{"constant":false,"inputs":[{"name":"_entity","type":"address"},{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"}],"name":"revokePermission","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x9d0effdb"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x9d4941d8"},{"constant":true,"inputs":[{"name":"_entity","type":"address"},{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"},{"name":"_index","type":"uint256"}],"name":"getPermissionParam","outputs":[{"name":"id","type":"uint8"},{"name":"op","type":"uint8"},{"name":"value","type":"uint240"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xa03c5832"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xa1658fad"},{"constant":false,"inputs":[{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"}],"name":"removePermissionManager","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa885508a"},{"constant":false,"inputs":[{"name":"_newManager","type":"address"},{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"}],"name":"setPermissionManager","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xafd925df"},{"constant":true,"inputs":[{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"}],"name":"getPermissionManager","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xb1905727"},{"constant":false,"inputs":[{"name":"_entity","type":"address"},{"name":"_app","type":"address"},{"name":"_role","type":"bytes32"},{"name":"_manager","type":"address"}],"name":"createPermission","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xbe038478"},{"constant":false,"inputs":[{"name":"_permissionsCreator","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xc4d66de8"},{"constant":true,"inputs":[],"name":"EMPTY_PARAM_HASH","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xc513f66e"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xd4aae0c4"},{"constant":true,"inputs":[{"name":"_who","type":"address"},{"name":"_where","type":"address"},{"name":"_what","type":"bytes32"},{"name":"_how","type":"uint256[]"}],"name":"hasPermission","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xf520b58d"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xf92a79ff"},{"constant":true,"inputs":[{"name":"_who","type":"address"},{"name":"_where","type":"address"},{"name":"_what","type":"bytes32"},{"name":"_how","type":"bytes"}],"name":"hasPermission","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xfdef9106"},{"anonymous":false,"inputs":[{"indexed":true,"name":"entity","type":"address"},{"indexed":true,"name":"app","type":"address"},{"indexed":true,"name":"role","type":"bytes32"},{"indexed":false,"name":"allowed","type":"bool"}],"name":"SetPermission","type":"event","signature":"0x759b9a74d5354b5801710a0c1b283cc9f0d32b607ac8ced10c83ac8e75c77d52"},{"anonymous":false,"inputs":[{"indexed":true,"name":"app","type":"address"},{"indexed":true,"name":"role","type":"bytes32"},{"indexed":true,"name":"manager","type":"address"}],"name":"ChangePermissionManager","type":"event","signature":"0xf3addc8b8e25ee11528a61b0e65092cae0666ef0ec0c64cb303993c88d689b4d"}]}; +let ACL = new EmbarkJS.Blockchain.Contract(ACLJSONConfig); +export default ACL; diff --git a/abi/contracts/ACLHelpers.js b/abi/contracts/ACLHelpers.js new file mode 100644 index 0000000..bab3798 --- /dev/null +++ b/abi/contracts/ACLHelpers.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let ACLHelpersJSONConfig = {"contract_name":{"className":"ACLHelpers","args":[],"code":"60606040523415600e57600080fd5b603580601b6000396000f3006060604052600080fd00a165627a7a7230582068e0c8cc800a5d80decb1144af3d98f32f915d37ac5ba55984c2caed20447d910029","runtimeBytecode":"6060604052600080fd00a165627a7a7230582068e0c8cc800a5d80decb1144af3d98f32f915d37ac5ba55984c2caed20447d910029","realRuntimeBytecode":"6060604052600080fd00a165627a7a72305820","linkReferences":{},"swarmHash":"68e0c8cc800a5d80decb1144af3d98f32f915d37ac5ba55984c2caed20447d91","gasEstimates":{"creation":{"codeDepositCost":"10600","executionCost":"61","totalCost":"10661"},"internal":{"decodeParamId(uint256)":"infinite","decodeParamOp(uint256)":"infinite","decodeParamsList(uint256)":"infinite"}},"functionHashes":{},"abiDefinition":[],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/acl/ACLSyntaxSugar.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/acl/ACLSyntaxSugar.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/acl/ACLSyntaxSugar.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"60606040523415600e57600080fd5b603580601b6000396000f3006060604052600080fd00a165627a7a7230582068e0c8cc800a5d80decb1144af3d98f32f915d37ac5ba55984c2caed20447d910029","runtime_bytecode":"6060604052600080fd00a165627a7a7230582068e0c8cc800a5d80decb1144af3d98f32f915d37ac5ba55984c2caed20447d910029","real_runtime_bytecode":"6060604052600080fd00a165627a7a72305820","swarm_hash":"68e0c8cc800a5d80decb1144af3d98f32f915d37ac5ba55984c2caed20447d91","gas_estimates":{"creation":{"codeDepositCost":"10600","executionCost":"61","totalCost":"10661"},"internal":{"decodeParamId(uint256)":"infinite","decodeParamOp(uint256)":"infinite","decodeParamsList(uint256)":"infinite"}},"function_hashes":{},"abi":[]}; +let ACLHelpers = new EmbarkJS.Blockchain.Contract(ACLHelpersJSONConfig); +export default ACLHelpers; diff --git a/abi/contracts/ACLOracle.js b/abi/contracts/ACLOracle.js new file mode 100644 index 0000000..ac90e3e --- /dev/null +++ b/abi/contracts/ACLOracle.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let ACLOracleJSONConfig = {"contract_name":{"className":"ACLOracle","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"canPerform(address,address,bytes32,uint256[])":"2a151090"},"abiDefinition":[{"constant":true,"inputs":[{"name":"who","type":"address"},{"name":"where","type":"address"},{"name":"what","type":"bytes32"},{"name":"how","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/acl/ACL.sol","originalFilename":"node_modules/@aragon/os/contracts/acl/ACL.sol","path":"/Users/Barry/projects/status-im/liquid-funding/node_modules/@aragon/os/contracts/acl/ACL.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"canPerform(address,address,bytes32,uint256[])":"2a151090"},"abi":[{"constant":true,"inputs":[{"name":"who","type":"address"},{"name":"where","type":"address"},{"name":"what","type":"bytes32"},{"name":"how","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let ACLOracle = new EmbarkJS.Blockchain.Contract(ACLOracleJSONConfig); +export default ACLOracle; diff --git a/abi/contracts/ACLSyntaxSugar.js b/abi/contracts/ACLSyntaxSugar.js new file mode 100644 index 0000000..8d523a9 --- /dev/null +++ b/abi/contracts/ACLSyntaxSugar.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let ACLSyntaxSugarJSONConfig = {"contract_name":{"className":"ACLSyntaxSugar","args":[],"code":"60606040523415600e57600080fd5b603580601b6000396000f3006060604052600080fd00a165627a7a723058206a355b12b8cd2a24c0a5231e2aa09c06b5c8febb3f42debfd2b82d638491e70f0029","runtimeBytecode":"6060604052600080fd00a165627a7a723058206a355b12b8cd2a24c0a5231e2aa09c06b5c8febb3f42debfd2b82d638491e70f0029","realRuntimeBytecode":"6060604052600080fd00a165627a7a72305820","linkReferences":{},"swarmHash":"6a355b12b8cd2a24c0a5231e2aa09c06b5c8febb3f42debfd2b82d638491e70f","gasEstimates":{"creation":{"codeDepositCost":"10600","executionCost":"61","totalCost":"10661"},"internal":{"arr()":"infinite","arr(address)":"infinite","arr(address,address)":"infinite","arr(address,address,address)":"infinite","arr(address,address,uint256)":"infinite","arr(address,address,uint256,uint256,uint256)":"infinite","arr(address,uint256)":"infinite","arr(address,uint256,uint256)":"infinite","arr(bytes32)":"infinite","arr(bytes32,bytes32)":"infinite","arr(uint256)":"infinite","arr(uint256,uint256)":"infinite","arr(uint256,uint256,uint256)":"infinite","arr(uint256,uint256,uint256,uint256)":"infinite","arr(uint256,uint256,uint256,uint256,uint256)":"infinite"}},"functionHashes":{},"abiDefinition":[],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/acl/ACLSyntaxSugar.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/acl/ACLSyntaxSugar.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/acl/ACLSyntaxSugar.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"60606040523415600e57600080fd5b603580601b6000396000f3006060604052600080fd00a165627a7a723058206a355b12b8cd2a24c0a5231e2aa09c06b5c8febb3f42debfd2b82d638491e70f0029","runtime_bytecode":"6060604052600080fd00a165627a7a723058206a355b12b8cd2a24c0a5231e2aa09c06b5c8febb3f42debfd2b82d638491e70f0029","real_runtime_bytecode":"6060604052600080fd00a165627a7a72305820","swarm_hash":"6a355b12b8cd2a24c0a5231e2aa09c06b5c8febb3f42debfd2b82d638491e70f","gas_estimates":{"creation":{"codeDepositCost":"10600","executionCost":"61","totalCost":"10661"},"internal":{"arr()":"infinite","arr(address)":"infinite","arr(address,address)":"infinite","arr(address,address,address)":"infinite","arr(address,address,uint256)":"infinite","arr(address,address,uint256,uint256,uint256)":"infinite","arr(address,uint256)":"infinite","arr(address,uint256,uint256)":"infinite","arr(bytes32)":"infinite","arr(bytes32,bytes32)":"infinite","arr(uint256)":"infinite","arr(uint256,uint256)":"infinite","arr(uint256,uint256,uint256)":"infinite","arr(uint256,uint256,uint256,uint256)":"infinite","arr(uint256,uint256,uint256,uint256,uint256)":"infinite"}},"function_hashes":{},"abi":[]}; +let ACLSyntaxSugar = new EmbarkJS.Blockchain.Contract(ACLSyntaxSugarJSONConfig); +export default ACLSyntaxSugar; diff --git a/abi/contracts/AppProxyBase.js b/abi/contracts/AppProxyBase.js new file mode 100644 index 0000000..4b2b6e2 --- /dev/null +++ b/abi/contracts/AppProxyBase.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let AppProxyBaseJSONConfig = {"contract_name":{"className":"AppProxyBase","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","FORWARDING()":"2b2584f6","FWD_GAS_LIMIT()":"0ceafa2a","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","UPGRADEABLE()":"7e84a4ff","appId()":"80afdea8","implementation()":"5c60da1b","kernel()":"d4aae0c4","proxyType()":"4555d5c9"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FWD_GAS_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FORWARDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"codeAddr","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"UPGRADEABLE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/apps/AppProxyBase.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/apps/AppProxyBase.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/apps/AppProxyBase.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","FORWARDING()":"2b2584f6","FWD_GAS_LIMIT()":"0ceafa2a","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","UPGRADEABLE()":"7e84a4ff","appId()":"80afdea8","implementation()":"5c60da1b","kernel()":"d4aae0c4","proxyType()":"4555d5c9"},"abi":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FWD_GAS_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FORWARDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"codeAddr","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"UPGRADEABLE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}]}; +let AppProxyBase = new EmbarkJS.Blockchain.Contract(AppProxyBaseJSONConfig); +export default AppProxyBase; diff --git a/abi/contracts/AppProxyFactory.js b/abi/contracts/AppProxyFactory.js new file mode 100644 index 0000000..7b258b1 --- /dev/null +++ b/abi/contracts/AppProxyFactory.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let AppProxyFactoryJSONConfig = {"contract_name":{"className":"AppProxyFactory","args":[],"code":"6060604052341561000f57600080fd5b61151d8061001e6000396000f3006060604052600436106100615763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663d162f8b08114610066578063e156a8f3146100e7578063ede658b014610109578063ff289fc51461016e575b600080fd5b341561007157600080fd5b6100cb60048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061019095505050505050565b604051600160a060020a03909116815260200160405180910390f35b34156100f257600080fd5b6100cb600160a060020a0360043516602435610293565b341561011457600080fd5b6100cb60048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506102ca95505050505050565b341561017957600080fd5b6100cb600160a060020a03600435166024356103cd565b60008084848461019e6103fd565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b838110156101ed5780820151838201526020016101d5565b50505050905090810190601f16801561021a5780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561023757600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006102c3838360006040518059106102a95750595b818152601f19601f830116810160200160405290506102ca565b9392505050565b6000808484846102d861040d565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101561032757808201518382015260200161030f565b50505050905090810190601f1680156103545780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561037157600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006102c3838360006040518059106103e35750595b818152601f19601f83011681016020016040529050610190565b60405161086c8061041e83390190565b60405161086880610c8a8339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029a165627a7a7230582082f909c878ecec0f2b1632ef5a9c046c5f95e5752461b01361293f24a47e4cb30029","runtimeBytecode":"6060604052600436106100615763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663d162f8b08114610066578063e156a8f3146100e7578063ede658b014610109578063ff289fc51461016e575b600080fd5b341561007157600080fd5b6100cb60048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061019095505050505050565b604051600160a060020a03909116815260200160405180910390f35b34156100f257600080fd5b6100cb600160a060020a0360043516602435610293565b341561011457600080fd5b6100cb60048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506102ca95505050505050565b341561017957600080fd5b6100cb600160a060020a03600435166024356103cd565b60008084848461019e6103fd565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b838110156101ed5780820151838201526020016101d5565b50505050905090810190601f16801561021a5780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561023757600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006102c3838360006040518059106102a95750595b818152601f19601f830116810160200160405290506102ca565b9392505050565b6000808484846102d861040d565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101561032757808201518382015260200161030f565b50505050905090810190601f1680156103545780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561037157600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006102c3838360006040518059106103e35750595b818152601f19601f83011681016020016040529050610190565b60405161086c8061041e83390190565b60405161086880610c8a8339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029a165627a7a7230582082f909c878ecec0f2b1632ef5a9c046c5f95e5752461b01361293f24a47e4cb30029","realRuntimeBytecode":"6060604052600436106100615763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663d162f8b08114610066578063e156a8f3146100e7578063ede658b014610109578063ff289fc51461016e575b600080fd5b341561007157600080fd5b6100cb60048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061019095505050505050565b604051600160a060020a03909116815260200160405180910390f35b34156100f257600080fd5b6100cb600160a060020a0360043516602435610293565b341561011457600080fd5b6100cb60048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506102ca95505050505050565b341561017957600080fd5b6100cb600160a060020a03600435166024356103cd565b60008084848461019e6103fd565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b838110156101ed5780820151838201526020016101d5565b50505050905090810190601f16801561021a5780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561023757600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006102c3838360006040518059106102a95750595b818152601f19601f830116810160200160405290506102ca565b9392505050565b6000808484846102d861040d565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101561032757808201518382015260200161030f565b50505050905090810190601f1680156103545780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561037157600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006102c3838360006040518059106103e35750595b818152601f19601f83011681016020016040529050610190565b60405161086c8061041e83390190565b60405161086880610c8a8339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029a165627a7a72305820","linkReferences":{},"swarmHash":"82f909c878ecec0f2b1632ef5a9c046c5f95e5752461b01361293f24a47e4cb3","gasEstimates":{"creation":{"codeDepositCost":"1081000","executionCost":"1115","totalCost":"1082115"},"external":{"newAppProxy(address,bytes32)":"infinite","newAppProxy(address,bytes32,bytes)":"infinite","newAppProxyPinned(address,bytes32)":"infinite","newAppProxyPinned(address,bytes32,bytes)":"infinite"}},"functionHashes":{"newAppProxy(address,bytes32)":"e156a8f3","newAppProxy(address,bytes32,bytes)":"ede658b0","newAppProxyPinned(address,bytes32)":"ff289fc5","newAppProxyPinned(address,bytes32,bytes)":"d162f8b0"},"abiDefinition":[{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"name":"newAppProxyPinned","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"}],"name":"newAppProxy","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"name":"newAppProxy","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"}],"name":"newAppProxyPinned","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proxy","type":"address"},{"indexed":false,"name":"isUpgradeable","type":"bool"},{"indexed":false,"name":"appId","type":"bytes32"}],"name":"NewAppProxy","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/factory/AppProxyFactory.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/factory/AppProxyFactory.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/factory/AppProxyFactory.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b61151d8061001e6000396000f3006060604052600436106100615763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663d162f8b08114610066578063e156a8f3146100e7578063ede658b014610109578063ff289fc51461016e575b600080fd5b341561007157600080fd5b6100cb60048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061019095505050505050565b604051600160a060020a03909116815260200160405180910390f35b34156100f257600080fd5b6100cb600160a060020a0360043516602435610293565b341561011457600080fd5b6100cb60048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506102ca95505050505050565b341561017957600080fd5b6100cb600160a060020a03600435166024356103cd565b60008084848461019e6103fd565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b838110156101ed5780820151838201526020016101d5565b50505050905090810190601f16801561021a5780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561023757600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006102c3838360006040518059106102a95750595b818152601f19601f830116810160200160405290506102ca565b9392505050565b6000808484846102d861040d565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101561032757808201518382015260200161030f565b50505050905090810190601f1680156103545780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561037157600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006102c3838360006040518059106103e35750595b818152601f19601f83011681016020016040529050610190565b60405161086c8061041e83390190565b60405161086880610c8a8339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029a165627a7a7230582082f909c878ecec0f2b1632ef5a9c046c5f95e5752461b01361293f24a47e4cb30029","runtime_bytecode":"6060604052600436106100615763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663d162f8b08114610066578063e156a8f3146100e7578063ede658b014610109578063ff289fc51461016e575b600080fd5b341561007157600080fd5b6100cb60048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061019095505050505050565b604051600160a060020a03909116815260200160405180910390f35b34156100f257600080fd5b6100cb600160a060020a0360043516602435610293565b341561011457600080fd5b6100cb60048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506102ca95505050505050565b341561017957600080fd5b6100cb600160a060020a03600435166024356103cd565b60008084848461019e6103fd565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b838110156101ed5780820151838201526020016101d5565b50505050905090810190601f16801561021a5780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561023757600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006102c3838360006040518059106102a95750595b818152601f19601f830116810160200160405290506102ca565b9392505050565b6000808484846102d861040d565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101561032757808201518382015260200161030f565b50505050905090810190601f1680156103545780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561037157600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006102c3838360006040518059106103e35750595b818152601f19601f83011681016020016040529050610190565b60405161086c8061041e83390190565b60405161086880610c8a8339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029a165627a7a7230582082f909c878ecec0f2b1632ef5a9c046c5f95e5752461b01361293f24a47e4cb30029","real_runtime_bytecode":"6060604052600436106100615763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663d162f8b08114610066578063e156a8f3146100e7578063ede658b014610109578063ff289fc51461016e575b600080fd5b341561007157600080fd5b6100cb60048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061019095505050505050565b604051600160a060020a03909116815260200160405180910390f35b34156100f257600080fd5b6100cb600160a060020a0360043516602435610293565b341561011457600080fd5b6100cb60048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506102ca95505050505050565b341561017957600080fd5b6100cb600160a060020a03600435166024356103cd565b60008084848461019e6103fd565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b838110156101ed5780820151838201526020016101d5565b50505050905090810190601f16801561021a5780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561023757600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006102c3838360006040518059106102a95750595b818152601f19601f830116810160200160405290506102ca565b9392505050565b6000808484846102d861040d565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101561032757808201518382015260200161030f565b50505050905090810190601f1680156103545780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561037157600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006102c3838360006040518059106103e35750595b818152601f19601f83011681016020016040529050610190565b60405161086c8061041e83390190565b60405161086880610c8a8339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029a165627a7a72305820","swarm_hash":"82f909c878ecec0f2b1632ef5a9c046c5f95e5752461b01361293f24a47e4cb3","gas_estimates":{"creation":{"codeDepositCost":"1081000","executionCost":"1115","totalCost":"1082115"},"external":{"newAppProxy(address,bytes32)":"infinite","newAppProxy(address,bytes32,bytes)":"infinite","newAppProxyPinned(address,bytes32)":"infinite","newAppProxyPinned(address,bytes32,bytes)":"infinite"}},"function_hashes":{"newAppProxy(address,bytes32)":"e156a8f3","newAppProxy(address,bytes32,bytes)":"ede658b0","newAppProxyPinned(address,bytes32)":"ff289fc5","newAppProxyPinned(address,bytes32,bytes)":"d162f8b0"},"abi":[{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"name":"newAppProxyPinned","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"}],"name":"newAppProxy","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"name":"newAppProxy","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"}],"name":"newAppProxyPinned","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proxy","type":"address"},{"indexed":false,"name":"isUpgradeable","type":"bool"},{"indexed":false,"name":"appId","type":"bytes32"}],"name":"NewAppProxy","type":"event"}]}; +let AppProxyFactory = new EmbarkJS.Blockchain.Contract(AppProxyFactoryJSONConfig); +export default AppProxyFactory; diff --git a/abi/contracts/AppProxyPinned.js b/abi/contracts/AppProxyPinned.js new file mode 100644 index 0000000..30b50bd --- /dev/null +++ b/abi/contracts/AppProxyPinned.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let AppProxyPinnedJSONConfig = {"contract_name":{"className":"AppProxyPinned","args":[],"code":"6060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c360029","runtimeBytecode":"6060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c360029","realRuntimeBytecode":"6060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820","linkReferences":{},"swarmHash":"c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c36","gasEstimates":{"creation":{"codeDepositCost":"305000","executionCost":"infinite","totalCost":"infinite"},"external":{"":"infinite","ACL_APP()":"infinite","ACL_APP_ID()":"infinite","APM_NODE()":"infinite","APP_ADDR_NAMESPACE()":"infinite","APP_BASES_NAMESPACE()":"infinite","CORE_NAMESPACE()":"infinite","ETH_NODE()":"infinite","FORWARDING()":"infinite","FWD_GAS_LIMIT()":"infinite","KERNEL_APP()":"infinite","KERNEL_APP_ID()":"infinite","UPGRADEABLE()":"infinite","appId()":"infinite","implementation()":"infinite","kernel()":"infinite","proxyType()":"infinite"}},"functionHashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","FORWARDING()":"2b2584f6","FWD_GAS_LIMIT()":"0ceafa2a","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","UPGRADEABLE()":"7e84a4ff","appId()":"80afdea8","implementation()":"5c60da1b","kernel()":"d4aae0c4","proxyType()":"4555d5c9"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FWD_GAS_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FORWARDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"UPGRADEABLE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/apps/AppProxyPinned.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/apps/AppProxyPinned.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/apps/AppProxyPinned.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c360029","runtime_bytecode":"6060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c360029","real_runtime_bytecode":"6060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820","swarm_hash":"c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c36","gas_estimates":{"creation":{"codeDepositCost":"305000","executionCost":"infinite","totalCost":"infinite"},"external":{"":"infinite","ACL_APP()":"infinite","ACL_APP_ID()":"infinite","APM_NODE()":"infinite","APP_ADDR_NAMESPACE()":"infinite","APP_BASES_NAMESPACE()":"infinite","CORE_NAMESPACE()":"infinite","ETH_NODE()":"infinite","FORWARDING()":"infinite","FWD_GAS_LIMIT()":"infinite","KERNEL_APP()":"infinite","KERNEL_APP_ID()":"infinite","UPGRADEABLE()":"infinite","appId()":"infinite","implementation()":"infinite","kernel()":"infinite","proxyType()":"infinite"}},"function_hashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","FORWARDING()":"2b2584f6","FWD_GAS_LIMIT()":"0ceafa2a","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","UPGRADEABLE()":"7e84a4ff","appId()":"80afdea8","implementation()":"5c60da1b","kernel()":"d4aae0c4","proxyType()":"4555d5c9"},"abi":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FWD_GAS_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FORWARDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"UPGRADEABLE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}]}; +let AppProxyPinned = new EmbarkJS.Blockchain.Contract(AppProxyPinnedJSONConfig); +export default AppProxyPinned; diff --git a/abi/contracts/AppProxyUpgradeable.js b/abi/contracts/AppProxyUpgradeable.js new file mode 100644 index 0000000..27a2ac5 --- /dev/null +++ b/abi/contracts/AppProxyUpgradeable.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let AppProxyUpgradeableJSONConfig = {"contract_name":{"className":"AppProxyUpgradeable","args":[],"code":"6060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029","runtimeBytecode":"6060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029","realRuntimeBytecode":"6060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a72305820","linkReferences":{},"swarmHash":"42357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff","gasEstimates":{"creation":{"codeDepositCost":"318600","executionCost":"infinite","totalCost":"infinite"},"external":{"":"infinite","ACL_APP()":"infinite","ACL_APP_ID()":"infinite","APM_NODE()":"infinite","APP_ADDR_NAMESPACE()":"infinite","APP_BASES_NAMESPACE()":"infinite","CORE_NAMESPACE()":"infinite","ETH_NODE()":"infinite","FORWARDING()":"infinite","FWD_GAS_LIMIT()":"infinite","KERNEL_APP()":"infinite","KERNEL_APP_ID()":"infinite","UPGRADEABLE()":"infinite","appId()":"infinite","implementation()":"infinite","kernel()":"infinite","proxyType()":"infinite"}},"functionHashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","FORWARDING()":"2b2584f6","FWD_GAS_LIMIT()":"0ceafa2a","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","UPGRADEABLE()":"7e84a4ff","appId()":"80afdea8","implementation()":"5c60da1b","kernel()":"d4aae0c4","proxyType()":"4555d5c9"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FWD_GAS_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FORWARDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"UPGRADEABLE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/apps/AppProxyUpgradeable.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/apps/AppProxyUpgradeable.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/apps/AppProxyUpgradeable.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029","runtime_bytecode":"6060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029","real_runtime_bytecode":"6060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a72305820","swarm_hash":"42357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff","gas_estimates":{"creation":{"codeDepositCost":"318600","executionCost":"infinite","totalCost":"infinite"},"external":{"":"infinite","ACL_APP()":"infinite","ACL_APP_ID()":"infinite","APM_NODE()":"infinite","APP_ADDR_NAMESPACE()":"infinite","APP_BASES_NAMESPACE()":"infinite","CORE_NAMESPACE()":"infinite","ETH_NODE()":"infinite","FORWARDING()":"infinite","FWD_GAS_LIMIT()":"infinite","KERNEL_APP()":"infinite","KERNEL_APP_ID()":"infinite","UPGRADEABLE()":"infinite","appId()":"infinite","implementation()":"infinite","kernel()":"infinite","proxyType()":"infinite"}},"function_hashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","FORWARDING()":"2b2584f6","FWD_GAS_LIMIT()":"0ceafa2a","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","UPGRADEABLE()":"7e84a4ff","appId()":"80afdea8","implementation()":"5c60da1b","kernel()":"d4aae0c4","proxyType()":"4555d5c9"},"abi":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FWD_GAS_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FORWARDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"UPGRADEABLE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}]}; +let AppProxyUpgradeable = new EmbarkJS.Blockchain.Contract(AppProxyUpgradeableJSONConfig); +export default AppProxyUpgradeable; diff --git a/abi/contracts/AppStorage.js b/abi/contracts/AppStorage.js new file mode 100644 index 0000000..cbc3775 --- /dev/null +++ b/abi/contracts/AppStorage.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let AppStorageJSONConfig = {"contract_name":{"className":"AppStorage","args":[],"code":"6060604052341561000f57600080fd5b60f68061001d6000396000f30060606040526004361060485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166380afdea88114604d578063d4aae0c414606f575b600080fd5b3415605757600080fd5b605d60a8565b60405190815260200160405180910390f35b3415607957600080fd5b607f60ae565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60015481565b60005473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a7230582089361f72a7818fb7a57006952f8ba1911617be41b680b9def915c4895fc46e740029","runtimeBytecode":"60606040526004361060485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166380afdea88114604d578063d4aae0c414606f575b600080fd5b3415605757600080fd5b605d60a8565b60405190815260200160405180910390f35b3415607957600080fd5b607f60ae565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60015481565b60005473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a7230582089361f72a7818fb7a57006952f8ba1911617be41b680b9def915c4895fc46e740029","realRuntimeBytecode":"60606040526004361060485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166380afdea88114604d578063d4aae0c414606f575b600080fd5b3415605757600080fd5b605d60a8565b60405190815260200160405180910390f35b3415607957600080fd5b607f60ae565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60015481565b60005473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a72305820","linkReferences":{},"swarmHash":"89361f72a7818fb7a57006952f8ba1911617be41b680b9def915c4895fc46e74","gasEstimates":{"creation":{"codeDepositCost":"49200","executionCost":"94","totalCost":"49294"},"external":{"appId()":"373","kernel()":"410"}},"functionHashes":{"appId()":"80afdea8","kernel()":"d4aae0c4"},"abiDefinition":[{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/apps/AppStorage.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/apps/AppStorage.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/apps/AppStorage.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b60f68061001d6000396000f30060606040526004361060485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166380afdea88114604d578063d4aae0c414606f575b600080fd5b3415605757600080fd5b605d60a8565b60405190815260200160405180910390f35b3415607957600080fd5b607f60ae565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60015481565b60005473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a7230582089361f72a7818fb7a57006952f8ba1911617be41b680b9def915c4895fc46e740029","runtime_bytecode":"60606040526004361060485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166380afdea88114604d578063d4aae0c414606f575b600080fd5b3415605757600080fd5b605d60a8565b60405190815260200160405180910390f35b3415607957600080fd5b607f60ae565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60015481565b60005473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a7230582089361f72a7818fb7a57006952f8ba1911617be41b680b9def915c4895fc46e740029","real_runtime_bytecode":"60606040526004361060485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166380afdea88114604d578063d4aae0c414606f575b600080fd5b3415605757600080fd5b605d60a8565b60405190815260200160405180910390f35b3415607957600080fd5b607f60ae565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60015481565b60005473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a72305820","swarm_hash":"89361f72a7818fb7a57006952f8ba1911617be41b680b9def915c4895fc46e74","gas_estimates":{"creation":{"codeDepositCost":"49200","executionCost":"94","totalCost":"49294"},"external":{"appId()":"373","kernel()":"410"}},"function_hashes":{"appId()":"80afdea8","kernel()":"d4aae0c4"},"abi":[{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let AppStorage = new EmbarkJS.Blockchain.Contract(AppStorageJSONConfig); +export default AppStorage; diff --git a/abi/contracts/AragonApp.js b/abi/contracts/AragonApp.js new file mode 100644 index 0000000..b83b2c9 --- /dev/null +++ b/abi/contracts/AragonApp.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let AragonAppJSONConfig = {"contract_name":{"className":"AragonApp","args":[],"code":"6060604052341561000f57600080fd5b6107f58061001e6000396000f3006060604052600436106100a05763ffffffff60e060020a600035041663178e607981146100a557806332f0a3b5146100ca57806360b1e057146100f95780637e7db6e11461010c57806380afdea81461013f5780638322fff2146101525780638b3dd749146101655780639b3fdf4c146101785780639d4941d81461018b578063a1658fad146101ac578063d4aae0c41461020f578063f92a79ff14610222575b600080fd5b34156100b057600080fd5b6100b8610273565b60405190815260200160405180910390f35b34156100d557600080fd5b6100dd610297565b604051600160a060020a03909116815260200160405180910390f35b341561010457600080fd5b6100b8610317565b341561011757600080fd5b61012b600160a060020a036004351661033b565b604051901515815260200160405180910390f35b341561014a57600080fd5b6100b8610341565b341561015d57600080fd5b6100dd610347565b341561017057600080fd5b6100b861034c565b341561018357600080fd5b6100b8610352565b341561019657600080fd5b6101aa600160a060020a0360043516610376565b005b34156101b757600080fd5b61012b60048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506104ee95505050505050565b341561021a57600080fd5b6100dd61062c565b341561022d57600080fd5b6100dd60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061063b95505050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a031615156102af57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156102f857600080fd5b6102c65a03f1151561030957600080fd5b505050604051805191505090565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806103828361033b565b151561038d57600080fd5b610395610297565b91506103a082610717565b15156103ab57600080fd5b600160a060020a03831615156103fd5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156103f857600080fd5b6104e9565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561045457600080fd5b6102c65a03f1151561046557600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156104cd57600080fd5b6102c65a03f115156104de57600080fd5b505050604051805150505b505050565b60006104f86107b7565b6000808451111561051157835160200290508391508082525b600054600160a060020a03161580610622575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156105b85780820151838201526020016105a0565b50505050905090810190601f1680156105e55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561060657600080fd5b6102c65a03f1151561061757600080fd5b505050604051805190505b9695505050505050565b600054600160a060020a031681565b6000610645610744565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b838110156106ac578082015183820152602001610694565b50505050905090810190601f1680156106d95780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156106f757600080fd5b6102c65a03f1151561070857600080fd5b50505060405180519392505050565b600080600160a060020a0383161515610733576000915061073e565b823b90506000811191505b50919050565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156106f757600080fd5b602060405190810160405260008152905600a165627a7a723058203c905579abe9f3cf0868df688dde14ac447c6e7bdc4b1947dcfac6f457dbd2ac0029","runtimeBytecode":"6060604052600436106100a05763ffffffff60e060020a600035041663178e607981146100a557806332f0a3b5146100ca57806360b1e057146100f95780637e7db6e11461010c57806380afdea81461013f5780638322fff2146101525780638b3dd749146101655780639b3fdf4c146101785780639d4941d81461018b578063a1658fad146101ac578063d4aae0c41461020f578063f92a79ff14610222575b600080fd5b34156100b057600080fd5b6100b8610273565b60405190815260200160405180910390f35b34156100d557600080fd5b6100dd610297565b604051600160a060020a03909116815260200160405180910390f35b341561010457600080fd5b6100b8610317565b341561011757600080fd5b61012b600160a060020a036004351661033b565b604051901515815260200160405180910390f35b341561014a57600080fd5b6100b8610341565b341561015d57600080fd5b6100dd610347565b341561017057600080fd5b6100b861034c565b341561018357600080fd5b6100b8610352565b341561019657600080fd5b6101aa600160a060020a0360043516610376565b005b34156101b757600080fd5b61012b60048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506104ee95505050505050565b341561021a57600080fd5b6100dd61062c565b341561022d57600080fd5b6100dd60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061063b95505050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a031615156102af57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156102f857600080fd5b6102c65a03f1151561030957600080fd5b505050604051805191505090565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806103828361033b565b151561038d57600080fd5b610395610297565b91506103a082610717565b15156103ab57600080fd5b600160a060020a03831615156103fd5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156103f857600080fd5b6104e9565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561045457600080fd5b6102c65a03f1151561046557600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156104cd57600080fd5b6102c65a03f115156104de57600080fd5b505050604051805150505b505050565b60006104f86107b7565b6000808451111561051157835160200290508391508082525b600054600160a060020a03161580610622575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156105b85780820151838201526020016105a0565b50505050905090810190601f1680156105e55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561060657600080fd5b6102c65a03f1151561061757600080fd5b505050604051805190505b9695505050505050565b600054600160a060020a031681565b6000610645610744565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b838110156106ac578082015183820152602001610694565b50505050905090810190601f1680156106d95780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156106f757600080fd5b6102c65a03f1151561070857600080fd5b50505060405180519392505050565b600080600160a060020a0383161515610733576000915061073e565b823b90506000811191505b50919050565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156106f757600080fd5b602060405190810160405260008152905600a165627a7a723058203c905579abe9f3cf0868df688dde14ac447c6e7bdc4b1947dcfac6f457dbd2ac0029","realRuntimeBytecode":"6060604052600436106100a05763ffffffff60e060020a600035041663178e607981146100a557806332f0a3b5146100ca57806360b1e057146100f95780637e7db6e11461010c57806380afdea81461013f5780638322fff2146101525780638b3dd749146101655780639b3fdf4c146101785780639d4941d81461018b578063a1658fad146101ac578063d4aae0c41461020f578063f92a79ff14610222575b600080fd5b34156100b057600080fd5b6100b8610273565b60405190815260200160405180910390f35b34156100d557600080fd5b6100dd610297565b604051600160a060020a03909116815260200160405180910390f35b341561010457600080fd5b6100b8610317565b341561011757600080fd5b61012b600160a060020a036004351661033b565b604051901515815260200160405180910390f35b341561014a57600080fd5b6100b8610341565b341561015d57600080fd5b6100dd610347565b341561017057600080fd5b6100b861034c565b341561018357600080fd5b6100b8610352565b341561019657600080fd5b6101aa600160a060020a0360043516610376565b005b34156101b757600080fd5b61012b60048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506104ee95505050505050565b341561021a57600080fd5b6100dd61062c565b341561022d57600080fd5b6100dd60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061063b95505050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a031615156102af57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156102f857600080fd5b6102c65a03f1151561030957600080fd5b505050604051805191505090565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806103828361033b565b151561038d57600080fd5b610395610297565b91506103a082610717565b15156103ab57600080fd5b600160a060020a03831615156103fd5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156103f857600080fd5b6104e9565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561045457600080fd5b6102c65a03f1151561046557600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156104cd57600080fd5b6102c65a03f115156104de57600080fd5b505050604051805150505b505050565b60006104f86107b7565b6000808451111561051157835160200290508391508082525b600054600160a060020a03161580610622575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156105b85780820151838201526020016105a0565b50505050905090810190601f1680156105e55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561060657600080fd5b6102c65a03f1151561061757600080fd5b505050604051805190505b9695505050505050565b600054600160a060020a031681565b6000610645610744565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b838110156106ac578082015183820152602001610694565b50505050905090810190601f1680156106d95780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156106f757600080fd5b6102c65a03f1151561070857600080fd5b50505060405180519392505050565b600080600160a060020a0383161515610733576000915061073e565b823b90506000811191505b50919050565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156106f757600080fd5b602060405190810160405260008152905600a165627a7a72305820","linkReferences":{},"swarmHash":"3c905579abe9f3cf0868df688dde14ac447c6e7bdc4b1947dcfac6f457dbd2ac","gasEstimates":{"creation":{"codeDepositCost":"407400","executionCost":"438","totalCost":"407838"},"external":{"APP_ADDR_NAMESPACE()":"236","ETH()":"424","EVMSCRIPT_REGISTRY_APP()":"390","EVMSCRIPT_REGISTRY_APP_ID()":"280","allowRecoverability(address)":"391","appId()":"524","canPerform(address,bytes32,uint256[])":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"568","getRecoveryVault()":"infinite","kernel()":"809","transferToVault(address)":"infinite"}},"functionHashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getRecoveryVault()":"32f0a3b5","kernel()":"d4aae0c4","transferToVault(address)":"9d4941d8"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/apps/AragonApp.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/apps/AragonApp.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/apps/AragonApp.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b6107f58061001e6000396000f3006060604052600436106100a05763ffffffff60e060020a600035041663178e607981146100a557806332f0a3b5146100ca57806360b1e057146100f95780637e7db6e11461010c57806380afdea81461013f5780638322fff2146101525780638b3dd749146101655780639b3fdf4c146101785780639d4941d81461018b578063a1658fad146101ac578063d4aae0c41461020f578063f92a79ff14610222575b600080fd5b34156100b057600080fd5b6100b8610273565b60405190815260200160405180910390f35b34156100d557600080fd5b6100dd610297565b604051600160a060020a03909116815260200160405180910390f35b341561010457600080fd5b6100b8610317565b341561011757600080fd5b61012b600160a060020a036004351661033b565b604051901515815260200160405180910390f35b341561014a57600080fd5b6100b8610341565b341561015d57600080fd5b6100dd610347565b341561017057600080fd5b6100b861034c565b341561018357600080fd5b6100b8610352565b341561019657600080fd5b6101aa600160a060020a0360043516610376565b005b34156101b757600080fd5b61012b60048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506104ee95505050505050565b341561021a57600080fd5b6100dd61062c565b341561022d57600080fd5b6100dd60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061063b95505050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a031615156102af57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156102f857600080fd5b6102c65a03f1151561030957600080fd5b505050604051805191505090565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806103828361033b565b151561038d57600080fd5b610395610297565b91506103a082610717565b15156103ab57600080fd5b600160a060020a03831615156103fd5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156103f857600080fd5b6104e9565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561045457600080fd5b6102c65a03f1151561046557600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156104cd57600080fd5b6102c65a03f115156104de57600080fd5b505050604051805150505b505050565b60006104f86107b7565b6000808451111561051157835160200290508391508082525b600054600160a060020a03161580610622575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156105b85780820151838201526020016105a0565b50505050905090810190601f1680156105e55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561060657600080fd5b6102c65a03f1151561061757600080fd5b505050604051805190505b9695505050505050565b600054600160a060020a031681565b6000610645610744565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b838110156106ac578082015183820152602001610694565b50505050905090810190601f1680156106d95780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156106f757600080fd5b6102c65a03f1151561070857600080fd5b50505060405180519392505050565b600080600160a060020a0383161515610733576000915061073e565b823b90506000811191505b50919050565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156106f757600080fd5b602060405190810160405260008152905600a165627a7a723058203c905579abe9f3cf0868df688dde14ac447c6e7bdc4b1947dcfac6f457dbd2ac0029","runtime_bytecode":"6060604052600436106100a05763ffffffff60e060020a600035041663178e607981146100a557806332f0a3b5146100ca57806360b1e057146100f95780637e7db6e11461010c57806380afdea81461013f5780638322fff2146101525780638b3dd749146101655780639b3fdf4c146101785780639d4941d81461018b578063a1658fad146101ac578063d4aae0c41461020f578063f92a79ff14610222575b600080fd5b34156100b057600080fd5b6100b8610273565b60405190815260200160405180910390f35b34156100d557600080fd5b6100dd610297565b604051600160a060020a03909116815260200160405180910390f35b341561010457600080fd5b6100b8610317565b341561011757600080fd5b61012b600160a060020a036004351661033b565b604051901515815260200160405180910390f35b341561014a57600080fd5b6100b8610341565b341561015d57600080fd5b6100dd610347565b341561017057600080fd5b6100b861034c565b341561018357600080fd5b6100b8610352565b341561019657600080fd5b6101aa600160a060020a0360043516610376565b005b34156101b757600080fd5b61012b60048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506104ee95505050505050565b341561021a57600080fd5b6100dd61062c565b341561022d57600080fd5b6100dd60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061063b95505050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a031615156102af57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156102f857600080fd5b6102c65a03f1151561030957600080fd5b505050604051805191505090565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806103828361033b565b151561038d57600080fd5b610395610297565b91506103a082610717565b15156103ab57600080fd5b600160a060020a03831615156103fd5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156103f857600080fd5b6104e9565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561045457600080fd5b6102c65a03f1151561046557600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156104cd57600080fd5b6102c65a03f115156104de57600080fd5b505050604051805150505b505050565b60006104f86107b7565b6000808451111561051157835160200290508391508082525b600054600160a060020a03161580610622575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156105b85780820151838201526020016105a0565b50505050905090810190601f1680156105e55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561060657600080fd5b6102c65a03f1151561061757600080fd5b505050604051805190505b9695505050505050565b600054600160a060020a031681565b6000610645610744565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b838110156106ac578082015183820152602001610694565b50505050905090810190601f1680156106d95780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156106f757600080fd5b6102c65a03f1151561070857600080fd5b50505060405180519392505050565b600080600160a060020a0383161515610733576000915061073e565b823b90506000811191505b50919050565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156106f757600080fd5b602060405190810160405260008152905600a165627a7a723058203c905579abe9f3cf0868df688dde14ac447c6e7bdc4b1947dcfac6f457dbd2ac0029","real_runtime_bytecode":"6060604052600436106100a05763ffffffff60e060020a600035041663178e607981146100a557806332f0a3b5146100ca57806360b1e057146100f95780637e7db6e11461010c57806380afdea81461013f5780638322fff2146101525780638b3dd749146101655780639b3fdf4c146101785780639d4941d81461018b578063a1658fad146101ac578063d4aae0c41461020f578063f92a79ff14610222575b600080fd5b34156100b057600080fd5b6100b8610273565b60405190815260200160405180910390f35b34156100d557600080fd5b6100dd610297565b604051600160a060020a03909116815260200160405180910390f35b341561010457600080fd5b6100b8610317565b341561011757600080fd5b61012b600160a060020a036004351661033b565b604051901515815260200160405180910390f35b341561014a57600080fd5b6100b8610341565b341561015d57600080fd5b6100dd610347565b341561017057600080fd5b6100b861034c565b341561018357600080fd5b6100b8610352565b341561019657600080fd5b6101aa600160a060020a0360043516610376565b005b34156101b757600080fd5b61012b60048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506104ee95505050505050565b341561021a57600080fd5b6100dd61062c565b341561022d57600080fd5b6100dd60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061063b95505050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a031615156102af57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156102f857600080fd5b6102c65a03f1151561030957600080fd5b505050604051805191505090565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806103828361033b565b151561038d57600080fd5b610395610297565b91506103a082610717565b15156103ab57600080fd5b600160a060020a03831615156103fd5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156103f857600080fd5b6104e9565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561045457600080fd5b6102c65a03f1151561046557600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156104cd57600080fd5b6102c65a03f115156104de57600080fd5b505050604051805150505b505050565b60006104f86107b7565b6000808451111561051157835160200290508391508082525b600054600160a060020a03161580610622575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156105b85780820151838201526020016105a0565b50505050905090810190601f1680156105e55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561060657600080fd5b6102c65a03f1151561061757600080fd5b505050604051805190505b9695505050505050565b600054600160a060020a031681565b6000610645610744565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b838110156106ac578082015183820152602001610694565b50505050905090810190601f1680156106d95780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156106f757600080fd5b6102c65a03f1151561070857600080fd5b50505060405180519392505050565b600080600160a060020a0383161515610733576000915061073e565b823b90506000811191505b50919050565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156106f757600080fd5b602060405190810160405260008152905600a165627a7a72305820","swarm_hash":"3c905579abe9f3cf0868df688dde14ac447c6e7bdc4b1947dcfac6f457dbd2ac","gas_estimates":{"creation":{"codeDepositCost":"407400","executionCost":"438","totalCost":"407838"},"external":{"APP_ADDR_NAMESPACE()":"236","ETH()":"424","EVMSCRIPT_REGISTRY_APP()":"390","EVMSCRIPT_REGISTRY_APP_ID()":"280","allowRecoverability(address)":"391","appId()":"524","canPerform(address,bytes32,uint256[])":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"568","getRecoveryVault()":"infinite","kernel()":"809","transferToVault(address)":"infinite"}},"function_hashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getRecoveryVault()":"32f0a3b5","kernel()":"d4aae0c4","transferToVault(address)":"9d4941d8"},"abi":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let AragonApp = new EmbarkJS.Blockchain.Contract(AragonAppJSONConfig); +export default AragonApp; diff --git a/abi/contracts/CallsScript.js b/abi/contracts/CallsScript.js new file mode 100644 index 0000000..e59213e --- /dev/null +++ b/abi/contracts/CallsScript.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let CallsScriptJSONConfig = {"contract_name":{"className":"CallsScript","args":[],"code":"6060604052341561000f57600080fd5b6104358061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103f7565b60008060008060008061010b6103f7565b600496505b8c8710156102be5761015a878f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103531692505050565b9550600094505b888510156101b05789898681811061017557fe5b90506020020135600160a060020a0316600160a060020a031686600160a060020a0316141515156101a557600080fd5b600190940193610161565b85600160a060020a031630600160a060020a031633600160a060020a03167f9dcff9d94fbfdb4622d11edb383005f95e78efb446c72d92f8e615c6025c470360405160405180910390a461023f876014018f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103881692505050565b63ffffffff16935060188701925061028e838f8f806020601f82018190048102016040519081016040528181529291906020840183838082843750949594505063ffffffff6103e01692505050565b838501975091508c8711156102a257600080fd5b600080858460008a6113885a03f1808015610040575050610110565b60016040518059106102cd5750595b818152601f19601f8301168101602001604052905090507f01000000000000000000000000000000000000000000000000000000000000008160008151811061031257fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053509d9c50505050505050505050505050565b60008061036084846103e7565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b60008061039584846103e7565b7c01000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b0160200190565b6000816020018301519392505050565b602060405190810160405260008152905600a165627a7a723058208b23058c84a82956c4d77f98d9e12ffd5031c6c4a78d25749f23624b33a927750029","runtimeBytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103f7565b60008060008060008061010b6103f7565b600496505b8c8710156102be5761015a878f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103531692505050565b9550600094505b888510156101b05789898681811061017557fe5b90506020020135600160a060020a0316600160a060020a031686600160a060020a0316141515156101a557600080fd5b600190940193610161565b85600160a060020a031630600160a060020a031633600160a060020a03167f9dcff9d94fbfdb4622d11edb383005f95e78efb446c72d92f8e615c6025c470360405160405180910390a461023f876014018f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103881692505050565b63ffffffff16935060188701925061028e838f8f806020601f82018190048102016040519081016040528181529291906020840183838082843750949594505063ffffffff6103e01692505050565b838501975091508c8711156102a257600080fd5b600080858460008a6113885a03f1808015610040575050610110565b60016040518059106102cd5750595b818152601f19601f8301168101602001604052905090507f01000000000000000000000000000000000000000000000000000000000000008160008151811061031257fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053509d9c50505050505050505050505050565b60008061036084846103e7565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b60008061039584846103e7565b7c01000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b0160200190565b6000816020018301519392505050565b602060405190810160405260008152905600a165627a7a723058208b23058c84a82956c4d77f98d9e12ffd5031c6c4a78d25749f23624b33a927750029","realRuntimeBytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103f7565b60008060008060008061010b6103f7565b600496505b8c8710156102be5761015a878f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103531692505050565b9550600094505b888510156101b05789898681811061017557fe5b90506020020135600160a060020a0316600160a060020a031686600160a060020a0316141515156101a557600080fd5b600190940193610161565b85600160a060020a031630600160a060020a031633600160a060020a03167f9dcff9d94fbfdb4622d11edb383005f95e78efb446c72d92f8e615c6025c470360405160405180910390a461023f876014018f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103881692505050565b63ffffffff16935060188701925061028e838f8f806020601f82018190048102016040519081016040528181529291906020840183838082843750949594505063ffffffff6103e01692505050565b838501975091508c8711156102a257600080fd5b600080858460008a6113885a03f1808015610040575050610110565b60016040518059106102cd5750595b818152601f19601f8301168101602001604052905090507f01000000000000000000000000000000000000000000000000000000000000008160008151811061031257fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053509d9c50505050505050505050505050565b60008061036084846103e7565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b60008061039584846103e7565b7c01000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b0160200190565b6000816020018301519392505050565b602060405190810160405260008152905600a165627a7a72305820","linkReferences":{},"swarmHash":"8b23058c84a82956c4d77f98d9e12ffd5031c6c4a78d25749f23624b33a92775","gasEstimates":{"creation":{"codeDepositCost":"215400","executionCost":"252","totalCost":"215652"},"external":{"execScript(bytes,bytes,address[])":"infinite"}},"functionHashes":{"execScript(bytes,bytes,address[])":"279cea35"},"abiDefinition":[{"constant":false,"inputs":[{"name":"_script","type":"bytes"},{"name":"_input","type":"bytes"},{"name":"_blacklist","type":"address[]"}],"name":"execScript","outputs":[{"name":"","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"src","type":"address"},{"indexed":true,"name":"dst","type":"address"}],"name":"LogScriptCall","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/executors/CallsScript.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/executors/CallsScript.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/evmscript/executors/CallsScript.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b6104358061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103f7565b60008060008060008061010b6103f7565b600496505b8c8710156102be5761015a878f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103531692505050565b9550600094505b888510156101b05789898681811061017557fe5b90506020020135600160a060020a0316600160a060020a031686600160a060020a0316141515156101a557600080fd5b600190940193610161565b85600160a060020a031630600160a060020a031633600160a060020a03167f9dcff9d94fbfdb4622d11edb383005f95e78efb446c72d92f8e615c6025c470360405160405180910390a461023f876014018f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103881692505050565b63ffffffff16935060188701925061028e838f8f806020601f82018190048102016040519081016040528181529291906020840183838082843750949594505063ffffffff6103e01692505050565b838501975091508c8711156102a257600080fd5b600080858460008a6113885a03f1808015610040575050610110565b60016040518059106102cd5750595b818152601f19601f8301168101602001604052905090507f01000000000000000000000000000000000000000000000000000000000000008160008151811061031257fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053509d9c50505050505050505050505050565b60008061036084846103e7565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b60008061039584846103e7565b7c01000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b0160200190565b6000816020018301519392505050565b602060405190810160405260008152905600a165627a7a723058208b23058c84a82956c4d77f98d9e12ffd5031c6c4a78d25749f23624b33a927750029","runtime_bytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103f7565b60008060008060008061010b6103f7565b600496505b8c8710156102be5761015a878f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103531692505050565b9550600094505b888510156101b05789898681811061017557fe5b90506020020135600160a060020a0316600160a060020a031686600160a060020a0316141515156101a557600080fd5b600190940193610161565b85600160a060020a031630600160a060020a031633600160a060020a03167f9dcff9d94fbfdb4622d11edb383005f95e78efb446c72d92f8e615c6025c470360405160405180910390a461023f876014018f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103881692505050565b63ffffffff16935060188701925061028e838f8f806020601f82018190048102016040519081016040528181529291906020840183838082843750949594505063ffffffff6103e01692505050565b838501975091508c8711156102a257600080fd5b600080858460008a6113885a03f1808015610040575050610110565b60016040518059106102cd5750595b818152601f19601f8301168101602001604052905090507f01000000000000000000000000000000000000000000000000000000000000008160008151811061031257fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053509d9c50505050505050505050505050565b60008061036084846103e7565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b60008061039584846103e7565b7c01000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b0160200190565b6000816020018301519392505050565b602060405190810160405260008152905600a165627a7a723058208b23058c84a82956c4d77f98d9e12ffd5031c6c4a78d25749f23624b33a927750029","real_runtime_bytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103f7565b60008060008060008061010b6103f7565b600496505b8c8710156102be5761015a878f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103531692505050565b9550600094505b888510156101b05789898681811061017557fe5b90506020020135600160a060020a0316600160a060020a031686600160a060020a0316141515156101a557600080fd5b600190940193610161565b85600160a060020a031630600160a060020a031633600160a060020a03167f9dcff9d94fbfdb4622d11edb383005f95e78efb446c72d92f8e615c6025c470360405160405180910390a461023f876014018f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103881692505050565b63ffffffff16935060188701925061028e838f8f806020601f82018190048102016040519081016040528181529291906020840183838082843750949594505063ffffffff6103e01692505050565b838501975091508c8711156102a257600080fd5b600080858460008a6113885a03f1808015610040575050610110565b60016040518059106102cd5750595b818152601f19601f8301168101602001604052905090507f01000000000000000000000000000000000000000000000000000000000000008160008151811061031257fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053509d9c50505050505050505050505050565b60008061036084846103e7565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b60008061039584846103e7565b7c01000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b0160200190565b6000816020018301519392505050565b602060405190810160405260008152905600a165627a7a72305820","swarm_hash":"8b23058c84a82956c4d77f98d9e12ffd5031c6c4a78d25749f23624b33a92775","gas_estimates":{"creation":{"codeDepositCost":"215400","executionCost":"252","totalCost":"215652"},"external":{"execScript(bytes,bytes,address[])":"infinite"}},"function_hashes":{"execScript(bytes,bytes,address[])":"279cea35"},"abi":[{"constant":false,"inputs":[{"name":"_script","type":"bytes"},{"name":"_input","type":"bytes"},{"name":"_blacklist","type":"address[]"}],"name":"execScript","outputs":[{"name":"","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"src","type":"address"},{"indexed":true,"name":"dst","type":"address"}],"name":"LogScriptCall","type":"event"}]}; +let CallsScript = new EmbarkJS.Blockchain.Contract(CallsScriptJSONConfig); +export default CallsScript; diff --git a/abi/contracts/DAI.js b/abi/contracts/DAI.js new file mode 100644 index 0000000..11b45ec --- /dev/null +++ b/abi/contracts/DAI.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let DAIJSONConfig = {"contract_name":{"instanceOf":"StandardToken","address":"0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359","className":"DAI","args":[],"deploy":true,"path":"/Users/Barry/projects/status-im/liquid-funding/contracts/test/StandardToken.sol","originalFilename":"contracts/test/StandardToken.sol","filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/test/StandardToken.sol","code":"6060604052341561000f57600080fd5b60038054600160a060020a03191633600160a060020a031617905561063e806100396000396000f3006060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","runtimeBytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","realRuntimeBytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a72305820","gasEstimates":{"creation":{"codeDepositCost":"319600","executionCost":"20717","totalCost":"340317"},"external":{"allowance(address,address)":"870","approve(address,uint256)":"22330","balanceOf(address)":"705","decreaseApproval(address,uint256)":"23286","increaseApproval(address,uint256)":"22690","mint(address,uint256)":"42975","totalSupply()":"395","transfer(address,uint256)":"43332","transferFrom(address,address,uint256)":"64071"}},"functionHashes":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decreaseApproval(address,uint256)":"66188463","increaseApproval(address,uint256)":"d73dd623","mint(address,uint256)":"40c10f19","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"abiDefinition":[{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x095ea7b3"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x18160ddd"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x23b872dd"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x40c10f19"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x66188463"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x70a08231"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa9059cbb"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd73dd623"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdd62ed3e"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event","signature":"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event","signature":"0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925"}],"linkReferences":{},"gas":"auto","type":"instance","_gasLimit":6000000,"error":false,"deploymentAccount":"0xB08aaB8C9fb336eE062e7aE326924639fC927e35","realArgs":[],"deployedAddress":"0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359"},"address":"0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359","code":"6060604052341561000f57600080fd5b60038054600160a060020a03191633600160a060020a031617905561063e806100396000396000f3006060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","runtime_bytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","real_runtime_bytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a72305820","gas_estimates":{"creation":{"codeDepositCost":"319600","executionCost":"20717","totalCost":"340317"},"external":{"allowance(address,address)":"870","approve(address,uint256)":"22330","balanceOf(address)":"705","decreaseApproval(address,uint256)":"23286","increaseApproval(address,uint256)":"22690","mint(address,uint256)":"42975","totalSupply()":"395","transfer(address,uint256)":"43332","transferFrom(address,address,uint256)":"64071"}},"function_hashes":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decreaseApproval(address,uint256)":"66188463","increaseApproval(address,uint256)":"d73dd623","mint(address,uint256)":"40c10f19","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"abi":[{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x095ea7b3"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x18160ddd"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x23b872dd"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x40c10f19"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x66188463"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x70a08231"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa9059cbb"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd73dd623"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdd62ed3e"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event","signature":"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event","signature":"0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925"}]}; +let DAI = new EmbarkJS.Blockchain.Contract(DAIJSONConfig); +export default DAI; diff --git a/abi/contracts/DAOFactory.js b/abi/contracts/DAOFactory.js new file mode 100644 index 0000000..66a080a --- /dev/null +++ b/abi/contracts/DAOFactory.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let DAOFactoryJSONConfig = {"contract_name":{"className":"DAOFactory","args":[],"code":"6060604052341561000f57600080fd5b604051606080610f74833981016040528080519190602001805191906020018051915050600160a060020a0381161561005e5760028054600160a060020a031916600160a060020a0383161790555b5060008054600160a060020a03938416600160a060020a03199182161790915560018054929093169116179055610eda8061009a6000396000f3006060604052600436106100485763ffffffff60e060020a600035041663086b339e811461004d578063216874441461007c578063656362b51461009b578063b16dd130146100ae575b600080fd5b341561005857600080fd5b6100606100c1565b604051600160a060020a03909116815260200160405180910390f35b341561008757600080fd5b610060600160a060020a03600435166100d0565b34156100a657600080fd5b6100606107f2565b34156100b957600080fd5b610060610801565b600154600160a060020a031681565b600080548190819081908190600160a060020a03166100ed610810565b600160a060020a039091168152602001604051809103906000f080151561011357600080fd5b600254909550600160a060020a0316151561019d57600154600160a060020a038087169163485cc95591168860405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b151561018457600080fd5b6102c65a03f1151561019557600080fd5b5050506107ac565b600154600160a060020a038087169163485cc95591163060405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b15156101f957600080fd5b6102c65a03f1151561020a57600080fd5b50505084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561025357600080fd5b6102c65a03f1151561026457600080fd5b5050506040518051945050600160a060020a038416633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156102b557600080fd5b6102c65a03f115156102c657600080fd5b5050506040518051935050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561031757600080fd5b6102c65a03f1151561032857600080fd5b5050506040518051600254909350600160a060020a038087169250630a8ed3db9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561039b57600080fd5b6102c65a03f115156103ac57600080fd5b5050600254600160a060020a03808716925063be038478911687853060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561041e57600080fd5b6102c65a03f1151561042f57600080fd5b5050600254600160a060020a0316905063869abc24868860006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b151561049457600080fd5b6102c65a03f115156104a557600080fd5b5050506040518051905090507f1a40224412580c1ae5a2fbe8029a565f49a3a029608a8fd9320b32477f31457981604051600160a060020a03909116815260200160405180910390a1600254600160a060020a0380861691639d0effdb9116878560405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561055557600080fd5b6102c65a03f1151561056657600080fd5b5050600254600160a060020a038087169250639d0effdb9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156105d057600080fd5b6102c65a03f115156105e157600080fd5b50505083600160a060020a0316639d0effdb30868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561064557600080fd5b6102c65a03f1151561065657600080fd5b50505083600160a060020a0316630a8ed3db87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156106ba57600080fd5b6102c65a03f115156106cb57600080fd5b50505083600160a060020a031663a885508a868460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561072257600080fd5b6102c65a03f1151561073357600080fd5b50505083600160a060020a031663afd925df87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561079757600080fd5b6102c65a03f115156107a857600080fd5b5050505b7f3a7eb042a769adf51e9be78b68ed7af0ad7b379246536efc376ed2ca0123828285604051600160a060020a03909116815260200160405180910390a150505050919050565b600254600160a060020a031681565b600054600160a060020a031681565b60405161068e806108218339019056006060604052341561000f57600080fd5b60405160208061068e8339810160405280805191508190506000807fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f87f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c604051918252602082015260409081019051908190039020815260208101919091526040016000208054600160a060020a0392909216600160a060020a0319909216919091179055506105ca806100c46000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029a165627a7a72305820a816487b785cc6b931a3b81916c6fdbaeb2ade524df47c3aaa47fd3f97226bd40029","runtimeBytecode":"6060604052600436106100485763ffffffff60e060020a600035041663086b339e811461004d578063216874441461007c578063656362b51461009b578063b16dd130146100ae575b600080fd5b341561005857600080fd5b6100606100c1565b604051600160a060020a03909116815260200160405180910390f35b341561008757600080fd5b610060600160a060020a03600435166100d0565b34156100a657600080fd5b6100606107f2565b34156100b957600080fd5b610060610801565b600154600160a060020a031681565b600080548190819081908190600160a060020a03166100ed610810565b600160a060020a039091168152602001604051809103906000f080151561011357600080fd5b600254909550600160a060020a0316151561019d57600154600160a060020a038087169163485cc95591168860405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b151561018457600080fd5b6102c65a03f1151561019557600080fd5b5050506107ac565b600154600160a060020a038087169163485cc95591163060405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b15156101f957600080fd5b6102c65a03f1151561020a57600080fd5b50505084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561025357600080fd5b6102c65a03f1151561026457600080fd5b5050506040518051945050600160a060020a038416633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156102b557600080fd5b6102c65a03f115156102c657600080fd5b5050506040518051935050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561031757600080fd5b6102c65a03f1151561032857600080fd5b5050506040518051600254909350600160a060020a038087169250630a8ed3db9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561039b57600080fd5b6102c65a03f115156103ac57600080fd5b5050600254600160a060020a03808716925063be038478911687853060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561041e57600080fd5b6102c65a03f1151561042f57600080fd5b5050600254600160a060020a0316905063869abc24868860006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b151561049457600080fd5b6102c65a03f115156104a557600080fd5b5050506040518051905090507f1a40224412580c1ae5a2fbe8029a565f49a3a029608a8fd9320b32477f31457981604051600160a060020a03909116815260200160405180910390a1600254600160a060020a0380861691639d0effdb9116878560405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561055557600080fd5b6102c65a03f1151561056657600080fd5b5050600254600160a060020a038087169250639d0effdb9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156105d057600080fd5b6102c65a03f115156105e157600080fd5b50505083600160a060020a0316639d0effdb30868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561064557600080fd5b6102c65a03f1151561065657600080fd5b50505083600160a060020a0316630a8ed3db87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156106ba57600080fd5b6102c65a03f115156106cb57600080fd5b50505083600160a060020a031663a885508a868460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561072257600080fd5b6102c65a03f1151561073357600080fd5b50505083600160a060020a031663afd925df87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561079757600080fd5b6102c65a03f115156107a857600080fd5b5050505b7f3a7eb042a769adf51e9be78b68ed7af0ad7b379246536efc376ed2ca0123828285604051600160a060020a03909116815260200160405180910390a150505050919050565b600254600160a060020a031681565b600054600160a060020a031681565b60405161068e806108218339019056006060604052341561000f57600080fd5b60405160208061068e8339810160405280805191508190506000807fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f87f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c604051918252602082015260409081019051908190039020815260208101919091526040016000208054600160a060020a0392909216600160a060020a0319909216919091179055506105ca806100c46000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029a165627a7a72305820a816487b785cc6b931a3b81916c6fdbaeb2ade524df47c3aaa47fd3f97226bd40029","realRuntimeBytecode":"6060604052600436106100485763ffffffff60e060020a600035041663086b339e811461004d578063216874441461007c578063656362b51461009b578063b16dd130146100ae575b600080fd5b341561005857600080fd5b6100606100c1565b604051600160a060020a03909116815260200160405180910390f35b341561008757600080fd5b610060600160a060020a03600435166100d0565b34156100a657600080fd5b6100606107f2565b34156100b957600080fd5b610060610801565b600154600160a060020a031681565b600080548190819081908190600160a060020a03166100ed610810565b600160a060020a039091168152602001604051809103906000f080151561011357600080fd5b600254909550600160a060020a0316151561019d57600154600160a060020a038087169163485cc95591168860405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b151561018457600080fd5b6102c65a03f1151561019557600080fd5b5050506107ac565b600154600160a060020a038087169163485cc95591163060405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b15156101f957600080fd5b6102c65a03f1151561020a57600080fd5b50505084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561025357600080fd5b6102c65a03f1151561026457600080fd5b5050506040518051945050600160a060020a038416633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156102b557600080fd5b6102c65a03f115156102c657600080fd5b5050506040518051935050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561031757600080fd5b6102c65a03f1151561032857600080fd5b5050506040518051600254909350600160a060020a038087169250630a8ed3db9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561039b57600080fd5b6102c65a03f115156103ac57600080fd5b5050600254600160a060020a03808716925063be038478911687853060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561041e57600080fd5b6102c65a03f1151561042f57600080fd5b5050600254600160a060020a0316905063869abc24868860006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b151561049457600080fd5b6102c65a03f115156104a557600080fd5b5050506040518051905090507f1a40224412580c1ae5a2fbe8029a565f49a3a029608a8fd9320b32477f31457981604051600160a060020a03909116815260200160405180910390a1600254600160a060020a0380861691639d0effdb9116878560405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561055557600080fd5b6102c65a03f1151561056657600080fd5b5050600254600160a060020a038087169250639d0effdb9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156105d057600080fd5b6102c65a03f115156105e157600080fd5b50505083600160a060020a0316639d0effdb30868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561064557600080fd5b6102c65a03f1151561065657600080fd5b50505083600160a060020a0316630a8ed3db87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156106ba57600080fd5b6102c65a03f115156106cb57600080fd5b50505083600160a060020a031663a885508a868460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561072257600080fd5b6102c65a03f1151561073357600080fd5b50505083600160a060020a031663afd925df87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561079757600080fd5b6102c65a03f115156107a857600080fd5b5050505b7f3a7eb042a769adf51e9be78b68ed7af0ad7b379246536efc376ed2ca0123828285604051600160a060020a03909116815260200160405180910390a150505050919050565b600254600160a060020a031681565b600054600160a060020a031681565b60405161068e806108218339019056006060604052341561000f57600080fd5b60405160208061068e8339810160405280805191508190506000807fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f87f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c604051918252602082015260409081019051908190039020815260208101919091526040016000208054600160a060020a0392909216600160a060020a0319909216919091179055506105ca806100c46000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029a165627a7a72305820","linkReferences":{},"swarmHash":"a816487b785cc6b931a3b81916c6fdbaeb2ade524df47c3aaa47fd3f97226bd4","gasEstimates":{"creation":{"codeDepositCost":"760400","executionCost":"61956","totalCost":"822356"},"external":{"baseACL()":"589","baseKernel()":"655","newDAO(address)":"infinite","regFactory()":"633"}},"functionHashes":{"baseACL()":"086b339e","baseKernel()":"b16dd130","newDAO(address)":"21687444","regFactory()":"656362b5"},"abiDefinition":[{"constant":true,"inputs":[],"name":"baseACL","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_root","type":"address"}],"name":"newDAO","outputs":[{"name":"dao","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"regFactory","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"baseKernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_baseKernel","type":"address"},{"name":"_baseACL","type":"address"},{"name":"_regFactory","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"dao","type":"address"}],"name":"DeployDAO","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"reg","type":"address"}],"name":"DeployEVMScriptRegistry","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/factory/DAOFactory.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/factory/DAOFactory.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/factory/DAOFactory.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b604051606080610f74833981016040528080519190602001805191906020018051915050600160a060020a0381161561005e5760028054600160a060020a031916600160a060020a0383161790555b5060008054600160a060020a03938416600160a060020a03199182161790915560018054929093169116179055610eda8061009a6000396000f3006060604052600436106100485763ffffffff60e060020a600035041663086b339e811461004d578063216874441461007c578063656362b51461009b578063b16dd130146100ae575b600080fd5b341561005857600080fd5b6100606100c1565b604051600160a060020a03909116815260200160405180910390f35b341561008757600080fd5b610060600160a060020a03600435166100d0565b34156100a657600080fd5b6100606107f2565b34156100b957600080fd5b610060610801565b600154600160a060020a031681565b600080548190819081908190600160a060020a03166100ed610810565b600160a060020a039091168152602001604051809103906000f080151561011357600080fd5b600254909550600160a060020a0316151561019d57600154600160a060020a038087169163485cc95591168860405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b151561018457600080fd5b6102c65a03f1151561019557600080fd5b5050506107ac565b600154600160a060020a038087169163485cc95591163060405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b15156101f957600080fd5b6102c65a03f1151561020a57600080fd5b50505084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561025357600080fd5b6102c65a03f1151561026457600080fd5b5050506040518051945050600160a060020a038416633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156102b557600080fd5b6102c65a03f115156102c657600080fd5b5050506040518051935050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561031757600080fd5b6102c65a03f1151561032857600080fd5b5050506040518051600254909350600160a060020a038087169250630a8ed3db9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561039b57600080fd5b6102c65a03f115156103ac57600080fd5b5050600254600160a060020a03808716925063be038478911687853060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561041e57600080fd5b6102c65a03f1151561042f57600080fd5b5050600254600160a060020a0316905063869abc24868860006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b151561049457600080fd5b6102c65a03f115156104a557600080fd5b5050506040518051905090507f1a40224412580c1ae5a2fbe8029a565f49a3a029608a8fd9320b32477f31457981604051600160a060020a03909116815260200160405180910390a1600254600160a060020a0380861691639d0effdb9116878560405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561055557600080fd5b6102c65a03f1151561056657600080fd5b5050600254600160a060020a038087169250639d0effdb9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156105d057600080fd5b6102c65a03f115156105e157600080fd5b50505083600160a060020a0316639d0effdb30868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561064557600080fd5b6102c65a03f1151561065657600080fd5b50505083600160a060020a0316630a8ed3db87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156106ba57600080fd5b6102c65a03f115156106cb57600080fd5b50505083600160a060020a031663a885508a868460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561072257600080fd5b6102c65a03f1151561073357600080fd5b50505083600160a060020a031663afd925df87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561079757600080fd5b6102c65a03f115156107a857600080fd5b5050505b7f3a7eb042a769adf51e9be78b68ed7af0ad7b379246536efc376ed2ca0123828285604051600160a060020a03909116815260200160405180910390a150505050919050565b600254600160a060020a031681565b600054600160a060020a031681565b60405161068e806108218339019056006060604052341561000f57600080fd5b60405160208061068e8339810160405280805191508190506000807fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f87f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c604051918252602082015260409081019051908190039020815260208101919091526040016000208054600160a060020a0392909216600160a060020a0319909216919091179055506105ca806100c46000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029a165627a7a72305820a816487b785cc6b931a3b81916c6fdbaeb2ade524df47c3aaa47fd3f97226bd40029","runtime_bytecode":"6060604052600436106100485763ffffffff60e060020a600035041663086b339e811461004d578063216874441461007c578063656362b51461009b578063b16dd130146100ae575b600080fd5b341561005857600080fd5b6100606100c1565b604051600160a060020a03909116815260200160405180910390f35b341561008757600080fd5b610060600160a060020a03600435166100d0565b34156100a657600080fd5b6100606107f2565b34156100b957600080fd5b610060610801565b600154600160a060020a031681565b600080548190819081908190600160a060020a03166100ed610810565b600160a060020a039091168152602001604051809103906000f080151561011357600080fd5b600254909550600160a060020a0316151561019d57600154600160a060020a038087169163485cc95591168860405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b151561018457600080fd5b6102c65a03f1151561019557600080fd5b5050506107ac565b600154600160a060020a038087169163485cc95591163060405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b15156101f957600080fd5b6102c65a03f1151561020a57600080fd5b50505084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561025357600080fd5b6102c65a03f1151561026457600080fd5b5050506040518051945050600160a060020a038416633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156102b557600080fd5b6102c65a03f115156102c657600080fd5b5050506040518051935050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561031757600080fd5b6102c65a03f1151561032857600080fd5b5050506040518051600254909350600160a060020a038087169250630a8ed3db9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561039b57600080fd5b6102c65a03f115156103ac57600080fd5b5050600254600160a060020a03808716925063be038478911687853060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561041e57600080fd5b6102c65a03f1151561042f57600080fd5b5050600254600160a060020a0316905063869abc24868860006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b151561049457600080fd5b6102c65a03f115156104a557600080fd5b5050506040518051905090507f1a40224412580c1ae5a2fbe8029a565f49a3a029608a8fd9320b32477f31457981604051600160a060020a03909116815260200160405180910390a1600254600160a060020a0380861691639d0effdb9116878560405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561055557600080fd5b6102c65a03f1151561056657600080fd5b5050600254600160a060020a038087169250639d0effdb9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156105d057600080fd5b6102c65a03f115156105e157600080fd5b50505083600160a060020a0316639d0effdb30868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561064557600080fd5b6102c65a03f1151561065657600080fd5b50505083600160a060020a0316630a8ed3db87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156106ba57600080fd5b6102c65a03f115156106cb57600080fd5b50505083600160a060020a031663a885508a868460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561072257600080fd5b6102c65a03f1151561073357600080fd5b50505083600160a060020a031663afd925df87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561079757600080fd5b6102c65a03f115156107a857600080fd5b5050505b7f3a7eb042a769adf51e9be78b68ed7af0ad7b379246536efc376ed2ca0123828285604051600160a060020a03909116815260200160405180910390a150505050919050565b600254600160a060020a031681565b600054600160a060020a031681565b60405161068e806108218339019056006060604052341561000f57600080fd5b60405160208061068e8339810160405280805191508190506000807fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f87f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c604051918252602082015260409081019051908190039020815260208101919091526040016000208054600160a060020a0392909216600160a060020a0319909216919091179055506105ca806100c46000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029a165627a7a72305820a816487b785cc6b931a3b81916c6fdbaeb2ade524df47c3aaa47fd3f97226bd40029","real_runtime_bytecode":"6060604052600436106100485763ffffffff60e060020a600035041663086b339e811461004d578063216874441461007c578063656362b51461009b578063b16dd130146100ae575b600080fd5b341561005857600080fd5b6100606100c1565b604051600160a060020a03909116815260200160405180910390f35b341561008757600080fd5b610060600160a060020a03600435166100d0565b34156100a657600080fd5b6100606107f2565b34156100b957600080fd5b610060610801565b600154600160a060020a031681565b600080548190819081908190600160a060020a03166100ed610810565b600160a060020a039091168152602001604051809103906000f080151561011357600080fd5b600254909550600160a060020a0316151561019d57600154600160a060020a038087169163485cc95591168860405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b151561018457600080fd5b6102c65a03f1151561019557600080fd5b5050506107ac565b600154600160a060020a038087169163485cc95591163060405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b15156101f957600080fd5b6102c65a03f1151561020a57600080fd5b50505084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561025357600080fd5b6102c65a03f1151561026457600080fd5b5050506040518051945050600160a060020a038416633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156102b557600080fd5b6102c65a03f115156102c657600080fd5b5050506040518051935050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561031757600080fd5b6102c65a03f1151561032857600080fd5b5050506040518051600254909350600160a060020a038087169250630a8ed3db9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561039b57600080fd5b6102c65a03f115156103ac57600080fd5b5050600254600160a060020a03808716925063be038478911687853060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561041e57600080fd5b6102c65a03f1151561042f57600080fd5b5050600254600160a060020a0316905063869abc24868860006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b151561049457600080fd5b6102c65a03f115156104a557600080fd5b5050506040518051905090507f1a40224412580c1ae5a2fbe8029a565f49a3a029608a8fd9320b32477f31457981604051600160a060020a03909116815260200160405180910390a1600254600160a060020a0380861691639d0effdb9116878560405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561055557600080fd5b6102c65a03f1151561056657600080fd5b5050600254600160a060020a038087169250639d0effdb9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156105d057600080fd5b6102c65a03f115156105e157600080fd5b50505083600160a060020a0316639d0effdb30868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561064557600080fd5b6102c65a03f1151561065657600080fd5b50505083600160a060020a0316630a8ed3db87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156106ba57600080fd5b6102c65a03f115156106cb57600080fd5b50505083600160a060020a031663a885508a868460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561072257600080fd5b6102c65a03f1151561073357600080fd5b50505083600160a060020a031663afd925df87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561079757600080fd5b6102c65a03f115156107a857600080fd5b5050505b7f3a7eb042a769adf51e9be78b68ed7af0ad7b379246536efc376ed2ca0123828285604051600160a060020a03909116815260200160405180910390a150505050919050565b600254600160a060020a031681565b600054600160a060020a031681565b60405161068e806108218339019056006060604052341561000f57600080fd5b60405160208061068e8339810160405280805191508190506000807fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f87f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c604051918252602082015260409081019051908190039020815260208101919091526040016000208054600160a060020a0392909216600160a060020a0319909216919091179055506105ca806100c46000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029a165627a7a72305820","swarm_hash":"a816487b785cc6b931a3b81916c6fdbaeb2ade524df47c3aaa47fd3f97226bd4","gas_estimates":{"creation":{"codeDepositCost":"760400","executionCost":"61956","totalCost":"822356"},"external":{"baseACL()":"589","baseKernel()":"655","newDAO(address)":"infinite","regFactory()":"633"}},"function_hashes":{"baseACL()":"086b339e","baseKernel()":"b16dd130","newDAO(address)":"21687444","regFactory()":"656362b5"},"abi":[{"constant":true,"inputs":[],"name":"baseACL","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_root","type":"address"}],"name":"newDAO","outputs":[{"name":"dao","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"regFactory","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"baseKernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_baseKernel","type":"address"},{"name":"_baseACL","type":"address"},{"name":"_regFactory","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"dao","type":"address"}],"name":"DeployDAO","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"reg","type":"address"}],"name":"DeployEVMScriptRegistry","type":"event"}]}; +let DAOFactory = new EmbarkJS.Blockchain.Contract(DAOFactoryJSONConfig); +export default DAOFactory; diff --git a/abi/contracts/DelegateProxy.js b/abi/contracts/DelegateProxy.js new file mode 100644 index 0000000..e94465b --- /dev/null +++ b/abi/contracts/DelegateProxy.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let DelegateProxyJSONConfig = {"contract_name":{"className":"DelegateProxy","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"FORWARDING()":"2b2584f6","FWD_GAS_LIMIT()":"0ceafa2a","UPGRADEABLE()":"7e84a4ff","implementation()":"5c60da1b","proxyType()":"4555d5c9"},"abiDefinition":[{"constant":true,"inputs":[],"name":"FWD_GAS_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FORWARDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"codeAddr","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"UPGRADEABLE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/common/DelegateProxy.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/common/DelegateProxy.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/common/DelegateProxy.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"FORWARDING()":"2b2584f6","FWD_GAS_LIMIT()":"0ceafa2a","UPGRADEABLE()":"7e84a4ff","implementation()":"5c60da1b","proxyType()":"4555d5c9"},"abi":[{"constant":true,"inputs":[],"name":"FWD_GAS_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FORWARDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"codeAddr","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"UPGRADEABLE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let DelegateProxy = new EmbarkJS.Blockchain.Contract(DelegateProxyJSONConfig); +export default DelegateProxy; diff --git a/abi/contracts/DelegateScript.js b/abi/contracts/DelegateScript.js new file mode 100644 index 0000000..9652534 --- /dev/null +++ b/abi/contracts/DelegateScript.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let DelegateScriptJSONConfig = {"contract_name":{"className":"DelegateScript","args":[],"code":"6060604052341561000f57600080fd5b6103de8061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103a0565b811561010557600080fd5b6018861461011257600080fd5b61018d610158600489898080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6101981692505050565b86868080601f0160208091040260200160405190810160405281815292919060208401838380828437506101cd945050505050565b979650505050505050565b6000806101a584846102b8565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b6101d56103a0565b6101dd6103a0565b6101e6846102c8565b15156101f157600080fd5b8373ffffffffffffffffffffffffffffffffffffffff16600084511161021e57610219610302565b610220565b835b60405180828051906020019080838360005b8381101561024a578082015183820152602001610232565b50505050905090810190601f1680156102775780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561029957600080fd5b6102a1610338565b905060008151116102b157600080fd5b9392505050565b6000816020018301519392505050565b60008073ffffffffffffffffffffffffffffffffffffffff831615156102f157600091506102fc565b823b90506000811191505b50919050565b61030a6103a0565b6103337fc1c0e9c40000000000000000000000000000000000000000000000000000000061035e565b905090565b6103406103a0565b3d6040519150602081018201604052808252806000602084013e5090565b6103666103a0565b61036e6103a0565b600460405180591061037d5750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a7230582023f55ff572da0cac99fafa43fa75fb1ebe636bd77c1e76a0b5a7171030466af50029","runtimeBytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103a0565b811561010557600080fd5b6018861461011257600080fd5b61018d610158600489898080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6101981692505050565b86868080601f0160208091040260200160405190810160405281815292919060208401838380828437506101cd945050505050565b979650505050505050565b6000806101a584846102b8565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b6101d56103a0565b6101dd6103a0565b6101e6846102c8565b15156101f157600080fd5b8373ffffffffffffffffffffffffffffffffffffffff16600084511161021e57610219610302565b610220565b835b60405180828051906020019080838360005b8381101561024a578082015183820152602001610232565b50505050905090810190601f1680156102775780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561029957600080fd5b6102a1610338565b905060008151116102b157600080fd5b9392505050565b6000816020018301519392505050565b60008073ffffffffffffffffffffffffffffffffffffffff831615156102f157600091506102fc565b823b90506000811191505b50919050565b61030a6103a0565b6103337fc1c0e9c40000000000000000000000000000000000000000000000000000000061035e565b905090565b6103406103a0565b3d6040519150602081018201604052808252806000602084013e5090565b6103666103a0565b61036e6103a0565b600460405180591061037d5750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a7230582023f55ff572da0cac99fafa43fa75fb1ebe636bd77c1e76a0b5a7171030466af50029","realRuntimeBytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103a0565b811561010557600080fd5b6018861461011257600080fd5b61018d610158600489898080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6101981692505050565b86868080601f0160208091040260200160405190810160405281815292919060208401838380828437506101cd945050505050565b979650505050505050565b6000806101a584846102b8565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b6101d56103a0565b6101dd6103a0565b6101e6846102c8565b15156101f157600080fd5b8373ffffffffffffffffffffffffffffffffffffffff16600084511161021e57610219610302565b610220565b835b60405180828051906020019080838360005b8381101561024a578082015183820152602001610232565b50505050905090810190601f1680156102775780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561029957600080fd5b6102a1610338565b905060008151116102b157600080fd5b9392505050565b6000816020018301519392505050565b60008073ffffffffffffffffffffffffffffffffffffffff831615156102f157600091506102fc565b823b90506000811191505b50919050565b61030a6103a0565b6103337fc1c0e9c40000000000000000000000000000000000000000000000000000000061035e565b905090565b6103406103a0565b3d6040519150602081018201604052808252806000602084013e5090565b6103666103a0565b61036e6103a0565b600460405180591061037d5750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a72305820","linkReferences":{},"swarmHash":"23f55ff572da0cac99fafa43fa75fb1ebe636bd77c1e76a0b5a7171030466af5","gasEstimates":{"creation":{"codeDepositCost":"198000","executionCost":"233","totalCost":"198233"},"external":{"execScript(bytes,bytes,address[])":"infinite"},"internal":{"defaultInput()":"infinite","delegate(address,bytes memory)":"infinite","returnedData()":"infinite"}},"functionHashes":{"execScript(bytes,bytes,address[])":"279cea35"},"abiDefinition":[{"constant":false,"inputs":[{"name":"_script","type":"bytes"},{"name":"_input","type":"bytes"},{"name":"_blacklist","type":"address[]"}],"name":"execScript","outputs":[{"name":"","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/executors/DelegateScript.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/executors/DelegateScript.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/evmscript/executors/DelegateScript.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b6103de8061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103a0565b811561010557600080fd5b6018861461011257600080fd5b61018d610158600489898080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6101981692505050565b86868080601f0160208091040260200160405190810160405281815292919060208401838380828437506101cd945050505050565b979650505050505050565b6000806101a584846102b8565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b6101d56103a0565b6101dd6103a0565b6101e6846102c8565b15156101f157600080fd5b8373ffffffffffffffffffffffffffffffffffffffff16600084511161021e57610219610302565b610220565b835b60405180828051906020019080838360005b8381101561024a578082015183820152602001610232565b50505050905090810190601f1680156102775780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561029957600080fd5b6102a1610338565b905060008151116102b157600080fd5b9392505050565b6000816020018301519392505050565b60008073ffffffffffffffffffffffffffffffffffffffff831615156102f157600091506102fc565b823b90506000811191505b50919050565b61030a6103a0565b6103337fc1c0e9c40000000000000000000000000000000000000000000000000000000061035e565b905090565b6103406103a0565b3d6040519150602081018201604052808252806000602084013e5090565b6103666103a0565b61036e6103a0565b600460405180591061037d5750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a7230582023f55ff572da0cac99fafa43fa75fb1ebe636bd77c1e76a0b5a7171030466af50029","runtime_bytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103a0565b811561010557600080fd5b6018861461011257600080fd5b61018d610158600489898080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6101981692505050565b86868080601f0160208091040260200160405190810160405281815292919060208401838380828437506101cd945050505050565b979650505050505050565b6000806101a584846102b8565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b6101d56103a0565b6101dd6103a0565b6101e6846102c8565b15156101f157600080fd5b8373ffffffffffffffffffffffffffffffffffffffff16600084511161021e57610219610302565b610220565b835b60405180828051906020019080838360005b8381101561024a578082015183820152602001610232565b50505050905090810190601f1680156102775780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561029957600080fd5b6102a1610338565b905060008151116102b157600080fd5b9392505050565b6000816020018301519392505050565b60008073ffffffffffffffffffffffffffffffffffffffff831615156102f157600091506102fc565b823b90506000811191505b50919050565b61030a6103a0565b6103337fc1c0e9c40000000000000000000000000000000000000000000000000000000061035e565b905090565b6103406103a0565b3d6040519150602081018201604052808252806000602084013e5090565b6103666103a0565b61036e6103a0565b600460405180591061037d5750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a7230582023f55ff572da0cac99fafa43fa75fb1ebe636bd77c1e76a0b5a7171030466af50029","real_runtime_bytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103a0565b811561010557600080fd5b6018861461011257600080fd5b61018d610158600489898080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6101981692505050565b86868080601f0160208091040260200160405190810160405281815292919060208401838380828437506101cd945050505050565b979650505050505050565b6000806101a584846102b8565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b6101d56103a0565b6101dd6103a0565b6101e6846102c8565b15156101f157600080fd5b8373ffffffffffffffffffffffffffffffffffffffff16600084511161021e57610219610302565b610220565b835b60405180828051906020019080838360005b8381101561024a578082015183820152602001610232565b50505050905090810190601f1680156102775780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561029957600080fd5b6102a1610338565b905060008151116102b157600080fd5b9392505050565b6000816020018301519392505050565b60008073ffffffffffffffffffffffffffffffffffffffff831615156102f157600091506102fc565b823b90506000811191505b50919050565b61030a6103a0565b6103337fc1c0e9c40000000000000000000000000000000000000000000000000000000061035e565b905090565b6103406103a0565b3d6040519150602081018201604052808252806000602084013e5090565b6103666103a0565b61036e6103a0565b600460405180591061037d5750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a72305820","swarm_hash":"23f55ff572da0cac99fafa43fa75fb1ebe636bd77c1e76a0b5a7171030466af5","gas_estimates":{"creation":{"codeDepositCost":"198000","executionCost":"233","totalCost":"198233"},"external":{"execScript(bytes,bytes,address[])":"infinite"},"internal":{"defaultInput()":"infinite","delegate(address,bytes memory)":"infinite","returnedData()":"infinite"}},"function_hashes":{"execScript(bytes,bytes,address[])":"279cea35"},"abi":[{"constant":false,"inputs":[{"name":"_script","type":"bytes"},{"name":"_input","type":"bytes"},{"name":"_blacklist","type":"address[]"}],"name":"execScript","outputs":[{"name":"","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"function"}]}; +let DelegateScript = new EmbarkJS.Blockchain.Contract(DelegateScriptJSONConfig); +export default DelegateScript; diff --git a/abi/contracts/DelegateScriptTarget.js b/abi/contracts/DelegateScriptTarget.js new file mode 100644 index 0000000..0947c75 --- /dev/null +++ b/abi/contracts/DelegateScriptTarget.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let DelegateScriptTargetJSONConfig = {"contract_name":{"className":"DelegateScriptTarget","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"exec()":"c1c0e9c4"},"abiDefinition":[{"constant":false,"inputs":[],"name":"exec","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/executors/DelegateScript.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/executors/DelegateScript.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/evmscript/executors/DelegateScript.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"exec()":"c1c0e9c4"},"abi":[{"constant":false,"inputs":[],"name":"exec","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}]}; +let DelegateScriptTarget = new EmbarkJS.Blockchain.Contract(DelegateScriptTargetJSONConfig); +export default DelegateScriptTarget; diff --git a/abi/contracts/DeployDelegateScript.js b/abi/contracts/DeployDelegateScript.js new file mode 100644 index 0000000..c78f927 --- /dev/null +++ b/abi/contracts/DeployDelegateScript.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let DeployDelegateScriptJSONConfig = {"contract_name":{"className":"DeployDelegateScript","args":[],"code":"6060604052341561000f57600080fd5b6104738061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa610435565b600080831561010857600080fd5b88886040518083838082843782019150509250505060405190819003902060008181527f4000000000000000000000000000000000000000000000000000000000000000602052604090205490925073ffffffffffffffffffffffffffffffffffffffff169050801515610211576101ae89898080601f016020809104026020016040519081016040528181529291906020840183838082843750610257945050505050565b60008381527f400000000000000000000000000000000000000000000000000000000000000060205260409020805473ffffffffffffffffffffffffffffffffffffffff191673ffffffffffffffffffffffffffffffffffffffff831617905590505b61024a8188888080601f016020809104026020016040519081016040528181529291906020840183838082843750610279945050505050565b9998505050505050505050565b60006004825103602483016000f09050803b1560018114610040575b50919050565b610281610435565b610289610435565b61029284610364565b151561029d57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff1660008451116102ca576102c5610397565b6102cc565b835b60405180828051906020019080838360005b838110156102f65780820151838201526020016102de565b50505050905090810190601f1680156103235780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561034557600080fd5b61034d6103cd565b9050600081511161035d57600080fd5b9392505050565b60008073ffffffffffffffffffffffffffffffffffffffff8316151561038d5760009150610273565b50506000903b1190565b61039f610435565b6103c87fc1c0e9c4000000000000000000000000000000000000000000000000000000006103f3565b905090565b6103d5610435565b3d6040519150602081018201604052808252806000602084013e5090565b6103fb610435565b610403610435565b60046040518059106104125750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a723058205449088182cae5005b73a10886318b8c8e5f45159863160fd842f7b9abbac6d20029","runtimeBytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa610435565b600080831561010857600080fd5b88886040518083838082843782019150509250505060405190819003902060008181527f4000000000000000000000000000000000000000000000000000000000000000602052604090205490925073ffffffffffffffffffffffffffffffffffffffff169050801515610211576101ae89898080601f016020809104026020016040519081016040528181529291906020840183838082843750610257945050505050565b60008381527f400000000000000000000000000000000000000000000000000000000000000060205260409020805473ffffffffffffffffffffffffffffffffffffffff191673ffffffffffffffffffffffffffffffffffffffff831617905590505b61024a8188888080601f016020809104026020016040519081016040528181529291906020840183838082843750610279945050505050565b9998505050505050505050565b60006004825103602483016000f09050803b1560018114610040575b50919050565b610281610435565b610289610435565b61029284610364565b151561029d57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff1660008451116102ca576102c5610397565b6102cc565b835b60405180828051906020019080838360005b838110156102f65780820151838201526020016102de565b50505050905090810190601f1680156103235780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561034557600080fd5b61034d6103cd565b9050600081511161035d57600080fd5b9392505050565b60008073ffffffffffffffffffffffffffffffffffffffff8316151561038d5760009150610273565b50506000903b1190565b61039f610435565b6103c87fc1c0e9c4000000000000000000000000000000000000000000000000000000006103f3565b905090565b6103d5610435565b3d6040519150602081018201604052808252806000602084013e5090565b6103fb610435565b610403610435565b60046040518059106104125750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a723058205449088182cae5005b73a10886318b8c8e5f45159863160fd842f7b9abbac6d20029","realRuntimeBytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa610435565b600080831561010857600080fd5b88886040518083838082843782019150509250505060405190819003902060008181527f4000000000000000000000000000000000000000000000000000000000000000602052604090205490925073ffffffffffffffffffffffffffffffffffffffff169050801515610211576101ae89898080601f016020809104026020016040519081016040528181529291906020840183838082843750610257945050505050565b60008381527f400000000000000000000000000000000000000000000000000000000000000060205260409020805473ffffffffffffffffffffffffffffffffffffffff191673ffffffffffffffffffffffffffffffffffffffff831617905590505b61024a8188888080601f016020809104026020016040519081016040528181529291906020840183838082843750610279945050505050565b9998505050505050505050565b60006004825103602483016000f09050803b1560018114610040575b50919050565b610281610435565b610289610435565b61029284610364565b151561029d57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff1660008451116102ca576102c5610397565b6102cc565b835b60405180828051906020019080838360005b838110156102f65780820151838201526020016102de565b50505050905090810190601f1680156103235780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561034557600080fd5b61034d6103cd565b9050600081511161035d57600080fd5b9392505050565b60008073ffffffffffffffffffffffffffffffffffffffff8316151561038d5760009150610273565b50506000903b1190565b61039f610435565b6103c87fc1c0e9c4000000000000000000000000000000000000000000000000000000006103f3565b905090565b6103d5610435565b3d6040519150602081018201604052808252806000602084013e5090565b6103fb610435565b610403610435565b60046040518059106104125750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a72305820","linkReferences":{},"swarmHash":"5449088182cae5005b73a10886318b8c8e5f45159863160fd842f7b9abbac6d2","gasEstimates":{"creation":{"codeDepositCost":"227800","executionCost":"264","totalCost":"228064"},"external":{"execScript(bytes,bytes,address[])":"infinite"},"internal":{"deploy(bytes memory)":"infinite"}},"functionHashes":{"execScript(bytes,bytes,address[])":"279cea35"},"abiDefinition":[{"constant":false,"inputs":[{"name":"_script","type":"bytes"},{"name":"_input","type":"bytes"},{"name":"_blacklist","type":"address[]"}],"name":"execScript","outputs":[{"name":"","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/executors/DeployDelegateScript.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/executors/DeployDelegateScript.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/evmscript/executors/DeployDelegateScript.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b6104738061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa610435565b600080831561010857600080fd5b88886040518083838082843782019150509250505060405190819003902060008181527f4000000000000000000000000000000000000000000000000000000000000000602052604090205490925073ffffffffffffffffffffffffffffffffffffffff169050801515610211576101ae89898080601f016020809104026020016040519081016040528181529291906020840183838082843750610257945050505050565b60008381527f400000000000000000000000000000000000000000000000000000000000000060205260409020805473ffffffffffffffffffffffffffffffffffffffff191673ffffffffffffffffffffffffffffffffffffffff831617905590505b61024a8188888080601f016020809104026020016040519081016040528181529291906020840183838082843750610279945050505050565b9998505050505050505050565b60006004825103602483016000f09050803b1560018114610040575b50919050565b610281610435565b610289610435565b61029284610364565b151561029d57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff1660008451116102ca576102c5610397565b6102cc565b835b60405180828051906020019080838360005b838110156102f65780820151838201526020016102de565b50505050905090810190601f1680156103235780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561034557600080fd5b61034d6103cd565b9050600081511161035d57600080fd5b9392505050565b60008073ffffffffffffffffffffffffffffffffffffffff8316151561038d5760009150610273565b50506000903b1190565b61039f610435565b6103c87fc1c0e9c4000000000000000000000000000000000000000000000000000000006103f3565b905090565b6103d5610435565b3d6040519150602081018201604052808252806000602084013e5090565b6103fb610435565b610403610435565b60046040518059106104125750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a723058205449088182cae5005b73a10886318b8c8e5f45159863160fd842f7b9abbac6d20029","runtime_bytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa610435565b600080831561010857600080fd5b88886040518083838082843782019150509250505060405190819003902060008181527f4000000000000000000000000000000000000000000000000000000000000000602052604090205490925073ffffffffffffffffffffffffffffffffffffffff169050801515610211576101ae89898080601f016020809104026020016040519081016040528181529291906020840183838082843750610257945050505050565b60008381527f400000000000000000000000000000000000000000000000000000000000000060205260409020805473ffffffffffffffffffffffffffffffffffffffff191673ffffffffffffffffffffffffffffffffffffffff831617905590505b61024a8188888080601f016020809104026020016040519081016040528181529291906020840183838082843750610279945050505050565b9998505050505050505050565b60006004825103602483016000f09050803b1560018114610040575b50919050565b610281610435565b610289610435565b61029284610364565b151561029d57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff1660008451116102ca576102c5610397565b6102cc565b835b60405180828051906020019080838360005b838110156102f65780820151838201526020016102de565b50505050905090810190601f1680156103235780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561034557600080fd5b61034d6103cd565b9050600081511161035d57600080fd5b9392505050565b60008073ffffffffffffffffffffffffffffffffffffffff8316151561038d5760009150610273565b50506000903b1190565b61039f610435565b6103c87fc1c0e9c4000000000000000000000000000000000000000000000000000000006103f3565b905090565b6103d5610435565b3d6040519150602081018201604052808252806000602084013e5090565b6103fb610435565b610403610435565b60046040518059106104125750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a723058205449088182cae5005b73a10886318b8c8e5f45159863160fd842f7b9abbac6d20029","real_runtime_bytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa610435565b600080831561010857600080fd5b88886040518083838082843782019150509250505060405190819003902060008181527f4000000000000000000000000000000000000000000000000000000000000000602052604090205490925073ffffffffffffffffffffffffffffffffffffffff169050801515610211576101ae89898080601f016020809104026020016040519081016040528181529291906020840183838082843750610257945050505050565b60008381527f400000000000000000000000000000000000000000000000000000000000000060205260409020805473ffffffffffffffffffffffffffffffffffffffff191673ffffffffffffffffffffffffffffffffffffffff831617905590505b61024a8188888080601f016020809104026020016040519081016040528181529291906020840183838082843750610279945050505050565b9998505050505050505050565b60006004825103602483016000f09050803b1560018114610040575b50919050565b610281610435565b610289610435565b61029284610364565b151561029d57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff1660008451116102ca576102c5610397565b6102cc565b835b60405180828051906020019080838360005b838110156102f65780820151838201526020016102de565b50505050905090810190601f1680156103235780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561034557600080fd5b61034d6103cd565b9050600081511161035d57600080fd5b9392505050565b60008073ffffffffffffffffffffffffffffffffffffffff8316151561038d5760009150610273565b50506000903b1190565b61039f610435565b6103c87fc1c0e9c4000000000000000000000000000000000000000000000000000000006103f3565b905090565b6103d5610435565b3d6040519150602081018201604052808252806000602084013e5090565b6103fb610435565b610403610435565b60046040518059106104125750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a72305820","swarm_hash":"5449088182cae5005b73a10886318b8c8e5f45159863160fd842f7b9abbac6d2","gas_estimates":{"creation":{"codeDepositCost":"227800","executionCost":"264","totalCost":"228064"},"external":{"execScript(bytes,bytes,address[])":"infinite"},"internal":{"deploy(bytes memory)":"infinite"}},"function_hashes":{"execScript(bytes,bytes,address[])":"279cea35"},"abi":[{"constant":false,"inputs":[{"name":"_script","type":"bytes"},{"name":"_input","type":"bytes"},{"name":"_blacklist","type":"address[]"}],"name":"execScript","outputs":[{"name":"","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"function"}]}; +let DeployDelegateScript = new EmbarkJS.Blockchain.Contract(DeployDelegateScriptJSONConfig); +export default DeployDelegateScript; diff --git a/abi/contracts/DepositableDelegateProxy.js b/abi/contracts/DepositableDelegateProxy.js new file mode 100644 index 0000000..41986c4 --- /dev/null +++ b/abi/contracts/DepositableDelegateProxy.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let DepositableDelegateProxyJSONConfig = {"contract_name":{"className":"DepositableDelegateProxy","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"FORWARDING()":"2b2584f6","FWD_GAS_LIMIT()":"0ceafa2a","UPGRADEABLE()":"7e84a4ff","implementation()":"5c60da1b","proxyType()":"4555d5c9"},"abiDefinition":[{"constant":true,"inputs":[],"name":"FWD_GAS_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FORWARDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"codeAddr","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"UPGRADEABLE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/common/DepositableDelegateProxy.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/common/DepositableDelegateProxy.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/common/DepositableDelegateProxy.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"FORWARDING()":"2b2584f6","FWD_GAS_LIMIT()":"0ceafa2a","UPGRADEABLE()":"7e84a4ff","implementation()":"5c60da1b","proxyType()":"4555d5c9"},"abi":[{"constant":true,"inputs":[],"name":"FWD_GAS_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FORWARDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"codeAddr","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"UPGRADEABLE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}]}; +let DepositableDelegateProxy = new EmbarkJS.Blockchain.Contract(DepositableDelegateProxyJSONConfig); +export default DepositableDelegateProxy; diff --git a/abi/contracts/ERC20.js b/abi/contracts/ERC20.js new file mode 100644 index 0000000..ee3641a --- /dev/null +++ b/abi/contracts/ERC20.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let ERC20JSONConfig = {"contract_name":{"className":"ERC20","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"abiDefinition":[{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/lib/zeppelin/token/ERC20.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/lib/zeppelin/token/ERC20.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/lib/zeppelin/token/ERC20.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"abi":[{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]}; +let ERC20 = new EmbarkJS.Blockchain.Contract(ERC20JSONConfig); +export default ERC20; diff --git a/abi/contracts/ERC20Basic.js b/abi/contracts/ERC20Basic.js new file mode 100644 index 0000000..58c62a5 --- /dev/null +++ b/abi/contracts/ERC20Basic.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let ERC20BasicJSONConfig = {"contract_name":{"className":"ERC20Basic","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"balanceOf(address)":"70a08231","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb"},"abiDefinition":[{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/lib/zeppelin/token/ERC20Basic.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/lib/zeppelin/token/ERC20Basic.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/lib/zeppelin/token/ERC20Basic.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"balanceOf(address)":"70a08231","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb"},"abi":[{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]}; +let ERC20Basic = new EmbarkJS.Blockchain.Contract(ERC20BasicJSONConfig); +export default ERC20Basic; diff --git a/abi/contracts/ERCProxy.js b/abi/contracts/ERCProxy.js new file mode 100644 index 0000000..c7ba434 --- /dev/null +++ b/abi/contracts/ERCProxy.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let ERCProxyJSONConfig = {"contract_name":{"className":"ERCProxy","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"FORWARDING()":"2b2584f6","UPGRADEABLE()":"7e84a4ff","implementation()":"5c60da1b","proxyType()":"4555d5c9"},"abiDefinition":[{"constant":true,"inputs":[],"name":"FORWARDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"codeAddr","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"UPGRADEABLE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/lib/misc/ERCProxy.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/lib/misc/ERCProxy.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/lib/misc/ERCProxy.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"FORWARDING()":"2b2584f6","UPGRADEABLE()":"7e84a4ff","implementation()":"5c60da1b","proxyType()":"4555d5c9"},"abi":[{"constant":true,"inputs":[],"name":"FORWARDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"codeAddr","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"UPGRADEABLE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let ERCProxy = new EmbarkJS.Blockchain.Contract(ERCProxyJSONConfig); +export default ERCProxy; diff --git a/abi/contracts/EVMScriptRegistry.js b/abi/contracts/EVMScriptRegistry.js new file mode 100644 index 0000000..1a2f32c --- /dev/null +++ b/abi/contracts/EVMScriptRegistry.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let EVMScriptRegistryJSONConfig = {"contract_name":{"className":"EVMScriptRegistry","args":[],"code":"6060604052341561000f57600080fd5b610d218061001e6000396000f3006060604052600436106100e25763ffffffff60e060020a60003504166304bf2a7f81146100e7578063178e60791461015457806332f0a3b5146101795780635ca4d4bb1461018c57806360b1e057146101a45780637e7db6e1146101b757806380afdea8146101ea5780638129fc1c146101fd5780638322fff21461021057806387a16f12146102235780638b3dd749146102425780639b3fdf4c146102555780639d4941d814610268578063a1658fad14610287578063bd8fde1c146102ea578063d4aae0c4146102fd578063f92a79ff14610310578063f97a05df14610361575b600080fd5b34156100f257600080fd5b61013860046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061039b95505050505050565b604051600160a060020a03909116815260200160405180910390f35b341561015f57600080fd5b610167610417565b60405190815260200160405180910390f35b341561018457600080fd5b61013861043b565b341561019757600080fd5b6101a26004356104bc565b005b34156101af57600080fd5b61016761055d565b34156101c257600080fd5b6101d6600160a060020a0360043516610581565b604051901515815260200160405180910390f35b34156101f557600080fd5b610167610587565b341561020857600080fd5b6101a261058d565b341561021b57600080fd5b610138610633565b341561022e57600080fd5b610167600160a060020a0360043516610638565b341561024d57600080fd5b61016761072e565b341561026057600080fd5b610167610734565b341561027357600080fd5b6101a2600160a060020a0360043516610758565b341561029257600080fd5b6101d660048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506108d095505050505050565b34156102f557600080fd5b610167610a0e565b341561030857600080fd5b610138610a32565b341561031b57600080fd5b61013860046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610a4195505050505050565b341561036c57600080fd5b610377600435610b1d565b604051600160a060020a039092168252151560208201526040908101905180910390f35b60008060006103a984610b50565b63ffffffff1691508115806103c057506064548210155b156103ce5760009250610410565b60648054839081106103dc57fe5b6000918252602090912001805490915060a060020a900460ff1661040157600061040d565b8054600160a060020a03165b92505b5050919050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a0316151561045357600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561049c57600080fd5b6102c65a03f115156104ad57600080fd5b50505060405180519150505b90565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa3610507338260006040518059106104f15750595b90808252806020026020018201604052506108d0565b151561051257600080fd5b600060648381548110151561052357fe5b6000918252602090912001805491151560a060020a0274ff0000000000000000000000000000000000000000199092169190911790555050565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b6003541561059a57600080fd5b6105a2610b63565b60648054600181016105b48382610c8d565b9160005260206000209001600060408051908101604052600080825260208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555050565b600081565b60007ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa36106833382846040518059106104f157505990808252806020026020018201604052506108d0565b151561068e57600080fd5b60648054600181016106a08382610c8d565b9160005260206000209001600060408051908101604052600160a060020a0387168152600160208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555091505b50919050565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60008061076483610581565b151561076f57600080fd5b61077761043b565b915061078282610b7d565b151561078d57600080fd5b600160a060020a03831615156107df5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156107da57600080fd5b6108cb565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561083657600080fd5b6102c65a03f1151561084757600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156108af57600080fd5b6102c65a03f115156108c057600080fd5b505050604051805150505b505050565b60006108da610cb1565b600080845111156108f357835160200290508391508082525b600054600160a060020a03161580610a04575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561099a578082015183820152602001610982565b50505050905090810190601f1680156109c75780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156109e857600080fd5b6102c65a03f115156109f957600080fd5b505050604051805190505b9695505050505050565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa381565b600054600160a060020a031681565b6000610a4b610ba3565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610ab2578082015183820152602001610a9a565b50505050905090810190601f168015610adf5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610afd57600080fd5b6102c65a03f11515610b0e57600080fd5b50505060405180519392505050565b6064805482908110610b2b57fe5b600091825260209091200154600160a060020a038116915060a060020a900460ff1682565b6000610b5d826000610c3a565b92915050565b60035415610b7057600080fd5b610b78610c79565b600355565b600080600160a060020a0383161515610b995760009150610728565b50506000903b1190565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610c1657600080fd5b6102c65a03f11515610c2757600080fd5b50505060405180519250829150505b5090565b600080610c478484610c7d565b60e060020a7fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b4390565b6000816020018301519392505050565b8154818355818115116108cb576000838152602090206108cb918101908301610cc3565b60206040519081016040526000815290565b6104b991905b80821115610c3657805474ffffffffffffffffffffffffffffffffffffffffff19168155600101610cc95600a165627a7a7230582013014811fb62c42d006b709a72a8b5ccf5272270884004456d2eb982b07e9a530029","runtimeBytecode":"6060604052600436106100e25763ffffffff60e060020a60003504166304bf2a7f81146100e7578063178e60791461015457806332f0a3b5146101795780635ca4d4bb1461018c57806360b1e057146101a45780637e7db6e1146101b757806380afdea8146101ea5780638129fc1c146101fd5780638322fff21461021057806387a16f12146102235780638b3dd749146102425780639b3fdf4c146102555780639d4941d814610268578063a1658fad14610287578063bd8fde1c146102ea578063d4aae0c4146102fd578063f92a79ff14610310578063f97a05df14610361575b600080fd5b34156100f257600080fd5b61013860046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061039b95505050505050565b604051600160a060020a03909116815260200160405180910390f35b341561015f57600080fd5b610167610417565b60405190815260200160405180910390f35b341561018457600080fd5b61013861043b565b341561019757600080fd5b6101a26004356104bc565b005b34156101af57600080fd5b61016761055d565b34156101c257600080fd5b6101d6600160a060020a0360043516610581565b604051901515815260200160405180910390f35b34156101f557600080fd5b610167610587565b341561020857600080fd5b6101a261058d565b341561021b57600080fd5b610138610633565b341561022e57600080fd5b610167600160a060020a0360043516610638565b341561024d57600080fd5b61016761072e565b341561026057600080fd5b610167610734565b341561027357600080fd5b6101a2600160a060020a0360043516610758565b341561029257600080fd5b6101d660048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506108d095505050505050565b34156102f557600080fd5b610167610a0e565b341561030857600080fd5b610138610a32565b341561031b57600080fd5b61013860046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610a4195505050505050565b341561036c57600080fd5b610377600435610b1d565b604051600160a060020a039092168252151560208201526040908101905180910390f35b60008060006103a984610b50565b63ffffffff1691508115806103c057506064548210155b156103ce5760009250610410565b60648054839081106103dc57fe5b6000918252602090912001805490915060a060020a900460ff1661040157600061040d565b8054600160a060020a03165b92505b5050919050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a0316151561045357600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561049c57600080fd5b6102c65a03f115156104ad57600080fd5b50505060405180519150505b90565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa3610507338260006040518059106104f15750595b90808252806020026020018201604052506108d0565b151561051257600080fd5b600060648381548110151561052357fe5b6000918252602090912001805491151560a060020a0274ff0000000000000000000000000000000000000000199092169190911790555050565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b6003541561059a57600080fd5b6105a2610b63565b60648054600181016105b48382610c8d565b9160005260206000209001600060408051908101604052600080825260208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555050565b600081565b60007ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa36106833382846040518059106104f157505990808252806020026020018201604052506108d0565b151561068e57600080fd5b60648054600181016106a08382610c8d565b9160005260206000209001600060408051908101604052600160a060020a0387168152600160208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555091505b50919050565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60008061076483610581565b151561076f57600080fd5b61077761043b565b915061078282610b7d565b151561078d57600080fd5b600160a060020a03831615156107df5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156107da57600080fd5b6108cb565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561083657600080fd5b6102c65a03f1151561084757600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156108af57600080fd5b6102c65a03f115156108c057600080fd5b505050604051805150505b505050565b60006108da610cb1565b600080845111156108f357835160200290508391508082525b600054600160a060020a03161580610a04575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561099a578082015183820152602001610982565b50505050905090810190601f1680156109c75780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156109e857600080fd5b6102c65a03f115156109f957600080fd5b505050604051805190505b9695505050505050565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa381565b600054600160a060020a031681565b6000610a4b610ba3565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610ab2578082015183820152602001610a9a565b50505050905090810190601f168015610adf5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610afd57600080fd5b6102c65a03f11515610b0e57600080fd5b50505060405180519392505050565b6064805482908110610b2b57fe5b600091825260209091200154600160a060020a038116915060a060020a900460ff1682565b6000610b5d826000610c3a565b92915050565b60035415610b7057600080fd5b610b78610c79565b600355565b600080600160a060020a0383161515610b995760009150610728565b50506000903b1190565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610c1657600080fd5b6102c65a03f11515610c2757600080fd5b50505060405180519250829150505b5090565b600080610c478484610c7d565b60e060020a7fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b4390565b6000816020018301519392505050565b8154818355818115116108cb576000838152602090206108cb918101908301610cc3565b60206040519081016040526000815290565b6104b991905b80821115610c3657805474ffffffffffffffffffffffffffffffffffffffffff19168155600101610cc95600a165627a7a7230582013014811fb62c42d006b709a72a8b5ccf5272270884004456d2eb982b07e9a530029","realRuntimeBytecode":"6060604052600436106100e25763ffffffff60e060020a60003504166304bf2a7f81146100e7578063178e60791461015457806332f0a3b5146101795780635ca4d4bb1461018c57806360b1e057146101a45780637e7db6e1146101b757806380afdea8146101ea5780638129fc1c146101fd5780638322fff21461021057806387a16f12146102235780638b3dd749146102425780639b3fdf4c146102555780639d4941d814610268578063a1658fad14610287578063bd8fde1c146102ea578063d4aae0c4146102fd578063f92a79ff14610310578063f97a05df14610361575b600080fd5b34156100f257600080fd5b61013860046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061039b95505050505050565b604051600160a060020a03909116815260200160405180910390f35b341561015f57600080fd5b610167610417565b60405190815260200160405180910390f35b341561018457600080fd5b61013861043b565b341561019757600080fd5b6101a26004356104bc565b005b34156101af57600080fd5b61016761055d565b34156101c257600080fd5b6101d6600160a060020a0360043516610581565b604051901515815260200160405180910390f35b34156101f557600080fd5b610167610587565b341561020857600080fd5b6101a261058d565b341561021b57600080fd5b610138610633565b341561022e57600080fd5b610167600160a060020a0360043516610638565b341561024d57600080fd5b61016761072e565b341561026057600080fd5b610167610734565b341561027357600080fd5b6101a2600160a060020a0360043516610758565b341561029257600080fd5b6101d660048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506108d095505050505050565b34156102f557600080fd5b610167610a0e565b341561030857600080fd5b610138610a32565b341561031b57600080fd5b61013860046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610a4195505050505050565b341561036c57600080fd5b610377600435610b1d565b604051600160a060020a039092168252151560208201526040908101905180910390f35b60008060006103a984610b50565b63ffffffff1691508115806103c057506064548210155b156103ce5760009250610410565b60648054839081106103dc57fe5b6000918252602090912001805490915060a060020a900460ff1661040157600061040d565b8054600160a060020a03165b92505b5050919050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a0316151561045357600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561049c57600080fd5b6102c65a03f115156104ad57600080fd5b50505060405180519150505b90565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa3610507338260006040518059106104f15750595b90808252806020026020018201604052506108d0565b151561051257600080fd5b600060648381548110151561052357fe5b6000918252602090912001805491151560a060020a0274ff0000000000000000000000000000000000000000199092169190911790555050565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b6003541561059a57600080fd5b6105a2610b63565b60648054600181016105b48382610c8d565b9160005260206000209001600060408051908101604052600080825260208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555050565b600081565b60007ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa36106833382846040518059106104f157505990808252806020026020018201604052506108d0565b151561068e57600080fd5b60648054600181016106a08382610c8d565b9160005260206000209001600060408051908101604052600160a060020a0387168152600160208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555091505b50919050565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60008061076483610581565b151561076f57600080fd5b61077761043b565b915061078282610b7d565b151561078d57600080fd5b600160a060020a03831615156107df5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156107da57600080fd5b6108cb565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561083657600080fd5b6102c65a03f1151561084757600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156108af57600080fd5b6102c65a03f115156108c057600080fd5b505050604051805150505b505050565b60006108da610cb1565b600080845111156108f357835160200290508391508082525b600054600160a060020a03161580610a04575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561099a578082015183820152602001610982565b50505050905090810190601f1680156109c75780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156109e857600080fd5b6102c65a03f115156109f957600080fd5b505050604051805190505b9695505050505050565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa381565b600054600160a060020a031681565b6000610a4b610ba3565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610ab2578082015183820152602001610a9a565b50505050905090810190601f168015610adf5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610afd57600080fd5b6102c65a03f11515610b0e57600080fd5b50505060405180519392505050565b6064805482908110610b2b57fe5b600091825260209091200154600160a060020a038116915060a060020a900460ff1682565b6000610b5d826000610c3a565b92915050565b60035415610b7057600080fd5b610b78610c79565b600355565b600080600160a060020a0383161515610b995760009150610728565b50506000903b1190565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610c1657600080fd5b6102c65a03f11515610c2757600080fd5b50505060405180519250829150505b5090565b600080610c478484610c7d565b60e060020a7fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b4390565b6000816020018301519392505050565b8154818355818115116108cb576000838152602090206108cb918101908301610cc3565b60206040519081016040526000815290565b6104b991905b80821115610c3657805474ffffffffffffffffffffffffffffffffffffffffff19168155600101610cc95600a165627a7a72305820","linkReferences":{},"swarmHash":"13014811fb62c42d006b709a72a8b5ccf5272270884004456d2eb982b07e9a53","gasEstimates":{"creation":{"codeDepositCost":"672200","executionCost":"703","totalCost":"672903"},"external":{"APP_ADDR_NAMESPACE()":"258","ETH()":"493","EVMSCRIPT_REGISTRY_APP()":"478","EVMSCRIPT_REGISTRY_APP_ID()":"324","REGISTRY_MANAGER_ROLE()":"544","addScriptExecutor(address)":"infinite","allowRecoverability(address)":"435","appId()":"568","canPerform(address,bytes32,uint256[])":"infinite","disableScriptExecutor(uint256)":"infinite","executors(uint256)":"1376","getExecutor(bytes)":"infinite","getInitializationBlock()":"656","getRecoveryVault()":"infinite","getScriptExecutor(bytes)":"infinite","initialize()":"infinite","kernel()":"922","transferToVault(address)":"infinite"}},"functionHashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","REGISTRY_MANAGER_ROLE()":"bd8fde1c","addScriptExecutor(address)":"87a16f12","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","disableScriptExecutor(uint256)":"5ca4d4bb","executors(uint256)":"f97a05df","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getRecoveryVault()":"32f0a3b5","getScriptExecutor(bytes)":"04bf2a7f","initialize()":"8129fc1c","kernel()":"d4aae0c4","transferToVault(address)":"9d4941d8"},"abiDefinition":[{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getScriptExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_executorId","type":"uint256"}],"name":"disableScriptExecutor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_executor","type":"address"}],"name":"addScriptExecutor","outputs":[{"name":"id","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"REGISTRY_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"executors","outputs":[{"name":"executor","type":"address"},{"name":"enabled","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/EVMScriptRegistry.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/EVMScriptRegistry.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/evmscript/EVMScriptRegistry.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b610d218061001e6000396000f3006060604052600436106100e25763ffffffff60e060020a60003504166304bf2a7f81146100e7578063178e60791461015457806332f0a3b5146101795780635ca4d4bb1461018c57806360b1e057146101a45780637e7db6e1146101b757806380afdea8146101ea5780638129fc1c146101fd5780638322fff21461021057806387a16f12146102235780638b3dd749146102425780639b3fdf4c146102555780639d4941d814610268578063a1658fad14610287578063bd8fde1c146102ea578063d4aae0c4146102fd578063f92a79ff14610310578063f97a05df14610361575b600080fd5b34156100f257600080fd5b61013860046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061039b95505050505050565b604051600160a060020a03909116815260200160405180910390f35b341561015f57600080fd5b610167610417565b60405190815260200160405180910390f35b341561018457600080fd5b61013861043b565b341561019757600080fd5b6101a26004356104bc565b005b34156101af57600080fd5b61016761055d565b34156101c257600080fd5b6101d6600160a060020a0360043516610581565b604051901515815260200160405180910390f35b34156101f557600080fd5b610167610587565b341561020857600080fd5b6101a261058d565b341561021b57600080fd5b610138610633565b341561022e57600080fd5b610167600160a060020a0360043516610638565b341561024d57600080fd5b61016761072e565b341561026057600080fd5b610167610734565b341561027357600080fd5b6101a2600160a060020a0360043516610758565b341561029257600080fd5b6101d660048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506108d095505050505050565b34156102f557600080fd5b610167610a0e565b341561030857600080fd5b610138610a32565b341561031b57600080fd5b61013860046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610a4195505050505050565b341561036c57600080fd5b610377600435610b1d565b604051600160a060020a039092168252151560208201526040908101905180910390f35b60008060006103a984610b50565b63ffffffff1691508115806103c057506064548210155b156103ce5760009250610410565b60648054839081106103dc57fe5b6000918252602090912001805490915060a060020a900460ff1661040157600061040d565b8054600160a060020a03165b92505b5050919050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a0316151561045357600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561049c57600080fd5b6102c65a03f115156104ad57600080fd5b50505060405180519150505b90565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa3610507338260006040518059106104f15750595b90808252806020026020018201604052506108d0565b151561051257600080fd5b600060648381548110151561052357fe5b6000918252602090912001805491151560a060020a0274ff0000000000000000000000000000000000000000199092169190911790555050565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b6003541561059a57600080fd5b6105a2610b63565b60648054600181016105b48382610c8d565b9160005260206000209001600060408051908101604052600080825260208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555050565b600081565b60007ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa36106833382846040518059106104f157505990808252806020026020018201604052506108d0565b151561068e57600080fd5b60648054600181016106a08382610c8d565b9160005260206000209001600060408051908101604052600160a060020a0387168152600160208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555091505b50919050565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60008061076483610581565b151561076f57600080fd5b61077761043b565b915061078282610b7d565b151561078d57600080fd5b600160a060020a03831615156107df5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156107da57600080fd5b6108cb565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561083657600080fd5b6102c65a03f1151561084757600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156108af57600080fd5b6102c65a03f115156108c057600080fd5b505050604051805150505b505050565b60006108da610cb1565b600080845111156108f357835160200290508391508082525b600054600160a060020a03161580610a04575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561099a578082015183820152602001610982565b50505050905090810190601f1680156109c75780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156109e857600080fd5b6102c65a03f115156109f957600080fd5b505050604051805190505b9695505050505050565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa381565b600054600160a060020a031681565b6000610a4b610ba3565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610ab2578082015183820152602001610a9a565b50505050905090810190601f168015610adf5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610afd57600080fd5b6102c65a03f11515610b0e57600080fd5b50505060405180519392505050565b6064805482908110610b2b57fe5b600091825260209091200154600160a060020a038116915060a060020a900460ff1682565b6000610b5d826000610c3a565b92915050565b60035415610b7057600080fd5b610b78610c79565b600355565b600080600160a060020a0383161515610b995760009150610728565b50506000903b1190565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610c1657600080fd5b6102c65a03f11515610c2757600080fd5b50505060405180519250829150505b5090565b600080610c478484610c7d565b60e060020a7fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b4390565b6000816020018301519392505050565b8154818355818115116108cb576000838152602090206108cb918101908301610cc3565b60206040519081016040526000815290565b6104b991905b80821115610c3657805474ffffffffffffffffffffffffffffffffffffffffff19168155600101610cc95600a165627a7a7230582013014811fb62c42d006b709a72a8b5ccf5272270884004456d2eb982b07e9a530029","runtime_bytecode":"6060604052600436106100e25763ffffffff60e060020a60003504166304bf2a7f81146100e7578063178e60791461015457806332f0a3b5146101795780635ca4d4bb1461018c57806360b1e057146101a45780637e7db6e1146101b757806380afdea8146101ea5780638129fc1c146101fd5780638322fff21461021057806387a16f12146102235780638b3dd749146102425780639b3fdf4c146102555780639d4941d814610268578063a1658fad14610287578063bd8fde1c146102ea578063d4aae0c4146102fd578063f92a79ff14610310578063f97a05df14610361575b600080fd5b34156100f257600080fd5b61013860046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061039b95505050505050565b604051600160a060020a03909116815260200160405180910390f35b341561015f57600080fd5b610167610417565b60405190815260200160405180910390f35b341561018457600080fd5b61013861043b565b341561019757600080fd5b6101a26004356104bc565b005b34156101af57600080fd5b61016761055d565b34156101c257600080fd5b6101d6600160a060020a0360043516610581565b604051901515815260200160405180910390f35b34156101f557600080fd5b610167610587565b341561020857600080fd5b6101a261058d565b341561021b57600080fd5b610138610633565b341561022e57600080fd5b610167600160a060020a0360043516610638565b341561024d57600080fd5b61016761072e565b341561026057600080fd5b610167610734565b341561027357600080fd5b6101a2600160a060020a0360043516610758565b341561029257600080fd5b6101d660048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506108d095505050505050565b34156102f557600080fd5b610167610a0e565b341561030857600080fd5b610138610a32565b341561031b57600080fd5b61013860046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610a4195505050505050565b341561036c57600080fd5b610377600435610b1d565b604051600160a060020a039092168252151560208201526040908101905180910390f35b60008060006103a984610b50565b63ffffffff1691508115806103c057506064548210155b156103ce5760009250610410565b60648054839081106103dc57fe5b6000918252602090912001805490915060a060020a900460ff1661040157600061040d565b8054600160a060020a03165b92505b5050919050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a0316151561045357600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561049c57600080fd5b6102c65a03f115156104ad57600080fd5b50505060405180519150505b90565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa3610507338260006040518059106104f15750595b90808252806020026020018201604052506108d0565b151561051257600080fd5b600060648381548110151561052357fe5b6000918252602090912001805491151560a060020a0274ff0000000000000000000000000000000000000000199092169190911790555050565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b6003541561059a57600080fd5b6105a2610b63565b60648054600181016105b48382610c8d565b9160005260206000209001600060408051908101604052600080825260208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555050565b600081565b60007ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa36106833382846040518059106104f157505990808252806020026020018201604052506108d0565b151561068e57600080fd5b60648054600181016106a08382610c8d565b9160005260206000209001600060408051908101604052600160a060020a0387168152600160208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555091505b50919050565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60008061076483610581565b151561076f57600080fd5b61077761043b565b915061078282610b7d565b151561078d57600080fd5b600160a060020a03831615156107df5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156107da57600080fd5b6108cb565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561083657600080fd5b6102c65a03f1151561084757600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156108af57600080fd5b6102c65a03f115156108c057600080fd5b505050604051805150505b505050565b60006108da610cb1565b600080845111156108f357835160200290508391508082525b600054600160a060020a03161580610a04575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561099a578082015183820152602001610982565b50505050905090810190601f1680156109c75780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156109e857600080fd5b6102c65a03f115156109f957600080fd5b505050604051805190505b9695505050505050565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa381565b600054600160a060020a031681565b6000610a4b610ba3565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610ab2578082015183820152602001610a9a565b50505050905090810190601f168015610adf5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610afd57600080fd5b6102c65a03f11515610b0e57600080fd5b50505060405180519392505050565b6064805482908110610b2b57fe5b600091825260209091200154600160a060020a038116915060a060020a900460ff1682565b6000610b5d826000610c3a565b92915050565b60035415610b7057600080fd5b610b78610c79565b600355565b600080600160a060020a0383161515610b995760009150610728565b50506000903b1190565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610c1657600080fd5b6102c65a03f11515610c2757600080fd5b50505060405180519250829150505b5090565b600080610c478484610c7d565b60e060020a7fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b4390565b6000816020018301519392505050565b8154818355818115116108cb576000838152602090206108cb918101908301610cc3565b60206040519081016040526000815290565b6104b991905b80821115610c3657805474ffffffffffffffffffffffffffffffffffffffffff19168155600101610cc95600a165627a7a7230582013014811fb62c42d006b709a72a8b5ccf5272270884004456d2eb982b07e9a530029","real_runtime_bytecode":"6060604052600436106100e25763ffffffff60e060020a60003504166304bf2a7f81146100e7578063178e60791461015457806332f0a3b5146101795780635ca4d4bb1461018c57806360b1e057146101a45780637e7db6e1146101b757806380afdea8146101ea5780638129fc1c146101fd5780638322fff21461021057806387a16f12146102235780638b3dd749146102425780639b3fdf4c146102555780639d4941d814610268578063a1658fad14610287578063bd8fde1c146102ea578063d4aae0c4146102fd578063f92a79ff14610310578063f97a05df14610361575b600080fd5b34156100f257600080fd5b61013860046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061039b95505050505050565b604051600160a060020a03909116815260200160405180910390f35b341561015f57600080fd5b610167610417565b60405190815260200160405180910390f35b341561018457600080fd5b61013861043b565b341561019757600080fd5b6101a26004356104bc565b005b34156101af57600080fd5b61016761055d565b34156101c257600080fd5b6101d6600160a060020a0360043516610581565b604051901515815260200160405180910390f35b34156101f557600080fd5b610167610587565b341561020857600080fd5b6101a261058d565b341561021b57600080fd5b610138610633565b341561022e57600080fd5b610167600160a060020a0360043516610638565b341561024d57600080fd5b61016761072e565b341561026057600080fd5b610167610734565b341561027357600080fd5b6101a2600160a060020a0360043516610758565b341561029257600080fd5b6101d660048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506108d095505050505050565b34156102f557600080fd5b610167610a0e565b341561030857600080fd5b610138610a32565b341561031b57600080fd5b61013860046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610a4195505050505050565b341561036c57600080fd5b610377600435610b1d565b604051600160a060020a039092168252151560208201526040908101905180910390f35b60008060006103a984610b50565b63ffffffff1691508115806103c057506064548210155b156103ce5760009250610410565b60648054839081106103dc57fe5b6000918252602090912001805490915060a060020a900460ff1661040157600061040d565b8054600160a060020a03165b92505b5050919050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a0316151561045357600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561049c57600080fd5b6102c65a03f115156104ad57600080fd5b50505060405180519150505b90565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa3610507338260006040518059106104f15750595b90808252806020026020018201604052506108d0565b151561051257600080fd5b600060648381548110151561052357fe5b6000918252602090912001805491151560a060020a0274ff0000000000000000000000000000000000000000199092169190911790555050565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b6003541561059a57600080fd5b6105a2610b63565b60648054600181016105b48382610c8d565b9160005260206000209001600060408051908101604052600080825260208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555050565b600081565b60007ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa36106833382846040518059106104f157505990808252806020026020018201604052506108d0565b151561068e57600080fd5b60648054600181016106a08382610c8d565b9160005260206000209001600060408051908101604052600160a060020a0387168152600160208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555091505b50919050565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60008061076483610581565b151561076f57600080fd5b61077761043b565b915061078282610b7d565b151561078d57600080fd5b600160a060020a03831615156107df5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156107da57600080fd5b6108cb565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561083657600080fd5b6102c65a03f1151561084757600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156108af57600080fd5b6102c65a03f115156108c057600080fd5b505050604051805150505b505050565b60006108da610cb1565b600080845111156108f357835160200290508391508082525b600054600160a060020a03161580610a04575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561099a578082015183820152602001610982565b50505050905090810190601f1680156109c75780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156109e857600080fd5b6102c65a03f115156109f957600080fd5b505050604051805190505b9695505050505050565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa381565b600054600160a060020a031681565b6000610a4b610ba3565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610ab2578082015183820152602001610a9a565b50505050905090810190601f168015610adf5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610afd57600080fd5b6102c65a03f11515610b0e57600080fd5b50505060405180519392505050565b6064805482908110610b2b57fe5b600091825260209091200154600160a060020a038116915060a060020a900460ff1682565b6000610b5d826000610c3a565b92915050565b60035415610b7057600080fd5b610b78610c79565b600355565b600080600160a060020a0383161515610b995760009150610728565b50506000903b1190565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610c1657600080fd5b6102c65a03f11515610c2757600080fd5b50505060405180519250829150505b5090565b600080610c478484610c7d565b60e060020a7fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b4390565b6000816020018301519392505050565b8154818355818115116108cb576000838152602090206108cb918101908301610cc3565b60206040519081016040526000815290565b6104b991905b80821115610c3657805474ffffffffffffffffffffffffffffffffffffffffff19168155600101610cc95600a165627a7a72305820","swarm_hash":"13014811fb62c42d006b709a72a8b5ccf5272270884004456d2eb982b07e9a53","gas_estimates":{"creation":{"codeDepositCost":"672200","executionCost":"703","totalCost":"672903"},"external":{"APP_ADDR_NAMESPACE()":"258","ETH()":"493","EVMSCRIPT_REGISTRY_APP()":"478","EVMSCRIPT_REGISTRY_APP_ID()":"324","REGISTRY_MANAGER_ROLE()":"544","addScriptExecutor(address)":"infinite","allowRecoverability(address)":"435","appId()":"568","canPerform(address,bytes32,uint256[])":"infinite","disableScriptExecutor(uint256)":"infinite","executors(uint256)":"1376","getExecutor(bytes)":"infinite","getInitializationBlock()":"656","getRecoveryVault()":"infinite","getScriptExecutor(bytes)":"infinite","initialize()":"infinite","kernel()":"922","transferToVault(address)":"infinite"}},"function_hashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","REGISTRY_MANAGER_ROLE()":"bd8fde1c","addScriptExecutor(address)":"87a16f12","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","disableScriptExecutor(uint256)":"5ca4d4bb","executors(uint256)":"f97a05df","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getRecoveryVault()":"32f0a3b5","getScriptExecutor(bytes)":"04bf2a7f","initialize()":"8129fc1c","kernel()":"d4aae0c4","transferToVault(address)":"9d4941d8"},"abi":[{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getScriptExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_executorId","type":"uint256"}],"name":"disableScriptExecutor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_executor","type":"address"}],"name":"addScriptExecutor","outputs":[{"name":"id","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"REGISTRY_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"executors","outputs":[{"name":"executor","type":"address"},{"name":"enabled","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let EVMScriptRegistry = new EmbarkJS.Blockchain.Contract(EVMScriptRegistryJSONConfig); +export default EVMScriptRegistry; diff --git a/abi/contracts/EVMScriptRegistryConstants.js b/abi/contracts/EVMScriptRegistryConstants.js new file mode 100644 index 0000000..95e975b --- /dev/null +++ b/abi/contracts/EVMScriptRegistryConstants.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let EVMScriptRegistryConstantsJSONConfig = {"contract_name":{"className":"EVMScriptRegistryConstants","args":[],"code":"6060604052341561000f57600080fd5b61013e8061001e6000396000f3006060604052600436106100565763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663178e6079811461005b57806360b1e057146100805780639b3fdf4c14610093575b600080fd5b341561006657600080fd5b61006e6100a6565b60405190815260200160405180910390f35b341561008b57600080fd5b61006e6100ca565b341561009e57600080fd5b61006e6100ee565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871815600a165627a7a723058202700c1ab53e3994dbcfa7e000295d924b9507041ef674ec8561f03fbbf5107ab0029","runtimeBytecode":"6060604052600436106100565763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663178e6079811461005b57806360b1e057146100805780639b3fdf4c14610093575b600080fd5b341561006657600080fd5b61006e6100a6565b60405190815260200160405180910390f35b341561008b57600080fd5b61006e6100ca565b341561009e57600080fd5b61006e6100ee565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871815600a165627a7a723058202700c1ab53e3994dbcfa7e000295d924b9507041ef674ec8561f03fbbf5107ab0029","realRuntimeBytecode":"6060604052600436106100565763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663178e6079811461005b57806360b1e057146100805780639b3fdf4c14610093575b600080fd5b341561006657600080fd5b61006e6100a6565b60405190815260200160405180910390f35b341561008b57600080fd5b61006e6100ca565b341561009e57600080fd5b61006e6100ee565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871815600a165627a7a72305820","linkReferences":{},"swarmHash":"2700c1ab53e3994dbcfa7e000295d924b9507041ef674ec8561f03fbbf5107ab","gasEstimates":{"creation":{"codeDepositCost":"63600","executionCost":"106","totalCost":"63706"},"external":{"APP_ADDR_NAMESPACE()":"173","EVMSCRIPT_REGISTRY_APP()":"217","EVMSCRIPT_REGISTRY_APP_ID()":"195"}},"functionHashes":{"APP_ADDR_NAMESPACE()":"178e6079","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/IEVMScriptRegistry.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/IEVMScriptRegistry.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/evmscript/IEVMScriptRegistry.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b61013e8061001e6000396000f3006060604052600436106100565763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663178e6079811461005b57806360b1e057146100805780639b3fdf4c14610093575b600080fd5b341561006657600080fd5b61006e6100a6565b60405190815260200160405180910390f35b341561008b57600080fd5b61006e6100ca565b341561009e57600080fd5b61006e6100ee565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871815600a165627a7a723058202700c1ab53e3994dbcfa7e000295d924b9507041ef674ec8561f03fbbf5107ab0029","runtime_bytecode":"6060604052600436106100565763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663178e6079811461005b57806360b1e057146100805780639b3fdf4c14610093575b600080fd5b341561006657600080fd5b61006e6100a6565b60405190815260200160405180910390f35b341561008b57600080fd5b61006e6100ca565b341561009e57600080fd5b61006e6100ee565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871815600a165627a7a723058202700c1ab53e3994dbcfa7e000295d924b9507041ef674ec8561f03fbbf5107ab0029","real_runtime_bytecode":"6060604052600436106100565763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663178e6079811461005b57806360b1e057146100805780639b3fdf4c14610093575b600080fd5b341561006657600080fd5b61006e6100a6565b60405190815260200160405180910390f35b341561008b57600080fd5b61006e6100ca565b341561009e57600080fd5b61006e6100ee565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871815600a165627a7a72305820","swarm_hash":"2700c1ab53e3994dbcfa7e000295d924b9507041ef674ec8561f03fbbf5107ab","gas_estimates":{"creation":{"codeDepositCost":"63600","executionCost":"106","totalCost":"63706"},"external":{"APP_ADDR_NAMESPACE()":"173","EVMSCRIPT_REGISTRY_APP()":"217","EVMSCRIPT_REGISTRY_APP_ID()":"195"}},"function_hashes":{"APP_ADDR_NAMESPACE()":"178e6079","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057"},"abi":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let EVMScriptRegistryConstants = new EmbarkJS.Blockchain.Contract(EVMScriptRegistryConstantsJSONConfig); +export default EVMScriptRegistryConstants; diff --git a/abi/contracts/EVMScriptRegistryFactory.js b/abi/contracts/EVMScriptRegistryFactory.js new file mode 100644 index 0000000..5b6f03a --- /dev/null +++ b/abi/contracts/EVMScriptRegistryFactory.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let EVMScriptRegistryFactoryJSONConfig = {"contract_name":{"className":"EVMScriptRegistryFactory","args":[],"code":"6060604052341561000f57600080fd5b61001761010c565b604051809103906000f080151561002d57600080fd5b60008054600160a060020a031916600160a060020a039290921691909117905561005561011d565b604051809103906000f080151561006b57600080fd5b60018054600160a060020a031916600160a060020a039290921691909117905561009361012e565b604051809103906000f08015156100a957600080fd5b60028054600160a060020a031916600160a060020a03929092169190911790556100d161013f565b604051809103906000f08015156100e757600080fd5b60038054600160a060020a031916600160a060020a0392909216919091179055610150565b604051610d3f8062001d7983390190565b6040516104538062002ab883390190565b6040516103fc8062002f0b83390190565b604051610491806200330783390190565b611c1980620001606000396000f3006060604052600436106100a05763ffffffff60e060020a600035041663127d679c81146100a5578063178e6079146100d45780631b380940146100f957806360b1e0571461010c578063869abc241461011f5780639b3fdf4c14610144578063af9a21bc14610157578063d162f8b01461016a578063e156a8f3146101cf578063e602e712146101f1578063ede658b014610204578063ff289fc514610269575b600080fd5b34156100b057600080fd5b6100b861028b565b604051600160a060020a03909116815260200160405180910390f35b34156100df57600080fd5b6100e761029a565b60405190815260200160405180910390f35b341561010457600080fd5b6100b86102be565b341561011757600080fd5b6100e76102cd565b341561012a57600080fd5b6100b8600160a060020a03600435811690602435166102f1565b341561014f57600080fd5b6100e761084a565b341561016257600080fd5b6100b861086e565b341561017557600080fd5b6100b860048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061087d95505050505050565b34156101da57600080fd5b6100b8600160a060020a0360043516602435610980565b34156101fc57600080fd5b6100b86109b7565b341561020f57600080fd5b6100b860048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506109c695505050505050565b341561027457600080fd5b6100b8600160a060020a0360043516602435610ac9565b600054600160a060020a031681565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b600354600160a060020a031681565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b600080548190600160a060020a038086169163f8c7fa1e917fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6191166001856040516020015260405160e060020a63ffffffff86160281526004810193909352600160a060020a03909116602483015215156044820152606401602060405180830381600087803b151561038357600080fd5b6102c65a03f1151561039457600080fd5b5050506040518051925050600160a060020a038216638129fc1c6040518163ffffffff1660e060020a028152600401600060405180830381600087803b15156103dc57600080fd5b6102c65a03f115156103ed57600080fd5b50505083600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561043657600080fd5b6102c65a03f1151561044757600080fd5b50505060405180519050905080600160a060020a031663be038478308485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156104aa57600080fd5b6102c65a03f115156104bb57600080fd5b505050604051805190503060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561051c57600080fd5b6102c65a03f1151561052d57600080fd5b5050600154600160a060020a0380851692506387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561058d57600080fd5b6102c65a03f1151561059e57600080fd5b50505060405180515050600254600160a060020a03808416916387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561060557600080fd5b6102c65a03f1151561061657600080fd5b50505060405180515050600354600160a060020a03808416916387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561067d57600080fd5b6102c65a03f1151561068e57600080fd5b505050604051805190505080600160a060020a0316639d0effdb308485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156106f057600080fd5b6102c65a03f1151561070157600080fd5b5050506040518051905060405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561075a57600080fd5b6102c65a03f1151561076b57600080fd5b50505080600160a060020a031663afd925df848485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156107c557600080fd5b6102c65a03f115156107d657600080fd5b5050506040518051905060405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561082f57600080fd5b6102c65a03f1151561084057600080fd5b5050505092915050565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600154600160a060020a031681565b60008084848461088b610af9565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b838110156108da5780820151838201526020016108c2565b50505050905090810190601f1680156109075780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561092457600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006109b0838360006040518059106109965750595b818152601f19601f830116810160200160405290506109c6565b9392505050565b600254600160a060020a031681565b6000808484846109d4610b09565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b83811015610a23578082015183820152602001610a0b565b50505050905090810190601f168015610a505780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f0801515610a6d57600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006109b083836000604051805910610adf5750595b818152601f19601f8301168101602001604052905061087d565b60405161086c80610b1a83390190565b604051610868806113868339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029a165627a7a72305820eaf1bb86b21270f9711ec656614eacb943c235f4e7dc59e9e450f6c35aca787300296060604052341561000f57600080fd5b610d218061001e6000396000f3006060604052600436106100e25763ffffffff60e060020a60003504166304bf2a7f81146100e7578063178e60791461015457806332f0a3b5146101795780635ca4d4bb1461018c57806360b1e057146101a45780637e7db6e1146101b757806380afdea8146101ea5780638129fc1c146101fd5780638322fff21461021057806387a16f12146102235780638b3dd749146102425780639b3fdf4c146102555780639d4941d814610268578063a1658fad14610287578063bd8fde1c146102ea578063d4aae0c4146102fd578063f92a79ff14610310578063f97a05df14610361575b600080fd5b34156100f257600080fd5b61013860046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061039b95505050505050565b604051600160a060020a03909116815260200160405180910390f35b341561015f57600080fd5b610167610417565b60405190815260200160405180910390f35b341561018457600080fd5b61013861043b565b341561019757600080fd5b6101a26004356104bc565b005b34156101af57600080fd5b61016761055d565b34156101c257600080fd5b6101d6600160a060020a0360043516610581565b604051901515815260200160405180910390f35b34156101f557600080fd5b610167610587565b341561020857600080fd5b6101a261058d565b341561021b57600080fd5b610138610633565b341561022e57600080fd5b610167600160a060020a0360043516610638565b341561024d57600080fd5b61016761072e565b341561026057600080fd5b610167610734565b341561027357600080fd5b6101a2600160a060020a0360043516610758565b341561029257600080fd5b6101d660048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506108d095505050505050565b34156102f557600080fd5b610167610a0e565b341561030857600080fd5b610138610a32565b341561031b57600080fd5b61013860046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610a4195505050505050565b341561036c57600080fd5b610377600435610b1d565b604051600160a060020a039092168252151560208201526040908101905180910390f35b60008060006103a984610b50565b63ffffffff1691508115806103c057506064548210155b156103ce5760009250610410565b60648054839081106103dc57fe5b6000918252602090912001805490915060a060020a900460ff1661040157600061040d565b8054600160a060020a03165b92505b5050919050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a0316151561045357600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561049c57600080fd5b6102c65a03f115156104ad57600080fd5b50505060405180519150505b90565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa3610507338260006040518059106104f15750595b90808252806020026020018201604052506108d0565b151561051257600080fd5b600060648381548110151561052357fe5b6000918252602090912001805491151560a060020a0274ff0000000000000000000000000000000000000000199092169190911790555050565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b6003541561059a57600080fd5b6105a2610b63565b60648054600181016105b48382610c8d565b9160005260206000209001600060408051908101604052600080825260208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555050565b600081565b60007ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa36106833382846040518059106104f157505990808252806020026020018201604052506108d0565b151561068e57600080fd5b60648054600181016106a08382610c8d565b9160005260206000209001600060408051908101604052600160a060020a0387168152600160208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555091505b50919050565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60008061076483610581565b151561076f57600080fd5b61077761043b565b915061078282610b7d565b151561078d57600080fd5b600160a060020a03831615156107df5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156107da57600080fd5b6108cb565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561083657600080fd5b6102c65a03f1151561084757600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156108af57600080fd5b6102c65a03f115156108c057600080fd5b505050604051805150505b505050565b60006108da610cb1565b600080845111156108f357835160200290508391508082525b600054600160a060020a03161580610a04575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561099a578082015183820152602001610982565b50505050905090810190601f1680156109c75780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156109e857600080fd5b6102c65a03f115156109f957600080fd5b505050604051805190505b9695505050505050565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa381565b600054600160a060020a031681565b6000610a4b610ba3565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610ab2578082015183820152602001610a9a565b50505050905090810190601f168015610adf5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610afd57600080fd5b6102c65a03f11515610b0e57600080fd5b50505060405180519392505050565b6064805482908110610b2b57fe5b600091825260209091200154600160a060020a038116915060a060020a900460ff1682565b6000610b5d826000610c3a565b92915050565b60035415610b7057600080fd5b610b78610c79565b600355565b600080600160a060020a0383161515610b995760009150610728565b50506000903b1190565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610c1657600080fd5b6102c65a03f11515610c2757600080fd5b50505060405180519250829150505b5090565b600080610c478484610c7d565b60e060020a7fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b4390565b6000816020018301519392505050565b8154818355818115116108cb576000838152602090206108cb918101908301610cc3565b60206040519081016040526000815290565b6104b991905b80821115610c3657805474ffffffffffffffffffffffffffffffffffffffffff19168155600101610cc95600a165627a7a7230582013014811fb62c42d006b709a72a8b5ccf5272270884004456d2eb982b07e9a5300296060604052341561000f57600080fd5b6104358061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103f7565b60008060008060008061010b6103f7565b600496505b8c8710156102be5761015a878f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103531692505050565b9550600094505b888510156101b05789898681811061017557fe5b90506020020135600160a060020a0316600160a060020a031686600160a060020a0316141515156101a557600080fd5b600190940193610161565b85600160a060020a031630600160a060020a031633600160a060020a03167f9dcff9d94fbfdb4622d11edb383005f95e78efb446c72d92f8e615c6025c470360405160405180910390a461023f876014018f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103881692505050565b63ffffffff16935060188701925061028e838f8f806020601f82018190048102016040519081016040528181529291906020840183838082843750949594505063ffffffff6103e01692505050565b838501975091508c8711156102a257600080fd5b600080858460008a6113885a03f1808015610040575050610110565b60016040518059106102cd5750595b818152601f19601f8301168101602001604052905090507f01000000000000000000000000000000000000000000000000000000000000008160008151811061031257fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053509d9c50505050505050505050505050565b60008061036084846103e7565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b60008061039584846103e7565b7c01000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b0160200190565b6000816020018301519392505050565b602060405190810160405260008152905600a165627a7a723058208b23058c84a82956c4d77f98d9e12ffd5031c6c4a78d25749f23624b33a9277500296060604052341561000f57600080fd5b6103de8061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103a0565b811561010557600080fd5b6018861461011257600080fd5b61018d610158600489898080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6101981692505050565b86868080601f0160208091040260200160405190810160405281815292919060208401838380828437506101cd945050505050565b979650505050505050565b6000806101a584846102b8565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b6101d56103a0565b6101dd6103a0565b6101e6846102c8565b15156101f157600080fd5b8373ffffffffffffffffffffffffffffffffffffffff16600084511161021e57610219610302565b610220565b835b60405180828051906020019080838360005b8381101561024a578082015183820152602001610232565b50505050905090810190601f1680156102775780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561029957600080fd5b6102a1610338565b905060008151116102b157600080fd5b9392505050565b6000816020018301519392505050565b60008073ffffffffffffffffffffffffffffffffffffffff831615156102f157600091506102fc565b823b90506000811191505b50919050565b61030a6103a0565b6103337fc1c0e9c40000000000000000000000000000000000000000000000000000000061035e565b905090565b6103406103a0565b3d6040519150602081018201604052808252806000602084013e5090565b6103666103a0565b61036e6103a0565b600460405180591061037d5750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a7230582023f55ff572da0cac99fafa43fa75fb1ebe636bd77c1e76a0b5a7171030466af500296060604052341561000f57600080fd5b6104738061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa610435565b600080831561010857600080fd5b88886040518083838082843782019150509250505060405190819003902060008181527f4000000000000000000000000000000000000000000000000000000000000000602052604090205490925073ffffffffffffffffffffffffffffffffffffffff169050801515610211576101ae89898080601f016020809104026020016040519081016040528181529291906020840183838082843750610257945050505050565b60008381527f400000000000000000000000000000000000000000000000000000000000000060205260409020805473ffffffffffffffffffffffffffffffffffffffff191673ffffffffffffffffffffffffffffffffffffffff831617905590505b61024a8188888080601f016020809104026020016040519081016040528181529291906020840183838082843750610279945050505050565b9998505050505050505050565b60006004825103602483016000f09050803b1560018114610040575b50919050565b610281610435565b610289610435565b61029284610364565b151561029d57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff1660008451116102ca576102c5610397565b6102cc565b835b60405180828051906020019080838360005b838110156102f65780820151838201526020016102de565b50505050905090810190601f1680156103235780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561034557600080fd5b61034d6103cd565b9050600081511161035d57600080fd5b9392505050565b60008073ffffffffffffffffffffffffffffffffffffffff8316151561038d5760009150610273565b50506000903b1190565b61039f610435565b6103c87fc1c0e9c4000000000000000000000000000000000000000000000000000000006103f3565b905090565b6103d5610435565b3d6040519150602081018201604052808252806000602084013e5090565b6103fb610435565b610403610435565b60046040518059106104125750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a723058205449088182cae5005b73a10886318b8c8e5f45159863160fd842f7b9abbac6d20029","runtimeBytecode":"6060604052600436106100a05763ffffffff60e060020a600035041663127d679c81146100a5578063178e6079146100d45780631b380940146100f957806360b1e0571461010c578063869abc241461011f5780639b3fdf4c14610144578063af9a21bc14610157578063d162f8b01461016a578063e156a8f3146101cf578063e602e712146101f1578063ede658b014610204578063ff289fc514610269575b600080fd5b34156100b057600080fd5b6100b861028b565b604051600160a060020a03909116815260200160405180910390f35b34156100df57600080fd5b6100e761029a565b60405190815260200160405180910390f35b341561010457600080fd5b6100b86102be565b341561011757600080fd5b6100e76102cd565b341561012a57600080fd5b6100b8600160a060020a03600435811690602435166102f1565b341561014f57600080fd5b6100e761084a565b341561016257600080fd5b6100b861086e565b341561017557600080fd5b6100b860048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061087d95505050505050565b34156101da57600080fd5b6100b8600160a060020a0360043516602435610980565b34156101fc57600080fd5b6100b86109b7565b341561020f57600080fd5b6100b860048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506109c695505050505050565b341561027457600080fd5b6100b8600160a060020a0360043516602435610ac9565b600054600160a060020a031681565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b600354600160a060020a031681565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b600080548190600160a060020a038086169163f8c7fa1e917fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6191166001856040516020015260405160e060020a63ffffffff86160281526004810193909352600160a060020a03909116602483015215156044820152606401602060405180830381600087803b151561038357600080fd5b6102c65a03f1151561039457600080fd5b5050506040518051925050600160a060020a038216638129fc1c6040518163ffffffff1660e060020a028152600401600060405180830381600087803b15156103dc57600080fd5b6102c65a03f115156103ed57600080fd5b50505083600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561043657600080fd5b6102c65a03f1151561044757600080fd5b50505060405180519050905080600160a060020a031663be038478308485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156104aa57600080fd5b6102c65a03f115156104bb57600080fd5b505050604051805190503060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561051c57600080fd5b6102c65a03f1151561052d57600080fd5b5050600154600160a060020a0380851692506387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561058d57600080fd5b6102c65a03f1151561059e57600080fd5b50505060405180515050600254600160a060020a03808416916387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561060557600080fd5b6102c65a03f1151561061657600080fd5b50505060405180515050600354600160a060020a03808416916387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561067d57600080fd5b6102c65a03f1151561068e57600080fd5b505050604051805190505080600160a060020a0316639d0effdb308485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156106f057600080fd5b6102c65a03f1151561070157600080fd5b5050506040518051905060405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561075a57600080fd5b6102c65a03f1151561076b57600080fd5b50505080600160a060020a031663afd925df848485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156107c557600080fd5b6102c65a03f115156107d657600080fd5b5050506040518051905060405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561082f57600080fd5b6102c65a03f1151561084057600080fd5b5050505092915050565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600154600160a060020a031681565b60008084848461088b610af9565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b838110156108da5780820151838201526020016108c2565b50505050905090810190601f1680156109075780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561092457600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006109b0838360006040518059106109965750595b818152601f19601f830116810160200160405290506109c6565b9392505050565b600254600160a060020a031681565b6000808484846109d4610b09565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b83811015610a23578082015183820152602001610a0b565b50505050905090810190601f168015610a505780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f0801515610a6d57600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006109b083836000604051805910610adf5750595b818152601f19601f8301168101602001604052905061087d565b60405161086c80610b1a83390190565b604051610868806113868339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029a165627a7a72305820eaf1bb86b21270f9711ec656614eacb943c235f4e7dc59e9e450f6c35aca78730029","realRuntimeBytecode":"6060604052600436106100a05763ffffffff60e060020a600035041663127d679c81146100a5578063178e6079146100d45780631b380940146100f957806360b1e0571461010c578063869abc241461011f5780639b3fdf4c14610144578063af9a21bc14610157578063d162f8b01461016a578063e156a8f3146101cf578063e602e712146101f1578063ede658b014610204578063ff289fc514610269575b600080fd5b34156100b057600080fd5b6100b861028b565b604051600160a060020a03909116815260200160405180910390f35b34156100df57600080fd5b6100e761029a565b60405190815260200160405180910390f35b341561010457600080fd5b6100b86102be565b341561011757600080fd5b6100e76102cd565b341561012a57600080fd5b6100b8600160a060020a03600435811690602435166102f1565b341561014f57600080fd5b6100e761084a565b341561016257600080fd5b6100b861086e565b341561017557600080fd5b6100b860048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061087d95505050505050565b34156101da57600080fd5b6100b8600160a060020a0360043516602435610980565b34156101fc57600080fd5b6100b86109b7565b341561020f57600080fd5b6100b860048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506109c695505050505050565b341561027457600080fd5b6100b8600160a060020a0360043516602435610ac9565b600054600160a060020a031681565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b600354600160a060020a031681565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b600080548190600160a060020a038086169163f8c7fa1e917fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6191166001856040516020015260405160e060020a63ffffffff86160281526004810193909352600160a060020a03909116602483015215156044820152606401602060405180830381600087803b151561038357600080fd5b6102c65a03f1151561039457600080fd5b5050506040518051925050600160a060020a038216638129fc1c6040518163ffffffff1660e060020a028152600401600060405180830381600087803b15156103dc57600080fd5b6102c65a03f115156103ed57600080fd5b50505083600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561043657600080fd5b6102c65a03f1151561044757600080fd5b50505060405180519050905080600160a060020a031663be038478308485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156104aa57600080fd5b6102c65a03f115156104bb57600080fd5b505050604051805190503060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561051c57600080fd5b6102c65a03f1151561052d57600080fd5b5050600154600160a060020a0380851692506387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561058d57600080fd5b6102c65a03f1151561059e57600080fd5b50505060405180515050600254600160a060020a03808416916387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561060557600080fd5b6102c65a03f1151561061657600080fd5b50505060405180515050600354600160a060020a03808416916387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561067d57600080fd5b6102c65a03f1151561068e57600080fd5b505050604051805190505080600160a060020a0316639d0effdb308485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156106f057600080fd5b6102c65a03f1151561070157600080fd5b5050506040518051905060405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561075a57600080fd5b6102c65a03f1151561076b57600080fd5b50505080600160a060020a031663afd925df848485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156107c557600080fd5b6102c65a03f115156107d657600080fd5b5050506040518051905060405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561082f57600080fd5b6102c65a03f1151561084057600080fd5b5050505092915050565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600154600160a060020a031681565b60008084848461088b610af9565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b838110156108da5780820151838201526020016108c2565b50505050905090810190601f1680156109075780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561092457600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006109b0838360006040518059106109965750595b818152601f19601f830116810160200160405290506109c6565b9392505050565b600254600160a060020a031681565b6000808484846109d4610b09565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b83811015610a23578082015183820152602001610a0b565b50505050905090810190601f168015610a505780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f0801515610a6d57600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006109b083836000604051805910610adf5750595b818152601f19601f8301168101602001604052905061087d565b60405161086c80610b1a83390190565b604051610868806113868339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029a165627a7a72305820","linkReferences":{},"swarmHash":"eaf1bb86b21270f9711ec656614eacb943c235f4e7dc59e9e450f6c35aca7873","gasEstimates":{"creation":{"codeDepositCost":"1438600","executionCost":"infinite","totalCost":"infinite"},"external":{"APP_ADDR_NAMESPACE()":"258","EVMSCRIPT_REGISTRY_APP()":"346","EVMSCRIPT_REGISTRY_APP_ID()":"302","baseCalls()":"721","baseDel()":"787","baseDeployDel()":"633","baseReg()":"589","newAppProxy(address,bytes32)":"infinite","newAppProxy(address,bytes32,bytes)":"infinite","newAppProxyPinned(address,bytes32)":"infinite","newAppProxyPinned(address,bytes32,bytes)":"infinite","newEVMScriptRegistry(address,address)":"infinite"}},"functionHashes":{"APP_ADDR_NAMESPACE()":"178e6079","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","baseCalls()":"af9a21bc","baseDel()":"e602e712","baseDeployDel()":"1b380940","baseReg()":"127d679c","newAppProxy(address,bytes32)":"e156a8f3","newAppProxy(address,bytes32,bytes)":"ede658b0","newAppProxyPinned(address,bytes32)":"ff289fc5","newAppProxyPinned(address,bytes32,bytes)":"d162f8b0","newEVMScriptRegistry(address,address)":"869abc24"},"abiDefinition":[{"constant":true,"inputs":[],"name":"baseReg","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"baseDeployDel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_dao","type":"address"},{"name":"_root","type":"address"}],"name":"newEVMScriptRegistry","outputs":[{"name":"reg","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"baseCalls","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"name":"newAppProxyPinned","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"}],"name":"newAppProxy","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"baseDel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"name":"newAppProxy","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"}],"name":"newAppProxyPinned","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proxy","type":"address"},{"indexed":false,"name":"isUpgradeable","type":"bool"},{"indexed":false,"name":"appId","type":"bytes32"}],"name":"NewAppProxy","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/factory/EVMScriptRegistryFactory.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/factory/EVMScriptRegistryFactory.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/factory/EVMScriptRegistryFactory.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b61001761010c565b604051809103906000f080151561002d57600080fd5b60008054600160a060020a031916600160a060020a039290921691909117905561005561011d565b604051809103906000f080151561006b57600080fd5b60018054600160a060020a031916600160a060020a039290921691909117905561009361012e565b604051809103906000f08015156100a957600080fd5b60028054600160a060020a031916600160a060020a03929092169190911790556100d161013f565b604051809103906000f08015156100e757600080fd5b60038054600160a060020a031916600160a060020a0392909216919091179055610150565b604051610d3f8062001d7983390190565b6040516104538062002ab883390190565b6040516103fc8062002f0b83390190565b604051610491806200330783390190565b611c1980620001606000396000f3006060604052600436106100a05763ffffffff60e060020a600035041663127d679c81146100a5578063178e6079146100d45780631b380940146100f957806360b1e0571461010c578063869abc241461011f5780639b3fdf4c14610144578063af9a21bc14610157578063d162f8b01461016a578063e156a8f3146101cf578063e602e712146101f1578063ede658b014610204578063ff289fc514610269575b600080fd5b34156100b057600080fd5b6100b861028b565b604051600160a060020a03909116815260200160405180910390f35b34156100df57600080fd5b6100e761029a565b60405190815260200160405180910390f35b341561010457600080fd5b6100b86102be565b341561011757600080fd5b6100e76102cd565b341561012a57600080fd5b6100b8600160a060020a03600435811690602435166102f1565b341561014f57600080fd5b6100e761084a565b341561016257600080fd5b6100b861086e565b341561017557600080fd5b6100b860048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061087d95505050505050565b34156101da57600080fd5b6100b8600160a060020a0360043516602435610980565b34156101fc57600080fd5b6100b86109b7565b341561020f57600080fd5b6100b860048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506109c695505050505050565b341561027457600080fd5b6100b8600160a060020a0360043516602435610ac9565b600054600160a060020a031681565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b600354600160a060020a031681565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b600080548190600160a060020a038086169163f8c7fa1e917fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6191166001856040516020015260405160e060020a63ffffffff86160281526004810193909352600160a060020a03909116602483015215156044820152606401602060405180830381600087803b151561038357600080fd5b6102c65a03f1151561039457600080fd5b5050506040518051925050600160a060020a038216638129fc1c6040518163ffffffff1660e060020a028152600401600060405180830381600087803b15156103dc57600080fd5b6102c65a03f115156103ed57600080fd5b50505083600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561043657600080fd5b6102c65a03f1151561044757600080fd5b50505060405180519050905080600160a060020a031663be038478308485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156104aa57600080fd5b6102c65a03f115156104bb57600080fd5b505050604051805190503060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561051c57600080fd5b6102c65a03f1151561052d57600080fd5b5050600154600160a060020a0380851692506387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561058d57600080fd5b6102c65a03f1151561059e57600080fd5b50505060405180515050600254600160a060020a03808416916387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561060557600080fd5b6102c65a03f1151561061657600080fd5b50505060405180515050600354600160a060020a03808416916387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561067d57600080fd5b6102c65a03f1151561068e57600080fd5b505050604051805190505080600160a060020a0316639d0effdb308485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156106f057600080fd5b6102c65a03f1151561070157600080fd5b5050506040518051905060405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561075a57600080fd5b6102c65a03f1151561076b57600080fd5b50505080600160a060020a031663afd925df848485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156107c557600080fd5b6102c65a03f115156107d657600080fd5b5050506040518051905060405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561082f57600080fd5b6102c65a03f1151561084057600080fd5b5050505092915050565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600154600160a060020a031681565b60008084848461088b610af9565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b838110156108da5780820151838201526020016108c2565b50505050905090810190601f1680156109075780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561092457600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006109b0838360006040518059106109965750595b818152601f19601f830116810160200160405290506109c6565b9392505050565b600254600160a060020a031681565b6000808484846109d4610b09565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b83811015610a23578082015183820152602001610a0b565b50505050905090810190601f168015610a505780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f0801515610a6d57600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006109b083836000604051805910610adf5750595b818152601f19601f8301168101602001604052905061087d565b60405161086c80610b1a83390190565b604051610868806113868339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029a165627a7a72305820eaf1bb86b21270f9711ec656614eacb943c235f4e7dc59e9e450f6c35aca787300296060604052341561000f57600080fd5b610d218061001e6000396000f3006060604052600436106100e25763ffffffff60e060020a60003504166304bf2a7f81146100e7578063178e60791461015457806332f0a3b5146101795780635ca4d4bb1461018c57806360b1e057146101a45780637e7db6e1146101b757806380afdea8146101ea5780638129fc1c146101fd5780638322fff21461021057806387a16f12146102235780638b3dd749146102425780639b3fdf4c146102555780639d4941d814610268578063a1658fad14610287578063bd8fde1c146102ea578063d4aae0c4146102fd578063f92a79ff14610310578063f97a05df14610361575b600080fd5b34156100f257600080fd5b61013860046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061039b95505050505050565b604051600160a060020a03909116815260200160405180910390f35b341561015f57600080fd5b610167610417565b60405190815260200160405180910390f35b341561018457600080fd5b61013861043b565b341561019757600080fd5b6101a26004356104bc565b005b34156101af57600080fd5b61016761055d565b34156101c257600080fd5b6101d6600160a060020a0360043516610581565b604051901515815260200160405180910390f35b34156101f557600080fd5b610167610587565b341561020857600080fd5b6101a261058d565b341561021b57600080fd5b610138610633565b341561022e57600080fd5b610167600160a060020a0360043516610638565b341561024d57600080fd5b61016761072e565b341561026057600080fd5b610167610734565b341561027357600080fd5b6101a2600160a060020a0360043516610758565b341561029257600080fd5b6101d660048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506108d095505050505050565b34156102f557600080fd5b610167610a0e565b341561030857600080fd5b610138610a32565b341561031b57600080fd5b61013860046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610a4195505050505050565b341561036c57600080fd5b610377600435610b1d565b604051600160a060020a039092168252151560208201526040908101905180910390f35b60008060006103a984610b50565b63ffffffff1691508115806103c057506064548210155b156103ce5760009250610410565b60648054839081106103dc57fe5b6000918252602090912001805490915060a060020a900460ff1661040157600061040d565b8054600160a060020a03165b92505b5050919050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a0316151561045357600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561049c57600080fd5b6102c65a03f115156104ad57600080fd5b50505060405180519150505b90565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa3610507338260006040518059106104f15750595b90808252806020026020018201604052506108d0565b151561051257600080fd5b600060648381548110151561052357fe5b6000918252602090912001805491151560a060020a0274ff0000000000000000000000000000000000000000199092169190911790555050565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b6003541561059a57600080fd5b6105a2610b63565b60648054600181016105b48382610c8d565b9160005260206000209001600060408051908101604052600080825260208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555050565b600081565b60007ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa36106833382846040518059106104f157505990808252806020026020018201604052506108d0565b151561068e57600080fd5b60648054600181016106a08382610c8d565b9160005260206000209001600060408051908101604052600160a060020a0387168152600160208201529190508151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03919091161781556020820151815490151560a060020a0274ff0000000000000000000000000000000000000000199091161790555091505b50919050565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60008061076483610581565b151561076f57600080fd5b61077761043b565b915061078282610b7d565b151561078d57600080fd5b600160a060020a03831615156107df5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156107da57600080fd5b6108cb565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561083657600080fd5b6102c65a03f1151561084757600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156108af57600080fd5b6102c65a03f115156108c057600080fd5b505050604051805150505b505050565b60006108da610cb1565b600080845111156108f357835160200290508391508082525b600054600160a060020a03161580610a04575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561099a578082015183820152602001610982565b50505050905090810190601f1680156109c75780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156109e857600080fd5b6102c65a03f115156109f957600080fd5b505050604051805190505b9695505050505050565b7ff7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa381565b600054600160a060020a031681565b6000610a4b610ba3565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610ab2578082015183820152602001610a9a565b50505050905090810190601f168015610adf5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610afd57600080fd5b6102c65a03f11515610b0e57600080fd5b50505060405180519392505050565b6064805482908110610b2b57fe5b600091825260209091200154600160a060020a038116915060a060020a900460ff1682565b6000610b5d826000610c3a565b92915050565b60035415610b7057600080fd5b610b78610c79565b600355565b600080600160a060020a0383161515610b995760009150610728565b50506000903b1190565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610c1657600080fd5b6102c65a03f11515610c2757600080fd5b50505060405180519250829150505b5090565b600080610c478484610c7d565b60e060020a7fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b4390565b6000816020018301519392505050565b8154818355818115116108cb576000838152602090206108cb918101908301610cc3565b60206040519081016040526000815290565b6104b991905b80821115610c3657805474ffffffffffffffffffffffffffffffffffffffffff19168155600101610cc95600a165627a7a7230582013014811fb62c42d006b709a72a8b5ccf5272270884004456d2eb982b07e9a5300296060604052341561000f57600080fd5b6104358061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103f7565b60008060008060008061010b6103f7565b600496505b8c8710156102be5761015a878f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103531692505050565b9550600094505b888510156101b05789898681811061017557fe5b90506020020135600160a060020a0316600160a060020a031686600160a060020a0316141515156101a557600080fd5b600190940193610161565b85600160a060020a031630600160a060020a031633600160a060020a03167f9dcff9d94fbfdb4622d11edb383005f95e78efb446c72d92f8e615c6025c470360405160405180910390a461023f876014018f8f8080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6103881692505050565b63ffffffff16935060188701925061028e838f8f806020601f82018190048102016040519081016040528181529291906020840183838082843750949594505063ffffffff6103e01692505050565b838501975091508c8711156102a257600080fd5b600080858460008a6113885a03f1808015610040575050610110565b60016040518059106102cd5750595b818152601f19601f8301168101602001604052905090507f01000000000000000000000000000000000000000000000000000000000000008160008151811061031257fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053509d9c50505050505050505050505050565b60008061036084846103e7565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b60008061039584846103e7565b7c01000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000090911604949350505050565b0160200190565b6000816020018301519392505050565b602060405190810160405260008152905600a165627a7a723058208b23058c84a82956c4d77f98d9e12ffd5031c6c4a78d25749f23624b33a9277500296060604052341561000f57600080fd5b6103de8061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa6103a0565b811561010557600080fd5b6018861461011257600080fd5b61018d610158600489898080601f016020809104026020016040519081016040528181529291906020840183838082843750949594505063ffffffff6101981692505050565b86868080601f0160208091040260200160405190810160405281815292919060208401838380828437506101cd945050505050565b979650505050505050565b6000806101a584846102b8565b6c010000000000000000000000006bffffffffffffffffffffffff1990911604949350505050565b6101d56103a0565b6101dd6103a0565b6101e6846102c8565b15156101f157600080fd5b8373ffffffffffffffffffffffffffffffffffffffff16600084511161021e57610219610302565b610220565b835b60405180828051906020019080838360005b8381101561024a578082015183820152602001610232565b50505050905090810190601f1680156102775780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561029957600080fd5b6102a1610338565b905060008151116102b157600080fd5b9392505050565b6000816020018301519392505050565b60008073ffffffffffffffffffffffffffffffffffffffff831615156102f157600091506102fc565b823b90506000811191505b50919050565b61030a6103a0565b6103337fc1c0e9c40000000000000000000000000000000000000000000000000000000061035e565b905090565b6103406103a0565b3d6040519150602081018201604052808252806000602084013e5090565b6103666103a0565b61036e6103a0565b600460405180591061037d5750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a7230582023f55ff572da0cac99fafa43fa75fb1ebe636bd77c1e76a0b5a7171030466af500296060604052341561000f57600080fd5b6104738061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663279cea358114610045575b600080fd5b341561005057600080fd5b61007b60246004803582810192908201359181358083019290820135916044359182019101356100f2565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100b757808201518382015260200161009f565b50505050905090810190601f1680156100e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100fa610435565b600080831561010857600080fd5b88886040518083838082843782019150509250505060405190819003902060008181527f4000000000000000000000000000000000000000000000000000000000000000602052604090205490925073ffffffffffffffffffffffffffffffffffffffff169050801515610211576101ae89898080601f016020809104026020016040519081016040528181529291906020840183838082843750610257945050505050565b60008381527f400000000000000000000000000000000000000000000000000000000000000060205260409020805473ffffffffffffffffffffffffffffffffffffffff191673ffffffffffffffffffffffffffffffffffffffff831617905590505b61024a8188888080601f016020809104026020016040519081016040528181529291906020840183838082843750610279945050505050565b9998505050505050505050565b60006004825103602483016000f09050803b1560018114610040575b50919050565b610281610435565b610289610435565b61029284610364565b151561029d57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff1660008451116102ca576102c5610397565b6102cc565b835b60405180828051906020019080838360005b838110156102f65780820151838201526020016102de565b50505050905090810190601f1680156103235780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561034557600080fd5b61034d6103cd565b9050600081511161035d57600080fd5b9392505050565b60008073ffffffffffffffffffffffffffffffffffffffff8316151561038d5760009150610273565b50506000903b1190565b61039f610435565b6103c87fc1c0e9c4000000000000000000000000000000000000000000000000000000006103f3565b905090565b6103d5610435565b3d6040519150602081018201604052808252806000602084013e5090565b6103fb610435565b610403610435565b60046040518059106104125750595b8181526020601f909201601f191681018201604052908101939093525090919050565b602060405190810160405260008152905600a165627a7a723058205449088182cae5005b73a10886318b8c8e5f45159863160fd842f7b9abbac6d20029","runtime_bytecode":"6060604052600436106100a05763ffffffff60e060020a600035041663127d679c81146100a5578063178e6079146100d45780631b380940146100f957806360b1e0571461010c578063869abc241461011f5780639b3fdf4c14610144578063af9a21bc14610157578063d162f8b01461016a578063e156a8f3146101cf578063e602e712146101f1578063ede658b014610204578063ff289fc514610269575b600080fd5b34156100b057600080fd5b6100b861028b565b604051600160a060020a03909116815260200160405180910390f35b34156100df57600080fd5b6100e761029a565b60405190815260200160405180910390f35b341561010457600080fd5b6100b86102be565b341561011757600080fd5b6100e76102cd565b341561012a57600080fd5b6100b8600160a060020a03600435811690602435166102f1565b341561014f57600080fd5b6100e761084a565b341561016257600080fd5b6100b861086e565b341561017557600080fd5b6100b860048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061087d95505050505050565b34156101da57600080fd5b6100b8600160a060020a0360043516602435610980565b34156101fc57600080fd5b6100b86109b7565b341561020f57600080fd5b6100b860048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506109c695505050505050565b341561027457600080fd5b6100b8600160a060020a0360043516602435610ac9565b600054600160a060020a031681565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b600354600160a060020a031681565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b600080548190600160a060020a038086169163f8c7fa1e917fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6191166001856040516020015260405160e060020a63ffffffff86160281526004810193909352600160a060020a03909116602483015215156044820152606401602060405180830381600087803b151561038357600080fd5b6102c65a03f1151561039457600080fd5b5050506040518051925050600160a060020a038216638129fc1c6040518163ffffffff1660e060020a028152600401600060405180830381600087803b15156103dc57600080fd5b6102c65a03f115156103ed57600080fd5b50505083600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561043657600080fd5b6102c65a03f1151561044757600080fd5b50505060405180519050905080600160a060020a031663be038478308485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156104aa57600080fd5b6102c65a03f115156104bb57600080fd5b505050604051805190503060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561051c57600080fd5b6102c65a03f1151561052d57600080fd5b5050600154600160a060020a0380851692506387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561058d57600080fd5b6102c65a03f1151561059e57600080fd5b50505060405180515050600254600160a060020a03808416916387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561060557600080fd5b6102c65a03f1151561061657600080fd5b50505060405180515050600354600160a060020a03808416916387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561067d57600080fd5b6102c65a03f1151561068e57600080fd5b505050604051805190505080600160a060020a0316639d0effdb308485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156106f057600080fd5b6102c65a03f1151561070157600080fd5b5050506040518051905060405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561075a57600080fd5b6102c65a03f1151561076b57600080fd5b50505080600160a060020a031663afd925df848485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156107c557600080fd5b6102c65a03f115156107d657600080fd5b5050506040518051905060405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561082f57600080fd5b6102c65a03f1151561084057600080fd5b5050505092915050565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600154600160a060020a031681565b60008084848461088b610af9565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b838110156108da5780820151838201526020016108c2565b50505050905090810190601f1680156109075780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561092457600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006109b0838360006040518059106109965750595b818152601f19601f830116810160200160405290506109c6565b9392505050565b600254600160a060020a031681565b6000808484846109d4610b09565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b83811015610a23578082015183820152602001610a0b565b50505050905090810190601f168015610a505780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f0801515610a6d57600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006109b083836000604051805910610adf5750595b818152601f19601f8301168101602001604052905061087d565b60405161086c80610b1a83390190565b604051610868806113868339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029a165627a7a72305820eaf1bb86b21270f9711ec656614eacb943c235f4e7dc59e9e450f6c35aca78730029","real_runtime_bytecode":"6060604052600436106100a05763ffffffff60e060020a600035041663127d679c81146100a5578063178e6079146100d45780631b380940146100f957806360b1e0571461010c578063869abc241461011f5780639b3fdf4c14610144578063af9a21bc14610157578063d162f8b01461016a578063e156a8f3146101cf578063e602e712146101f1578063ede658b014610204578063ff289fc514610269575b600080fd5b34156100b057600080fd5b6100b861028b565b604051600160a060020a03909116815260200160405180910390f35b34156100df57600080fd5b6100e761029a565b60405190815260200160405180910390f35b341561010457600080fd5b6100b86102be565b341561011757600080fd5b6100e76102cd565b341561012a57600080fd5b6100b8600160a060020a03600435811690602435166102f1565b341561014f57600080fd5b6100e761084a565b341561016257600080fd5b6100b861086e565b341561017557600080fd5b6100b860048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061087d95505050505050565b34156101da57600080fd5b6100b8600160a060020a0360043516602435610980565b34156101fc57600080fd5b6100b86109b7565b341561020f57600080fd5b6100b860048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506109c695505050505050565b341561027457600080fd5b6100b8600160a060020a0360043516602435610ac9565b600054600160a060020a031681565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b600354600160a060020a031681565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b600080548190600160a060020a038086169163f8c7fa1e917fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6191166001856040516020015260405160e060020a63ffffffff86160281526004810193909352600160a060020a03909116602483015215156044820152606401602060405180830381600087803b151561038357600080fd5b6102c65a03f1151561039457600080fd5b5050506040518051925050600160a060020a038216638129fc1c6040518163ffffffff1660e060020a028152600401600060405180830381600087803b15156103dc57600080fd5b6102c65a03f115156103ed57600080fd5b50505083600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561043657600080fd5b6102c65a03f1151561044757600080fd5b50505060405180519050905080600160a060020a031663be038478308485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156104aa57600080fd5b6102c65a03f115156104bb57600080fd5b505050604051805190503060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561051c57600080fd5b6102c65a03f1151561052d57600080fd5b5050600154600160a060020a0380851692506387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561058d57600080fd5b6102c65a03f1151561059e57600080fd5b50505060405180515050600254600160a060020a03808416916387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561060557600080fd5b6102c65a03f1151561061657600080fd5b50505060405180515050600354600160a060020a03808416916387a16f12911660006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561067d57600080fd5b6102c65a03f1151561068e57600080fd5b505050604051805190505080600160a060020a0316639d0effdb308485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156106f057600080fd5b6102c65a03f1151561070157600080fd5b5050506040518051905060405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561075a57600080fd5b6102c65a03f1151561076b57600080fd5b50505080600160a060020a031663afd925df848485600160a060020a031663bd8fde1c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156107c557600080fd5b6102c65a03f115156107d657600080fd5b5050506040518051905060405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561082f57600080fd5b6102c65a03f1151561084057600080fd5b5050505092915050565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600154600160a060020a031681565b60008084848461088b610af9565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b838110156108da5780820151838201526020016108c2565b50505050905090810190601f1680156109075780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151561092457600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006109b0838360006040518059106109965750595b818152601f19601f830116810160200160405290506109c6565b9392505050565b600254600160a060020a031681565b6000808484846109d4610b09565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b83811015610a23578082015183820152602001610a0b565b50505050905090810190601f168015610a505780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f0801515610a6d57600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b60006109b083836000604051805910610adf5750595b818152601f19601f8301168101602001604052905061087d565b60405161086c80610b1a83390190565b604051610868806113868339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029a165627a7a72305820","swarm_hash":"eaf1bb86b21270f9711ec656614eacb943c235f4e7dc59e9e450f6c35aca7873","gas_estimates":{"creation":{"codeDepositCost":"1438600","executionCost":"infinite","totalCost":"infinite"},"external":{"APP_ADDR_NAMESPACE()":"258","EVMSCRIPT_REGISTRY_APP()":"346","EVMSCRIPT_REGISTRY_APP_ID()":"302","baseCalls()":"721","baseDel()":"787","baseDeployDel()":"633","baseReg()":"589","newAppProxy(address,bytes32)":"infinite","newAppProxy(address,bytes32,bytes)":"infinite","newAppProxyPinned(address,bytes32)":"infinite","newAppProxyPinned(address,bytes32,bytes)":"infinite","newEVMScriptRegistry(address,address)":"infinite"}},"function_hashes":{"APP_ADDR_NAMESPACE()":"178e6079","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","baseCalls()":"af9a21bc","baseDel()":"e602e712","baseDeployDel()":"1b380940","baseReg()":"127d679c","newAppProxy(address,bytes32)":"e156a8f3","newAppProxy(address,bytes32,bytes)":"ede658b0","newAppProxyPinned(address,bytes32)":"ff289fc5","newAppProxyPinned(address,bytes32,bytes)":"d162f8b0","newEVMScriptRegistry(address,address)":"869abc24"},"abi":[{"constant":true,"inputs":[],"name":"baseReg","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"baseDeployDel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_dao","type":"address"},{"name":"_root","type":"address"}],"name":"newEVMScriptRegistry","outputs":[{"name":"reg","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"baseCalls","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"name":"newAppProxyPinned","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"}],"name":"newAppProxy","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"baseDel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"name":"newAppProxy","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"}],"name":"newAppProxyPinned","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proxy","type":"address"},{"indexed":false,"name":"isUpgradeable","type":"bool"},{"indexed":false,"name":"appId","type":"bytes32"}],"name":"NewAppProxy","type":"event"}]}; +let EVMScriptRegistryFactory = new EmbarkJS.Blockchain.Contract(EVMScriptRegistryFactoryJSONConfig); +export default EVMScriptRegistryFactory; diff --git a/abi/contracts/EVMScriptRunner.js b/abi/contracts/EVMScriptRunner.js new file mode 100644 index 0000000..7d876b7 --- /dev/null +++ b/abi/contracts/EVMScriptRunner.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let EVMScriptRunnerJSONConfig = {"contract_name":{"className":"EVMScriptRunner","args":[],"code":"6060604052341561000f57600080fd5b6103718061001e6000396000f30060606040526004361061005e5763ffffffff60e060020a600035041663178e6079811461006357806360b1e0571461008857806380afdea81461009b5780639b3fdf4c146100ae578063d4aae0c4146100c1578063f92a79ff146100fd575b600080fd5b341561006e57600080fd5b61007661014e565b60405190815260200160405180910390f35b341561009357600080fd5b610076610172565b34156100a657600080fd5b610076610196565b34156100b957600080fd5b61007661019c565b34156100cc57600080fd5b6100d46101c0565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561010857600080fd5b6100d460046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506101dc95505050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b60015481565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60006101e66102c5565b73ffffffffffffffffffffffffffffffffffffffff166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561025a578082015183820152602001610242565b50505050905090810190601f1680156102875780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156102a557600080fd5b6102c65a03f115156102b657600080fd5b50505060405180519392505050565b60008054819073ffffffffffffffffffffffffffffffffffffffff166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156102a557600080fd00a165627a7a7230582059d7da62a56565b2ac022e6bf3ef812ed77d969145b989d4423f0674df3d11160029","runtimeBytecode":"60606040526004361061005e5763ffffffff60e060020a600035041663178e6079811461006357806360b1e0571461008857806380afdea81461009b5780639b3fdf4c146100ae578063d4aae0c4146100c1578063f92a79ff146100fd575b600080fd5b341561006e57600080fd5b61007661014e565b60405190815260200160405180910390f35b341561009357600080fd5b610076610172565b34156100a657600080fd5b610076610196565b34156100b957600080fd5b61007661019c565b34156100cc57600080fd5b6100d46101c0565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561010857600080fd5b6100d460046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506101dc95505050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b60015481565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60006101e66102c5565b73ffffffffffffffffffffffffffffffffffffffff166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561025a578082015183820152602001610242565b50505050905090810190601f1680156102875780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156102a557600080fd5b6102c65a03f115156102b657600080fd5b50505060405180519392505050565b60008054819073ffffffffffffffffffffffffffffffffffffffff166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156102a557600080fd00a165627a7a7230582059d7da62a56565b2ac022e6bf3ef812ed77d969145b989d4423f0674df3d11160029","realRuntimeBytecode":"60606040526004361061005e5763ffffffff60e060020a600035041663178e6079811461006357806360b1e0571461008857806380afdea81461009b5780639b3fdf4c146100ae578063d4aae0c4146100c1578063f92a79ff146100fd575b600080fd5b341561006e57600080fd5b61007661014e565b60405190815260200160405180910390f35b341561009357600080fd5b610076610172565b34156100a657600080fd5b610076610196565b34156100b957600080fd5b61007661019c565b34156100cc57600080fd5b6100d46101c0565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561010857600080fd5b6100d460046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506101dc95505050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b60015481565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60006101e66102c5565b73ffffffffffffffffffffffffffffffffffffffff166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561025a578082015183820152602001610242565b50505050905090810190601f1680156102875780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156102a557600080fd5b6102c65a03f115156102b657600080fd5b50505060405180519392505050565b60008054819073ffffffffffffffffffffffffffffffffffffffff166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156102a557600080fd00a165627a7a72305820","linkReferences":{},"swarmHash":"59d7da62a56565b2ac022e6bf3ef812ed77d969145b989d4423f0674df3d1116","gasEstimates":{"creation":{"codeDepositCost":"176200","executionCost":"215","totalCost":"176415"},"external":{"APP_ADDR_NAMESPACE()":"236","EVMSCRIPT_REGISTRY_APP()":"302","EVMSCRIPT_REGISTRY_APP_ID()":"258","appId()":"480","getExecutor(bytes)":"infinite","kernel()":"539"},"internal":{"getExecutorRegistry()":"infinite","returnedDataDecoded()":"infinite","runScript(bytes memory,bytes memory,address[] memory)":"infinite"}},"functionHashes":{"APP_ADDR_NAMESPACE()":"178e6079","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","appId()":"80afdea8","getExecutor(bytes)":"f92a79ff","kernel()":"d4aae0c4"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/EVMScriptRunner.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/EVMScriptRunner.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/evmscript/EVMScriptRunner.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b6103718061001e6000396000f30060606040526004361061005e5763ffffffff60e060020a600035041663178e6079811461006357806360b1e0571461008857806380afdea81461009b5780639b3fdf4c146100ae578063d4aae0c4146100c1578063f92a79ff146100fd575b600080fd5b341561006e57600080fd5b61007661014e565b60405190815260200160405180910390f35b341561009357600080fd5b610076610172565b34156100a657600080fd5b610076610196565b34156100b957600080fd5b61007661019c565b34156100cc57600080fd5b6100d46101c0565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561010857600080fd5b6100d460046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506101dc95505050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b60015481565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60006101e66102c5565b73ffffffffffffffffffffffffffffffffffffffff166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561025a578082015183820152602001610242565b50505050905090810190601f1680156102875780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156102a557600080fd5b6102c65a03f115156102b657600080fd5b50505060405180519392505050565b60008054819073ffffffffffffffffffffffffffffffffffffffff166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156102a557600080fd00a165627a7a7230582059d7da62a56565b2ac022e6bf3ef812ed77d969145b989d4423f0674df3d11160029","runtime_bytecode":"60606040526004361061005e5763ffffffff60e060020a600035041663178e6079811461006357806360b1e0571461008857806380afdea81461009b5780639b3fdf4c146100ae578063d4aae0c4146100c1578063f92a79ff146100fd575b600080fd5b341561006e57600080fd5b61007661014e565b60405190815260200160405180910390f35b341561009357600080fd5b610076610172565b34156100a657600080fd5b610076610196565b34156100b957600080fd5b61007661019c565b34156100cc57600080fd5b6100d46101c0565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561010857600080fd5b6100d460046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506101dc95505050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b60015481565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60006101e66102c5565b73ffffffffffffffffffffffffffffffffffffffff166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561025a578082015183820152602001610242565b50505050905090810190601f1680156102875780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156102a557600080fd5b6102c65a03f115156102b657600080fd5b50505060405180519392505050565b60008054819073ffffffffffffffffffffffffffffffffffffffff166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156102a557600080fd00a165627a7a7230582059d7da62a56565b2ac022e6bf3ef812ed77d969145b989d4423f0674df3d11160029","real_runtime_bytecode":"60606040526004361061005e5763ffffffff60e060020a600035041663178e6079811461006357806360b1e0571461008857806380afdea81461009b5780639b3fdf4c146100ae578063d4aae0c4146100c1578063f92a79ff146100fd575b600080fd5b341561006e57600080fd5b61007661014e565b60405190815260200160405180910390f35b341561009357600080fd5b610076610172565b34156100a657600080fd5b610076610196565b34156100b957600080fd5b61007661019c565b34156100cc57600080fd5b6100d46101c0565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561010857600080fd5b6100d460046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506101dc95505050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b60015481565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60006101e66102c5565b73ffffffffffffffffffffffffffffffffffffffff166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561025a578082015183820152602001610242565b50505050905090810190601f1680156102875780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156102a557600080fd5b6102c65a03f115156102b657600080fd5b50505060405180519392505050565b60008054819073ffffffffffffffffffffffffffffffffffffffff166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156102a557600080fd00a165627a7a72305820","swarm_hash":"59d7da62a56565b2ac022e6bf3ef812ed77d969145b989d4423f0674df3d1116","gas_estimates":{"creation":{"codeDepositCost":"176200","executionCost":"215","totalCost":"176415"},"external":{"APP_ADDR_NAMESPACE()":"236","EVMSCRIPT_REGISTRY_APP()":"302","EVMSCRIPT_REGISTRY_APP_ID()":"258","appId()":"480","getExecutor(bytes)":"infinite","kernel()":"539"},"internal":{"getExecutorRegistry()":"infinite","returnedDataDecoded()":"infinite","runScript(bytes memory,bytes memory,address[] memory)":"infinite"}},"function_hashes":{"APP_ADDR_NAMESPACE()":"178e6079","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","appId()":"80afdea8","getExecutor(bytes)":"f92a79ff","kernel()":"d4aae0c4"},"abi":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let EVMScriptRunner = new EmbarkJS.Blockchain.Contract(EVMScriptRunnerJSONConfig); +export default EVMScriptRunner; diff --git a/abi/contracts/EtherTokenConstant.js b/abi/contracts/EtherTokenConstant.js new file mode 100644 index 0000000..dfbe56d --- /dev/null +++ b/abi/contracts/EtherTokenConstant.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let EtherTokenConstantJSONConfig = {"contract_name":{"className":"EtherTokenConstant","args":[],"code":"6060604052341561000f57600080fd5b60ad8061001d6000396000f300606060405260043610603e5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416638322fff281146043575b600080fd5b3415604d57600080fd5b6053607c565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6000815600a165627a7a723058200c1443827bf8f62129cf8fdc21fc6728cee6041cc444722bb0cf96cd8f2509cb0029","runtimeBytecode":"606060405260043610603e5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416638322fff281146043575b600080fd5b3415604d57600080fd5b6053607c565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6000815600a165627a7a723058200c1443827bf8f62129cf8fdc21fc6728cee6041cc444722bb0cf96cd8f2509cb0029","realRuntimeBytecode":"606060405260043610603e5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416638322fff281146043575b600080fd5b3415604d57600080fd5b6053607c565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6000815600a165627a7a72305820","linkReferences":{},"swarmHash":"0c1443827bf8f62129cf8fdc21fc6728cee6041cc444722bb0cf96cd8f2509cb","gasEstimates":{"creation":{"codeDepositCost":"34600","executionCost":"82","totalCost":"34682"},"external":{"ETH()":"182"}},"functionHashes":{"ETH()":"8322fff2"},"abiDefinition":[{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/common/EtherTokenConstant.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/common/EtherTokenConstant.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/common/EtherTokenConstant.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b60ad8061001d6000396000f300606060405260043610603e5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416638322fff281146043575b600080fd5b3415604d57600080fd5b6053607c565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6000815600a165627a7a723058200c1443827bf8f62129cf8fdc21fc6728cee6041cc444722bb0cf96cd8f2509cb0029","runtime_bytecode":"606060405260043610603e5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416638322fff281146043575b600080fd5b3415604d57600080fd5b6053607c565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6000815600a165627a7a723058200c1443827bf8f62129cf8fdc21fc6728cee6041cc444722bb0cf96cd8f2509cb0029","real_runtime_bytecode":"606060405260043610603e5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416638322fff281146043575b600080fd5b3415604d57600080fd5b6053607c565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6000815600a165627a7a72305820","swarm_hash":"0c1443827bf8f62129cf8fdc21fc6728cee6041cc444722bb0cf96cd8f2509cb","gas_estimates":{"creation":{"codeDepositCost":"34600","executionCost":"82","totalCost":"34682"},"external":{"ETH()":"182"}},"function_hashes":{"ETH()":"8322fff2"},"abi":[{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let EtherTokenConstant = new EmbarkJS.Blockchain.Contract(EtherTokenConstantJSONConfig); +export default EtherTokenConstant; diff --git a/abi/contracts/IACL.js b/abi/contracts/IACL.js new file mode 100644 index 0000000..b1928a9 --- /dev/null +++ b/abi/contracts/IACL.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let IACLJSONConfig = {"contract_name":{"className":"IACL","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"hasPermission(address,address,bytes32,bytes)":"fdef9106","initialize(address)":"c4d66de8"},"abiDefinition":[{"constant":false,"inputs":[{"name":"permissionsCreator","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"},{"name":"where","type":"address"},{"name":"what","type":"bytes32"},{"name":"how","type":"bytes"}],"name":"hasPermission","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/acl/IACL.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/acl/IACL.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/acl/IACL.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"hasPermission(address,address,bytes32,bytes)":"fdef9106","initialize(address)":"c4d66de8"},"abi":[{"constant":false,"inputs":[{"name":"permissionsCreator","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"},{"name":"where","type":"address"},{"name":"what","type":"bytes32"},{"name":"how","type":"bytes"}],"name":"hasPermission","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let IACL = new EmbarkJS.Blockchain.Contract(IACLJSONConfig); +export default IACL; diff --git a/abi/contracts/IEVMScriptExecutor.js b/abi/contracts/IEVMScriptExecutor.js new file mode 100644 index 0000000..d522cbd --- /dev/null +++ b/abi/contracts/IEVMScriptExecutor.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let IEVMScriptExecutorJSONConfig = {"contract_name":{"className":"IEVMScriptExecutor","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"execScript(bytes,bytes,address[])":"279cea35"},"abiDefinition":[{"constant":false,"inputs":[{"name":"script","type":"bytes"},{"name":"input","type":"bytes"},{"name":"blacklist","type":"address[]"}],"name":"execScript","outputs":[{"name":"","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/IEVMScriptExecutor.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/IEVMScriptExecutor.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/evmscript/IEVMScriptExecutor.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"execScript(bytes,bytes,address[])":"279cea35"},"abi":[{"constant":false,"inputs":[{"name":"script","type":"bytes"},{"name":"input","type":"bytes"},{"name":"blacklist","type":"address[]"}],"name":"execScript","outputs":[{"name":"","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"function"}]}; +let IEVMScriptExecutor = new EmbarkJS.Blockchain.Contract(IEVMScriptExecutorJSONConfig); +export default IEVMScriptExecutor; diff --git a/abi/contracts/IEVMScriptRegistry.js b/abi/contracts/IEVMScriptRegistry.js new file mode 100644 index 0000000..9f43920 --- /dev/null +++ b/abi/contracts/IEVMScriptRegistry.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let IEVMScriptRegistryJSONConfig = {"contract_name":{"className":"IEVMScriptRegistry","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"addScriptExecutor(address)":"87a16f12","disableScriptExecutor(uint256)":"5ca4d4bb","getScriptExecutor(bytes)":"04bf2a7f"},"abiDefinition":[{"constant":true,"inputs":[{"name":"script","type":"bytes"}],"name":"getScriptExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"executorId","type":"uint256"}],"name":"disableScriptExecutor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"executor","type":"address"}],"name":"addScriptExecutor","outputs":[{"name":"id","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/IEVMScriptRegistry.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/IEVMScriptRegistry.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/evmscript/IEVMScriptRegistry.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"addScriptExecutor(address)":"87a16f12","disableScriptExecutor(uint256)":"5ca4d4bb","getScriptExecutor(bytes)":"04bf2a7f"},"abi":[{"constant":true,"inputs":[{"name":"script","type":"bytes"}],"name":"getScriptExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"executorId","type":"uint256"}],"name":"disableScriptExecutor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"executor","type":"address"}],"name":"addScriptExecutor","outputs":[{"name":"id","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"}]}; +let IEVMScriptRegistry = new EmbarkJS.Blockchain.Contract(IEVMScriptRegistryJSONConfig); +export default IEVMScriptRegistry; diff --git a/abi/contracts/IKernel.js b/abi/contracts/IKernel.js new file mode 100644 index 0000000..a77ac10 --- /dev/null +++ b/abi/contracts/IKernel.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let IKernelJSONConfig = {"contract_name":{"className":"IKernel","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"acl()":"de287359","allowRecoverability(address)":"7e7db6e1","getApp(bytes32)":"42c71f1d","getRecoveryVault()":"32f0a3b5","hasPermission(address,address,bytes32,bytes)":"fdef9106","setApp(bytes32,bytes32,address)":"ae5b2540","transferToVault(address)":"9d4941d8"},"abiDefinition":[{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"id","type":"bytes32"}],"name":"getApp","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"namespace","type":"bytes32"},{"name":"name","type":"bytes32"},{"name":"app","type":"address"}],"name":"setApp","outputs":[{"name":"id","type":"bytes32"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"acl","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"},{"name":"where","type":"address"},{"name":"what","type":"bytes32"},{"name":"how","type":"bytes"}],"name":"hasPermission","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"namespace","type":"bytes32"},{"indexed":true,"name":"name","type":"bytes32"},{"indexed":true,"name":"id","type":"bytes32"},{"indexed":false,"name":"app","type":"address"}],"name":"SetApp","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/kernel/IKernel.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/kernel/IKernel.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/kernel/IKernel.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"acl()":"de287359","allowRecoverability(address)":"7e7db6e1","getApp(bytes32)":"42c71f1d","getRecoveryVault()":"32f0a3b5","hasPermission(address,address,bytes32,bytes)":"fdef9106","setApp(bytes32,bytes32,address)":"ae5b2540","transferToVault(address)":"9d4941d8"},"abi":[{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"id","type":"bytes32"}],"name":"getApp","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"namespace","type":"bytes32"},{"name":"name","type":"bytes32"},{"name":"app","type":"address"}],"name":"setApp","outputs":[{"name":"id","type":"bytes32"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"acl","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"},{"name":"where","type":"address"},{"name":"what","type":"bytes32"},{"name":"how","type":"bytes"}],"name":"hasPermission","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"namespace","type":"bytes32"},{"indexed":true,"name":"name","type":"bytes32"},{"indexed":true,"name":"id","type":"bytes32"},{"indexed":false,"name":"app","type":"address"}],"name":"SetApp","type":"event"}]}; +let IKernel = new EmbarkJS.Blockchain.Contract(IKernelJSONConfig); +export default IKernel; diff --git a/abi/contracts/ILPVault.js b/abi/contracts/ILPVault.js new file mode 100644 index 0000000..37e6c4d --- /dev/null +++ b/abi/contracts/ILPVault.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let ILPVaultJSONConfig = {"contract_name":{"className":"ILPVault","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"authorizePayment(bytes32,address,address,uint256)":"a5426df1"},"abiDefinition":[{"constant":false,"inputs":[{"name":"_ref","type":"bytes32"},{"name":"_dest","type":"address"},{"name":"_token","type":"address"},{"name":"_amount","type":"uint256"}],"name":"authorizePayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/LiquidPledgingStorage.sol","originalFilename":"contracts/LiquidPledgingStorage.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/LiquidPledgingStorage.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"authorizePayment(bytes32,address,address,uint256)":"a5426df1"},"abi":[{"constant":false,"inputs":[{"name":"_ref","type":"bytes32"},{"name":"_dest","type":"address"},{"name":"_token","type":"address"},{"name":"_amount","type":"uint256"}],"name":"authorizePayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]}; +let ILPVault = new EmbarkJS.Blockchain.Contract(ILPVaultJSONConfig); +export default ILPVault; diff --git a/abi/contracts/ILiquidPledging.js b/abi/contracts/ILiquidPledging.js new file mode 100644 index 0000000..77d1852 --- /dev/null +++ b/abi/contracts/ILiquidPledging.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let ILiquidPledgingJSONConfig = {"contract_name":{"className":"ILiquidPledging","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"cancelPayment(uint64,uint256)":"e9c211e2","confirmPayment(uint64,uint256)":"2ee88808"},"abiDefinition":[{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"confirmPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"cancelPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/LPVault.sol","originalFilename":"contracts/LPVault.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/LPVault.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"cancelPayment(uint64,uint256)":"e9c211e2","confirmPayment(uint64,uint256)":"2ee88808"},"abi":[{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"confirmPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"cancelPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]}; +let ILiquidPledging = new EmbarkJS.Blockchain.Contract(ILiquidPledgingJSONConfig); +export default ILiquidPledging; diff --git a/abi/contracts/ILiquidPledgingPlugin.js b/abi/contracts/ILiquidPledgingPlugin.js new file mode 100644 index 0000000..c0ab1f2 --- /dev/null +++ b/abi/contracts/ILiquidPledgingPlugin.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let ILiquidPledgingPluginJSONConfig = {"contract_name":{"className":"ILiquidPledgingPlugin","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"afterTransfer(uint64,uint64,uint64,uint64,address,uint256)":"0da5e18c","beforeTransfer(uint64,uint64,uint64,uint64,address,uint256)":"31c51a00"},"abiDefinition":[{"constant":false,"inputs":[{"name":"pledgeManager","type":"uint64"},{"name":"pledgeFrom","type":"uint64"},{"name":"pledgeTo","type":"uint64"},{"name":"context","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"afterTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"pledgeManager","type":"uint64"},{"name":"pledgeFrom","type":"uint64"},{"name":"pledgeTo","type":"uint64"},{"name":"context","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"beforeTransfer","outputs":[{"name":"maxAllowed","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/ILiquidPledgingPlugin.sol","originalFilename":"contracts/ILiquidPledgingPlugin.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/ILiquidPledgingPlugin.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"afterTransfer(uint64,uint64,uint64,uint64,address,uint256)":"0da5e18c","beforeTransfer(uint64,uint64,uint64,uint64,address,uint256)":"31c51a00"},"abi":[{"constant":false,"inputs":[{"name":"pledgeManager","type":"uint64"},{"name":"pledgeFrom","type":"uint64"},{"name":"pledgeTo","type":"uint64"},{"name":"context","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"afterTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"pledgeManager","type":"uint64"},{"name":"pledgeFrom","type":"uint64"},{"name":"pledgeTo","type":"uint64"},{"name":"context","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"beforeTransfer","outputs":[{"name":"maxAllowed","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"}]}; +let ILiquidPledgingPlugin = new EmbarkJS.Blockchain.Contract(ILiquidPledgingPluginJSONConfig); +export default ILiquidPledgingPlugin; diff --git a/abi/contracts/IVaultRecoverable.js b/abi/contracts/IVaultRecoverable.js new file mode 100644 index 0000000..e2b90bc --- /dev/null +++ b/abi/contracts/IVaultRecoverable.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let IVaultRecoverableJSONConfig = {"contract_name":{"className":"IVaultRecoverable","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"allowRecoverability(address)":"7e7db6e1","getRecoveryVault()":"32f0a3b5","transferToVault(address)":"9d4941d8"},"abiDefinition":[{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/common/IVaultRecoverable.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/common/IVaultRecoverable.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/common/IVaultRecoverable.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"allowRecoverability(address)":"7e7db6e1","getRecoveryVault()":"32f0a3b5","transferToVault(address)":"9d4941d8"},"abi":[{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]}; +let IVaultRecoverable = new EmbarkJS.Blockchain.Contract(IVaultRecoverableJSONConfig); +export default IVaultRecoverable; diff --git a/abi/contracts/Initializable.js b/abi/contracts/Initializable.js new file mode 100644 index 0000000..faaa3ca --- /dev/null +++ b/abi/contracts/Initializable.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let InitializableJSONConfig = {"contract_name":{"className":"Initializable","args":[],"code":"6060604052341561000f57600080fd5b6101168061001e6000396000f30060606040526004361060525763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166380afdea8811460575780638b3dd749146079578063d4aae0c4146089575b600080fd5b3415606157600080fd5b606760c2565b60405190815260200160405180910390f35b3415608357600080fd5b606760c8565b3415609357600080fd5b609960ce565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60015481565b60035490565b60005473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a7230582070edfcf65cda019d12e7afc90f9ad3bc72d252dbf2d77109d3038f526df1151f0029","runtimeBytecode":"60606040526004361060525763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166380afdea8811460575780638b3dd749146079578063d4aae0c4146089575b600080fd5b3415606157600080fd5b606760c2565b60405190815260200160405180910390f35b3415608357600080fd5b606760c8565b3415609357600080fd5b609960ce565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60015481565b60035490565b60005473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a7230582070edfcf65cda019d12e7afc90f9ad3bc72d252dbf2d77109d3038f526df1151f0029","realRuntimeBytecode":"60606040526004361060525763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166380afdea8811460575780638b3dd749146079578063d4aae0c4146089575b600080fd5b3415606157600080fd5b606760c2565b60405190815260200160405180910390f35b3415608357600080fd5b606760c8565b3415609357600080fd5b609960ce565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60015481565b60035490565b60005473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a72305820","linkReferences":{},"swarmHash":"70edfcf65cda019d12e7afc90f9ad3bc72d252dbf2d77109d3038f526df1151f","gasEstimates":{"creation":{"codeDepositCost":"55600","executionCost":"100","totalCost":"55700"},"external":{"appId()":"373","getInitializationBlock()":"395","kernel()":"432"},"internal":{"getBlockNumber()":"infinite","initialized()":"infinite"}},"functionHashes":{"appId()":"80afdea8","getInitializationBlock()":"8b3dd749","kernel()":"d4aae0c4"},"abiDefinition":[{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/common/Initializable.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/common/Initializable.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/common/Initializable.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b6101168061001e6000396000f30060606040526004361060525763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166380afdea8811460575780638b3dd749146079578063d4aae0c4146089575b600080fd5b3415606157600080fd5b606760c2565b60405190815260200160405180910390f35b3415608357600080fd5b606760c8565b3415609357600080fd5b609960ce565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60015481565b60035490565b60005473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a7230582070edfcf65cda019d12e7afc90f9ad3bc72d252dbf2d77109d3038f526df1151f0029","runtime_bytecode":"60606040526004361060525763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166380afdea8811460575780638b3dd749146079578063d4aae0c4146089575b600080fd5b3415606157600080fd5b606760c2565b60405190815260200160405180910390f35b3415608357600080fd5b606760c8565b3415609357600080fd5b609960ce565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60015481565b60035490565b60005473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a7230582070edfcf65cda019d12e7afc90f9ad3bc72d252dbf2d77109d3038f526df1151f0029","real_runtime_bytecode":"60606040526004361060525763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166380afdea8811460575780638b3dd749146079578063d4aae0c4146089575b600080fd5b3415606157600080fd5b606760c2565b60405190815260200160405180910390f35b3415608357600080fd5b606760c8565b3415609357600080fd5b609960ce565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60015481565b60035490565b60005473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a72305820","swarm_hash":"70edfcf65cda019d12e7afc90f9ad3bc72d252dbf2d77109d3038f526df1151f","gas_estimates":{"creation":{"codeDepositCost":"55600","executionCost":"100","totalCost":"55700"},"external":{"appId()":"373","getInitializationBlock()":"395","kernel()":"432"},"internal":{"getBlockNumber()":"infinite","initialized()":"infinite"}},"function_hashes":{"appId()":"80afdea8","getInitializationBlock()":"8b3dd749","kernel()":"d4aae0c4"},"abi":[{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let Initializable = new EmbarkJS.Blockchain.Contract(InitializableJSONConfig); +export default Initializable; diff --git a/abi/contracts/IsContract.js b/abi/contracts/IsContract.js new file mode 100644 index 0000000..98200f0 --- /dev/null +++ b/abi/contracts/IsContract.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let IsContractJSONConfig = {"contract_name":{"className":"IsContract","args":[],"code":"60606040523415600e57600080fd5b603580601b6000396000f3006060604052600080fd00a165627a7a7230582042d22c9a2a1e0bc4cf554fcf77c69c5f4ebf54e8872e0ae884d45ca1ed98682b0029","runtimeBytecode":"6060604052600080fd00a165627a7a7230582042d22c9a2a1e0bc4cf554fcf77c69c5f4ebf54e8872e0ae884d45ca1ed98682b0029","realRuntimeBytecode":"6060604052600080fd00a165627a7a72305820","linkReferences":{},"swarmHash":"42d22c9a2a1e0bc4cf554fcf77c69c5f4ebf54e8872e0ae884d45ca1ed98682b","gasEstimates":{"creation":{"codeDepositCost":"10600","executionCost":"61","totalCost":"10661"},"internal":{"isContract(address)":"infinite"}},"functionHashes":{},"abiDefinition":[],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/common/IsContract.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/common/IsContract.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/common/IsContract.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"60606040523415600e57600080fd5b603580601b6000396000f3006060604052600080fd00a165627a7a7230582042d22c9a2a1e0bc4cf554fcf77c69c5f4ebf54e8872e0ae884d45ca1ed98682b0029","runtime_bytecode":"6060604052600080fd00a165627a7a7230582042d22c9a2a1e0bc4cf554fcf77c69c5f4ebf54e8872e0ae884d45ca1ed98682b0029","real_runtime_bytecode":"6060604052600080fd00a165627a7a72305820","swarm_hash":"42d22c9a2a1e0bc4cf554fcf77c69c5f4ebf54e8872e0ae884d45ca1ed98682b","gas_estimates":{"creation":{"codeDepositCost":"10600","executionCost":"61","totalCost":"10661"},"internal":{"isContract(address)":"infinite"}},"function_hashes":{},"abi":[]}; +let IsContract = new EmbarkJS.Blockchain.Contract(IsContractJSONConfig); +export default IsContract; diff --git a/abi/contracts/Kernel.js b/abi/contracts/Kernel.js new file mode 100644 index 0000000..b3ede4e --- /dev/null +++ b/abi/contracts/Kernel.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let KernelJSONConfig = {"contract_name":{"address":"0x49798b01e64295497624645B77004614CC5160c3","file":"@aragon/os/contracts/kernel/Kernel.sol","className":"Kernel","args":[],"code":"6060604052341561000f57600080fd5b6126508061001e6000396000f300606060405260043610620001b55763ffffffff60e060020a600035041663097207788114620001ba5780631113ed0d14620001e2578063178e607914620001f857806325012699146200020e5780632c2333cd146200022457806332f0a3b5146200023f57806338bb6def146200027157806342c71f1d146200028a578063485cc95514620002a3578063756f604914620002cb5780637e7db6e114620002e157806380afdea8146200031757806380cd5ac3146200032d5780638322fff214620003525780638b3dd74914620003685780638ea8dc9d146200037e578063958fde8214620003945780639d4941d814620003b9578063a3b4b07f14620003db578063ae5b254014620003f1578063b7c529ab1462000419578063cbcc65eb146200042f578063cc473be31462000445578063d162f8b0146200045b578063d4aae0c414620004c3578063dabca01914620004d9578063db8a61d414620004ef578063de2873591462000505578063e156a8f3146200051b578063e943d1e61462000540578063ede658b0146200056a578063f8c7fa1e14620005d2578063fdef910614620005fc578063ff289fc5146200066b575b600080fd5b3415620001c657600080fd5b620001d062000690565b60405190815260200160405180910390f35b3415620001ee57600080fd5b620001d0620006b4565b34156200020457600080fd5b620001d0620006d8565b34156200021a57600080fd5b620001d0620006eb565b34156200023057600080fd5b6200023d6004356200070f565b005b34156200024b57600080fd5b62000255620007a0565b604051600160a060020a03909116815260200160405180910390f35b34156200027d57600080fd5b62000255600435620007be565b34156200029657600080fd5b62000255600435620007d9565b3415620002af57600080fd5b6200023d600160a060020a0360043581169060243516620007f4565b3415620002d757600080fd5b620001d062000911565b3415620002ed57600080fd5b62000303600160a060020a036004351662000935565b604051901515815260200160405180910390f35b34156200032357600080fd5b620001d06200093b565b34156200033957600080fd5b62000255600435600160a060020a036024351662000941565b34156200035e57600080fd5b62000255620009ba565b34156200037457600080fd5b620001d0620009bf565b34156200038a57600080fd5b620001d0620009c5565b3415620003a057600080fd5b62000255600435600160a060020a0360243516620009d8565b3415620003c557600080fd5b6200023d600160a060020a036004351662000a46565b3415620003e757600080fd5b620001d062000bcd565b3415620003fd57600080fd5b620001d0600435602435600160a060020a036044351662000bf1565b34156200042557600080fd5b620001d062000c9f565b34156200043b57600080fd5b620001d062000cc3565b34156200045157600080fd5b620001d062000cd6565b34156200046757600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000cfa95505050505050565b3415620004cf57600080fd5b6200025562000e07565b3415620004e557600080fd5b620001d062000e16565b3415620004fb57600080fd5b620001d062000e1c565b34156200051157600080fd5b6200025562000e2f565b34156200052757600080fd5b62000255600160a060020a036004351660243562000e61565b34156200054c57600080fd5b62000255600435600160a060020a0360243516604435151562000e9b565b34156200057657600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000f5695505050505050565b3415620005de57600080fd5b62000255600435600160a060020a036024351660443515156200105f565b34156200060857600080fd5b62000303600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650620010e895505050505050565b34156200067757600080fd5b62000255600160a060020a0360043516602435620011f6565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b6000805160206200260583398151915281565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600080516020620025a58339815191526200073a600080516020620026058339815191528362001229565b620007446200149c565b6000825160200290508291508082526200076133308685620010e8565b15156200076d57600080fd5b60008051602062002605833981519152856040519182526020820152604090810190519081900390206001555050505050565b600154600090815260208190526040902054600160a060020a031690565b600060208190529081526040902054600160a060020a031681565b600090815260208190526040902054600160a060020a031690565b600554600090156200080557600080fd5b6200080f6200123f565b6200082a30600080516020620025e583398151915262000e61565b905062000857600080516020620025c5833981519152600080516020620025e5833981519152856200125c565b506200088360008051602062002605833981519152600080516020620025e5833981519152836200125c565b5080600160a060020a031663c4d66de88360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515620008d357600080fd5b6102c65a03f11515620008e557600080fd5b50507f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e60015550505050565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b50600190565b60035481565b6000600080516020620025a58339815191526200096e600080516020620025c58339815191528562001229565b620009786200149c565b6000825160200290508291508082526200099533308685620010e8565b1515620009a157600080fd5b620009af8787600062000e9b565b979650505050505050565b600081565b60055490565b600080516020620025a583398151915281565b6000600080516020620025a583398151915262000a05600080516020620025c58339815191528562001229565b62000a0f6200149c565b60008251602002905082915080825262000a2c33308685620010e8565b151562000a3857600080fd5b620009af878760006200105f565b60008062000a548362000935565b151562000a6057600080fd5b62000a6a620007a0565b915062000a778262001312565b151562000a8357600080fd5b600160a060020a038316151562000ad85781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151562000ad257600080fd5b62000bc8565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151562000b3057600080fd5b6102c65a03f1151562000b4257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000bab57600080fd5b6102c65a03f1151562000bbd57600080fd5b505050604051805150505b505050565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b6000600080516020620025a583398151915262000c0f858562001229565b62000c196200149c565b60008251602002905082915080825262000c3633308685620010e8565b151562000c4257600080fd5b60008062000c528a8a8a6200125c565b965062000c7f7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb620007d9565b915050803b6000811162000c9257600080fd5b5050505050509392505050565b7f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e81565b600080516020620025e583398151915281565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60008084848462000d0a620014ae565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000d5b57808201518382015260200162000d41565b50505050905090810190601f16801562000d895780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151562000da757600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a18091505b509392505050565b600254600160a060020a031681565b60015481565b600080516020620025c583398151915281565b600062000e5c7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a620007d9565b905090565b600062000e948383600060405180591062000e795750595b818152601f19601f8301168101602001604052905062000f56565b9392505050565b6000600080516020620025a583398151915262000ec8600080516020620025c58339815191528662001229565b62000ed26200149c565b60008251602002905082915080825262000eef33308685620010e8565b151562000efb57600080fd5b62000f17600080516020620025c5833981519152898962001341565b5062000f24308962000e61565b9450851562000f4b5762000f4960008051602062002605833981519152898762000bf1565b505b505050509392505050565b60008084848462000f66620014bf565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000fb757808201518382015260200162000f9d565b50505050905090810190601f16801562000fe55780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f08015156200100357600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b6000600080516020620025a58339815191526200108c600080516020620025c58339815191528662001229565b620010966200149c565b600082516020029050829150808252620010b333308685620010e8565b1515620010bf57600080fd5b620010db600080516020620025c5833981519152898962001341565b5062000f243089620011f6565b6000620010f462000e2f565b600160a060020a031663fdef91068686868660006040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156200118257808201518382015260200162001168565b50505050905090810190601f168015620011b05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515620011d257600080fd5b6102c65a03f11515620011e457600080fd5b50505060405180519695505050505050565b600062000e94838360006040518059106200120e5750595b818152601f19601f8301168101602001604052905062000cfa565b620012336200149c565b62000e94838362001433565b600554156200124d57600080fd5b6200125762001498565b600555565b6000620012698262001312565b15156200127557600080fd5b838360405191825260208201526040908101905190819003902060008181526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790559091508190849086907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290869051600160a060020a03909116815260200160405180910390a49392505050565b600080600160a060020a03831615156200133057600091506200133b565b823b90506000811191505b50919050565b6000806200134f8362001312565b15156200135b57600080fd5b8484604051918252602082015260409081019051809103902091506200138182620007d9565b9050600160a060020a03811615620013b257600160a060020a0381811690841614620013ac57600080fd5b62000dff565b60008281526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790558290859087907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290879051600160a060020a03909116815260200160405180910390a4509392505050565b6200143d6200149c565b60026040518059106200144d5750595b9080825280602002602001820160405250905082816000815181106200146f57fe5b6020908102909101015281816001815181106200148857fe5b6020908102909101015292915050565b4390565b60206040519081016040526000815290565b60405161086c80620014d183390190565b6040516108688062001d3d8339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029b6d92708f3d4817afc106147d969e229ced5c46e65e0a5002a0d391287762bd0f1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6ad6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fba165627a7a7230582092666edd4994a08d840c83ae0765d7ee526e62c490716159c0de383bc72913e10029","runtimeBytecode":"606060405260043610620001b55763ffffffff60e060020a600035041663097207788114620001ba5780631113ed0d14620001e2578063178e607914620001f857806325012699146200020e5780632c2333cd146200022457806332f0a3b5146200023f57806338bb6def146200027157806342c71f1d146200028a578063485cc95514620002a3578063756f604914620002cb5780637e7db6e114620002e157806380afdea8146200031757806380cd5ac3146200032d5780638322fff214620003525780638b3dd74914620003685780638ea8dc9d146200037e578063958fde8214620003945780639d4941d814620003b9578063a3b4b07f14620003db578063ae5b254014620003f1578063b7c529ab1462000419578063cbcc65eb146200042f578063cc473be31462000445578063d162f8b0146200045b578063d4aae0c414620004c3578063dabca01914620004d9578063db8a61d414620004ef578063de2873591462000505578063e156a8f3146200051b578063e943d1e61462000540578063ede658b0146200056a578063f8c7fa1e14620005d2578063fdef910614620005fc578063ff289fc5146200066b575b600080fd5b3415620001c657600080fd5b620001d062000690565b60405190815260200160405180910390f35b3415620001ee57600080fd5b620001d0620006b4565b34156200020457600080fd5b620001d0620006d8565b34156200021a57600080fd5b620001d0620006eb565b34156200023057600080fd5b6200023d6004356200070f565b005b34156200024b57600080fd5b62000255620007a0565b604051600160a060020a03909116815260200160405180910390f35b34156200027d57600080fd5b62000255600435620007be565b34156200029657600080fd5b62000255600435620007d9565b3415620002af57600080fd5b6200023d600160a060020a0360043581169060243516620007f4565b3415620002d757600080fd5b620001d062000911565b3415620002ed57600080fd5b62000303600160a060020a036004351662000935565b604051901515815260200160405180910390f35b34156200032357600080fd5b620001d06200093b565b34156200033957600080fd5b62000255600435600160a060020a036024351662000941565b34156200035e57600080fd5b62000255620009ba565b34156200037457600080fd5b620001d0620009bf565b34156200038a57600080fd5b620001d0620009c5565b3415620003a057600080fd5b62000255600435600160a060020a0360243516620009d8565b3415620003c557600080fd5b6200023d600160a060020a036004351662000a46565b3415620003e757600080fd5b620001d062000bcd565b3415620003fd57600080fd5b620001d0600435602435600160a060020a036044351662000bf1565b34156200042557600080fd5b620001d062000c9f565b34156200043b57600080fd5b620001d062000cc3565b34156200045157600080fd5b620001d062000cd6565b34156200046757600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000cfa95505050505050565b3415620004cf57600080fd5b6200025562000e07565b3415620004e557600080fd5b620001d062000e16565b3415620004fb57600080fd5b620001d062000e1c565b34156200051157600080fd5b6200025562000e2f565b34156200052757600080fd5b62000255600160a060020a036004351660243562000e61565b34156200054c57600080fd5b62000255600435600160a060020a0360243516604435151562000e9b565b34156200057657600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000f5695505050505050565b3415620005de57600080fd5b62000255600435600160a060020a036024351660443515156200105f565b34156200060857600080fd5b62000303600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650620010e895505050505050565b34156200067757600080fd5b62000255600160a060020a0360043516602435620011f6565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b6000805160206200260583398151915281565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600080516020620025a58339815191526200073a600080516020620026058339815191528362001229565b620007446200149c565b6000825160200290508291508082526200076133308685620010e8565b15156200076d57600080fd5b60008051602062002605833981519152856040519182526020820152604090810190519081900390206001555050505050565b600154600090815260208190526040902054600160a060020a031690565b600060208190529081526040902054600160a060020a031681565b600090815260208190526040902054600160a060020a031690565b600554600090156200080557600080fd5b6200080f6200123f565b6200082a30600080516020620025e583398151915262000e61565b905062000857600080516020620025c5833981519152600080516020620025e5833981519152856200125c565b506200088360008051602062002605833981519152600080516020620025e5833981519152836200125c565b5080600160a060020a031663c4d66de88360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515620008d357600080fd5b6102c65a03f11515620008e557600080fd5b50507f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e60015550505050565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b50600190565b60035481565b6000600080516020620025a58339815191526200096e600080516020620025c58339815191528562001229565b620009786200149c565b6000825160200290508291508082526200099533308685620010e8565b1515620009a157600080fd5b620009af8787600062000e9b565b979650505050505050565b600081565b60055490565b600080516020620025a583398151915281565b6000600080516020620025a583398151915262000a05600080516020620025c58339815191528562001229565b62000a0f6200149c565b60008251602002905082915080825262000a2c33308685620010e8565b151562000a3857600080fd5b620009af878760006200105f565b60008062000a548362000935565b151562000a6057600080fd5b62000a6a620007a0565b915062000a778262001312565b151562000a8357600080fd5b600160a060020a038316151562000ad85781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151562000ad257600080fd5b62000bc8565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151562000b3057600080fd5b6102c65a03f1151562000b4257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000bab57600080fd5b6102c65a03f1151562000bbd57600080fd5b505050604051805150505b505050565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b6000600080516020620025a583398151915262000c0f858562001229565b62000c196200149c565b60008251602002905082915080825262000c3633308685620010e8565b151562000c4257600080fd5b60008062000c528a8a8a6200125c565b965062000c7f7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb620007d9565b915050803b6000811162000c9257600080fd5b5050505050509392505050565b7f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e81565b600080516020620025e583398151915281565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60008084848462000d0a620014ae565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000d5b57808201518382015260200162000d41565b50505050905090810190601f16801562000d895780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151562000da757600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a18091505b509392505050565b600254600160a060020a031681565b60015481565b600080516020620025c583398151915281565b600062000e5c7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a620007d9565b905090565b600062000e948383600060405180591062000e795750595b818152601f19601f8301168101602001604052905062000f56565b9392505050565b6000600080516020620025a583398151915262000ec8600080516020620025c58339815191528662001229565b62000ed26200149c565b60008251602002905082915080825262000eef33308685620010e8565b151562000efb57600080fd5b62000f17600080516020620025c5833981519152898962001341565b5062000f24308962000e61565b9450851562000f4b5762000f4960008051602062002605833981519152898762000bf1565b505b505050509392505050565b60008084848462000f66620014bf565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000fb757808201518382015260200162000f9d565b50505050905090810190601f16801562000fe55780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f08015156200100357600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b6000600080516020620025a58339815191526200108c600080516020620025c58339815191528662001229565b620010966200149c565b600082516020029050829150808252620010b333308685620010e8565b1515620010bf57600080fd5b620010db600080516020620025c5833981519152898962001341565b5062000f243089620011f6565b6000620010f462000e2f565b600160a060020a031663fdef91068686868660006040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156200118257808201518382015260200162001168565b50505050905090810190601f168015620011b05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515620011d257600080fd5b6102c65a03f11515620011e457600080fd5b50505060405180519695505050505050565b600062000e94838360006040518059106200120e5750595b818152601f19601f8301168101602001604052905062000cfa565b620012336200149c565b62000e94838362001433565b600554156200124d57600080fd5b6200125762001498565b600555565b6000620012698262001312565b15156200127557600080fd5b838360405191825260208201526040908101905190819003902060008181526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790559091508190849086907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290869051600160a060020a03909116815260200160405180910390a49392505050565b600080600160a060020a03831615156200133057600091506200133b565b823b90506000811191505b50919050565b6000806200134f8362001312565b15156200135b57600080fd5b8484604051918252602082015260409081019051809103902091506200138182620007d9565b9050600160a060020a03811615620013b257600160a060020a0381811690841614620013ac57600080fd5b62000dff565b60008281526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790558290859087907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290879051600160a060020a03909116815260200160405180910390a4509392505050565b6200143d6200149c565b60026040518059106200144d5750595b9080825280602002602001820160405250905082816000815181106200146f57fe5b6020908102909101015281816001815181106200148857fe5b6020908102909101015292915050565b4390565b60206040519081016040526000815290565b60405161086c80620014d183390190565b6040516108688062001d3d8339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029b6d92708f3d4817afc106147d969e229ced5c46e65e0a5002a0d391287762bd0f1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6ad6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fba165627a7a7230582092666edd4994a08d840c83ae0765d7ee526e62c490716159c0de383bc72913e10029","realRuntimeBytecode":"606060405260043610620001b55763ffffffff60e060020a600035041663097207788114620001ba5780631113ed0d14620001e2578063178e607914620001f857806325012699146200020e5780632c2333cd146200022457806332f0a3b5146200023f57806338bb6def146200027157806342c71f1d146200028a578063485cc95514620002a3578063756f604914620002cb5780637e7db6e114620002e157806380afdea8146200031757806380cd5ac3146200032d5780638322fff214620003525780638b3dd74914620003685780638ea8dc9d146200037e578063958fde8214620003945780639d4941d814620003b9578063a3b4b07f14620003db578063ae5b254014620003f1578063b7c529ab1462000419578063cbcc65eb146200042f578063cc473be31462000445578063d162f8b0146200045b578063d4aae0c414620004c3578063dabca01914620004d9578063db8a61d414620004ef578063de2873591462000505578063e156a8f3146200051b578063e943d1e61462000540578063ede658b0146200056a578063f8c7fa1e14620005d2578063fdef910614620005fc578063ff289fc5146200066b575b600080fd5b3415620001c657600080fd5b620001d062000690565b60405190815260200160405180910390f35b3415620001ee57600080fd5b620001d0620006b4565b34156200020457600080fd5b620001d0620006d8565b34156200021a57600080fd5b620001d0620006eb565b34156200023057600080fd5b6200023d6004356200070f565b005b34156200024b57600080fd5b62000255620007a0565b604051600160a060020a03909116815260200160405180910390f35b34156200027d57600080fd5b62000255600435620007be565b34156200029657600080fd5b62000255600435620007d9565b3415620002af57600080fd5b6200023d600160a060020a0360043581169060243516620007f4565b3415620002d757600080fd5b620001d062000911565b3415620002ed57600080fd5b62000303600160a060020a036004351662000935565b604051901515815260200160405180910390f35b34156200032357600080fd5b620001d06200093b565b34156200033957600080fd5b62000255600435600160a060020a036024351662000941565b34156200035e57600080fd5b62000255620009ba565b34156200037457600080fd5b620001d0620009bf565b34156200038a57600080fd5b620001d0620009c5565b3415620003a057600080fd5b62000255600435600160a060020a0360243516620009d8565b3415620003c557600080fd5b6200023d600160a060020a036004351662000a46565b3415620003e757600080fd5b620001d062000bcd565b3415620003fd57600080fd5b620001d0600435602435600160a060020a036044351662000bf1565b34156200042557600080fd5b620001d062000c9f565b34156200043b57600080fd5b620001d062000cc3565b34156200045157600080fd5b620001d062000cd6565b34156200046757600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000cfa95505050505050565b3415620004cf57600080fd5b6200025562000e07565b3415620004e557600080fd5b620001d062000e16565b3415620004fb57600080fd5b620001d062000e1c565b34156200051157600080fd5b6200025562000e2f565b34156200052757600080fd5b62000255600160a060020a036004351660243562000e61565b34156200054c57600080fd5b62000255600435600160a060020a0360243516604435151562000e9b565b34156200057657600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000f5695505050505050565b3415620005de57600080fd5b62000255600435600160a060020a036024351660443515156200105f565b34156200060857600080fd5b62000303600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650620010e895505050505050565b34156200067757600080fd5b62000255600160a060020a0360043516602435620011f6565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b6000805160206200260583398151915281565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600080516020620025a58339815191526200073a600080516020620026058339815191528362001229565b620007446200149c565b6000825160200290508291508082526200076133308685620010e8565b15156200076d57600080fd5b60008051602062002605833981519152856040519182526020820152604090810190519081900390206001555050505050565b600154600090815260208190526040902054600160a060020a031690565b600060208190529081526040902054600160a060020a031681565b600090815260208190526040902054600160a060020a031690565b600554600090156200080557600080fd5b6200080f6200123f565b6200082a30600080516020620025e583398151915262000e61565b905062000857600080516020620025c5833981519152600080516020620025e5833981519152856200125c565b506200088360008051602062002605833981519152600080516020620025e5833981519152836200125c565b5080600160a060020a031663c4d66de88360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515620008d357600080fd5b6102c65a03f11515620008e557600080fd5b50507f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e60015550505050565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b50600190565b60035481565b6000600080516020620025a58339815191526200096e600080516020620025c58339815191528562001229565b620009786200149c565b6000825160200290508291508082526200099533308685620010e8565b1515620009a157600080fd5b620009af8787600062000e9b565b979650505050505050565b600081565b60055490565b600080516020620025a583398151915281565b6000600080516020620025a583398151915262000a05600080516020620025c58339815191528562001229565b62000a0f6200149c565b60008251602002905082915080825262000a2c33308685620010e8565b151562000a3857600080fd5b620009af878760006200105f565b60008062000a548362000935565b151562000a6057600080fd5b62000a6a620007a0565b915062000a778262001312565b151562000a8357600080fd5b600160a060020a038316151562000ad85781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151562000ad257600080fd5b62000bc8565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151562000b3057600080fd5b6102c65a03f1151562000b4257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000bab57600080fd5b6102c65a03f1151562000bbd57600080fd5b505050604051805150505b505050565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b6000600080516020620025a583398151915262000c0f858562001229565b62000c196200149c565b60008251602002905082915080825262000c3633308685620010e8565b151562000c4257600080fd5b60008062000c528a8a8a6200125c565b965062000c7f7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb620007d9565b915050803b6000811162000c9257600080fd5b5050505050509392505050565b7f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e81565b600080516020620025e583398151915281565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60008084848462000d0a620014ae565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000d5b57808201518382015260200162000d41565b50505050905090810190601f16801562000d895780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151562000da757600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a18091505b509392505050565b600254600160a060020a031681565b60015481565b600080516020620025c583398151915281565b600062000e5c7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a620007d9565b905090565b600062000e948383600060405180591062000e795750595b818152601f19601f8301168101602001604052905062000f56565b9392505050565b6000600080516020620025a583398151915262000ec8600080516020620025c58339815191528662001229565b62000ed26200149c565b60008251602002905082915080825262000eef33308685620010e8565b151562000efb57600080fd5b62000f17600080516020620025c5833981519152898962001341565b5062000f24308962000e61565b9450851562000f4b5762000f4960008051602062002605833981519152898762000bf1565b505b505050509392505050565b60008084848462000f66620014bf565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000fb757808201518382015260200162000f9d565b50505050905090810190601f16801562000fe55780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f08015156200100357600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b6000600080516020620025a58339815191526200108c600080516020620025c58339815191528662001229565b620010966200149c565b600082516020029050829150808252620010b333308685620010e8565b1515620010bf57600080fd5b620010db600080516020620025c5833981519152898962001341565b5062000f243089620011f6565b6000620010f462000e2f565b600160a060020a031663fdef91068686868660006040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156200118257808201518382015260200162001168565b50505050905090810190601f168015620011b05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515620011d257600080fd5b6102c65a03f11515620011e457600080fd5b50505060405180519695505050505050565b600062000e94838360006040518059106200120e5750595b818152601f19601f8301168101602001604052905062000cfa565b620012336200149c565b62000e94838362001433565b600554156200124d57600080fd5b6200125762001498565b600555565b6000620012698262001312565b15156200127557600080fd5b838360405191825260208201526040908101905190819003902060008181526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790559091508190849086907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290869051600160a060020a03909116815260200160405180910390a49392505050565b600080600160a060020a03831615156200133057600091506200133b565b823b90506000811191505b50919050565b6000806200134f8362001312565b15156200135b57600080fd5b8484604051918252602082015260409081019051809103902091506200138182620007d9565b9050600160a060020a03811615620013b257600160a060020a0381811690841614620013ac57600080fd5b62000dff565b60008281526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790558290859087907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290879051600160a060020a03909116815260200160405180910390a4509392505050565b6200143d6200149c565b60026040518059106200144d5750595b9080825280602002602001820160405250905082816000815181106200146f57fe5b6020908102909101015281816001815181106200148857fe5b6020908102909101015292915050565b4390565b60206040519081016040526000815290565b60405161086c80620014d183390190565b6040516108688062001d3d8339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029b6d92708f3d4817afc106147d969e229ced5c46e65e0a5002a0d391287762bd0f1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6ad6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fba165627a7a72305820","linkReferences":{},"swarmHash":"92666edd4994a08d840c83ae0765d7ee526e62c490716159c0de383bc72913e1","gasEstimates":{"creation":{"codeDepositCost":"1961600","executionCost":"2072","totalCost":"1963672"},"external":{"ACL_APP()":"632","ACL_APP_ID()":"infinite","APM_NODE()":"236","APP_ADDR_NAMESPACE()":"infinite","APP_BASES_NAMESPACE()":"infinite","APP_MANAGER_ROLE()":"infinite","CORE_NAMESPACE()":"434","DEFAULT_VAULT_ID()":"676","ETH()":"603","ETH_NODE()":"720","KERNEL_APP()":"302","KERNEL_APP_ID()":"258","acl()":"1293","allowRecoverability(address)":"545","appId()":"678","apps(bytes32)":"799","getApp(bytes32)":"821","getInitializationBlock()":"744","getRecoveryVault()":"974","hasPermission(address,address,bytes32,bytes)":"infinite","initialize(address,address)":"infinite","kernel()":"1120","newAppInstance(bytes32,address)":"infinite","newAppInstance(bytes32,address,bool)":"infinite","newAppProxy(address,bytes32)":"infinite","newAppProxy(address,bytes32,bytes)":"infinite","newAppProxyPinned(address,bytes32)":"infinite","newAppProxyPinned(address,bytes32,bytes)":"infinite","newPinnedAppInstance(bytes32,address)":"infinite","newPinnedAppInstance(bytes32,address,bool)":"infinite","recoveryVaultId()":"986","setApp(bytes32,bytes32,address)":"infinite","setRecoveryVaultId(bytes32)":"infinite","transferToVault(address)":"infinite"},"internal":{"_setApp(bytes32,bytes32,address)":"infinite","_setAppIfNew(bytes32,bytes32,address)":"infinite"}},"functionHashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","APP_MANAGER_ROLE()":"8ea8dc9d","CORE_NAMESPACE()":"756f6049","DEFAULT_VAULT_ID()":"b7c529ab","ETH()":"8322fff2","ETH_NODE()":"cc473be3","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","acl()":"de287359","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","apps(bytes32)":"38bb6def","getApp(bytes32)":"42c71f1d","getInitializationBlock()":"8b3dd749","getRecoveryVault()":"32f0a3b5","hasPermission(address,address,bytes32,bytes)":"fdef9106","initialize(address,address)":"485cc955","kernel()":"d4aae0c4","newAppInstance(bytes32,address)":"80cd5ac3","newAppInstance(bytes32,address,bool)":"e943d1e6","newAppProxy(address,bytes32)":"e156a8f3","newAppProxy(address,bytes32,bytes)":"ede658b0","newAppProxyPinned(address,bytes32)":"ff289fc5","newAppProxyPinned(address,bytes32,bytes)":"d162f8b0","newPinnedAppInstance(bytes32,address)":"958fde82","newPinnedAppInstance(bytes32,address,bool)":"f8c7fa1e","recoveryVaultId()":"dabca019","setApp(bytes32,bytes32,address)":"ae5b2540","setRecoveryVaultId(bytes32)":"2c2333cd","transferToVault(address)":"9d4941d8"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x09720778"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x1113ed0d"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x178e6079"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x25012699"},{"constant":false,"inputs":[{"name":"_name","type":"bytes32"}],"name":"setRecoveryVaultId","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x2c2333cd"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x32f0a3b5"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"apps","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x38bb6def"},{"constant":true,"inputs":[{"name":"_id","type":"bytes32"}],"name":"getApp","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x42c71f1d"},{"constant":false,"inputs":[{"name":"_baseAcl","type":"address"},{"name":"_permissionsCreator","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x485cc955"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x756f6049"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x7e7db6e1"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x80afdea8"},{"constant":false,"inputs":[{"name":"_name","type":"bytes32"},{"name":"_appBase","type":"address"}],"name":"newAppInstance","outputs":[{"name":"appProxy","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x80cd5ac3"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8322fff2"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8b3dd749"},{"constant":true,"inputs":[],"name":"APP_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8ea8dc9d"},{"constant":false,"inputs":[{"name":"_name","type":"bytes32"},{"name":"_appBase","type":"address"}],"name":"newPinnedAppInstance","outputs":[{"name":"appProxy","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x958fde82"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x9d4941d8"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xa3b4b07f"},{"constant":false,"inputs":[{"name":"_namespace","type":"bytes32"},{"name":"_name","type":"bytes32"},{"name":"_app","type":"address"}],"name":"setApp","outputs":[{"name":"id","type":"bytes32"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xae5b2540"},{"constant":true,"inputs":[],"name":"DEFAULT_VAULT_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xb7c529ab"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xcbcc65eb"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xcc473be3"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"name":"newAppProxyPinned","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd162f8b0"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xd4aae0c4"},{"constant":true,"inputs":[],"name":"recoveryVaultId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdabca019"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdb8a61d4"},{"constant":true,"inputs":[],"name":"acl","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xde287359"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"}],"name":"newAppProxy","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xe156a8f3"},{"constant":false,"inputs":[{"name":"_name","type":"bytes32"},{"name":"_appBase","type":"address"},{"name":"_setDefault","type":"bool"}],"name":"newAppInstance","outputs":[{"name":"appProxy","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xe943d1e6"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"name":"newAppProxy","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xede658b0"},{"constant":false,"inputs":[{"name":"_name","type":"bytes32"},{"name":"_appBase","type":"address"},{"name":"_setDefault","type":"bool"}],"name":"newPinnedAppInstance","outputs":[{"name":"appProxy","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xf8c7fa1e"},{"constant":true,"inputs":[{"name":"_who","type":"address"},{"name":"_where","type":"address"},{"name":"_what","type":"bytes32"},{"name":"_how","type":"bytes"}],"name":"hasPermission","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xfdef9106"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"}],"name":"newAppProxyPinned","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xff289fc5"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proxy","type":"address"},{"indexed":false,"name":"isUpgradeable","type":"bool"},{"indexed":false,"name":"appId","type":"bytes32"}],"name":"NewAppProxy","type":"event","signature":"0xd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf47"},{"anonymous":false,"inputs":[{"indexed":true,"name":"namespace","type":"bytes32"},{"indexed":true,"name":"name","type":"bytes32"},{"indexed":true,"name":"id","type":"bytes32"},{"indexed":false,"name":"app","type":"address"}],"name":"SetApp","type":"event","signature":"0xe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b522"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/kernel/Kernel.sol","originalFilename":"node_modules/@aragon/os/contracts/kernel/Kernel.sol","path":"/Users/Barry/projects/status-im/liquid-funding/node_modules/@aragon/os/contracts/kernel/Kernel.sol","gas":"auto","type":"file","deployedAddress":"0x49798b01e64295497624645B77004614CC5160c3","deploy":true,"_gasLimit":6000000,"error":false,"deploymentAccount":"0x1179823e34aBF984C52fC0CdD7b7b9F5dd394aB9","realArgs":[]},"address":"0x49798b01e64295497624645B77004614CC5160c3","code":"6060604052341561000f57600080fd5b6126508061001e6000396000f300606060405260043610620001b55763ffffffff60e060020a600035041663097207788114620001ba5780631113ed0d14620001e2578063178e607914620001f857806325012699146200020e5780632c2333cd146200022457806332f0a3b5146200023f57806338bb6def146200027157806342c71f1d146200028a578063485cc95514620002a3578063756f604914620002cb5780637e7db6e114620002e157806380afdea8146200031757806380cd5ac3146200032d5780638322fff214620003525780638b3dd74914620003685780638ea8dc9d146200037e578063958fde8214620003945780639d4941d814620003b9578063a3b4b07f14620003db578063ae5b254014620003f1578063b7c529ab1462000419578063cbcc65eb146200042f578063cc473be31462000445578063d162f8b0146200045b578063d4aae0c414620004c3578063dabca01914620004d9578063db8a61d414620004ef578063de2873591462000505578063e156a8f3146200051b578063e943d1e61462000540578063ede658b0146200056a578063f8c7fa1e14620005d2578063fdef910614620005fc578063ff289fc5146200066b575b600080fd5b3415620001c657600080fd5b620001d062000690565b60405190815260200160405180910390f35b3415620001ee57600080fd5b620001d0620006b4565b34156200020457600080fd5b620001d0620006d8565b34156200021a57600080fd5b620001d0620006eb565b34156200023057600080fd5b6200023d6004356200070f565b005b34156200024b57600080fd5b62000255620007a0565b604051600160a060020a03909116815260200160405180910390f35b34156200027d57600080fd5b62000255600435620007be565b34156200029657600080fd5b62000255600435620007d9565b3415620002af57600080fd5b6200023d600160a060020a0360043581169060243516620007f4565b3415620002d757600080fd5b620001d062000911565b3415620002ed57600080fd5b62000303600160a060020a036004351662000935565b604051901515815260200160405180910390f35b34156200032357600080fd5b620001d06200093b565b34156200033957600080fd5b62000255600435600160a060020a036024351662000941565b34156200035e57600080fd5b62000255620009ba565b34156200037457600080fd5b620001d0620009bf565b34156200038a57600080fd5b620001d0620009c5565b3415620003a057600080fd5b62000255600435600160a060020a0360243516620009d8565b3415620003c557600080fd5b6200023d600160a060020a036004351662000a46565b3415620003e757600080fd5b620001d062000bcd565b3415620003fd57600080fd5b620001d0600435602435600160a060020a036044351662000bf1565b34156200042557600080fd5b620001d062000c9f565b34156200043b57600080fd5b620001d062000cc3565b34156200045157600080fd5b620001d062000cd6565b34156200046757600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000cfa95505050505050565b3415620004cf57600080fd5b6200025562000e07565b3415620004e557600080fd5b620001d062000e16565b3415620004fb57600080fd5b620001d062000e1c565b34156200051157600080fd5b6200025562000e2f565b34156200052757600080fd5b62000255600160a060020a036004351660243562000e61565b34156200054c57600080fd5b62000255600435600160a060020a0360243516604435151562000e9b565b34156200057657600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000f5695505050505050565b3415620005de57600080fd5b62000255600435600160a060020a036024351660443515156200105f565b34156200060857600080fd5b62000303600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650620010e895505050505050565b34156200067757600080fd5b62000255600160a060020a0360043516602435620011f6565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b6000805160206200260583398151915281565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600080516020620025a58339815191526200073a600080516020620026058339815191528362001229565b620007446200149c565b6000825160200290508291508082526200076133308685620010e8565b15156200076d57600080fd5b60008051602062002605833981519152856040519182526020820152604090810190519081900390206001555050505050565b600154600090815260208190526040902054600160a060020a031690565b600060208190529081526040902054600160a060020a031681565b600090815260208190526040902054600160a060020a031690565b600554600090156200080557600080fd5b6200080f6200123f565b6200082a30600080516020620025e583398151915262000e61565b905062000857600080516020620025c5833981519152600080516020620025e5833981519152856200125c565b506200088360008051602062002605833981519152600080516020620025e5833981519152836200125c565b5080600160a060020a031663c4d66de88360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515620008d357600080fd5b6102c65a03f11515620008e557600080fd5b50507f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e60015550505050565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b50600190565b60035481565b6000600080516020620025a58339815191526200096e600080516020620025c58339815191528562001229565b620009786200149c565b6000825160200290508291508082526200099533308685620010e8565b1515620009a157600080fd5b620009af8787600062000e9b565b979650505050505050565b600081565b60055490565b600080516020620025a583398151915281565b6000600080516020620025a583398151915262000a05600080516020620025c58339815191528562001229565b62000a0f6200149c565b60008251602002905082915080825262000a2c33308685620010e8565b151562000a3857600080fd5b620009af878760006200105f565b60008062000a548362000935565b151562000a6057600080fd5b62000a6a620007a0565b915062000a778262001312565b151562000a8357600080fd5b600160a060020a038316151562000ad85781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151562000ad257600080fd5b62000bc8565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151562000b3057600080fd5b6102c65a03f1151562000b4257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000bab57600080fd5b6102c65a03f1151562000bbd57600080fd5b505050604051805150505b505050565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b6000600080516020620025a583398151915262000c0f858562001229565b62000c196200149c565b60008251602002905082915080825262000c3633308685620010e8565b151562000c4257600080fd5b60008062000c528a8a8a6200125c565b965062000c7f7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb620007d9565b915050803b6000811162000c9257600080fd5b5050505050509392505050565b7f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e81565b600080516020620025e583398151915281565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60008084848462000d0a620014ae565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000d5b57808201518382015260200162000d41565b50505050905090810190601f16801562000d895780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151562000da757600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a18091505b509392505050565b600254600160a060020a031681565b60015481565b600080516020620025c583398151915281565b600062000e5c7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a620007d9565b905090565b600062000e948383600060405180591062000e795750595b818152601f19601f8301168101602001604052905062000f56565b9392505050565b6000600080516020620025a583398151915262000ec8600080516020620025c58339815191528662001229565b62000ed26200149c565b60008251602002905082915080825262000eef33308685620010e8565b151562000efb57600080fd5b62000f17600080516020620025c5833981519152898962001341565b5062000f24308962000e61565b9450851562000f4b5762000f4960008051602062002605833981519152898762000bf1565b505b505050509392505050565b60008084848462000f66620014bf565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000fb757808201518382015260200162000f9d565b50505050905090810190601f16801562000fe55780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f08015156200100357600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b6000600080516020620025a58339815191526200108c600080516020620025c58339815191528662001229565b620010966200149c565b600082516020029050829150808252620010b333308685620010e8565b1515620010bf57600080fd5b620010db600080516020620025c5833981519152898962001341565b5062000f243089620011f6565b6000620010f462000e2f565b600160a060020a031663fdef91068686868660006040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156200118257808201518382015260200162001168565b50505050905090810190601f168015620011b05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515620011d257600080fd5b6102c65a03f11515620011e457600080fd5b50505060405180519695505050505050565b600062000e94838360006040518059106200120e5750595b818152601f19601f8301168101602001604052905062000cfa565b620012336200149c565b62000e94838362001433565b600554156200124d57600080fd5b6200125762001498565b600555565b6000620012698262001312565b15156200127557600080fd5b838360405191825260208201526040908101905190819003902060008181526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790559091508190849086907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290869051600160a060020a03909116815260200160405180910390a49392505050565b600080600160a060020a03831615156200133057600091506200133b565b823b90506000811191505b50919050565b6000806200134f8362001312565b15156200135b57600080fd5b8484604051918252602082015260409081019051809103902091506200138182620007d9565b9050600160a060020a03811615620013b257600160a060020a0381811690841614620013ac57600080fd5b62000dff565b60008281526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790558290859087907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290879051600160a060020a03909116815260200160405180910390a4509392505050565b6200143d6200149c565b60026040518059106200144d5750595b9080825280602002602001820160405250905082816000815181106200146f57fe5b6020908102909101015281816001815181106200148857fe5b6020908102909101015292915050565b4390565b60206040519081016040526000815290565b60405161086c80620014d183390190565b6040516108688062001d3d8339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029b6d92708f3d4817afc106147d969e229ced5c46e65e0a5002a0d391287762bd0f1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6ad6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fba165627a7a7230582092666edd4994a08d840c83ae0765d7ee526e62c490716159c0de383bc72913e10029","runtime_bytecode":"606060405260043610620001b55763ffffffff60e060020a600035041663097207788114620001ba5780631113ed0d14620001e2578063178e607914620001f857806325012699146200020e5780632c2333cd146200022457806332f0a3b5146200023f57806338bb6def146200027157806342c71f1d146200028a578063485cc95514620002a3578063756f604914620002cb5780637e7db6e114620002e157806380afdea8146200031757806380cd5ac3146200032d5780638322fff214620003525780638b3dd74914620003685780638ea8dc9d146200037e578063958fde8214620003945780639d4941d814620003b9578063a3b4b07f14620003db578063ae5b254014620003f1578063b7c529ab1462000419578063cbcc65eb146200042f578063cc473be31462000445578063d162f8b0146200045b578063d4aae0c414620004c3578063dabca01914620004d9578063db8a61d414620004ef578063de2873591462000505578063e156a8f3146200051b578063e943d1e61462000540578063ede658b0146200056a578063f8c7fa1e14620005d2578063fdef910614620005fc578063ff289fc5146200066b575b600080fd5b3415620001c657600080fd5b620001d062000690565b60405190815260200160405180910390f35b3415620001ee57600080fd5b620001d0620006b4565b34156200020457600080fd5b620001d0620006d8565b34156200021a57600080fd5b620001d0620006eb565b34156200023057600080fd5b6200023d6004356200070f565b005b34156200024b57600080fd5b62000255620007a0565b604051600160a060020a03909116815260200160405180910390f35b34156200027d57600080fd5b62000255600435620007be565b34156200029657600080fd5b62000255600435620007d9565b3415620002af57600080fd5b6200023d600160a060020a0360043581169060243516620007f4565b3415620002d757600080fd5b620001d062000911565b3415620002ed57600080fd5b62000303600160a060020a036004351662000935565b604051901515815260200160405180910390f35b34156200032357600080fd5b620001d06200093b565b34156200033957600080fd5b62000255600435600160a060020a036024351662000941565b34156200035e57600080fd5b62000255620009ba565b34156200037457600080fd5b620001d0620009bf565b34156200038a57600080fd5b620001d0620009c5565b3415620003a057600080fd5b62000255600435600160a060020a0360243516620009d8565b3415620003c557600080fd5b6200023d600160a060020a036004351662000a46565b3415620003e757600080fd5b620001d062000bcd565b3415620003fd57600080fd5b620001d0600435602435600160a060020a036044351662000bf1565b34156200042557600080fd5b620001d062000c9f565b34156200043b57600080fd5b620001d062000cc3565b34156200045157600080fd5b620001d062000cd6565b34156200046757600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000cfa95505050505050565b3415620004cf57600080fd5b6200025562000e07565b3415620004e557600080fd5b620001d062000e16565b3415620004fb57600080fd5b620001d062000e1c565b34156200051157600080fd5b6200025562000e2f565b34156200052757600080fd5b62000255600160a060020a036004351660243562000e61565b34156200054c57600080fd5b62000255600435600160a060020a0360243516604435151562000e9b565b34156200057657600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000f5695505050505050565b3415620005de57600080fd5b62000255600435600160a060020a036024351660443515156200105f565b34156200060857600080fd5b62000303600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650620010e895505050505050565b34156200067757600080fd5b62000255600160a060020a0360043516602435620011f6565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b6000805160206200260583398151915281565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600080516020620025a58339815191526200073a600080516020620026058339815191528362001229565b620007446200149c565b6000825160200290508291508082526200076133308685620010e8565b15156200076d57600080fd5b60008051602062002605833981519152856040519182526020820152604090810190519081900390206001555050505050565b600154600090815260208190526040902054600160a060020a031690565b600060208190529081526040902054600160a060020a031681565b600090815260208190526040902054600160a060020a031690565b600554600090156200080557600080fd5b6200080f6200123f565b6200082a30600080516020620025e583398151915262000e61565b905062000857600080516020620025c5833981519152600080516020620025e5833981519152856200125c565b506200088360008051602062002605833981519152600080516020620025e5833981519152836200125c565b5080600160a060020a031663c4d66de88360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515620008d357600080fd5b6102c65a03f11515620008e557600080fd5b50507f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e60015550505050565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b50600190565b60035481565b6000600080516020620025a58339815191526200096e600080516020620025c58339815191528562001229565b620009786200149c565b6000825160200290508291508082526200099533308685620010e8565b1515620009a157600080fd5b620009af8787600062000e9b565b979650505050505050565b600081565b60055490565b600080516020620025a583398151915281565b6000600080516020620025a583398151915262000a05600080516020620025c58339815191528562001229565b62000a0f6200149c565b60008251602002905082915080825262000a2c33308685620010e8565b151562000a3857600080fd5b620009af878760006200105f565b60008062000a548362000935565b151562000a6057600080fd5b62000a6a620007a0565b915062000a778262001312565b151562000a8357600080fd5b600160a060020a038316151562000ad85781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151562000ad257600080fd5b62000bc8565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151562000b3057600080fd5b6102c65a03f1151562000b4257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000bab57600080fd5b6102c65a03f1151562000bbd57600080fd5b505050604051805150505b505050565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b6000600080516020620025a583398151915262000c0f858562001229565b62000c196200149c565b60008251602002905082915080825262000c3633308685620010e8565b151562000c4257600080fd5b60008062000c528a8a8a6200125c565b965062000c7f7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb620007d9565b915050803b6000811162000c9257600080fd5b5050505050509392505050565b7f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e81565b600080516020620025e583398151915281565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60008084848462000d0a620014ae565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000d5b57808201518382015260200162000d41565b50505050905090810190601f16801562000d895780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151562000da757600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a18091505b509392505050565b600254600160a060020a031681565b60015481565b600080516020620025c583398151915281565b600062000e5c7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a620007d9565b905090565b600062000e948383600060405180591062000e795750595b818152601f19601f8301168101602001604052905062000f56565b9392505050565b6000600080516020620025a583398151915262000ec8600080516020620025c58339815191528662001229565b62000ed26200149c565b60008251602002905082915080825262000eef33308685620010e8565b151562000efb57600080fd5b62000f17600080516020620025c5833981519152898962001341565b5062000f24308962000e61565b9450851562000f4b5762000f4960008051602062002605833981519152898762000bf1565b505b505050509392505050565b60008084848462000f66620014bf565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000fb757808201518382015260200162000f9d565b50505050905090810190601f16801562000fe55780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f08015156200100357600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b6000600080516020620025a58339815191526200108c600080516020620025c58339815191528662001229565b620010966200149c565b600082516020029050829150808252620010b333308685620010e8565b1515620010bf57600080fd5b620010db600080516020620025c5833981519152898962001341565b5062000f243089620011f6565b6000620010f462000e2f565b600160a060020a031663fdef91068686868660006040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156200118257808201518382015260200162001168565b50505050905090810190601f168015620011b05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515620011d257600080fd5b6102c65a03f11515620011e457600080fd5b50505060405180519695505050505050565b600062000e94838360006040518059106200120e5750595b818152601f19601f8301168101602001604052905062000cfa565b620012336200149c565b62000e94838362001433565b600554156200124d57600080fd5b6200125762001498565b600555565b6000620012698262001312565b15156200127557600080fd5b838360405191825260208201526040908101905190819003902060008181526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790559091508190849086907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290869051600160a060020a03909116815260200160405180910390a49392505050565b600080600160a060020a03831615156200133057600091506200133b565b823b90506000811191505b50919050565b6000806200134f8362001312565b15156200135b57600080fd5b8484604051918252602082015260409081019051809103902091506200138182620007d9565b9050600160a060020a03811615620013b257600160a060020a0381811690841614620013ac57600080fd5b62000dff565b60008281526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790558290859087907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290879051600160a060020a03909116815260200160405180910390a4509392505050565b6200143d6200149c565b60026040518059106200144d5750595b9080825280602002602001820160405250905082816000815181106200146f57fe5b6020908102909101015281816001815181106200148857fe5b6020908102909101015292915050565b4390565b60206040519081016040526000815290565b60405161086c80620014d183390190565b6040516108688062001d3d8339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029b6d92708f3d4817afc106147d969e229ced5c46e65e0a5002a0d391287762bd0f1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6ad6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fba165627a7a7230582092666edd4994a08d840c83ae0765d7ee526e62c490716159c0de383bc72913e10029","real_runtime_bytecode":"606060405260043610620001b55763ffffffff60e060020a600035041663097207788114620001ba5780631113ed0d14620001e2578063178e607914620001f857806325012699146200020e5780632c2333cd146200022457806332f0a3b5146200023f57806338bb6def146200027157806342c71f1d146200028a578063485cc95514620002a3578063756f604914620002cb5780637e7db6e114620002e157806380afdea8146200031757806380cd5ac3146200032d5780638322fff214620003525780638b3dd74914620003685780638ea8dc9d146200037e578063958fde8214620003945780639d4941d814620003b9578063a3b4b07f14620003db578063ae5b254014620003f1578063b7c529ab1462000419578063cbcc65eb146200042f578063cc473be31462000445578063d162f8b0146200045b578063d4aae0c414620004c3578063dabca01914620004d9578063db8a61d414620004ef578063de2873591462000505578063e156a8f3146200051b578063e943d1e61462000540578063ede658b0146200056a578063f8c7fa1e14620005d2578063fdef910614620005fc578063ff289fc5146200066b575b600080fd5b3415620001c657600080fd5b620001d062000690565b60405190815260200160405180910390f35b3415620001ee57600080fd5b620001d0620006b4565b34156200020457600080fd5b620001d0620006d8565b34156200021a57600080fd5b620001d0620006eb565b34156200023057600080fd5b6200023d6004356200070f565b005b34156200024b57600080fd5b62000255620007a0565b604051600160a060020a03909116815260200160405180910390f35b34156200027d57600080fd5b62000255600435620007be565b34156200029657600080fd5b62000255600435620007d9565b3415620002af57600080fd5b6200023d600160a060020a0360043581169060243516620007f4565b3415620002d757600080fd5b620001d062000911565b3415620002ed57600080fd5b62000303600160a060020a036004351662000935565b604051901515815260200160405180910390f35b34156200032357600080fd5b620001d06200093b565b34156200033957600080fd5b62000255600435600160a060020a036024351662000941565b34156200035e57600080fd5b62000255620009ba565b34156200037457600080fd5b620001d0620009bf565b34156200038a57600080fd5b620001d0620009c5565b3415620003a057600080fd5b62000255600435600160a060020a0360243516620009d8565b3415620003c557600080fd5b6200023d600160a060020a036004351662000a46565b3415620003e757600080fd5b620001d062000bcd565b3415620003fd57600080fd5b620001d0600435602435600160a060020a036044351662000bf1565b34156200042557600080fd5b620001d062000c9f565b34156200043b57600080fd5b620001d062000cc3565b34156200045157600080fd5b620001d062000cd6565b34156200046757600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000cfa95505050505050565b3415620004cf57600080fd5b6200025562000e07565b3415620004e557600080fd5b620001d062000e16565b3415620004fb57600080fd5b620001d062000e1c565b34156200051157600080fd5b6200025562000e2f565b34156200052757600080fd5b62000255600160a060020a036004351660243562000e61565b34156200054c57600080fd5b62000255600435600160a060020a0360243516604435151562000e9b565b34156200057657600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000f5695505050505050565b3415620005de57600080fd5b62000255600435600160a060020a036024351660443515156200105f565b34156200060857600080fd5b62000303600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650620010e895505050505050565b34156200067757600080fd5b62000255600160a060020a0360043516602435620011f6565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b6000805160206200260583398151915281565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600080516020620025a58339815191526200073a600080516020620026058339815191528362001229565b620007446200149c565b6000825160200290508291508082526200076133308685620010e8565b15156200076d57600080fd5b60008051602062002605833981519152856040519182526020820152604090810190519081900390206001555050505050565b600154600090815260208190526040902054600160a060020a031690565b600060208190529081526040902054600160a060020a031681565b600090815260208190526040902054600160a060020a031690565b600554600090156200080557600080fd5b6200080f6200123f565b6200082a30600080516020620025e583398151915262000e61565b905062000857600080516020620025c5833981519152600080516020620025e5833981519152856200125c565b506200088360008051602062002605833981519152600080516020620025e5833981519152836200125c565b5080600160a060020a031663c4d66de88360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515620008d357600080fd5b6102c65a03f11515620008e557600080fd5b50507f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e60015550505050565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b50600190565b60035481565b6000600080516020620025a58339815191526200096e600080516020620025c58339815191528562001229565b620009786200149c565b6000825160200290508291508082526200099533308685620010e8565b1515620009a157600080fd5b620009af8787600062000e9b565b979650505050505050565b600081565b60055490565b600080516020620025a583398151915281565b6000600080516020620025a583398151915262000a05600080516020620025c58339815191528562001229565b62000a0f6200149c565b60008251602002905082915080825262000a2c33308685620010e8565b151562000a3857600080fd5b620009af878760006200105f565b60008062000a548362000935565b151562000a6057600080fd5b62000a6a620007a0565b915062000a778262001312565b151562000a8357600080fd5b600160a060020a038316151562000ad85781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151562000ad257600080fd5b62000bc8565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151562000b3057600080fd5b6102c65a03f1151562000b4257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000bab57600080fd5b6102c65a03f1151562000bbd57600080fd5b505050604051805150505b505050565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b6000600080516020620025a583398151915262000c0f858562001229565b62000c196200149c565b60008251602002905082915080825262000c3633308685620010e8565b151562000c4257600080fd5b60008062000c528a8a8a6200125c565b965062000c7f7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb620007d9565b915050803b6000811162000c9257600080fd5b5050505050509392505050565b7f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e81565b600080516020620025e583398151915281565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60008084848462000d0a620014ae565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000d5b57808201518382015260200162000d41565b50505050905090810190601f16801562000d895780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151562000da757600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a18091505b509392505050565b600254600160a060020a031681565b60015481565b600080516020620025c583398151915281565b600062000e5c7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a620007d9565b905090565b600062000e948383600060405180591062000e795750595b818152601f19601f8301168101602001604052905062000f56565b9392505050565b6000600080516020620025a583398151915262000ec8600080516020620025c58339815191528662001229565b62000ed26200149c565b60008251602002905082915080825262000eef33308685620010e8565b151562000efb57600080fd5b62000f17600080516020620025c5833981519152898962001341565b5062000f24308962000e61565b9450851562000f4b5762000f4960008051602062002605833981519152898762000bf1565b505b505050509392505050565b60008084848462000f66620014bf565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000fb757808201518382015260200162000f9d565b50505050905090810190601f16801562000fe55780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f08015156200100357600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b6000600080516020620025a58339815191526200108c600080516020620025c58339815191528662001229565b620010966200149c565b600082516020029050829150808252620010b333308685620010e8565b1515620010bf57600080fd5b620010db600080516020620025c5833981519152898962001341565b5062000f243089620011f6565b6000620010f462000e2f565b600160a060020a031663fdef91068686868660006040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156200118257808201518382015260200162001168565b50505050905090810190601f168015620011b05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515620011d257600080fd5b6102c65a03f11515620011e457600080fd5b50505060405180519695505050505050565b600062000e94838360006040518059106200120e5750595b818152601f19601f8301168101602001604052905062000cfa565b620012336200149c565b62000e94838362001433565b600554156200124d57600080fd5b6200125762001498565b600555565b6000620012698262001312565b15156200127557600080fd5b838360405191825260208201526040908101905190819003902060008181526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790559091508190849086907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290869051600160a060020a03909116815260200160405180910390a49392505050565b600080600160a060020a03831615156200133057600091506200133b565b823b90506000811191505b50919050565b6000806200134f8362001312565b15156200135b57600080fd5b8484604051918252602082015260409081019051809103902091506200138182620007d9565b9050600160a060020a03811615620013b257600160a060020a0381811690841614620013ac57600080fd5b62000dff565b60008281526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790558290859087907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290879051600160a060020a03909116815260200160405180910390a4509392505050565b6200143d6200149c565b60026040518059106200144d5750595b9080825280602002602001820160405250905082816000815181106200146f57fe5b6020908102909101015281816001815181106200148857fe5b6020908102909101015292915050565b4390565b60206040519081016040526000815290565b60405161086c80620014d183390190565b6040516108688062001d3d8339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029b6d92708f3d4817afc106147d969e229ced5c46e65e0a5002a0d391287762bd0f1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6ad6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fba165627a7a72305820","swarm_hash":"92666edd4994a08d840c83ae0765d7ee526e62c490716159c0de383bc72913e1","gas_estimates":{"creation":{"codeDepositCost":"1961600","executionCost":"2072","totalCost":"1963672"},"external":{"ACL_APP()":"632","ACL_APP_ID()":"infinite","APM_NODE()":"236","APP_ADDR_NAMESPACE()":"infinite","APP_BASES_NAMESPACE()":"infinite","APP_MANAGER_ROLE()":"infinite","CORE_NAMESPACE()":"434","DEFAULT_VAULT_ID()":"676","ETH()":"603","ETH_NODE()":"720","KERNEL_APP()":"302","KERNEL_APP_ID()":"258","acl()":"1293","allowRecoverability(address)":"545","appId()":"678","apps(bytes32)":"799","getApp(bytes32)":"821","getInitializationBlock()":"744","getRecoveryVault()":"974","hasPermission(address,address,bytes32,bytes)":"infinite","initialize(address,address)":"infinite","kernel()":"1120","newAppInstance(bytes32,address)":"infinite","newAppInstance(bytes32,address,bool)":"infinite","newAppProxy(address,bytes32)":"infinite","newAppProxy(address,bytes32,bytes)":"infinite","newAppProxyPinned(address,bytes32)":"infinite","newAppProxyPinned(address,bytes32,bytes)":"infinite","newPinnedAppInstance(bytes32,address)":"infinite","newPinnedAppInstance(bytes32,address,bool)":"infinite","recoveryVaultId()":"986","setApp(bytes32,bytes32,address)":"infinite","setRecoveryVaultId(bytes32)":"infinite","transferToVault(address)":"infinite"},"internal":{"_setApp(bytes32,bytes32,address)":"infinite","_setAppIfNew(bytes32,bytes32,address)":"infinite"}},"function_hashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","APP_MANAGER_ROLE()":"8ea8dc9d","CORE_NAMESPACE()":"756f6049","DEFAULT_VAULT_ID()":"b7c529ab","ETH()":"8322fff2","ETH_NODE()":"cc473be3","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","acl()":"de287359","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","apps(bytes32)":"38bb6def","getApp(bytes32)":"42c71f1d","getInitializationBlock()":"8b3dd749","getRecoveryVault()":"32f0a3b5","hasPermission(address,address,bytes32,bytes)":"fdef9106","initialize(address,address)":"485cc955","kernel()":"d4aae0c4","newAppInstance(bytes32,address)":"80cd5ac3","newAppInstance(bytes32,address,bool)":"e943d1e6","newAppProxy(address,bytes32)":"e156a8f3","newAppProxy(address,bytes32,bytes)":"ede658b0","newAppProxyPinned(address,bytes32)":"ff289fc5","newAppProxyPinned(address,bytes32,bytes)":"d162f8b0","newPinnedAppInstance(bytes32,address)":"958fde82","newPinnedAppInstance(bytes32,address,bool)":"f8c7fa1e","recoveryVaultId()":"dabca019","setApp(bytes32,bytes32,address)":"ae5b2540","setRecoveryVaultId(bytes32)":"2c2333cd","transferToVault(address)":"9d4941d8"},"abi":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x09720778"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x1113ed0d"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x178e6079"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x25012699"},{"constant":false,"inputs":[{"name":"_name","type":"bytes32"}],"name":"setRecoveryVaultId","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x2c2333cd"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x32f0a3b5"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"apps","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x38bb6def"},{"constant":true,"inputs":[{"name":"_id","type":"bytes32"}],"name":"getApp","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x42c71f1d"},{"constant":false,"inputs":[{"name":"_baseAcl","type":"address"},{"name":"_permissionsCreator","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x485cc955"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x756f6049"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x7e7db6e1"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x80afdea8"},{"constant":false,"inputs":[{"name":"_name","type":"bytes32"},{"name":"_appBase","type":"address"}],"name":"newAppInstance","outputs":[{"name":"appProxy","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x80cd5ac3"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8322fff2"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8b3dd749"},{"constant":true,"inputs":[],"name":"APP_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8ea8dc9d"},{"constant":false,"inputs":[{"name":"_name","type":"bytes32"},{"name":"_appBase","type":"address"}],"name":"newPinnedAppInstance","outputs":[{"name":"appProxy","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x958fde82"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x9d4941d8"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xa3b4b07f"},{"constant":false,"inputs":[{"name":"_namespace","type":"bytes32"},{"name":"_name","type":"bytes32"},{"name":"_app","type":"address"}],"name":"setApp","outputs":[{"name":"id","type":"bytes32"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xae5b2540"},{"constant":true,"inputs":[],"name":"DEFAULT_VAULT_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xb7c529ab"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xcbcc65eb"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xcc473be3"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"name":"newAppProxyPinned","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd162f8b0"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xd4aae0c4"},{"constant":true,"inputs":[],"name":"recoveryVaultId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdabca019"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdb8a61d4"},{"constant":true,"inputs":[],"name":"acl","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xde287359"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"}],"name":"newAppProxy","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xe156a8f3"},{"constant":false,"inputs":[{"name":"_name","type":"bytes32"},{"name":"_appBase","type":"address"},{"name":"_setDefault","type":"bool"}],"name":"newAppInstance","outputs":[{"name":"appProxy","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xe943d1e6"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"name":"newAppProxy","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xede658b0"},{"constant":false,"inputs":[{"name":"_name","type":"bytes32"},{"name":"_appBase","type":"address"},{"name":"_setDefault","type":"bool"}],"name":"newPinnedAppInstance","outputs":[{"name":"appProxy","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xf8c7fa1e"},{"constant":true,"inputs":[{"name":"_who","type":"address"},{"name":"_where","type":"address"},{"name":"_what","type":"bytes32"},{"name":"_how","type":"bytes"}],"name":"hasPermission","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xfdef9106"},{"constant":false,"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"}],"name":"newAppProxyPinned","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xff289fc5"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proxy","type":"address"},{"indexed":false,"name":"isUpgradeable","type":"bool"},{"indexed":false,"name":"appId","type":"bytes32"}],"name":"NewAppProxy","type":"event","signature":"0xd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf47"},{"anonymous":false,"inputs":[{"indexed":true,"name":"namespace","type":"bytes32"},{"indexed":true,"name":"name","type":"bytes32"},{"indexed":true,"name":"id","type":"bytes32"},{"indexed":false,"name":"app","type":"address"}],"name":"SetApp","type":"event","signature":"0xe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b522"}]}; +let Kernel = new EmbarkJS.Blockchain.Contract(KernelJSONConfig); +export default Kernel; diff --git a/abi/contracts/KernelConstants.js b/abi/contracts/KernelConstants.js new file mode 100644 index 0000000..a355547 --- /dev/null +++ b/abi/contracts/KernelConstants.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let KernelConstantsJSONConfig = {"contract_name":{"className":"KernelConstants","args":[],"code":"6060604052341561000f57600080fd5b6102ca8061001e6000396000f3006060604052600436106100985763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461009d5780631113ed0d146100c2578063178e6079146100d557806325012699146100e8578063756f6049146100fb578063a3b4b07f1461010e578063cbcc65eb14610121578063cc473be314610134578063db8a61d414610147575b600080fd5b34156100a857600080fd5b6100b061015a565b60405190815260200160405180910390f35b34156100cd57600080fd5b6100b061017e565b34156100e057600080fd5b6100b06101a2565b34156100f357600080fd5b6100b06101c6565b341561010657600080fd5b6100b06101ea565b341561011957600080fd5b6100b061020e565b341561012c57600080fd5b6100b0610232565b341561013f57600080fd5b6100b0610256565b341561015257600080fd5b6100b061027a565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a72305820291e4acf1d1af8fc2a31f66d4ff3e69564b59f783907a8ee1bceb713d83190b90029","runtimeBytecode":"6060604052600436106100985763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461009d5780631113ed0d146100c2578063178e6079146100d557806325012699146100e8578063756f6049146100fb578063a3b4b07f1461010e578063cbcc65eb14610121578063cc473be314610134578063db8a61d414610147575b600080fd5b34156100a857600080fd5b6100b061015a565b60405190815260200160405180910390f35b34156100cd57600080fd5b6100b061017e565b34156100e057600080fd5b6100b06101a2565b34156100f357600080fd5b6100b06101c6565b341561010657600080fd5b6100b06101ea565b341561011957600080fd5b6100b061020e565b341561012c57600080fd5b6100b0610232565b341561013f57600080fd5b6100b0610256565b341561015257600080fd5b6100b061027a565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a72305820291e4acf1d1af8fc2a31f66d4ff3e69564b59f783907a8ee1bceb713d83190b90029","realRuntimeBytecode":"6060604052600436106100985763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461009d5780631113ed0d146100c2578063178e6079146100d557806325012699146100e8578063756f6049146100fb578063a3b4b07f1461010e578063cbcc65eb14610121578063cc473be314610134578063db8a61d414610147575b600080fd5b34156100a857600080fd5b6100b061015a565b60405190815260200160405180910390f35b34156100cd57600080fd5b6100b061017e565b34156100e057600080fd5b6100b06101a2565b34156100f357600080fd5b6100b06101c6565b341561010657600080fd5b6100b06101ea565b341561011957600080fd5b6100b061020e565b341561012c57600080fd5b6100b0610232565b341561013f57600080fd5b6100b0610256565b341561015257600080fd5b6100b061027a565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a72305820","linkReferences":{},"swarmHash":"291e4acf1d1af8fc2a31f66d4ff3e69564b59f783907a8ee1bceb713d83190b9","gasEstimates":{"creation":{"codeDepositCost":"142800","executionCost":"185","totalCost":"142985"},"external":{"ACL_APP()":"283","ACL_APP_ID()":"305","APM_NODE()":"173","APP_ADDR_NAMESPACE()":"217","APP_BASES_NAMESPACE()":"349","CORE_NAMESPACE()":"261","ETH_NODE()":"327","KERNEL_APP()":"239","KERNEL_APP_ID()":"195"}},"functionHashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/kernel/KernelStorage.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/kernel/KernelStorage.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/kernel/KernelStorage.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b6102ca8061001e6000396000f3006060604052600436106100985763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461009d5780631113ed0d146100c2578063178e6079146100d557806325012699146100e8578063756f6049146100fb578063a3b4b07f1461010e578063cbcc65eb14610121578063cc473be314610134578063db8a61d414610147575b600080fd5b34156100a857600080fd5b6100b061015a565b60405190815260200160405180910390f35b34156100cd57600080fd5b6100b061017e565b34156100e057600080fd5b6100b06101a2565b34156100f357600080fd5b6100b06101c6565b341561010657600080fd5b6100b06101ea565b341561011957600080fd5b6100b061020e565b341561012c57600080fd5b6100b0610232565b341561013f57600080fd5b6100b0610256565b341561015257600080fd5b6100b061027a565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a72305820291e4acf1d1af8fc2a31f66d4ff3e69564b59f783907a8ee1bceb713d83190b90029","runtime_bytecode":"6060604052600436106100985763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461009d5780631113ed0d146100c2578063178e6079146100d557806325012699146100e8578063756f6049146100fb578063a3b4b07f1461010e578063cbcc65eb14610121578063cc473be314610134578063db8a61d414610147575b600080fd5b34156100a857600080fd5b6100b061015a565b60405190815260200160405180910390f35b34156100cd57600080fd5b6100b061017e565b34156100e057600080fd5b6100b06101a2565b34156100f357600080fd5b6100b06101c6565b341561010657600080fd5b6100b06101ea565b341561011957600080fd5b6100b061020e565b341561012c57600080fd5b6100b0610232565b341561013f57600080fd5b6100b0610256565b341561015257600080fd5b6100b061027a565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a72305820291e4acf1d1af8fc2a31f66d4ff3e69564b59f783907a8ee1bceb713d83190b90029","real_runtime_bytecode":"6060604052600436106100985763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461009d5780631113ed0d146100c2578063178e6079146100d557806325012699146100e8578063756f6049146100fb578063a3b4b07f1461010e578063cbcc65eb14610121578063cc473be314610134578063db8a61d414610147575b600080fd5b34156100a857600080fd5b6100b061015a565b60405190815260200160405180910390f35b34156100cd57600080fd5b6100b061017e565b34156100e057600080fd5b6100b06101a2565b34156100f357600080fd5b6100b06101c6565b341561010657600080fd5b6100b06101ea565b341561011957600080fd5b6100b061020e565b341561012c57600080fd5b6100b0610232565b341561013f57600080fd5b6100b0610256565b341561015257600080fd5b6100b061027a565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a72305820","swarm_hash":"291e4acf1d1af8fc2a31f66d4ff3e69564b59f783907a8ee1bceb713d83190b9","gas_estimates":{"creation":{"codeDepositCost":"142800","executionCost":"185","totalCost":"142985"},"external":{"ACL_APP()":"283","ACL_APP_ID()":"305","APM_NODE()":"173","APP_ADDR_NAMESPACE()":"217","APP_BASES_NAMESPACE()":"349","CORE_NAMESPACE()":"261","ETH_NODE()":"327","KERNEL_APP()":"239","KERNEL_APP_ID()":"195"}},"function_hashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d"},"abi":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let KernelConstants = new EmbarkJS.Blockchain.Contract(KernelConstantsJSONConfig); +export default KernelConstants; diff --git a/abi/contracts/KernelProxy.js b/abi/contracts/KernelProxy.js new file mode 100644 index 0000000..9fffb71 --- /dev/null +++ b/abi/contracts/KernelProxy.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let KernelProxyJSONConfig = {"contract_name":{"className":"KernelProxy","args":[],"code":"6060604052341561000f57600080fd5b60405160208061068e8339810160405280805191508190506000807fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f87f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c604051918252602082015260409081019051908190039020815260208101919091526040016000208054600160a060020a0392909216600160a060020a0319909216919091179055506105ca806100c46000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029","runtimeBytecode":"6060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029","realRuntimeBytecode":"6060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820","linkReferences":{},"swarmHash":"cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e6","gasEstimates":{"creation":{"codeDepositCost":"296400","executionCost":"20970","totalCost":"317370"},"external":{"":"infinite","ACL_APP()":"infinite","ACL_APP_ID()":"infinite","APM_NODE()":"infinite","APP_ADDR_NAMESPACE()":"infinite","APP_BASES_NAMESPACE()":"infinite","CORE_NAMESPACE()":"infinite","ETH_NODE()":"infinite","FORWARDING()":"infinite","FWD_GAS_LIMIT()":"infinite","KERNEL_APP()":"infinite","KERNEL_APP_ID()":"infinite","UPGRADEABLE()":"infinite","apps(bytes32)":"infinite","implementation()":"infinite","proxyType()":"infinite","recoveryVaultId()":"infinite"}},"functionHashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","FORWARDING()":"2b2584f6","FWD_GAS_LIMIT()":"0ceafa2a","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","UPGRADEABLE()":"7e84a4ff","apps(bytes32)":"38bb6def","implementation()":"5c60da1b","proxyType()":"4555d5c9","recoveryVaultId()":"dabca019"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FWD_GAS_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FORWARDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"apps","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"UPGRADEABLE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"recoveryVaultId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernelImpl","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/kernel/KernelProxy.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/kernel/KernelProxy.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/kernel/KernelProxy.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b60405160208061068e8339810160405280805191508190506000807fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f87f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c604051918252602082015260409081019051908190039020815260208101919091526040016000208054600160a060020a0392909216600160a060020a0319909216919091179055506105ca806100c46000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029","runtime_bytecode":"6060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029","real_runtime_bytecode":"6060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820","swarm_hash":"cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e6","gas_estimates":{"creation":{"codeDepositCost":"296400","executionCost":"20970","totalCost":"317370"},"external":{"":"infinite","ACL_APP()":"infinite","ACL_APP_ID()":"infinite","APM_NODE()":"infinite","APP_ADDR_NAMESPACE()":"infinite","APP_BASES_NAMESPACE()":"infinite","CORE_NAMESPACE()":"infinite","ETH_NODE()":"infinite","FORWARDING()":"infinite","FWD_GAS_LIMIT()":"infinite","KERNEL_APP()":"infinite","KERNEL_APP_ID()":"infinite","UPGRADEABLE()":"infinite","apps(bytes32)":"infinite","implementation()":"infinite","proxyType()":"infinite","recoveryVaultId()":"infinite"}},"function_hashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","FORWARDING()":"2b2584f6","FWD_GAS_LIMIT()":"0ceafa2a","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","UPGRADEABLE()":"7e84a4ff","apps(bytes32)":"38bb6def","implementation()":"5c60da1b","proxyType()":"4555d5c9","recoveryVaultId()":"dabca019"},"abi":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FWD_GAS_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FORWARDING","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"apps","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"UPGRADEABLE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"recoveryVaultId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernelImpl","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}]}; +let KernelProxy = new EmbarkJS.Blockchain.Contract(KernelProxyJSONConfig); +export default KernelProxy; diff --git a/abi/contracts/KernelStorage.js b/abi/contracts/KernelStorage.js new file mode 100644 index 0000000..0ecc5b3 --- /dev/null +++ b/abi/contracts/KernelStorage.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let KernelStorageJSONConfig = {"contract_name":{"className":"KernelStorage","args":[],"code":"6060604052341561000f57600080fd5b6103608061001e6000396000f3006060604052600436106100ae5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146100b35780631113ed0d146100d8578063178e6079146100eb57806325012699146100fe57806338bb6def14610111578063756f604914610150578063a3b4b07f14610163578063cbcc65eb14610176578063cc473be314610189578063dabca0191461019c578063db8a61d4146101af575b600080fd5b34156100be57600080fd5b6100c66101c2565b60405190815260200160405180910390f35b34156100e357600080fd5b6100c66101e6565b34156100f657600080fd5b6100c661020a565b341561010957600080fd5b6100c661022e565b341561011c57600080fd5b610127600435610252565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561015b57600080fd5b6100c661027a565b341561016e57600080fd5b6100c661029e565b341561018157600080fd5b6100c66102c2565b341561019457600080fd5b6100c66102e6565b34156101a757600080fd5b6100c661030a565b34156101ba57600080fd5b6100c6610310565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a723058209dabe1d212b65b73d9430c411223bead9d26ba544541fca3fbbb5a19eb57ee580029","runtimeBytecode":"6060604052600436106100ae5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146100b35780631113ed0d146100d8578063178e6079146100eb57806325012699146100fe57806338bb6def14610111578063756f604914610150578063a3b4b07f14610163578063cbcc65eb14610176578063cc473be314610189578063dabca0191461019c578063db8a61d4146101af575b600080fd5b34156100be57600080fd5b6100c66101c2565b60405190815260200160405180910390f35b34156100e357600080fd5b6100c66101e6565b34156100f657600080fd5b6100c661020a565b341561010957600080fd5b6100c661022e565b341561011c57600080fd5b610127600435610252565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561015b57600080fd5b6100c661027a565b341561016e57600080fd5b6100c661029e565b341561018157600080fd5b6100c66102c2565b341561019457600080fd5b6100c66102e6565b34156101a757600080fd5b6100c661030a565b34156101ba57600080fd5b6100c6610310565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a723058209dabe1d212b65b73d9430c411223bead9d26ba544541fca3fbbb5a19eb57ee580029","realRuntimeBytecode":"6060604052600436106100ae5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146100b35780631113ed0d146100d8578063178e6079146100eb57806325012699146100fe57806338bb6def14610111578063756f604914610150578063a3b4b07f14610163578063cbcc65eb14610176578063cc473be314610189578063dabca0191461019c578063db8a61d4146101af575b600080fd5b34156100be57600080fd5b6100c66101c2565b60405190815260200160405180910390f35b34156100e357600080fd5b6100c66101e6565b34156100f657600080fd5b6100c661020a565b341561010957600080fd5b6100c661022e565b341561011c57600080fd5b610127600435610252565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561015b57600080fd5b6100c661027a565b341561016e57600080fd5b6100c661029e565b341561018157600080fd5b6100c66102c2565b341561019457600080fd5b6100c66102e6565b34156101a757600080fd5b6100c661030a565b34156101ba57600080fd5b6100c6610310565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a72305820","linkReferences":{},"swarmHash":"9dabe1d212b65b73d9430c411223bead9d26ba544541fca3fbbb5a19eb57ee58","gasEstimates":{"creation":{"codeDepositCost":"172800","executionCost":"209","totalCost":"173009"},"external":{"ACL_APP()":"305","ACL_APP_ID()":"327","APM_NODE()":"173","APP_ADDR_NAMESPACE()":"217","APP_BASES_NAMESPACE()":"393","CORE_NAMESPACE()":"283","ETH_NODE()":"349","KERNEL_APP()":"239","KERNEL_APP_ID()":"195","apps(bytes32)":"551","recoveryVaultId()":"571"}},"functionHashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","apps(bytes32)":"38bb6def","recoveryVaultId()":"dabca019"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"apps","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"recoveryVaultId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/kernel/KernelStorage.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/kernel/KernelStorage.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/kernel/KernelStorage.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b6103608061001e6000396000f3006060604052600436106100ae5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146100b35780631113ed0d146100d8578063178e6079146100eb57806325012699146100fe57806338bb6def14610111578063756f604914610150578063a3b4b07f14610163578063cbcc65eb14610176578063cc473be314610189578063dabca0191461019c578063db8a61d4146101af575b600080fd5b34156100be57600080fd5b6100c66101c2565b60405190815260200160405180910390f35b34156100e357600080fd5b6100c66101e6565b34156100f657600080fd5b6100c661020a565b341561010957600080fd5b6100c661022e565b341561011c57600080fd5b610127600435610252565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561015b57600080fd5b6100c661027a565b341561016e57600080fd5b6100c661029e565b341561018157600080fd5b6100c66102c2565b341561019457600080fd5b6100c66102e6565b34156101a757600080fd5b6100c661030a565b34156101ba57600080fd5b6100c6610310565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a723058209dabe1d212b65b73d9430c411223bead9d26ba544541fca3fbbb5a19eb57ee580029","runtime_bytecode":"6060604052600436106100ae5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146100b35780631113ed0d146100d8578063178e6079146100eb57806325012699146100fe57806338bb6def14610111578063756f604914610150578063a3b4b07f14610163578063cbcc65eb14610176578063cc473be314610189578063dabca0191461019c578063db8a61d4146101af575b600080fd5b34156100be57600080fd5b6100c66101c2565b60405190815260200160405180910390f35b34156100e357600080fd5b6100c66101e6565b34156100f657600080fd5b6100c661020a565b341561010957600080fd5b6100c661022e565b341561011c57600080fd5b610127600435610252565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561015b57600080fd5b6100c661027a565b341561016e57600080fd5b6100c661029e565b341561018157600080fd5b6100c66102c2565b341561019457600080fd5b6100c66102e6565b34156101a757600080fd5b6100c661030a565b34156101ba57600080fd5b6100c6610310565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a723058209dabe1d212b65b73d9430c411223bead9d26ba544541fca3fbbb5a19eb57ee580029","real_runtime_bytecode":"6060604052600436106100ae5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146100b35780631113ed0d146100d8578063178e6079146100eb57806325012699146100fe57806338bb6def14610111578063756f604914610150578063a3b4b07f14610163578063cbcc65eb14610176578063cc473be314610189578063dabca0191461019c578063db8a61d4146101af575b600080fd5b34156100be57600080fd5b6100c66101c2565b60405190815260200160405180910390f35b34156100e357600080fd5b6100c66101e6565b34156100f657600080fd5b6100c661020a565b341561010957600080fd5b6100c661022e565b341561011c57600080fd5b610127600435610252565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561015b57600080fd5b6100c661027a565b341561016e57600080fd5b6100c661029e565b341561018157600080fd5b6100c66102c2565b341561019457600080fd5b6100c66102e6565b34156101a757600080fd5b6100c661030a565b34156101ba57600080fd5b6100c6610310565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a72305820","swarm_hash":"9dabe1d212b65b73d9430c411223bead9d26ba544541fca3fbbb5a19eb57ee58","gas_estimates":{"creation":{"codeDepositCost":"172800","executionCost":"209","totalCost":"173009"},"external":{"ACL_APP()":"305","ACL_APP_ID()":"327","APM_NODE()":"173","APP_ADDR_NAMESPACE()":"217","APP_BASES_NAMESPACE()":"393","CORE_NAMESPACE()":"283","ETH_NODE()":"349","KERNEL_APP()":"239","KERNEL_APP_ID()":"195","apps(bytes32)":"551","recoveryVaultId()":"571"}},"function_hashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","apps(bytes32)":"38bb6def","recoveryVaultId()":"dabca019"},"abi":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"apps","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"recoveryVaultId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let KernelStorage = new EmbarkJS.Blockchain.Contract(KernelStorageJSONConfig); +export default KernelStorage; diff --git a/abi/contracts/LPConstants.js b/abi/contracts/LPConstants.js new file mode 100644 index 0000000..1e8c27f --- /dev/null +++ b/abi/contracts/LPConstants.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let LPConstantsJSONConfig = {"contract_name":{"className":"LPConstants","args":[],"code":"6060604052341561000f57600080fd5b61036e8061001e6000396000f3006060604052600436106100ae5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146100b35780631113ed0d146100d8578063178e6079146100eb57806325012699146100fe5780633074426714610111578063756f604914610124578063a3b4b07f14610137578063cbcc65eb1461014a578063cc473be31461015d578063d2dd420f14610170578063db8a61d414610183575b600080fd5b34156100be57600080fd5b6100c6610196565b60405190815260200160405180910390f35b34156100e357600080fd5b6100c66101ba565b34156100f657600080fd5b6100c66101de565b341561010957600080fd5b6100c6610202565b341561011c57600080fd5b6100c6610226565b341561012f57600080fd5b6100c661025a565b341561014257600080fd5b6100c661027e565b341561015557600080fd5b6100c66102a2565b341561016857600080fd5b6100c66102c6565b341561017b57600080fd5b6100c66102ea565b341561018e57600080fd5b6100c661031e565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b6040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051809103902081565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b6040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051809103902081565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a72305820e6a2de2295c44482d5c51c7d8bfb7677c804b959a0180d36f4f9eb55da3579910029","runtimeBytecode":"6060604052600436106100ae5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146100b35780631113ed0d146100d8578063178e6079146100eb57806325012699146100fe5780633074426714610111578063756f604914610124578063a3b4b07f14610137578063cbcc65eb1461014a578063cc473be31461015d578063d2dd420f14610170578063db8a61d414610183575b600080fd5b34156100be57600080fd5b6100c6610196565b60405190815260200160405180910390f35b34156100e357600080fd5b6100c66101ba565b34156100f657600080fd5b6100c66101de565b341561010957600080fd5b6100c6610202565b341561011c57600080fd5b6100c6610226565b341561012f57600080fd5b6100c661025a565b341561014257600080fd5b6100c661027e565b341561015557600080fd5b6100c66102a2565b341561016857600080fd5b6100c66102c6565b341561017b57600080fd5b6100c66102ea565b341561018e57600080fd5b6100c661031e565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b6040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051809103902081565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b6040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051809103902081565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a72305820e6a2de2295c44482d5c51c7d8bfb7677c804b959a0180d36f4f9eb55da3579910029","realRuntimeBytecode":"6060604052600436106100ae5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146100b35780631113ed0d146100d8578063178e6079146100eb57806325012699146100fe5780633074426714610111578063756f604914610124578063a3b4b07f14610137578063cbcc65eb1461014a578063cc473be31461015d578063d2dd420f14610170578063db8a61d414610183575b600080fd5b34156100be57600080fd5b6100c6610196565b60405190815260200160405180910390f35b34156100e357600080fd5b6100c66101ba565b34156100f657600080fd5b6100c66101de565b341561010957600080fd5b6100c6610202565b341561011c57600080fd5b6100c6610226565b341561012f57600080fd5b6100c661025a565b341561014257600080fd5b6100c661027e565b341561015557600080fd5b6100c66102a2565b341561016857600080fd5b6100c66102c6565b341561017b57600080fd5b6100c66102ea565b341561018e57600080fd5b6100c661031e565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b6040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051809103902081565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b6040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051809103902081565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a72305820","linkReferences":{},"swarmHash":"e6a2de2295c44482d5c51c7d8bfb7677c804b959a0180d36f4f9eb55da357991","gasEstimates":{"creation":{"codeDepositCost":"175600","executionCost":"215","totalCost":"175815"},"external":{"ACL_APP()":"305","ACL_APP_ID()":"327","APM_NODE()":"173","APP_ADDR_NAMESPACE()":"217","APP_BASES_NAMESPACE()":"393","CORE_NAMESPACE()":"283","ETH_NODE()":"349","KERNEL_APP()":"239","KERNEL_APP_ID()":"195","LP_APP_ID()":"333","VAULT_APP_ID()":"443"}},"functionHashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","LP_APP_ID()":"30744267","VAULT_APP_ID()":"d2dd420f"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"LP_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"VAULT_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/LPConstants.sol","originalFilename":"contracts/LPConstants.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/LPConstants.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b61036e8061001e6000396000f3006060604052600436106100ae5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146100b35780631113ed0d146100d8578063178e6079146100eb57806325012699146100fe5780633074426714610111578063756f604914610124578063a3b4b07f14610137578063cbcc65eb1461014a578063cc473be31461015d578063d2dd420f14610170578063db8a61d414610183575b600080fd5b34156100be57600080fd5b6100c6610196565b60405190815260200160405180910390f35b34156100e357600080fd5b6100c66101ba565b34156100f657600080fd5b6100c66101de565b341561010957600080fd5b6100c6610202565b341561011c57600080fd5b6100c6610226565b341561012f57600080fd5b6100c661025a565b341561014257600080fd5b6100c661027e565b341561015557600080fd5b6100c66102a2565b341561016857600080fd5b6100c66102c6565b341561017b57600080fd5b6100c66102ea565b341561018e57600080fd5b6100c661031e565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b6040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051809103902081565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b6040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051809103902081565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a72305820e6a2de2295c44482d5c51c7d8bfb7677c804b959a0180d36f4f9eb55da3579910029","runtime_bytecode":"6060604052600436106100ae5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146100b35780631113ed0d146100d8578063178e6079146100eb57806325012699146100fe5780633074426714610111578063756f604914610124578063a3b4b07f14610137578063cbcc65eb1461014a578063cc473be31461015d578063d2dd420f14610170578063db8a61d414610183575b600080fd5b34156100be57600080fd5b6100c6610196565b60405190815260200160405180910390f35b34156100e357600080fd5b6100c66101ba565b34156100f657600080fd5b6100c66101de565b341561010957600080fd5b6100c6610202565b341561011c57600080fd5b6100c6610226565b341561012f57600080fd5b6100c661025a565b341561014257600080fd5b6100c661027e565b341561015557600080fd5b6100c66102a2565b341561016857600080fd5b6100c66102c6565b341561017b57600080fd5b6100c66102ea565b341561018e57600080fd5b6100c661031e565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b6040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051809103902081565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b6040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051809103902081565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a72305820e6a2de2295c44482d5c51c7d8bfb7677c804b959a0180d36f4f9eb55da3579910029","real_runtime_bytecode":"6060604052600436106100ae5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146100b35780631113ed0d146100d8578063178e6079146100eb57806325012699146100fe5780633074426714610111578063756f604914610124578063a3b4b07f14610137578063cbcc65eb1461014a578063cc473be31461015d578063d2dd420f14610170578063db8a61d414610183575b600080fd5b34156100be57600080fd5b6100c6610196565b60405190815260200160405180910390f35b34156100e357600080fd5b6100c66101ba565b34156100f657600080fd5b6100c66101de565b341561010957600080fd5b6100c6610202565b341561011c57600080fd5b6100c6610226565b341561012f57600080fd5b6100c661025a565b341561014257600080fd5b6100c661027e565b341561015557600080fd5b6100c66102a2565b341561016857600080fd5b6100c66102c6565b341561017b57600080fd5b6100c66102ea565b341561018e57600080fd5b6100c661031e565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b6040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051809103902081565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b6040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051809103902081565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f815600a165627a7a72305820","swarm_hash":"e6a2de2295c44482d5c51c7d8bfb7677c804b959a0180d36f4f9eb55da357991","gas_estimates":{"creation":{"codeDepositCost":"175600","executionCost":"215","totalCost":"175815"},"external":{"ACL_APP()":"305","ACL_APP_ID()":"327","APM_NODE()":"173","APP_ADDR_NAMESPACE()":"217","APP_BASES_NAMESPACE()":"393","CORE_NAMESPACE()":"283","ETH_NODE()":"349","KERNEL_APP()":"239","KERNEL_APP_ID()":"195","LP_APP_ID()":"333","VAULT_APP_ID()":"443"}},"function_hashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","LP_APP_ID()":"30744267","VAULT_APP_ID()":"d2dd420f"},"abi":[{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"LP_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"VAULT_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let LPConstants = new EmbarkJS.Blockchain.Contract(LPConstantsJSONConfig); +export default LPConstants; diff --git a/abi/contracts/LPFactory.js b/abi/contracts/LPFactory.js new file mode 100644 index 0000000..a44adeb --- /dev/null +++ b/abi/contracts/LPFactory.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let LPFactoryJSONConfig = {"contract_name":{"address":"0x968F0a788F29b5B33296C61cEB34F1c40C55e52c","args":{"_vaultBase":"$LPVault","_lpBase":"$LiquidPledging"},"className":"LPFactory","code":"606060405234156200001057600080fd5b6040516040806200602383398101604052808051919060200180519150620000399050620000f6565b604051809103906000f08015156200005057600080fd5b6200005a62000107565b604051809103906000f08015156200007157600080fd5b60008054600160a060020a0319908116600160a060020a03948516179091556001805490911691831691909117905582161515620000ae57600080fd5b600160a060020a0381161515620000c457600080fd5b60038054600160a060020a03938416600160a060020a0319918216179091556004805492909316911617905562000118565b60405161266e8062001eb583390190565b604051611b00806200452383390190565b611d8d80620001286000396000f3006060604052600436106100ed5763ffffffff60e060020a600035041663086b339e81146100f257806309720778146101215780631113ed0d14610146578063178e6079146101595780631cb671b11461016c578063216874441461017f578063250126991461019e57806330744267146101b1578063656362b5146101c4578063756f6049146101d7578063a3b4b07f146101ea578063b16dd130146101fd578063bce9b99514610210578063cbcc65eb14610237578063cc473be31461024a578063d2dd420f1461025d578063db8a61d414610270578063eeab495514610283578063fa637d5f14610296575b600080fd5b34156100fd57600080fd5b6101056102a9565b604051600160a060020a03909116815260200160405180910390f35b341561012c57600080fd5b6101346102b8565b60405190815260200160405180910390f35b341561015157600080fd5b6101346102dc565b341561016457600080fd5b610134610300565b341561017757600080fd5b610105610324565b341561018a57600080fd5b610105600160a060020a0360043516610333565b34156101a957600080fd5b610134610a55565b34156101bc57600080fd5b610134610a79565b34156101cf57600080fd5b610105610aad565b34156101e257600080fd5b610134610abc565b34156101f557600080fd5b610134610ae0565b341561020857600080fd5b610105610b04565b341561021b57600080fd5b610235600160a060020a0360043581169060243516610b13565b005b341561024257600080fd5b610134611015565b341561025557600080fd5b610134611039565b341561026857600080fd5b61013461105d565b341561027b57600080fd5b610134611091565b341561028e57600080fd5b6101056110b5565b34156102a157600080fd5b6101346110c4565b600154600160a060020a031681565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b600454600160a060020a031681565b600080548190819081908190600160a060020a03166103506116c3565b600160a060020a039091168152602001604051809103906000f080151561037657600080fd5b600254909550600160a060020a0316151561040057600154600160a060020a038087169163485cc95591168860405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b15156103e757600080fd5b6102c65a03f115156103f857600080fd5b505050610a0f565b600154600160a060020a038087169163485cc95591163060405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b151561045c57600080fd5b6102c65a03f1151561046d57600080fd5b50505084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156104b657600080fd5b6102c65a03f115156104c757600080fd5b5050506040518051945050600160a060020a038416633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561051857600080fd5b6102c65a03f1151561052957600080fd5b5050506040518051935050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561057a57600080fd5b6102c65a03f1151561058b57600080fd5b5050506040518051600254909350600160a060020a038087169250630a8ed3db9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156105fe57600080fd5b6102c65a03f1151561060f57600080fd5b5050600254600160a060020a03808716925063be038478911687853060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561068157600080fd5b6102c65a03f1151561069257600080fd5b5050600254600160a060020a0316905063869abc24868860006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b15156106f757600080fd5b6102c65a03f1151561070857600080fd5b5050506040518051905090507f1a40224412580c1ae5a2fbe8029a565f49a3a029608a8fd9320b32477f31457981604051600160a060020a03909116815260200160405180910390a1600254600160a060020a0380861691639d0effdb9116878560405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156107b857600080fd5b6102c65a03f115156107c957600080fd5b5050600254600160a060020a038087169250639d0effdb9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561083357600080fd5b6102c65a03f1151561084457600080fd5b50505083600160a060020a0316639d0effdb30868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156108a857600080fd5b6102c65a03f115156108b957600080fd5b50505083600160a060020a0316630a8ed3db87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561091d57600080fd5b6102c65a03f1151561092e57600080fd5b50505083600160a060020a031663a885508a868460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561098557600080fd5b6102c65a03f1151561099657600080fd5b50505083600160a060020a031663afd925df87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156109fa57600080fd5b6102c65a03f11515610a0b57600080fd5b5050505b7f3a7eb042a769adf51e9be78b68ed7af0ad7b379246536efc376ed2ca0123828285604051600160a060020a03909116815260200160405180910390a150505050919050565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b6040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051809103902081565b600254600160a060020a031681565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b600054600160a060020a031681565b6000806000806000610b2430610333565b945084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610b6c57600080fd5b6102c65a03f11515610b7d57600080fd5b5050506040518051945050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610bce57600080fd5b6102c65a03f11515610bdf57600080fd5b5050506040518051935050600160a060020a03841663be0384783087868260405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b1515610c5357600080fd5b6102c65a03f11515610c6457600080fd5b50505084600160a060020a03166380cd5ac36040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051908190039020600354600160a060020a031660006040516020015260405160e060020a63ffffffff85160281526004810192909252600160a060020a03166024820152604401602060405180830381600087803b1515610d0157600080fd5b6102c65a03f11515610d1257600080fd5b5050506040518051925050600160a060020a03851663e943d1e66040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051908190039020600454600160a060020a0316600160006040516020015260405160e060020a63ffffffff86160281526004810193909352600160a060020a03909116602483015215156044820152606401602060405180830381600087803b1515610dc257600080fd5b6102c65a03f11515610dd357600080fd5b5050506040518051915050600160a060020a03821663c4d66de88260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515610e2c57600080fd5b6102c65a03f11515610e3d57600080fd5b50505080600160a060020a031663c4d66de88360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515610e8e57600080fd5b6102c65a03f11515610e9f57600080fd5b50505084600160a060020a0316632c2333cd6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d01604051809103902060405160e060020a63ffffffff84160281526004810191909152602401600060405180830381600087803b1515610f1857600080fd5b6102c65a03f11515610f2957600080fd5b505050600160a060020a03851663ae5b25407fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d0160405180910390208960006040516020015260405160e060020a63ffffffff861602815260048101939093526024830191909152600160a060020a03166044820152606401602060405180830381600087803b1515610fe357600080fd5b6102c65a03f11515610ff457600080fd5b505050604051805190505061100c87858785856110f8565b50505050505050565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b6040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051809103902081565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600354600160a060020a031681565b6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d01604051809103902081565b60008060008086600160a060020a0316638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561114457600080fd5b6102c65a03f1151561115557600080fd5b5050506040518051945050600160a060020a038816633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111a657600080fd5b6102c65a03f115156111b757600080fd5b5050506040518051935050600160a060020a03861663b09927a16000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561120857600080fd5b6102c65a03f1151561121957600080fd5b5050506040518051925050600160a060020a0385166324fea3b06000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561126a57600080fd5b6102c65a03f1151561127b57600080fd5b5050506040518051915050600160a060020a03881663be0384788a88858260405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b15156112ef57600080fd5b6102c65a03f1151561130057600080fd5b50505087600160a060020a031663be0384788a87848d60405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561136c57600080fd5b6102c65a03f1151561137d57600080fd5b50505087600160a060020a0316630a8ed3db8a898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156113e157600080fd5b6102c65a03f115156113f257600080fd5b50505087600160a060020a0316630a8ed3db8a8a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561145657600080fd5b6102c65a03f1151561146757600080fd5b50505087600160a060020a0316639d0effdb30898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156114cb57600080fd5b6102c65a03f115156114dc57600080fd5b50505087600160a060020a0316639d0effdb308a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561154057600080fd5b6102c65a03f1151561155157600080fd5b50505087600160a060020a031663afd925df8a898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156115b557600080fd5b6102c65a03f115156115c657600080fd5b50505087600160a060020a031663afd925df8a8a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561162a57600080fd5b6102c65a03f1151561163b57600080fd5b5050507fedeaf64ef333aa90332884a5a2f7f4afd68cb2f994f2305530ffd9f77a7d82f686604051600160a060020a03909116815260200160405180910390a17f5aea3adcb99f382f124e44eb79721965a8f357a5919434da5e74e85b8c79a02585604051600160a060020a03909116815260200160405180910390a1505050505050505050565b60405161068e806116d48339019056006060604052341561000f57600080fd5b60405160208061068e8339810160405280805191508190506000807fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f87f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c604051918252602082015260409081019051908190039020815260208101919091526040016000208054600160a060020a0392909216600160a060020a0319909216919091179055506105ca806100c46000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029a165627a7a72305820d453ab213a096e9e55de794cd098aa497b0a0bb2563930ae327c668b3acfdf1300296060604052341561000f57600080fd5b6126508061001e6000396000f300606060405260043610620001b55763ffffffff60e060020a600035041663097207788114620001ba5780631113ed0d14620001e2578063178e607914620001f857806325012699146200020e5780632c2333cd146200022457806332f0a3b5146200023f57806338bb6def146200027157806342c71f1d146200028a578063485cc95514620002a3578063756f604914620002cb5780637e7db6e114620002e157806380afdea8146200031757806380cd5ac3146200032d5780638322fff214620003525780638b3dd74914620003685780638ea8dc9d146200037e578063958fde8214620003945780639d4941d814620003b9578063a3b4b07f14620003db578063ae5b254014620003f1578063b7c529ab1462000419578063cbcc65eb146200042f578063cc473be31462000445578063d162f8b0146200045b578063d4aae0c414620004c3578063dabca01914620004d9578063db8a61d414620004ef578063de2873591462000505578063e156a8f3146200051b578063e943d1e61462000540578063ede658b0146200056a578063f8c7fa1e14620005d2578063fdef910614620005fc578063ff289fc5146200066b575b600080fd5b3415620001c657600080fd5b620001d062000690565b60405190815260200160405180910390f35b3415620001ee57600080fd5b620001d0620006b4565b34156200020457600080fd5b620001d0620006d8565b34156200021a57600080fd5b620001d0620006eb565b34156200023057600080fd5b6200023d6004356200070f565b005b34156200024b57600080fd5b62000255620007a0565b604051600160a060020a03909116815260200160405180910390f35b34156200027d57600080fd5b62000255600435620007be565b34156200029657600080fd5b62000255600435620007d9565b3415620002af57600080fd5b6200023d600160a060020a0360043581169060243516620007f4565b3415620002d757600080fd5b620001d062000911565b3415620002ed57600080fd5b62000303600160a060020a036004351662000935565b604051901515815260200160405180910390f35b34156200032357600080fd5b620001d06200093b565b34156200033957600080fd5b62000255600435600160a060020a036024351662000941565b34156200035e57600080fd5b62000255620009ba565b34156200037457600080fd5b620001d0620009bf565b34156200038a57600080fd5b620001d0620009c5565b3415620003a057600080fd5b62000255600435600160a060020a0360243516620009d8565b3415620003c557600080fd5b6200023d600160a060020a036004351662000a46565b3415620003e757600080fd5b620001d062000bcd565b3415620003fd57600080fd5b620001d0600435602435600160a060020a036044351662000bf1565b34156200042557600080fd5b620001d062000c9f565b34156200043b57600080fd5b620001d062000cc3565b34156200045157600080fd5b620001d062000cd6565b34156200046757600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000cfa95505050505050565b3415620004cf57600080fd5b6200025562000e07565b3415620004e557600080fd5b620001d062000e16565b3415620004fb57600080fd5b620001d062000e1c565b34156200051157600080fd5b6200025562000e2f565b34156200052757600080fd5b62000255600160a060020a036004351660243562000e61565b34156200054c57600080fd5b62000255600435600160a060020a0360243516604435151562000e9b565b34156200057657600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000f5695505050505050565b3415620005de57600080fd5b62000255600435600160a060020a036024351660443515156200105f565b34156200060857600080fd5b62000303600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650620010e895505050505050565b34156200067757600080fd5b62000255600160a060020a0360043516602435620011f6565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b6000805160206200260583398151915281565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600080516020620025a58339815191526200073a600080516020620026058339815191528362001229565b620007446200149c565b6000825160200290508291508082526200076133308685620010e8565b15156200076d57600080fd5b60008051602062002605833981519152856040519182526020820152604090810190519081900390206001555050505050565b600154600090815260208190526040902054600160a060020a031690565b600060208190529081526040902054600160a060020a031681565b600090815260208190526040902054600160a060020a031690565b600554600090156200080557600080fd5b6200080f6200123f565b6200082a30600080516020620025e583398151915262000e61565b905062000857600080516020620025c5833981519152600080516020620025e5833981519152856200125c565b506200088360008051602062002605833981519152600080516020620025e5833981519152836200125c565b5080600160a060020a031663c4d66de88360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515620008d357600080fd5b6102c65a03f11515620008e557600080fd5b50507f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e60015550505050565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b50600190565b60035481565b6000600080516020620025a58339815191526200096e600080516020620025c58339815191528562001229565b620009786200149c565b6000825160200290508291508082526200099533308685620010e8565b1515620009a157600080fd5b620009af8787600062000e9b565b979650505050505050565b600081565b60055490565b600080516020620025a583398151915281565b6000600080516020620025a583398151915262000a05600080516020620025c58339815191528562001229565b62000a0f6200149c565b60008251602002905082915080825262000a2c33308685620010e8565b151562000a3857600080fd5b620009af878760006200105f565b60008062000a548362000935565b151562000a6057600080fd5b62000a6a620007a0565b915062000a778262001312565b151562000a8357600080fd5b600160a060020a038316151562000ad85781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151562000ad257600080fd5b62000bc8565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151562000b3057600080fd5b6102c65a03f1151562000b4257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000bab57600080fd5b6102c65a03f1151562000bbd57600080fd5b505050604051805150505b505050565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b6000600080516020620025a583398151915262000c0f858562001229565b62000c196200149c565b60008251602002905082915080825262000c3633308685620010e8565b151562000c4257600080fd5b60008062000c528a8a8a6200125c565b965062000c7f7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb620007d9565b915050803b6000811162000c9257600080fd5b5050505050509392505050565b7f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e81565b600080516020620025e583398151915281565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60008084848462000d0a620014ae565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000d5b57808201518382015260200162000d41565b50505050905090810190601f16801562000d895780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151562000da757600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a18091505b509392505050565b600254600160a060020a031681565b60015481565b600080516020620025c583398151915281565b600062000e5c7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a620007d9565b905090565b600062000e948383600060405180591062000e795750595b818152601f19601f8301168101602001604052905062000f56565b9392505050565b6000600080516020620025a583398151915262000ec8600080516020620025c58339815191528662001229565b62000ed26200149c565b60008251602002905082915080825262000eef33308685620010e8565b151562000efb57600080fd5b62000f17600080516020620025c5833981519152898962001341565b5062000f24308962000e61565b9450851562000f4b5762000f4960008051602062002605833981519152898762000bf1565b505b505050509392505050565b60008084848462000f66620014bf565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000fb757808201518382015260200162000f9d565b50505050905090810190601f16801562000fe55780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f08015156200100357600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b6000600080516020620025a58339815191526200108c600080516020620025c58339815191528662001229565b620010966200149c565b600082516020029050829150808252620010b333308685620010e8565b1515620010bf57600080fd5b620010db600080516020620025c5833981519152898962001341565b5062000f243089620011f6565b6000620010f462000e2f565b600160a060020a031663fdef91068686868660006040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156200118257808201518382015260200162001168565b50505050905090810190601f168015620011b05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515620011d257600080fd5b6102c65a03f11515620011e457600080fd5b50505060405180519695505050505050565b600062000e94838360006040518059106200120e5750595b818152601f19601f8301168101602001604052905062000cfa565b620012336200149c565b62000e94838362001433565b600554156200124d57600080fd5b6200125762001498565b600555565b6000620012698262001312565b15156200127557600080fd5b838360405191825260208201526040908101905190819003902060008181526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790559091508190849086907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290869051600160a060020a03909116815260200160405180910390a49392505050565b600080600160a060020a03831615156200133057600091506200133b565b823b90506000811191505b50919050565b6000806200134f8362001312565b15156200135b57600080fd5b8484604051918252602082015260409081019051809103902091506200138182620007d9565b9050600160a060020a03811615620013b257600160a060020a0381811690841614620013ac57600080fd5b62000dff565b60008281526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790558290859087907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290879051600160a060020a03909116815260200160405180910390a4509392505050565b6200143d6200149c565b60026040518059106200144d5750595b9080825280602002602001820160405250905082816000815181106200146f57fe5b6020908102909101015281816001815181106200148857fe5b6020908102909101015292915050565b4390565b60206040519081016040526000815290565b60405161086c80620014d183390190565b6040516108688062001d3d8339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029b6d92708f3d4817afc106147d969e229ced5c46e65e0a5002a0d391287762bd0f1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6ad6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fba165627a7a7230582092666edd4994a08d840c83ae0765d7ee526e62c490716159c0de383bc72913e100296060604052341561000f57600080fd5b611ae28061001e6000396000f30060606040526004361061015b5763ffffffff60e060020a6000350416630a8ed3db811461016057806315949ed71461018a578063178e6079146101c45780631b5e75be146101d757806332f0a3b5146102595780633d6ab68f1461028857806360b1e0571461029b5780636815c992146102ae5780636d6712d814610318578063710a8315146103405780637e7db6e11461038d57806380afdea8146103ac5780638322fff2146103bf5780638b3dd749146103d25780639b3fdf4c146103e55780639d0effdb146103f85780639d4941d814610420578063a03c58321461043f578063a1658fad1461046a578063a885508a146104cd578063afd925df146104ef578063b190572714610517578063be03847814610539578063c4d66de814610568578063c513f66e14610587578063d4aae0c41461059a578063f520b58d146105ad578063f92a79ff14610617578063fdef910614610668575b600080fd5b341561016b57600080fd5b610188600160a060020a03600435811690602435166044356106d4565b005b341561019557600080fd5b6101b2600160a060020a0360043581169060243516604435610704565b60405190815260200160405180910390f35b34156101cf57600080fd5b6101b2610747565b34156101e257600080fd5b6102456004803590600160a060020a0360248035821692604435909216916064359160a490608435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061076b95505050505050565b604051901515815260200160405180910390f35b341561026457600080fd5b61026c6107a6565b604051600160a060020a03909116815260200160405180910390f35b341561029357600080fd5b6101b2610827565b34156102a657600080fd5b6101b261084b565b34156102b957600080fd5b610188600160a060020a0360048035821691602480359091169160443591608490606435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061086f95505050505050565b341561032357600080fd5b610245600160a060020a03600435811690602435166044356108d9565b341561034b57600080fd5b610359600435602435610911565b60405160ff9384168152919092166020820152600160f060020a039091166040808301919091526060909101905180910390f35b341561039857600080fd5b610245600160a060020a0360043516610959565b34156103b757600080fd5b6101b261095f565b34156103ca57600080fd5b61026c610965565b34156103dd57600080fd5b6101b261096a565b34156103f057600080fd5b6101b2610970565b341561040357600080fd5b610188600160a060020a0360043581169060243516604435610994565b341561042b57600080fd5b610188600160a060020a03600435166109d3565b341561044a57600080fd5b610359600160a060020a0360043581169060243516604435606435610b4a565b341561047557600080fd5b61024560048035600160a060020a0316906024803591906064906044359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650610bc995505050505050565b34156104d857600080fd5b610188600160a060020a0360043516602435610d07565b34156104fa57600080fd5b610188600160a060020a0360043581169060243516604435610d44565b341561052257600080fd5b61026c600160a060020a0360043516602435610d7a565b341561054457600080fd5b610188600160a060020a036004358116906024358116906044359060643516610dab565b341561057357600080fd5b610188600160a060020a0360043516610ded565b341561059257600080fd5b6101b2610e4c565b34156105a557600080fd5b61026c610e5e565b34156105b857600080fd5b610245600160a060020a03600480358216916024803590911691604435916084906064359081019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650610e6d95505050505050565b341561062257600080fd5b61026c60046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610f1395505050505050565b341561067357600080fd5b610245600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610fef95505050505050565b6106ff83838360006040518059106106e95750595b908082528060200260200182016040525061086f565b505050565b60006065600060646000610719888888611028565b81526020808201929092526040908101600090812054845291830193909352910190205490505b9392505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b6000600080516020611a9783398151915286141561078b5750600161079d565b61079a86600087878787611078565b90505b95945050505050565b60008054600160a060020a031615156107be57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561080757600080fd5b6102c65a03f1151561081857600080fd5b50505060405180519150505b90565b7f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6000838361087d8282610d7a565b600160a060020a031633600160a060020a031614151561089c57600080fd5b60008451116108b957600080516020611a978339815191526108c2565b6108c284611293565b92506108d0878787866113e8565b50505050505050565b60006108e3611a2b565b60006040518059106108f25750595b9080825280602002602001820160405250905061079d85858584610e6d565b60656020528160005260406000208181548110151561092c57fe5b60009182526020909120015460ff80821693506101008204169150620100009004600160f060020a031683565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b81816109a08282610d7a565b600160a060020a031633600160a060020a03161415156109bf57600080fd5b6109cc85858560006113e8565b5050505050565b6000806109df83610959565b15156109ea57600080fd5b6109f26107a6565b91506109fd8261145d565b1515610a0857600080fd5b600160a060020a0383161515610a5a5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515610a5557600080fd5b6106ff565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515610ab157600080fd5b6102c65a03f11515610ac257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610b2a57600080fd5b6102c65a03f11515610b3b57600080fd5b50505060405180515050505050565b6000806000806065600060646000610b638c8c8c611028565b8152602080820192909252604090810160009081205484529183019390935291019020805486908110610b9257fe5b60009182526020909120015460ff8082169a6101008304909116995062010000909104600160f060020a0316975095505050505050565b6000610bd3611a2b565b60008084511115610bec57835160200290508391508082525b600054600160a060020a03161580610cfd575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610c93578082015183820152602001610c7b565b50505050905090810190601f168015610cc05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610ce157600080fd5b6102c65a03f11515610cf257600080fd5b505050604051805190505b9695505050505050565b8181610d138282610d7a565b600160a060020a031633600160a060020a0316141515610d3257600080fd5b610d3e6000858561148a565b50505050565b8181610d508282610d7a565b600160a060020a031633600160a060020a0316141515610d6f57600080fd5b6109cc85858561148a565b600060666000610d8a858561150c565b8152602081019190915260400160002054600160a060020a03169392505050565b610dd633307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a6108d9565b1515610de157600080fd5b610d3e84848484611550565b60035415610dfa57600080fd5b610e02611594565b60005433600160a060020a03908116911614610e1d57600080fd5b610e4981307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a82611550565b50565b600080516020611a9783398151915281565b600054600160a060020a031681565b600080600060646000610e81898989611028565b815260208101919091526040016000205491508115801590610eab5750610eab828888888861076b565b15610eb95760019250610f09565b60646000610eca6000198989611028565b815260208101919091526040016000205490508015801590610ef65750610ef68160001988888861076b565b15610f045760019250610f09565b600092505b5050949350505050565b6000610f1d6115ae565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f84578082015183820152602001610f6c565b50505050905090810190601f168015610fb15780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610fcf57600080fd5b6102c65a03f11515610fe057600080fd5b50505060405180519392505050565b6000610ff9611a2b565b60006020845181151561100857fe5b04905083915080825261101d87878785610e6d565b979650505050505050565b600060028484846040519384526c01000000000000000000000000600160a060020a0393841681026020860152919092160260348301526048820152606801604051809103902090509392505050565b6000611082611a3d565b600088815260656020526040812054819063ffffffff8a16106110a85760009350611286565b60008a8152606560205260409020805463ffffffff8b169081106110c857fe5b906000526020600020900160606040519081016040908152915460ff80821683526101008204166020830152620100009004600160f060020a031691810191909152925060cc835160ff16141561112e57611127838b8a8a8a8a611645565b9350611286565b8260400151600160f060020a0316905060cb835160ff1614156111785761115c8360400151898989896117e8565b61116757600061116a565b60015b60ff16915060019050611235565b60c8835160ff1614156111945761118d611902565b9150611235565b60c9835160ff1614156111ba576111a9611906565b67ffffffffffffffff169150611235565b60ca835160ff1614156111d85733600160a060020a03169150611235565b60cd835160ff1614156111fa578260400151600160f060020a03169150611235565b8451835160ff161061120f5760009350611286565b84835160ff168151811061121f57fe5b90602001906020020151600160f060020a031691505b6007836020015160ff16600c81111561124a57fe5b600c81111561125557fe5b141561126657600082119350611286565b61128382846020015160ff16600c81111561127d57fe5b8361190a565b93505b5050509695505050505050565b60008060008060006112a3611a3d565b8660405180828051906020019060200280838360005b838110156112d15780820151838201526020016112b9565b5050505090500191505060405190819003902060008181526065602052604090208054919650945015156113dd57600092505b86518310156113dd5786838151811061131957fe5b90602001906020020151915060606040519081016040528061133a846119c7565b60ff16815260200161134b846119ed565b60ff16815260200183600160f060020a031681525090508380548060010182816113759190611a5d565b600092835260209092208391018151815460ff191660ff919091161781556020820151815460ff919091166101000261ff001990911617815560408201518154600160f060020a0391909116620100000261ffff909116179055505060019290920191611304565b509295945050505050565b80606460006113f8878787611028565b815260208101919091526040908101600020919091558290600160a060020a0380861691908716907f759b9a74d5354b5801710a0c1b283cc9f0d32b607ac8ced10c83ac8e75c77d52908515159051901515815260200160405180910390a450505050565b600080600160a060020a03831615156114795760009150611484565b823b90506000811191505b50919050565b8260666000611499858561150c565b815260208101919091526040908101600020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03938416179055848216918391908516907ff3addc8b8e25ee11528a61b0e65092cae0666ef0ec0c64cb303993c88d689b4d905160405180910390a4505050565b600060018383604051928352600160a060020a03919091166c0100000000000000000000000002602083015260348201526054016040518091039020905092915050565b600061155c8484610d7a565b600160a060020a03161461156f57600080fd5b611589848484600080516020611a978339815191526113e8565b610d3e81848461148a565b600354156115a157600080fd5b6115a9611902565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561162157600080fd5b6102c65a03f1151561163257600080fd5b50505060405180519250829150505b5090565b60008080808080808080600c8f6020015160ff16600c81111561166457fe5b600c81111561166f57fe5b14156116c25761168b8f60400151600160f060020a0316611a12565b97509750975061169f8e898f8f8f8f611078565b94506116bb8e866116b057876116b2565b885b8f8f8f8f611078565b98506117d6565b6116d88f60400151600160f060020a0316611a12565b50935093506116eb8e858f8f8f8f611078565b915060088f6020015160ff16600c81111561170257fe5b600c81111561170d57fe5b141561171c57811598506117d6565b8180156117465750600a8f6020015160ff16600c81111561173957fe5b600c81111561174457fe5b145b1561175457600198506117d6565b8115801561177f575060098f6020015160ff16600c81111561177257fe5b600c81111561177d57fe5b145b1561178d57600098506117d6565b61179b8e848f8f8f8f611078565b9050600b8f6020015160ff16600c8111156117b257fe5b600c8111156117bd57fe5b14156117d257801515821515141598506117d6565b8098505b50505050505050509695505050505050565b60007f2a15109000000000000000000000000000000000000000000000000000000000818080600160a060020a038a16632a1510908a8a8a60808b518c60405160e060020a63ffffffff8916028152600160a060020a038088166004830190815290871660248301526044820186905260ff85166064830152608482018490529060a401828051906020019060200280838360005b8381101561189557808201518382015260200161187d565b50505050905001965050505050505060006040518083038160008761646e5a03f19250505092508215156118cc57600094506118f5565b3d9150602082146118e057600094506118f5565b604051826000823e8051915060008152508094505b5050505095945050505050565b4390565b4290565b6000600183600c81111561191a57fe5b14156119295750828114610740565b600283600c81111561193757fe5b1415611947575082811415610740565b600383600c81111561195557fe5b14156119645750808311610740565b600483600c81111561197257fe5b14156119815750808310610740565b600583600c81111561198f57fe5b141561199f575080831015610740565b600683600c8111156119ad57fe5b14156119bd575080831115610740565b5060009392505050565b7f0100000000000000000000000000000000000000000000000000000000000000900490565b7e01000000000000000000000000000000000000000000000000000000000000900490565b9064010000000082049068010000000000000000830490565b60206040519081016040526000815290565b606060405190810160409081526000808352602083018190529082015290565b8154818355818115116106ff576000838152602090206106ff91810190830161082491905b808211156116415760008155600101611a825600290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563a165627a7a72305820c8c7706565e577c700b506e25b648b75607841f84879ab724b4801482c87f51d0029","runtimeBytecode":"6060604052600436106100ed5763ffffffff60e060020a600035041663086b339e81146100f257806309720778146101215780631113ed0d14610146578063178e6079146101595780631cb671b11461016c578063216874441461017f578063250126991461019e57806330744267146101b1578063656362b5146101c4578063756f6049146101d7578063a3b4b07f146101ea578063b16dd130146101fd578063bce9b99514610210578063cbcc65eb14610237578063cc473be31461024a578063d2dd420f1461025d578063db8a61d414610270578063eeab495514610283578063fa637d5f14610296575b600080fd5b34156100fd57600080fd5b6101056102a9565b604051600160a060020a03909116815260200160405180910390f35b341561012c57600080fd5b6101346102b8565b60405190815260200160405180910390f35b341561015157600080fd5b6101346102dc565b341561016457600080fd5b610134610300565b341561017757600080fd5b610105610324565b341561018a57600080fd5b610105600160a060020a0360043516610333565b34156101a957600080fd5b610134610a55565b34156101bc57600080fd5b610134610a79565b34156101cf57600080fd5b610105610aad565b34156101e257600080fd5b610134610abc565b34156101f557600080fd5b610134610ae0565b341561020857600080fd5b610105610b04565b341561021b57600080fd5b610235600160a060020a0360043581169060243516610b13565b005b341561024257600080fd5b610134611015565b341561025557600080fd5b610134611039565b341561026857600080fd5b61013461105d565b341561027b57600080fd5b610134611091565b341561028e57600080fd5b6101056110b5565b34156102a157600080fd5b6101346110c4565b600154600160a060020a031681565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b600454600160a060020a031681565b600080548190819081908190600160a060020a03166103506116c3565b600160a060020a039091168152602001604051809103906000f080151561037657600080fd5b600254909550600160a060020a0316151561040057600154600160a060020a038087169163485cc95591168860405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b15156103e757600080fd5b6102c65a03f115156103f857600080fd5b505050610a0f565b600154600160a060020a038087169163485cc95591163060405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b151561045c57600080fd5b6102c65a03f1151561046d57600080fd5b50505084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156104b657600080fd5b6102c65a03f115156104c757600080fd5b5050506040518051945050600160a060020a038416633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561051857600080fd5b6102c65a03f1151561052957600080fd5b5050506040518051935050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561057a57600080fd5b6102c65a03f1151561058b57600080fd5b5050506040518051600254909350600160a060020a038087169250630a8ed3db9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156105fe57600080fd5b6102c65a03f1151561060f57600080fd5b5050600254600160a060020a03808716925063be038478911687853060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561068157600080fd5b6102c65a03f1151561069257600080fd5b5050600254600160a060020a0316905063869abc24868860006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b15156106f757600080fd5b6102c65a03f1151561070857600080fd5b5050506040518051905090507f1a40224412580c1ae5a2fbe8029a565f49a3a029608a8fd9320b32477f31457981604051600160a060020a03909116815260200160405180910390a1600254600160a060020a0380861691639d0effdb9116878560405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156107b857600080fd5b6102c65a03f115156107c957600080fd5b5050600254600160a060020a038087169250639d0effdb9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561083357600080fd5b6102c65a03f1151561084457600080fd5b50505083600160a060020a0316639d0effdb30868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156108a857600080fd5b6102c65a03f115156108b957600080fd5b50505083600160a060020a0316630a8ed3db87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561091d57600080fd5b6102c65a03f1151561092e57600080fd5b50505083600160a060020a031663a885508a868460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561098557600080fd5b6102c65a03f1151561099657600080fd5b50505083600160a060020a031663afd925df87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156109fa57600080fd5b6102c65a03f11515610a0b57600080fd5b5050505b7f3a7eb042a769adf51e9be78b68ed7af0ad7b379246536efc376ed2ca0123828285604051600160a060020a03909116815260200160405180910390a150505050919050565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b6040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051809103902081565b600254600160a060020a031681565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b600054600160a060020a031681565b6000806000806000610b2430610333565b945084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610b6c57600080fd5b6102c65a03f11515610b7d57600080fd5b5050506040518051945050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610bce57600080fd5b6102c65a03f11515610bdf57600080fd5b5050506040518051935050600160a060020a03841663be0384783087868260405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b1515610c5357600080fd5b6102c65a03f11515610c6457600080fd5b50505084600160a060020a03166380cd5ac36040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051908190039020600354600160a060020a031660006040516020015260405160e060020a63ffffffff85160281526004810192909252600160a060020a03166024820152604401602060405180830381600087803b1515610d0157600080fd5b6102c65a03f11515610d1257600080fd5b5050506040518051925050600160a060020a03851663e943d1e66040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051908190039020600454600160a060020a0316600160006040516020015260405160e060020a63ffffffff86160281526004810193909352600160a060020a03909116602483015215156044820152606401602060405180830381600087803b1515610dc257600080fd5b6102c65a03f11515610dd357600080fd5b5050506040518051915050600160a060020a03821663c4d66de88260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515610e2c57600080fd5b6102c65a03f11515610e3d57600080fd5b50505080600160a060020a031663c4d66de88360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515610e8e57600080fd5b6102c65a03f11515610e9f57600080fd5b50505084600160a060020a0316632c2333cd6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d01604051809103902060405160e060020a63ffffffff84160281526004810191909152602401600060405180830381600087803b1515610f1857600080fd5b6102c65a03f11515610f2957600080fd5b505050600160a060020a03851663ae5b25407fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d0160405180910390208960006040516020015260405160e060020a63ffffffff861602815260048101939093526024830191909152600160a060020a03166044820152606401602060405180830381600087803b1515610fe357600080fd5b6102c65a03f11515610ff457600080fd5b505050604051805190505061100c87858785856110f8565b50505050505050565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b6040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051809103902081565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600354600160a060020a031681565b6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d01604051809103902081565b60008060008086600160a060020a0316638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561114457600080fd5b6102c65a03f1151561115557600080fd5b5050506040518051945050600160a060020a038816633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111a657600080fd5b6102c65a03f115156111b757600080fd5b5050506040518051935050600160a060020a03861663b09927a16000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561120857600080fd5b6102c65a03f1151561121957600080fd5b5050506040518051925050600160a060020a0385166324fea3b06000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561126a57600080fd5b6102c65a03f1151561127b57600080fd5b5050506040518051915050600160a060020a03881663be0384788a88858260405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b15156112ef57600080fd5b6102c65a03f1151561130057600080fd5b50505087600160a060020a031663be0384788a87848d60405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561136c57600080fd5b6102c65a03f1151561137d57600080fd5b50505087600160a060020a0316630a8ed3db8a898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156113e157600080fd5b6102c65a03f115156113f257600080fd5b50505087600160a060020a0316630a8ed3db8a8a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561145657600080fd5b6102c65a03f1151561146757600080fd5b50505087600160a060020a0316639d0effdb30898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156114cb57600080fd5b6102c65a03f115156114dc57600080fd5b50505087600160a060020a0316639d0effdb308a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561154057600080fd5b6102c65a03f1151561155157600080fd5b50505087600160a060020a031663afd925df8a898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156115b557600080fd5b6102c65a03f115156115c657600080fd5b50505087600160a060020a031663afd925df8a8a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561162a57600080fd5b6102c65a03f1151561163b57600080fd5b5050507fedeaf64ef333aa90332884a5a2f7f4afd68cb2f994f2305530ffd9f77a7d82f686604051600160a060020a03909116815260200160405180910390a17f5aea3adcb99f382f124e44eb79721965a8f357a5919434da5e74e85b8c79a02585604051600160a060020a03909116815260200160405180910390a1505050505050505050565b60405161068e806116d48339019056006060604052341561000f57600080fd5b60405160208061068e8339810160405280805191508190506000807fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f87f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c604051918252602082015260409081019051908190039020815260208101919091526040016000208054600160a060020a0392909216600160a060020a0319909216919091179055506105ca806100c46000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029a165627a7a72305820d453ab213a096e9e55de794cd098aa497b0a0bb2563930ae327c668b3acfdf130029","realRuntimeBytecode":"6060604052600436106100ed5763ffffffff60e060020a600035041663086b339e81146100f257806309720778146101215780631113ed0d14610146578063178e6079146101595780631cb671b11461016c578063216874441461017f578063250126991461019e57806330744267146101b1578063656362b5146101c4578063756f6049146101d7578063a3b4b07f146101ea578063b16dd130146101fd578063bce9b99514610210578063cbcc65eb14610237578063cc473be31461024a578063d2dd420f1461025d578063db8a61d414610270578063eeab495514610283578063fa637d5f14610296575b600080fd5b34156100fd57600080fd5b6101056102a9565b604051600160a060020a03909116815260200160405180910390f35b341561012c57600080fd5b6101346102b8565b60405190815260200160405180910390f35b341561015157600080fd5b6101346102dc565b341561016457600080fd5b610134610300565b341561017757600080fd5b610105610324565b341561018a57600080fd5b610105600160a060020a0360043516610333565b34156101a957600080fd5b610134610a55565b34156101bc57600080fd5b610134610a79565b34156101cf57600080fd5b610105610aad565b34156101e257600080fd5b610134610abc565b34156101f557600080fd5b610134610ae0565b341561020857600080fd5b610105610b04565b341561021b57600080fd5b610235600160a060020a0360043581169060243516610b13565b005b341561024257600080fd5b610134611015565b341561025557600080fd5b610134611039565b341561026857600080fd5b61013461105d565b341561027b57600080fd5b610134611091565b341561028e57600080fd5b6101056110b5565b34156102a157600080fd5b6101346110c4565b600154600160a060020a031681565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b600454600160a060020a031681565b600080548190819081908190600160a060020a03166103506116c3565b600160a060020a039091168152602001604051809103906000f080151561037657600080fd5b600254909550600160a060020a0316151561040057600154600160a060020a038087169163485cc95591168860405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b15156103e757600080fd5b6102c65a03f115156103f857600080fd5b505050610a0f565b600154600160a060020a038087169163485cc95591163060405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b151561045c57600080fd5b6102c65a03f1151561046d57600080fd5b50505084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156104b657600080fd5b6102c65a03f115156104c757600080fd5b5050506040518051945050600160a060020a038416633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561051857600080fd5b6102c65a03f1151561052957600080fd5b5050506040518051935050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561057a57600080fd5b6102c65a03f1151561058b57600080fd5b5050506040518051600254909350600160a060020a038087169250630a8ed3db9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156105fe57600080fd5b6102c65a03f1151561060f57600080fd5b5050600254600160a060020a03808716925063be038478911687853060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561068157600080fd5b6102c65a03f1151561069257600080fd5b5050600254600160a060020a0316905063869abc24868860006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b15156106f757600080fd5b6102c65a03f1151561070857600080fd5b5050506040518051905090507f1a40224412580c1ae5a2fbe8029a565f49a3a029608a8fd9320b32477f31457981604051600160a060020a03909116815260200160405180910390a1600254600160a060020a0380861691639d0effdb9116878560405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156107b857600080fd5b6102c65a03f115156107c957600080fd5b5050600254600160a060020a038087169250639d0effdb9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561083357600080fd5b6102c65a03f1151561084457600080fd5b50505083600160a060020a0316639d0effdb30868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156108a857600080fd5b6102c65a03f115156108b957600080fd5b50505083600160a060020a0316630a8ed3db87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561091d57600080fd5b6102c65a03f1151561092e57600080fd5b50505083600160a060020a031663a885508a868460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561098557600080fd5b6102c65a03f1151561099657600080fd5b50505083600160a060020a031663afd925df87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156109fa57600080fd5b6102c65a03f11515610a0b57600080fd5b5050505b7f3a7eb042a769adf51e9be78b68ed7af0ad7b379246536efc376ed2ca0123828285604051600160a060020a03909116815260200160405180910390a150505050919050565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b6040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051809103902081565b600254600160a060020a031681565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b600054600160a060020a031681565b6000806000806000610b2430610333565b945084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610b6c57600080fd5b6102c65a03f11515610b7d57600080fd5b5050506040518051945050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610bce57600080fd5b6102c65a03f11515610bdf57600080fd5b5050506040518051935050600160a060020a03841663be0384783087868260405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b1515610c5357600080fd5b6102c65a03f11515610c6457600080fd5b50505084600160a060020a03166380cd5ac36040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051908190039020600354600160a060020a031660006040516020015260405160e060020a63ffffffff85160281526004810192909252600160a060020a03166024820152604401602060405180830381600087803b1515610d0157600080fd5b6102c65a03f11515610d1257600080fd5b5050506040518051925050600160a060020a03851663e943d1e66040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051908190039020600454600160a060020a0316600160006040516020015260405160e060020a63ffffffff86160281526004810193909352600160a060020a03909116602483015215156044820152606401602060405180830381600087803b1515610dc257600080fd5b6102c65a03f11515610dd357600080fd5b5050506040518051915050600160a060020a03821663c4d66de88260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515610e2c57600080fd5b6102c65a03f11515610e3d57600080fd5b50505080600160a060020a031663c4d66de88360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515610e8e57600080fd5b6102c65a03f11515610e9f57600080fd5b50505084600160a060020a0316632c2333cd6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d01604051809103902060405160e060020a63ffffffff84160281526004810191909152602401600060405180830381600087803b1515610f1857600080fd5b6102c65a03f11515610f2957600080fd5b505050600160a060020a03851663ae5b25407fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d0160405180910390208960006040516020015260405160e060020a63ffffffff861602815260048101939093526024830191909152600160a060020a03166044820152606401602060405180830381600087803b1515610fe357600080fd5b6102c65a03f11515610ff457600080fd5b505050604051805190505061100c87858785856110f8565b50505050505050565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b6040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051809103902081565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600354600160a060020a031681565b6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d01604051809103902081565b60008060008086600160a060020a0316638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561114457600080fd5b6102c65a03f1151561115557600080fd5b5050506040518051945050600160a060020a038816633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111a657600080fd5b6102c65a03f115156111b757600080fd5b5050506040518051935050600160a060020a03861663b09927a16000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561120857600080fd5b6102c65a03f1151561121957600080fd5b5050506040518051925050600160a060020a0385166324fea3b06000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561126a57600080fd5b6102c65a03f1151561127b57600080fd5b5050506040518051915050600160a060020a03881663be0384788a88858260405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b15156112ef57600080fd5b6102c65a03f1151561130057600080fd5b50505087600160a060020a031663be0384788a87848d60405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561136c57600080fd5b6102c65a03f1151561137d57600080fd5b50505087600160a060020a0316630a8ed3db8a898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156113e157600080fd5b6102c65a03f115156113f257600080fd5b50505087600160a060020a0316630a8ed3db8a8a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561145657600080fd5b6102c65a03f1151561146757600080fd5b50505087600160a060020a0316639d0effdb30898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156114cb57600080fd5b6102c65a03f115156114dc57600080fd5b50505087600160a060020a0316639d0effdb308a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561154057600080fd5b6102c65a03f1151561155157600080fd5b50505087600160a060020a031663afd925df8a898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156115b557600080fd5b6102c65a03f115156115c657600080fd5b50505087600160a060020a031663afd925df8a8a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561162a57600080fd5b6102c65a03f1151561163b57600080fd5b5050507fedeaf64ef333aa90332884a5a2f7f4afd68cb2f994f2305530ffd9f77a7d82f686604051600160a060020a03909116815260200160405180910390a17f5aea3adcb99f382f124e44eb79721965a8f357a5919434da5e74e85b8c79a02585604051600160a060020a03909116815260200160405180910390a1505050505050505050565b60405161068e806116d48339019056006060604052341561000f57600080fd5b60405160208061068e8339810160405280805191508190506000807fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f87f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c604051918252602082015260409081019051908190039020815260208101919091526040016000208054600160a060020a0392909216600160a060020a0319909216919091179055506105ca806100c46000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029a165627a7a72305820","linkReferences":{},"swarmHash":"d453ab213a096e9e55de794cd098aa497b0a0bb2563930ae327c668b3acfdf13","gasEstimates":{"creation":{"codeDepositCost":"1513000","executionCost":"infinite","totalCost":"infinite"},"external":{"ACL_APP()":"456","ACL_APP_ID()":"522","APM_NODE()":"258","APP_ADDR_NAMESPACE()":"302","APP_BASES_NAMESPACE()":"588","CORE_NAMESPACE()":"434","ETH_NODE()":"544","KERNEL_APP()":"368","KERNEL_APP_ID()":"280","LP_APP_ID()":"462","RECOVERY_VAULT_ID()":"704","VAULT_APP_ID()":"638","baseACL()":"589","baseKernel()":"831","lpBase()":"677","newDAO(address)":"infinite","newLP(address,address)":"infinite","regFactory()":"765","vaultBase()":"963"},"internal":{"_setPermissions(address,contract ACL,contract Kernel,contract LPVault,contract LiquidPledging)":"infinite"}},"functionHashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","LP_APP_ID()":"30744267","RECOVERY_VAULT_ID()":"fa637d5f","VAULT_APP_ID()":"d2dd420f","baseACL()":"086b339e","baseKernel()":"b16dd130","lpBase()":"1cb671b1","newDAO(address)":"21687444","newLP(address,address)":"bce9b995","regFactory()":"656362b5","vaultBase()":"eeab4955"},"abiDefinition":[{"constant":true,"inputs":[],"name":"baseACL","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x086b339e"},{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x09720778"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x1113ed0d"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x178e6079"},{"constant":true,"inputs":[],"name":"lpBase","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x1cb671b1"},{"constant":false,"inputs":[{"name":"_root","type":"address"}],"name":"newDAO","outputs":[{"name":"dao","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x21687444"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x25012699"},{"constant":true,"inputs":[],"name":"LP_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x30744267"},{"constant":true,"inputs":[],"name":"regFactory","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x656362b5"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x756f6049"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xa3b4b07f"},{"constant":true,"inputs":[],"name":"baseKernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xb16dd130"},{"constant":false,"inputs":[{"name":"_root","type":"address"},{"name":"_escapeHatchDestination","type":"address"}],"name":"newLP","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xbce9b995"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xcbcc65eb"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xcc473be3"},{"constant":true,"inputs":[],"name":"VAULT_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xd2dd420f"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdb8a61d4"},{"constant":true,"inputs":[],"name":"vaultBase","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xeeab4955"},{"constant":true,"inputs":[],"name":"RECOVERY_VAULT_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xfa637d5f"},{"inputs":[{"name":"_vaultBase","type":"address"},{"name":"_lpBase","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"vault","type":"address"}],"name":"DeployVault","type":"event","signature":"0xedeaf64ef333aa90332884a5a2f7f4afd68cb2f994f2305530ffd9f77a7d82f6"},{"anonymous":false,"inputs":[{"indexed":false,"name":"liquidPledging","type":"address"}],"name":"DeployLiquidPledging","type":"event","signature":"0x5aea3adcb99f382f124e44eb79721965a8f357a5919434da5e74e85b8c79a025"},{"anonymous":false,"inputs":[{"indexed":false,"name":"dao","type":"address"}],"name":"DeployDAO","type":"event","signature":"0x3a7eb042a769adf51e9be78b68ed7af0ad7b379246536efc376ed2ca01238282"},{"anonymous":false,"inputs":[{"indexed":false,"name":"reg","type":"address"}],"name":"DeployEVMScriptRegistry","type":"event","signature":"0x1a40224412580c1ae5a2fbe8029a565f49a3a029608a8fd9320b32477f314579"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/LPFactory.sol","originalFilename":"contracts/LPFactory.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/LPFactory.sol","gas":"auto","type":"file","deployedAddress":"0x968F0a788F29b5B33296C61cEB34F1c40C55e52c","deploy":true,"_gasLimit":6000000,"error":false,"deploymentAccount":"0x1179823e34aBF984C52fC0CdD7b7b9F5dd394aB9","realArgs":["0xa25AB823c5A79941a8a9d0ab525D888cA1513419","0x07E92635AF5e524C20B20F2770aE0E0Ef597eD07"]},"address":"0x968F0a788F29b5B33296C61cEB34F1c40C55e52c","code":"606060405234156200001057600080fd5b6040516040806200602383398101604052808051919060200180519150620000399050620000f6565b604051809103906000f08015156200005057600080fd5b6200005a62000107565b604051809103906000f08015156200007157600080fd5b60008054600160a060020a0319908116600160a060020a03948516179091556001805490911691831691909117905582161515620000ae57600080fd5b600160a060020a0381161515620000c457600080fd5b60038054600160a060020a03938416600160a060020a0319918216179091556004805492909316911617905562000118565b60405161266e8062001eb583390190565b604051611b00806200452383390190565b611d8d80620001286000396000f3006060604052600436106100ed5763ffffffff60e060020a600035041663086b339e81146100f257806309720778146101215780631113ed0d14610146578063178e6079146101595780631cb671b11461016c578063216874441461017f578063250126991461019e57806330744267146101b1578063656362b5146101c4578063756f6049146101d7578063a3b4b07f146101ea578063b16dd130146101fd578063bce9b99514610210578063cbcc65eb14610237578063cc473be31461024a578063d2dd420f1461025d578063db8a61d414610270578063eeab495514610283578063fa637d5f14610296575b600080fd5b34156100fd57600080fd5b6101056102a9565b604051600160a060020a03909116815260200160405180910390f35b341561012c57600080fd5b6101346102b8565b60405190815260200160405180910390f35b341561015157600080fd5b6101346102dc565b341561016457600080fd5b610134610300565b341561017757600080fd5b610105610324565b341561018a57600080fd5b610105600160a060020a0360043516610333565b34156101a957600080fd5b610134610a55565b34156101bc57600080fd5b610134610a79565b34156101cf57600080fd5b610105610aad565b34156101e257600080fd5b610134610abc565b34156101f557600080fd5b610134610ae0565b341561020857600080fd5b610105610b04565b341561021b57600080fd5b610235600160a060020a0360043581169060243516610b13565b005b341561024257600080fd5b610134611015565b341561025557600080fd5b610134611039565b341561026857600080fd5b61013461105d565b341561027b57600080fd5b610134611091565b341561028e57600080fd5b6101056110b5565b34156102a157600080fd5b6101346110c4565b600154600160a060020a031681565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b600454600160a060020a031681565b600080548190819081908190600160a060020a03166103506116c3565b600160a060020a039091168152602001604051809103906000f080151561037657600080fd5b600254909550600160a060020a0316151561040057600154600160a060020a038087169163485cc95591168860405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b15156103e757600080fd5b6102c65a03f115156103f857600080fd5b505050610a0f565b600154600160a060020a038087169163485cc95591163060405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b151561045c57600080fd5b6102c65a03f1151561046d57600080fd5b50505084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156104b657600080fd5b6102c65a03f115156104c757600080fd5b5050506040518051945050600160a060020a038416633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561051857600080fd5b6102c65a03f1151561052957600080fd5b5050506040518051935050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561057a57600080fd5b6102c65a03f1151561058b57600080fd5b5050506040518051600254909350600160a060020a038087169250630a8ed3db9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156105fe57600080fd5b6102c65a03f1151561060f57600080fd5b5050600254600160a060020a03808716925063be038478911687853060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561068157600080fd5b6102c65a03f1151561069257600080fd5b5050600254600160a060020a0316905063869abc24868860006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b15156106f757600080fd5b6102c65a03f1151561070857600080fd5b5050506040518051905090507f1a40224412580c1ae5a2fbe8029a565f49a3a029608a8fd9320b32477f31457981604051600160a060020a03909116815260200160405180910390a1600254600160a060020a0380861691639d0effdb9116878560405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156107b857600080fd5b6102c65a03f115156107c957600080fd5b5050600254600160a060020a038087169250639d0effdb9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561083357600080fd5b6102c65a03f1151561084457600080fd5b50505083600160a060020a0316639d0effdb30868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156108a857600080fd5b6102c65a03f115156108b957600080fd5b50505083600160a060020a0316630a8ed3db87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561091d57600080fd5b6102c65a03f1151561092e57600080fd5b50505083600160a060020a031663a885508a868460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561098557600080fd5b6102c65a03f1151561099657600080fd5b50505083600160a060020a031663afd925df87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156109fa57600080fd5b6102c65a03f11515610a0b57600080fd5b5050505b7f3a7eb042a769adf51e9be78b68ed7af0ad7b379246536efc376ed2ca0123828285604051600160a060020a03909116815260200160405180910390a150505050919050565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b6040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051809103902081565b600254600160a060020a031681565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b600054600160a060020a031681565b6000806000806000610b2430610333565b945084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610b6c57600080fd5b6102c65a03f11515610b7d57600080fd5b5050506040518051945050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610bce57600080fd5b6102c65a03f11515610bdf57600080fd5b5050506040518051935050600160a060020a03841663be0384783087868260405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b1515610c5357600080fd5b6102c65a03f11515610c6457600080fd5b50505084600160a060020a03166380cd5ac36040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051908190039020600354600160a060020a031660006040516020015260405160e060020a63ffffffff85160281526004810192909252600160a060020a03166024820152604401602060405180830381600087803b1515610d0157600080fd5b6102c65a03f11515610d1257600080fd5b5050506040518051925050600160a060020a03851663e943d1e66040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051908190039020600454600160a060020a0316600160006040516020015260405160e060020a63ffffffff86160281526004810193909352600160a060020a03909116602483015215156044820152606401602060405180830381600087803b1515610dc257600080fd5b6102c65a03f11515610dd357600080fd5b5050506040518051915050600160a060020a03821663c4d66de88260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515610e2c57600080fd5b6102c65a03f11515610e3d57600080fd5b50505080600160a060020a031663c4d66de88360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515610e8e57600080fd5b6102c65a03f11515610e9f57600080fd5b50505084600160a060020a0316632c2333cd6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d01604051809103902060405160e060020a63ffffffff84160281526004810191909152602401600060405180830381600087803b1515610f1857600080fd5b6102c65a03f11515610f2957600080fd5b505050600160a060020a03851663ae5b25407fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d0160405180910390208960006040516020015260405160e060020a63ffffffff861602815260048101939093526024830191909152600160a060020a03166044820152606401602060405180830381600087803b1515610fe357600080fd5b6102c65a03f11515610ff457600080fd5b505050604051805190505061100c87858785856110f8565b50505050505050565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b6040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051809103902081565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600354600160a060020a031681565b6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d01604051809103902081565b60008060008086600160a060020a0316638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561114457600080fd5b6102c65a03f1151561115557600080fd5b5050506040518051945050600160a060020a038816633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111a657600080fd5b6102c65a03f115156111b757600080fd5b5050506040518051935050600160a060020a03861663b09927a16000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561120857600080fd5b6102c65a03f1151561121957600080fd5b5050506040518051925050600160a060020a0385166324fea3b06000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561126a57600080fd5b6102c65a03f1151561127b57600080fd5b5050506040518051915050600160a060020a03881663be0384788a88858260405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b15156112ef57600080fd5b6102c65a03f1151561130057600080fd5b50505087600160a060020a031663be0384788a87848d60405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561136c57600080fd5b6102c65a03f1151561137d57600080fd5b50505087600160a060020a0316630a8ed3db8a898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156113e157600080fd5b6102c65a03f115156113f257600080fd5b50505087600160a060020a0316630a8ed3db8a8a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561145657600080fd5b6102c65a03f1151561146757600080fd5b50505087600160a060020a0316639d0effdb30898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156114cb57600080fd5b6102c65a03f115156114dc57600080fd5b50505087600160a060020a0316639d0effdb308a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561154057600080fd5b6102c65a03f1151561155157600080fd5b50505087600160a060020a031663afd925df8a898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156115b557600080fd5b6102c65a03f115156115c657600080fd5b50505087600160a060020a031663afd925df8a8a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561162a57600080fd5b6102c65a03f1151561163b57600080fd5b5050507fedeaf64ef333aa90332884a5a2f7f4afd68cb2f994f2305530ffd9f77a7d82f686604051600160a060020a03909116815260200160405180910390a17f5aea3adcb99f382f124e44eb79721965a8f357a5919434da5e74e85b8c79a02585604051600160a060020a03909116815260200160405180910390a1505050505050505050565b60405161068e806116d48339019056006060604052341561000f57600080fd5b60405160208061068e8339810160405280805191508190506000807fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f87f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c604051918252602082015260409081019051908190039020815260208101919091526040016000208054600160a060020a0392909216600160a060020a0319909216919091179055506105ca806100c46000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029a165627a7a72305820d453ab213a096e9e55de794cd098aa497b0a0bb2563930ae327c668b3acfdf1300296060604052341561000f57600080fd5b6126508061001e6000396000f300606060405260043610620001b55763ffffffff60e060020a600035041663097207788114620001ba5780631113ed0d14620001e2578063178e607914620001f857806325012699146200020e5780632c2333cd146200022457806332f0a3b5146200023f57806338bb6def146200027157806342c71f1d146200028a578063485cc95514620002a3578063756f604914620002cb5780637e7db6e114620002e157806380afdea8146200031757806380cd5ac3146200032d5780638322fff214620003525780638b3dd74914620003685780638ea8dc9d146200037e578063958fde8214620003945780639d4941d814620003b9578063a3b4b07f14620003db578063ae5b254014620003f1578063b7c529ab1462000419578063cbcc65eb146200042f578063cc473be31462000445578063d162f8b0146200045b578063d4aae0c414620004c3578063dabca01914620004d9578063db8a61d414620004ef578063de2873591462000505578063e156a8f3146200051b578063e943d1e61462000540578063ede658b0146200056a578063f8c7fa1e14620005d2578063fdef910614620005fc578063ff289fc5146200066b575b600080fd5b3415620001c657600080fd5b620001d062000690565b60405190815260200160405180910390f35b3415620001ee57600080fd5b620001d0620006b4565b34156200020457600080fd5b620001d0620006d8565b34156200021a57600080fd5b620001d0620006eb565b34156200023057600080fd5b6200023d6004356200070f565b005b34156200024b57600080fd5b62000255620007a0565b604051600160a060020a03909116815260200160405180910390f35b34156200027d57600080fd5b62000255600435620007be565b34156200029657600080fd5b62000255600435620007d9565b3415620002af57600080fd5b6200023d600160a060020a0360043581169060243516620007f4565b3415620002d757600080fd5b620001d062000911565b3415620002ed57600080fd5b62000303600160a060020a036004351662000935565b604051901515815260200160405180910390f35b34156200032357600080fd5b620001d06200093b565b34156200033957600080fd5b62000255600435600160a060020a036024351662000941565b34156200035e57600080fd5b62000255620009ba565b34156200037457600080fd5b620001d0620009bf565b34156200038a57600080fd5b620001d0620009c5565b3415620003a057600080fd5b62000255600435600160a060020a0360243516620009d8565b3415620003c557600080fd5b6200023d600160a060020a036004351662000a46565b3415620003e757600080fd5b620001d062000bcd565b3415620003fd57600080fd5b620001d0600435602435600160a060020a036044351662000bf1565b34156200042557600080fd5b620001d062000c9f565b34156200043b57600080fd5b620001d062000cc3565b34156200045157600080fd5b620001d062000cd6565b34156200046757600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000cfa95505050505050565b3415620004cf57600080fd5b6200025562000e07565b3415620004e557600080fd5b620001d062000e16565b3415620004fb57600080fd5b620001d062000e1c565b34156200051157600080fd5b6200025562000e2f565b34156200052757600080fd5b62000255600160a060020a036004351660243562000e61565b34156200054c57600080fd5b62000255600435600160a060020a0360243516604435151562000e9b565b34156200057657600080fd5b6200025560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965062000f5695505050505050565b3415620005de57600080fd5b62000255600435600160a060020a036024351660443515156200105f565b34156200060857600080fd5b62000303600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650620010e895505050505050565b34156200067757600080fd5b62000255600160a060020a0360043516602435620011f6565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b6000805160206200260583398151915281565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600080516020620025a58339815191526200073a600080516020620026058339815191528362001229565b620007446200149c565b6000825160200290508291508082526200076133308685620010e8565b15156200076d57600080fd5b60008051602062002605833981519152856040519182526020820152604090810190519081900390206001555050505050565b600154600090815260208190526040902054600160a060020a031690565b600060208190529081526040902054600160a060020a031681565b600090815260208190526040902054600160a060020a031690565b600554600090156200080557600080fd5b6200080f6200123f565b6200082a30600080516020620025e583398151915262000e61565b905062000857600080516020620025c5833981519152600080516020620025e5833981519152856200125c565b506200088360008051602062002605833981519152600080516020620025e5833981519152836200125c565b5080600160a060020a031663c4d66de88360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515620008d357600080fd5b6102c65a03f11515620008e557600080fd5b50507f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e60015550505050565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b50600190565b60035481565b6000600080516020620025a58339815191526200096e600080516020620025c58339815191528562001229565b620009786200149c565b6000825160200290508291508082526200099533308685620010e8565b1515620009a157600080fd5b620009af8787600062000e9b565b979650505050505050565b600081565b60055490565b600080516020620025a583398151915281565b6000600080516020620025a583398151915262000a05600080516020620025c58339815191528562001229565b62000a0f6200149c565b60008251602002905082915080825262000a2c33308685620010e8565b151562000a3857600080fd5b620009af878760006200105f565b60008062000a548362000935565b151562000a6057600080fd5b62000a6a620007a0565b915062000a778262001312565b151562000a8357600080fd5b600160a060020a038316151562000ad85781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151562000ad257600080fd5b62000bc8565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151562000b3057600080fd5b6102c65a03f1151562000b4257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000bab57600080fd5b6102c65a03f1151562000bbd57600080fd5b505050604051805150505b505050565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b6000600080516020620025a583398151915262000c0f858562001229565b62000c196200149c565b60008251602002905082915080825262000c3633308685620010e8565b151562000c4257600080fd5b60008062000c528a8a8a6200125c565b965062000c7f7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb620007d9565b915050803b6000811162000c9257600080fd5b5050505050509392505050565b7f4214e5fd6d0170d69ea641b5614f5093ebecc9928af51e95685c87617489800e81565b600080516020620025e583398151915281565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60008084848462000d0a620014ae565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000d5b57808201518382015260200162000d41565b50505050905090810190601f16801562000d895780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f080151562000da757600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600086604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a18091505b509392505050565b600254600160a060020a031681565b60015481565b600080516020620025c583398151915281565b600062000e5c7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a620007d9565b905090565b600062000e948383600060405180591062000e795750595b818152601f19601f8301168101602001604052905062000f56565b9392505050565b6000600080516020620025a583398151915262000ec8600080516020620025c58339815191528662001229565b62000ed26200149c565b60008251602002905082915080825262000eef33308685620010e8565b151562000efb57600080fd5b62000f17600080516020620025c5833981519152898962001341565b5062000f24308962000e61565b9450851562000f4b5762000f4960008051602062002605833981519152898762000bf1565b505b505050509392505050565b60008084848462000f66620014bf565b600160a060020a03841681526020810183905260606040820181815290820183818151815260200191508051906020019080838360005b8381101562000fb757808201518382015260200162000f9d565b50505050905090810190601f16801562000fe55780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f08015156200100357600080fd5b90507fd880e726dced8808d727f02dd0e6fdd3a945b24bfee77e13367bcbe61ddbaf4781600186604051600160a060020a03909316835290151560208301526040808301919091526060909101905180910390a1949350505050565b6000600080516020620025a58339815191526200108c600080516020620025c58339815191528662001229565b620010966200149c565b600082516020029050829150808252620010b333308685620010e8565b1515620010bf57600080fd5b620010db600080516020620025c5833981519152898962001341565b5062000f243089620011f6565b6000620010f462000e2f565b600160a060020a031663fdef91068686868660006040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156200118257808201518382015260200162001168565b50505050905090810190601f168015620011b05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515620011d257600080fd5b6102c65a03f11515620011e457600080fd5b50505060405180519695505050505050565b600062000e94838360006040518059106200120e5750595b818152601f19601f8301168101602001604052905062000cfa565b620012336200149c565b62000e94838362001433565b600554156200124d57600080fd5b6200125762001498565b600555565b6000620012698262001312565b15156200127557600080fd5b838360405191825260208201526040908101905190819003902060008181526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790559091508190849086907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290869051600160a060020a03909116815260200160405180910390a49392505050565b600080600160a060020a03831615156200133057600091506200133b565b823b90506000811191505b50919050565b6000806200134f8362001312565b15156200135b57600080fd5b8484604051918252602082015260409081019051809103902091506200138182620007d9565b9050600160a060020a03811615620013b257600160a060020a0381811690841614620013ac57600080fd5b62000dff565b60008281526020819052604090819020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0386161790558290859087907fe944a7cdbc6cbd4bfe4713501567365bd379a9df5fd376422712b066d6e6b52290879051600160a060020a03909116815260200160405180910390a4509392505050565b6200143d6200149c565b60026040518059106200144d5750595b9080825280602002602001820160405250905082816000815181106200146f57fe5b6020908102909101015281816001815181106200148857fe5b6020908102909101015292915050565b4390565b60206040519081016040526000815290565b60405161086c80620014d183390190565b6040516108688062001d3d8339019056006060604052341561000f57600080fd5b60405161086c38038061086c83398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061017881026105061704565b905060008251111561012457610095816401000000006104d961023b82021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b5050505061014660015461017864010000000002610506176401000000009004565b60028054600160a060020a031916600160a060020a03928316179081905516151561017057600080fd5b505050610268565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561021b57600080fd5b6102c65a03f1151561022c57600080fd5b50505060405180519392505050565b600080600160a060020a03831615156102575760009150610262565b823b90506000811191505b50919050565b6105f5806102776000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166309720778811461019a5780630ceafa2a146101bf5780631113ed0d146101d2578063178e6079146101e557806325012699146101f85780632b2584f61461020b5780634555d5c91461021e5780635c60da1b14610231578063756f6049146102605780637e84a4ff1461027357806380afdea814610286578063a3b4b07f14610299578063cbcc65eb146102ac578063cc473be3146102bf578063d4aae0c4146102d2578063db8a61d4146102e5575b60006127105a1015610153576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee13334604051600160a060020a03909216825260208201526040908101905180910390a1610197565b61015b6102f8565b9050610197816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610307945050505050565b50005b34156101a557600080fd5b6101ad610317565b60405190815260200160405180910390f35b34156101ca57600080fd5b6101ad61033b565b34156101dd57600080fd5b6101ad610341565b34156101f057600080fd5b6101ad610365565b341561020357600080fd5b6101ad610389565b341561021657600080fd5b6101ad6103ad565b341561022957600080fd5b6101ad6103b2565b341561023c57600080fd5b6102446102f8565b604051600160a060020a03909116815260200160405180910390f35b341561026b57600080fd5b6101ad6103b7565b341561027e57600080fd5b6101ad6103db565b341561029157600080fd5b6101ad6103e0565b34156102a457600080fd5b6101ad6103e6565b34156102b757600080fd5b6101ad61040a565b34156102ca57600080fd5b6101ad61042e565b34156102dd57600080fd5b610244610452565b34156102f057600080fd5b6101ad610461565b600254600160a060020a031690565b61031382826000610485565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600190565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b600054600160a060020a031681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000806000610493866104d9565b151561049e57600080fd5b5061271060008086516020880189855a03f43d93509150838310156104c257600080fd5b604051836000823e8280156104d5578482f35b8482fd5b600080600160a060020a03831615156104f55760009150610500565b823b90506000811191505b50919050565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156105a957600080fd5b6102c65a03f115156105ba57600080fd5b505050604051805193925050505600a165627a7a72305820c4c1939b5f48d7bc6919a5f706b5363592f53820f4a166d1ab5227d501619c3600296060604052341561000f57600080fd5b60405161086838038061086883398101604052808051919060200180519190602001805160008054600160a060020a031916600160a060020a0387161781556001859055920191849150839083906100738364010000000061013081026104af1704565b905060008251111561012457610095816401000000006105d36101f382021704565b15156100a057600080fd5b80600160a060020a03168260405180828051906020019080838360005b838110156100d55780820151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509150506000604051808303818561646e5a03f4915050151561012457600080fd5b50505050505050610220565b60008054600160a060020a03166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156101d357600080fd5b6102c65a03f115156101e457600080fd5b50505060405180519392505050565b600080600160a060020a038316151561020f576000915061021a565b823b90506000811191505b50919050565b6106398061022f6000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f6146102185780634555d5c91461022b5780635c60da1b1461023e578063756f60491461027a5780637e84a4ff1461028d57806380afdea8146102a0578063a3b4b07f146102b3578063cbcc65eb146102c6578063cc473be3146102d9578063d4aae0c4146102ec578063db8a61d4146102ff575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610312565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610324945050505050565b50005b34156101b257600080fd5b6101ba610334565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba610358565b34156101ea57600080fd5b6101ba61035e565b34156101fd57600080fd5b6101ba610382565b341561021057600080fd5b6101ba6103a6565b341561022357600080fd5b6101ba6103ca565b341561023657600080fd5b6101ba6103cf565b341561024957600080fd5b610251610312565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561028557600080fd5b6101ba6103d4565b341561029857600080fd5b6101ba6103f8565b34156102ab57600080fd5b6101ba6103fd565b34156102be57600080fd5b6101ba610403565b34156102d157600080fd5b6101ba610427565b34156102e457600080fd5b6101ba61044b565b34156102f757600080fd5b61025161046f565b341561030a57600080fd5b6101ba61048b565b600061031f6001546104af565b905090565b6103308282600061057f565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b60015481565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b6000805473ffffffffffffffffffffffffffffffffffffffff166342c71f1d7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f8460405191825260208201526040908101905180910390206000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b151561055f57600080fd5b6102c65a03f1151561057057600080fd5b50505060405180519392505050565b600080600061058d866105d3565b151561059857600080fd5b5061271060008086516020880189855a03f43d93509150838310156105bc57600080fd5b604051836000823e8280156105cf578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff831615156105fc5760009150610607565b823b90506000811191505b509190505600a165627a7a7230582042357463db2ccee9dba169a6d734c6d74dd4026402cb9e8517743913e8af27ff0029b6d92708f3d4817afc106147d969e229ced5c46e65e0a5002a0d391287762bd0f1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6ad6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fba165627a7a7230582092666edd4994a08d840c83ae0765d7ee526e62c490716159c0de383bc72913e100296060604052341561000f57600080fd5b611ae28061001e6000396000f30060606040526004361061015b5763ffffffff60e060020a6000350416630a8ed3db811461016057806315949ed71461018a578063178e6079146101c45780631b5e75be146101d757806332f0a3b5146102595780633d6ab68f1461028857806360b1e0571461029b5780636815c992146102ae5780636d6712d814610318578063710a8315146103405780637e7db6e11461038d57806380afdea8146103ac5780638322fff2146103bf5780638b3dd749146103d25780639b3fdf4c146103e55780639d0effdb146103f85780639d4941d814610420578063a03c58321461043f578063a1658fad1461046a578063a885508a146104cd578063afd925df146104ef578063b190572714610517578063be03847814610539578063c4d66de814610568578063c513f66e14610587578063d4aae0c41461059a578063f520b58d146105ad578063f92a79ff14610617578063fdef910614610668575b600080fd5b341561016b57600080fd5b610188600160a060020a03600435811690602435166044356106d4565b005b341561019557600080fd5b6101b2600160a060020a0360043581169060243516604435610704565b60405190815260200160405180910390f35b34156101cf57600080fd5b6101b2610747565b34156101e257600080fd5b6102456004803590600160a060020a0360248035821692604435909216916064359160a490608435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061076b95505050505050565b604051901515815260200160405180910390f35b341561026457600080fd5b61026c6107a6565b604051600160a060020a03909116815260200160405180910390f35b341561029357600080fd5b6101b2610827565b34156102a657600080fd5b6101b261084b565b34156102b957600080fd5b610188600160a060020a0360048035821691602480359091169160443591608490606435908101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061086f95505050505050565b341561032357600080fd5b610245600160a060020a03600435811690602435166044356108d9565b341561034b57600080fd5b610359600435602435610911565b60405160ff9384168152919092166020820152600160f060020a039091166040808301919091526060909101905180910390f35b341561039857600080fd5b610245600160a060020a0360043516610959565b34156103b757600080fd5b6101b261095f565b34156103ca57600080fd5b61026c610965565b34156103dd57600080fd5b6101b261096a565b34156103f057600080fd5b6101b2610970565b341561040357600080fd5b610188600160a060020a0360043581169060243516604435610994565b341561042b57600080fd5b610188600160a060020a03600435166109d3565b341561044a57600080fd5b610359600160a060020a0360043581169060243516604435606435610b4a565b341561047557600080fd5b61024560048035600160a060020a0316906024803591906064906044359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650610bc995505050505050565b34156104d857600080fd5b610188600160a060020a0360043516602435610d07565b34156104fa57600080fd5b610188600160a060020a0360043581169060243516604435610d44565b341561052257600080fd5b61026c600160a060020a0360043516602435610d7a565b341561054457600080fd5b610188600160a060020a036004358116906024358116906044359060643516610dab565b341561057357600080fd5b610188600160a060020a0360043516610ded565b341561059257600080fd5b6101b2610e4c565b34156105a557600080fd5b61026c610e5e565b34156105b857600080fd5b610245600160a060020a03600480358216916024803590911691604435916084906064359081019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650610e6d95505050505050565b341561062257600080fd5b61026c60046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610f1395505050505050565b341561067357600080fd5b610245600160a060020a036004803582169160248035909116916044359160849060643590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610fef95505050505050565b6106ff83838360006040518059106106e95750595b908082528060200260200182016040525061086f565b505050565b60006065600060646000610719888888611028565b81526020808201929092526040908101600090812054845291830193909352910190205490505b9392505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b6000600080516020611a9783398151915286141561078b5750600161079d565b61079a86600087878787611078565b90505b95945050505050565b60008054600160a060020a031615156107be57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561080757600080fd5b6102c65a03f1151561081857600080fd5b50505060405180519150505b90565b7f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a81565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6000838361087d8282610d7a565b600160a060020a031633600160a060020a031614151561089c57600080fd5b60008451116108b957600080516020611a978339815191526108c2565b6108c284611293565b92506108d0878787866113e8565b50505050505050565b60006108e3611a2b565b60006040518059106108f25750595b9080825280602002602001820160405250905061079d85858584610e6d565b60656020528160005260406000208181548110151561092c57fe5b60009182526020909120015460ff80821693506101008204169150620100009004600160f060020a031683565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b81816109a08282610d7a565b600160a060020a031633600160a060020a03161415156109bf57600080fd5b6109cc85858560006113e8565b5050505050565b6000806109df83610959565b15156109ea57600080fd5b6109f26107a6565b91506109fd8261145d565b1515610a0857600080fd5b600160a060020a0383161515610a5a5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515610a5557600080fd5b6106ff565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515610ab157600080fd5b6102c65a03f11515610ac257600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610b2a57600080fd5b6102c65a03f11515610b3b57600080fd5b50505060405180515050505050565b6000806000806065600060646000610b638c8c8c611028565b8152602080820192909252604090810160009081205484529183019390935291019020805486908110610b9257fe5b60009182526020909120015460ff8082169a6101008304909116995062010000909104600160f060020a0316975095505050505050565b6000610bd3611a2b565b60008084511115610bec57835160200290508391508082525b600054600160a060020a03161580610cfd575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610c93578082015183820152602001610c7b565b50505050905090810190601f168015610cc05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610ce157600080fd5b6102c65a03f11515610cf257600080fd5b505050604051805190505b9695505050505050565b8181610d138282610d7a565b600160a060020a031633600160a060020a0316141515610d3257600080fd5b610d3e6000858561148a565b50505050565b8181610d508282610d7a565b600160a060020a031633600160a060020a0316141515610d6f57600080fd5b6109cc85858561148a565b600060666000610d8a858561150c565b8152602081019190915260400160002054600160a060020a03169392505050565b610dd633307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a6108d9565b1515610de157600080fd5b610d3e84848484611550565b60035415610dfa57600080fd5b610e02611594565b60005433600160a060020a03908116911614610e1d57600080fd5b610e4981307f0b719b33c83b8e5d300c521cb8b54ae9bd933996a14bef8c2f4e0285d2d2400a82611550565b50565b600080516020611a9783398151915281565b600054600160a060020a031681565b600080600060646000610e81898989611028565b815260208101919091526040016000205491508115801590610eab5750610eab828888888861076b565b15610eb95760019250610f09565b60646000610eca6000198989611028565b815260208101919091526040016000205490508015801590610ef65750610ef68160001988888861076b565b15610f045760019250610f09565b600092505b5050949350505050565b6000610f1d6115ae565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f84578082015183820152602001610f6c565b50505050905090810190601f168015610fb15780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610fcf57600080fd5b6102c65a03f11515610fe057600080fd5b50505060405180519392505050565b6000610ff9611a2b565b60006020845181151561100857fe5b04905083915080825261101d87878785610e6d565b979650505050505050565b600060028484846040519384526c01000000000000000000000000600160a060020a0393841681026020860152919092160260348301526048820152606801604051809103902090509392505050565b6000611082611a3d565b600088815260656020526040812054819063ffffffff8a16106110a85760009350611286565b60008a8152606560205260409020805463ffffffff8b169081106110c857fe5b906000526020600020900160606040519081016040908152915460ff80821683526101008204166020830152620100009004600160f060020a031691810191909152925060cc835160ff16141561112e57611127838b8a8a8a8a611645565b9350611286565b8260400151600160f060020a0316905060cb835160ff1614156111785761115c8360400151898989896117e8565b61116757600061116a565b60015b60ff16915060019050611235565b60c8835160ff1614156111945761118d611902565b9150611235565b60c9835160ff1614156111ba576111a9611906565b67ffffffffffffffff169150611235565b60ca835160ff1614156111d85733600160a060020a03169150611235565b60cd835160ff1614156111fa578260400151600160f060020a03169150611235565b8451835160ff161061120f5760009350611286565b84835160ff168151811061121f57fe5b90602001906020020151600160f060020a031691505b6007836020015160ff16600c81111561124a57fe5b600c81111561125557fe5b141561126657600082119350611286565b61128382846020015160ff16600c81111561127d57fe5b8361190a565b93505b5050509695505050505050565b60008060008060006112a3611a3d565b8660405180828051906020019060200280838360005b838110156112d15780820151838201526020016112b9565b5050505090500191505060405190819003902060008181526065602052604090208054919650945015156113dd57600092505b86518310156113dd5786838151811061131957fe5b90602001906020020151915060606040519081016040528061133a846119c7565b60ff16815260200161134b846119ed565b60ff16815260200183600160f060020a031681525090508380548060010182816113759190611a5d565b600092835260209092208391018151815460ff191660ff919091161781556020820151815460ff919091166101000261ff001990911617815560408201518154600160f060020a0391909116620100000261ffff909116179055505060019290920191611304565b509295945050505050565b80606460006113f8878787611028565b815260208101919091526040908101600020919091558290600160a060020a0380861691908716907f759b9a74d5354b5801710a0c1b283cc9f0d32b607ac8ced10c83ac8e75c77d52908515159051901515815260200160405180910390a450505050565b600080600160a060020a03831615156114795760009150611484565b823b90506000811191505b50919050565b8260666000611499858561150c565b815260208101919091526040908101600020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03938416179055848216918391908516907ff3addc8b8e25ee11528a61b0e65092cae0666ef0ec0c64cb303993c88d689b4d905160405180910390a4505050565b600060018383604051928352600160a060020a03919091166c0100000000000000000000000002602083015260348201526054016040518091039020905092915050565b600061155c8484610d7a565b600160a060020a03161461156f57600080fd5b611589848484600080516020611a978339815191526113e8565b610d3e81848461148a565b600354156115a157600080fd5b6115a9611902565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561162157600080fd5b6102c65a03f1151561163257600080fd5b50505060405180519250829150505b5090565b60008080808080808080600c8f6020015160ff16600c81111561166457fe5b600c81111561166f57fe5b14156116c25761168b8f60400151600160f060020a0316611a12565b97509750975061169f8e898f8f8f8f611078565b94506116bb8e866116b057876116b2565b885b8f8f8f8f611078565b98506117d6565b6116d88f60400151600160f060020a0316611a12565b50935093506116eb8e858f8f8f8f611078565b915060088f6020015160ff16600c81111561170257fe5b600c81111561170d57fe5b141561171c57811598506117d6565b8180156117465750600a8f6020015160ff16600c81111561173957fe5b600c81111561174457fe5b145b1561175457600198506117d6565b8115801561177f575060098f6020015160ff16600c81111561177257fe5b600c81111561177d57fe5b145b1561178d57600098506117d6565b61179b8e848f8f8f8f611078565b9050600b8f6020015160ff16600c8111156117b257fe5b600c8111156117bd57fe5b14156117d257801515821515141598506117d6565b8098505b50505050505050509695505050505050565b60007f2a15109000000000000000000000000000000000000000000000000000000000818080600160a060020a038a16632a1510908a8a8a60808b518c60405160e060020a63ffffffff8916028152600160a060020a038088166004830190815290871660248301526044820186905260ff85166064830152608482018490529060a401828051906020019060200280838360005b8381101561189557808201518382015260200161187d565b50505050905001965050505050505060006040518083038160008761646e5a03f19250505092508215156118cc57600094506118f5565b3d9150602082146118e057600094506118f5565b604051826000823e8051915060008152508094505b5050505095945050505050565b4390565b4290565b6000600183600c81111561191a57fe5b14156119295750828114610740565b600283600c81111561193757fe5b1415611947575082811415610740565b600383600c81111561195557fe5b14156119645750808311610740565b600483600c81111561197257fe5b14156119815750808310610740565b600583600c81111561198f57fe5b141561199f575080831015610740565b600683600c8111156119ad57fe5b14156119bd575080831115610740565b5060009392505050565b7f0100000000000000000000000000000000000000000000000000000000000000900490565b7e01000000000000000000000000000000000000000000000000000000000000900490565b9064010000000082049068010000000000000000830490565b60206040519081016040526000815290565b606060405190810160409081526000808352602083018190529082015290565b8154818355818115116106ff576000838152602090206106ff91810190830161082491905b808211156116415760008155600101611a825600290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563a165627a7a72305820c8c7706565e577c700b506e25b648b75607841f84879ab724b4801482c87f51d0029","runtime_bytecode":"6060604052600436106100ed5763ffffffff60e060020a600035041663086b339e81146100f257806309720778146101215780631113ed0d14610146578063178e6079146101595780631cb671b11461016c578063216874441461017f578063250126991461019e57806330744267146101b1578063656362b5146101c4578063756f6049146101d7578063a3b4b07f146101ea578063b16dd130146101fd578063bce9b99514610210578063cbcc65eb14610237578063cc473be31461024a578063d2dd420f1461025d578063db8a61d414610270578063eeab495514610283578063fa637d5f14610296575b600080fd5b34156100fd57600080fd5b6101056102a9565b604051600160a060020a03909116815260200160405180910390f35b341561012c57600080fd5b6101346102b8565b60405190815260200160405180910390f35b341561015157600080fd5b6101346102dc565b341561016457600080fd5b610134610300565b341561017757600080fd5b610105610324565b341561018a57600080fd5b610105600160a060020a0360043516610333565b34156101a957600080fd5b610134610a55565b34156101bc57600080fd5b610134610a79565b34156101cf57600080fd5b610105610aad565b34156101e257600080fd5b610134610abc565b34156101f557600080fd5b610134610ae0565b341561020857600080fd5b610105610b04565b341561021b57600080fd5b610235600160a060020a0360043581169060243516610b13565b005b341561024257600080fd5b610134611015565b341561025557600080fd5b610134611039565b341561026857600080fd5b61013461105d565b341561027b57600080fd5b610134611091565b341561028e57600080fd5b6101056110b5565b34156102a157600080fd5b6101346110c4565b600154600160a060020a031681565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b600454600160a060020a031681565b600080548190819081908190600160a060020a03166103506116c3565b600160a060020a039091168152602001604051809103906000f080151561037657600080fd5b600254909550600160a060020a0316151561040057600154600160a060020a038087169163485cc95591168860405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b15156103e757600080fd5b6102c65a03f115156103f857600080fd5b505050610a0f565b600154600160a060020a038087169163485cc95591163060405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b151561045c57600080fd5b6102c65a03f1151561046d57600080fd5b50505084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156104b657600080fd5b6102c65a03f115156104c757600080fd5b5050506040518051945050600160a060020a038416633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561051857600080fd5b6102c65a03f1151561052957600080fd5b5050506040518051935050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561057a57600080fd5b6102c65a03f1151561058b57600080fd5b5050506040518051600254909350600160a060020a038087169250630a8ed3db9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156105fe57600080fd5b6102c65a03f1151561060f57600080fd5b5050600254600160a060020a03808716925063be038478911687853060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561068157600080fd5b6102c65a03f1151561069257600080fd5b5050600254600160a060020a0316905063869abc24868860006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b15156106f757600080fd5b6102c65a03f1151561070857600080fd5b5050506040518051905090507f1a40224412580c1ae5a2fbe8029a565f49a3a029608a8fd9320b32477f31457981604051600160a060020a03909116815260200160405180910390a1600254600160a060020a0380861691639d0effdb9116878560405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156107b857600080fd5b6102c65a03f115156107c957600080fd5b5050600254600160a060020a038087169250639d0effdb9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561083357600080fd5b6102c65a03f1151561084457600080fd5b50505083600160a060020a0316639d0effdb30868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156108a857600080fd5b6102c65a03f115156108b957600080fd5b50505083600160a060020a0316630a8ed3db87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561091d57600080fd5b6102c65a03f1151561092e57600080fd5b50505083600160a060020a031663a885508a868460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561098557600080fd5b6102c65a03f1151561099657600080fd5b50505083600160a060020a031663afd925df87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156109fa57600080fd5b6102c65a03f11515610a0b57600080fd5b5050505b7f3a7eb042a769adf51e9be78b68ed7af0ad7b379246536efc376ed2ca0123828285604051600160a060020a03909116815260200160405180910390a150505050919050565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b6040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051809103902081565b600254600160a060020a031681565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b600054600160a060020a031681565b6000806000806000610b2430610333565b945084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610b6c57600080fd5b6102c65a03f11515610b7d57600080fd5b5050506040518051945050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610bce57600080fd5b6102c65a03f11515610bdf57600080fd5b5050506040518051935050600160a060020a03841663be0384783087868260405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b1515610c5357600080fd5b6102c65a03f11515610c6457600080fd5b50505084600160a060020a03166380cd5ac36040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051908190039020600354600160a060020a031660006040516020015260405160e060020a63ffffffff85160281526004810192909252600160a060020a03166024820152604401602060405180830381600087803b1515610d0157600080fd5b6102c65a03f11515610d1257600080fd5b5050506040518051925050600160a060020a03851663e943d1e66040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051908190039020600454600160a060020a0316600160006040516020015260405160e060020a63ffffffff86160281526004810193909352600160a060020a03909116602483015215156044820152606401602060405180830381600087803b1515610dc257600080fd5b6102c65a03f11515610dd357600080fd5b5050506040518051915050600160a060020a03821663c4d66de88260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515610e2c57600080fd5b6102c65a03f11515610e3d57600080fd5b50505080600160a060020a031663c4d66de88360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515610e8e57600080fd5b6102c65a03f11515610e9f57600080fd5b50505084600160a060020a0316632c2333cd6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d01604051809103902060405160e060020a63ffffffff84160281526004810191909152602401600060405180830381600087803b1515610f1857600080fd5b6102c65a03f11515610f2957600080fd5b505050600160a060020a03851663ae5b25407fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d0160405180910390208960006040516020015260405160e060020a63ffffffff861602815260048101939093526024830191909152600160a060020a03166044820152606401602060405180830381600087803b1515610fe357600080fd5b6102c65a03f11515610ff457600080fd5b505050604051805190505061100c87858785856110f8565b50505050505050565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b6040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051809103902081565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600354600160a060020a031681565b6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d01604051809103902081565b60008060008086600160a060020a0316638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561114457600080fd5b6102c65a03f1151561115557600080fd5b5050506040518051945050600160a060020a038816633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111a657600080fd5b6102c65a03f115156111b757600080fd5b5050506040518051935050600160a060020a03861663b09927a16000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561120857600080fd5b6102c65a03f1151561121957600080fd5b5050506040518051925050600160a060020a0385166324fea3b06000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561126a57600080fd5b6102c65a03f1151561127b57600080fd5b5050506040518051915050600160a060020a03881663be0384788a88858260405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b15156112ef57600080fd5b6102c65a03f1151561130057600080fd5b50505087600160a060020a031663be0384788a87848d60405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561136c57600080fd5b6102c65a03f1151561137d57600080fd5b50505087600160a060020a0316630a8ed3db8a898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156113e157600080fd5b6102c65a03f115156113f257600080fd5b50505087600160a060020a0316630a8ed3db8a8a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561145657600080fd5b6102c65a03f1151561146757600080fd5b50505087600160a060020a0316639d0effdb30898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156114cb57600080fd5b6102c65a03f115156114dc57600080fd5b50505087600160a060020a0316639d0effdb308a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561154057600080fd5b6102c65a03f1151561155157600080fd5b50505087600160a060020a031663afd925df8a898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156115b557600080fd5b6102c65a03f115156115c657600080fd5b50505087600160a060020a031663afd925df8a8a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561162a57600080fd5b6102c65a03f1151561163b57600080fd5b5050507fedeaf64ef333aa90332884a5a2f7f4afd68cb2f994f2305530ffd9f77a7d82f686604051600160a060020a03909116815260200160405180910390a17f5aea3adcb99f382f124e44eb79721965a8f357a5919434da5e74e85b8c79a02585604051600160a060020a03909116815260200160405180910390a1505050505050505050565b60405161068e806116d48339019056006060604052341561000f57600080fd5b60405160208061068e8339810160405280805191508190506000807fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f87f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c604051918252602082015260409081019051908190039020815260208101919091526040016000208054600160a060020a0392909216600160a060020a0319909216919091179055506105ca806100c46000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029a165627a7a72305820d453ab213a096e9e55de794cd098aa497b0a0bb2563930ae327c668b3acfdf130029","real_runtime_bytecode":"6060604052600436106100ed5763ffffffff60e060020a600035041663086b339e81146100f257806309720778146101215780631113ed0d14610146578063178e6079146101595780631cb671b11461016c578063216874441461017f578063250126991461019e57806330744267146101b1578063656362b5146101c4578063756f6049146101d7578063a3b4b07f146101ea578063b16dd130146101fd578063bce9b99514610210578063cbcc65eb14610237578063cc473be31461024a578063d2dd420f1461025d578063db8a61d414610270578063eeab495514610283578063fa637d5f14610296575b600080fd5b34156100fd57600080fd5b6101056102a9565b604051600160a060020a03909116815260200160405180910390f35b341561012c57600080fd5b6101346102b8565b60405190815260200160405180910390f35b341561015157600080fd5b6101346102dc565b341561016457600080fd5b610134610300565b341561017757600080fd5b610105610324565b341561018a57600080fd5b610105600160a060020a0360043516610333565b34156101a957600080fd5b610134610a55565b34156101bc57600080fd5b610134610a79565b34156101cf57600080fd5b610105610aad565b34156101e257600080fd5b610134610abc565b34156101f557600080fd5b610134610ae0565b341561020857600080fd5b610105610b04565b341561021b57600080fd5b610235600160a060020a0360043581169060243516610b13565b005b341561024257600080fd5b610134611015565b341561025557600080fd5b610134611039565b341561026857600080fd5b61013461105d565b341561027b57600080fd5b610134611091565b341561028e57600080fd5b6101056110b5565b34156102a157600080fd5b6101346110c4565b600154600160a060020a031681565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b600454600160a060020a031681565b600080548190819081908190600160a060020a03166103506116c3565b600160a060020a039091168152602001604051809103906000f080151561037657600080fd5b600254909550600160a060020a0316151561040057600154600160a060020a038087169163485cc95591168860405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b15156103e757600080fd5b6102c65a03f115156103f857600080fd5b505050610a0f565b600154600160a060020a038087169163485cc95591163060405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401600060405180830381600087803b151561045c57600080fd5b6102c65a03f1151561046d57600080fd5b50505084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156104b657600080fd5b6102c65a03f115156104c757600080fd5b5050506040518051945050600160a060020a038416633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561051857600080fd5b6102c65a03f1151561052957600080fd5b5050506040518051935050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561057a57600080fd5b6102c65a03f1151561058b57600080fd5b5050506040518051600254909350600160a060020a038087169250630a8ed3db9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156105fe57600080fd5b6102c65a03f1151561060f57600080fd5b5050600254600160a060020a03808716925063be038478911687853060405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561068157600080fd5b6102c65a03f1151561069257600080fd5b5050600254600160a060020a0316905063869abc24868860006040516020015260405160e060020a63ffffffff8516028152600160a060020a03928316600482015291166024820152604401602060405180830381600087803b15156106f757600080fd5b6102c65a03f1151561070857600080fd5b5050506040518051905090507f1a40224412580c1ae5a2fbe8029a565f49a3a029608a8fd9320b32477f31457981604051600160a060020a03909116815260200160405180910390a1600254600160a060020a0380861691639d0effdb9116878560405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156107b857600080fd5b6102c65a03f115156107c957600080fd5b5050600254600160a060020a038087169250639d0effdb9116868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561083357600080fd5b6102c65a03f1151561084457600080fd5b50505083600160a060020a0316639d0effdb30868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156108a857600080fd5b6102c65a03f115156108b957600080fd5b50505083600160a060020a0316630a8ed3db87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561091d57600080fd5b6102c65a03f1151561092e57600080fd5b50505083600160a060020a031663a885508a868460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561098557600080fd5b6102c65a03f1151561099657600080fd5b50505083600160a060020a031663afd925df87868660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156109fa57600080fd5b6102c65a03f11515610a0b57600080fd5b5050505b7f3a7eb042a769adf51e9be78b68ed7af0ad7b379246536efc376ed2ca0123828285604051600160a060020a03909116815260200160405180910390a150505050919050565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b6040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051809103902081565b600254600160a060020a031681565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b600054600160a060020a031681565b6000806000806000610b2430610333565b945084600160a060020a031663de2873596000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610b6c57600080fd5b6102c65a03f11515610b7d57600080fd5b5050506040518051945050600160a060020a038516638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610bce57600080fd5b6102c65a03f11515610bdf57600080fd5b5050506040518051935050600160a060020a03841663be0384783087868260405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b1515610c5357600080fd5b6102c65a03f11515610c6457600080fd5b50505084600160a060020a03166380cd5ac36040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051908190039020600354600160a060020a031660006040516020015260405160e060020a63ffffffff85160281526004810192909252600160a060020a03166024820152604401602060405180830381600087803b1515610d0157600080fd5b6102c65a03f11515610d1257600080fd5b5050506040518051925050600160a060020a03851663e943d1e66040517f6c6971756964506c656467696e670000000000000000000000000000000000008152600e01604051908190039020600454600160a060020a0316600160006040516020015260405160e060020a63ffffffff86160281526004810193909352600160a060020a03909116602483015215156044820152606401602060405180830381600087803b1515610dc257600080fd5b6102c65a03f11515610dd357600080fd5b5050506040518051915050600160a060020a03821663c4d66de88260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515610e2c57600080fd5b6102c65a03f11515610e3d57600080fd5b50505080600160a060020a031663c4d66de88360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515610e8e57600080fd5b6102c65a03f11515610e9f57600080fd5b50505084600160a060020a0316632c2333cd6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d01604051809103902060405160e060020a63ffffffff84160281526004810191909152602401600060405180830381600087803b1515610f1857600080fd5b6102c65a03f11515610f2957600080fd5b505050600160a060020a03851663ae5b25407fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d0160405180910390208960006040516020015260405160e060020a63ffffffff861602815260048101939093526024830191909152600160a060020a03166044820152606401602060405180830381600087803b1515610fe357600080fd5b6102c65a03f11515610ff457600080fd5b505050604051805190505061100c87858785856110f8565b50505050505050565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b6040517f7661756c740000000000000000000000000000000000000000000000000000008152600501604051809103902081565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600354600160a060020a031681565b6040517f7265636f766572795661756c74000000000000000000000000000000000000008152600d01604051809103902081565b60008060008086600160a060020a0316638ea8dc9d6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561114457600080fd5b6102c65a03f1151561115557600080fd5b5050506040518051945050600160a060020a038816633d6ab68f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111a657600080fd5b6102c65a03f115156111b757600080fd5b5050506040518051935050600160a060020a03861663b09927a16000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561120857600080fd5b6102c65a03f1151561121957600080fd5b5050506040518051925050600160a060020a0385166324fea3b06000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561126a57600080fd5b6102c65a03f1151561127b57600080fd5b5050506040518051915050600160a060020a03881663be0384788a88858260405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b15156112ef57600080fd5b6102c65a03f1151561130057600080fd5b50505087600160a060020a031663be0384788a87848d60405160e060020a63ffffffff8716028152600160a060020a039485166004820152928416602484015260448301919091529091166064820152608401600060405180830381600087803b151561136c57600080fd5b6102c65a03f1151561137d57600080fd5b50505087600160a060020a0316630a8ed3db8a898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156113e157600080fd5b6102c65a03f115156113f257600080fd5b50505087600160a060020a0316630a8ed3db8a8a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561145657600080fd5b6102c65a03f1151561146757600080fd5b50505087600160a060020a0316639d0effdb30898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156114cb57600080fd5b6102c65a03f115156114dc57600080fd5b50505087600160a060020a0316639d0effdb308a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561154057600080fd5b6102c65a03f1151561155157600080fd5b50505087600160a060020a031663afd925df8a898760405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156115b557600080fd5b6102c65a03f115156115c657600080fd5b50505087600160a060020a031663afd925df8a8a8660405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561162a57600080fd5b6102c65a03f1151561163b57600080fd5b5050507fedeaf64ef333aa90332884a5a2f7f4afd68cb2f994f2305530ffd9f77a7d82f686604051600160a060020a03909116815260200160405180910390a17f5aea3adcb99f382f124e44eb79721965a8f357a5919434da5e74e85b8c79a02585604051600160a060020a03909116815260200160405180910390a1505050505050505050565b60405161068e806116d48339019056006060604052341561000f57600080fd5b60405160208061068e8339810160405280805191508190506000807fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f87f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c604051918252602082015260409081019051908190039020815260208101919091526040016000208054600160a060020a0392909216600160a060020a0319909216919091179055506105ca806100c46000396000f3006060604052600436106100e55763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630972077881146101a75780630ceafa2a146101cc5780631113ed0d146101df578063178e6079146101f257806325012699146102055780632b2584f61461021857806338bb6def1461022b5780634555d5c91461026a5780635c60da1b1461027d578063756f6049146102905780637e84a4ff146102a3578063a3b4b07f146102b6578063cbcc65eb146102c9578063cc473be3146102dc578063dabca019146102ef578063db8a61d414610302575b60006127105a1015610160576000341180156100ff575036155b151561010a57600080fd5b7f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1333460405173ffffffffffffffffffffffffffffffffffffffff909216825260208201526040908101905180910390a16101a4565b610168610315565b90506101a4816000368080601f016020809104026020016040519081016040528181529291906020840183838082843750610379945050505050565b50005b34156101b257600080fd5b6101ba610389565b60405190815260200160405180910390f35b34156101d757600080fd5b6101ba6103ad565b34156101ea57600080fd5b6101ba6103b3565b34156101fd57600080fd5b6101ba6103d7565b341561021057600080fd5b6101ba6103fb565b341561022357600080fd5b6101ba61041f565b341561023657600080fd5b610241600435610424565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561027557600080fd5b6101ba61044c565b341561028857600080fd5b610241610315565b341561029b57600080fd5b6101ba610451565b34156102ae57600080fd5b6101ba610475565b34156102c157600080fd5b6101ba61047a565b34156102d457600080fd5b6101ba61049e565b34156102e757600080fd5b6101ba6104c2565b34156102fa57600080fd5b6101ba6104e6565b341561030d57600080fd5b6101ba6104ec565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb60009081526020527f5c97793136c186a2fc0c24f575463224767ba16f02add9ccd8ea90f1684ed98c5473ffffffffffffffffffffffffffffffffffffffff1690565b61038582826000610510565b5050565b7f9065c3e7f7b7ef1ef4e53d2d0b8e0cef02874ab020c1ece79d5f0d3d0111c0ba81565b61271081565b7f3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c81565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b7f2b7d19d0575c228f8d9326801e14149d284dc5bb7b1541c5ad712ae4b2fcaadb81565b600181565b60006020819052908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600290565b7fc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f881565b600281565b7f4b8e03a458a6ccec5d9077c2490964c1333dd3c72e2db408d7d9a7a36ef5c41a81565b7fe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a81565b7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae81565b60015481565b7ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f81565b600080600061051e86610564565b151561052957600080fd5b5061271060008086516020880189855a03f43d935091508383101561054d57600080fd5b604051836000823e828015610560578482f35b8482fd5b60008073ffffffffffffffffffffffffffffffffffffffff8316151561058d5760009150610598565b823b90506000811191505b509190505600a165627a7a72305820cb245c21bbc6e1b28c633304b2904b913c086f0b11c2c78f11c9fdb39c3ab8e60029a165627a7a72305820","swarm_hash":"d453ab213a096e9e55de794cd098aa497b0a0bb2563930ae327c668b3acfdf13","gas_estimates":{"creation":{"codeDepositCost":"1513000","executionCost":"infinite","totalCost":"infinite"},"external":{"ACL_APP()":"456","ACL_APP_ID()":"522","APM_NODE()":"258","APP_ADDR_NAMESPACE()":"302","APP_BASES_NAMESPACE()":"588","CORE_NAMESPACE()":"434","ETH_NODE()":"544","KERNEL_APP()":"368","KERNEL_APP_ID()":"280","LP_APP_ID()":"462","RECOVERY_VAULT_ID()":"704","VAULT_APP_ID()":"638","baseACL()":"589","baseKernel()":"831","lpBase()":"677","newDAO(address)":"infinite","newLP(address,address)":"infinite","regFactory()":"765","vaultBase()":"963"},"internal":{"_setPermissions(address,contract ACL,contract Kernel,contract LPVault,contract LiquidPledging)":"infinite"}},"function_hashes":{"ACL_APP()":"a3b4b07f","ACL_APP_ID()":"cbcc65eb","APM_NODE()":"09720778","APP_ADDR_NAMESPACE()":"178e6079","APP_BASES_NAMESPACE()":"db8a61d4","CORE_NAMESPACE()":"756f6049","ETH_NODE()":"cc473be3","KERNEL_APP()":"25012699","KERNEL_APP_ID()":"1113ed0d","LP_APP_ID()":"30744267","RECOVERY_VAULT_ID()":"fa637d5f","VAULT_APP_ID()":"d2dd420f","baseACL()":"086b339e","baseKernel()":"b16dd130","lpBase()":"1cb671b1","newDAO(address)":"21687444","newLP(address,address)":"bce9b995","regFactory()":"656362b5","vaultBase()":"eeab4955"},"abi":[{"constant":true,"inputs":[],"name":"baseACL","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x086b339e"},{"constant":true,"inputs":[],"name":"APM_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x09720778"},{"constant":true,"inputs":[],"name":"KERNEL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x1113ed0d"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x178e6079"},{"constant":true,"inputs":[],"name":"lpBase","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x1cb671b1"},{"constant":false,"inputs":[{"name":"_root","type":"address"}],"name":"newDAO","outputs":[{"name":"dao","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x21687444"},{"constant":true,"inputs":[],"name":"KERNEL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x25012699"},{"constant":true,"inputs":[],"name":"LP_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x30744267"},{"constant":true,"inputs":[],"name":"regFactory","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x656362b5"},{"constant":true,"inputs":[],"name":"CORE_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x756f6049"},{"constant":true,"inputs":[],"name":"ACL_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xa3b4b07f"},{"constant":true,"inputs":[],"name":"baseKernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xb16dd130"},{"constant":false,"inputs":[{"name":"_root","type":"address"},{"name":"_escapeHatchDestination","type":"address"}],"name":"newLP","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xbce9b995"},{"constant":true,"inputs":[],"name":"ACL_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xcbcc65eb"},{"constant":true,"inputs":[],"name":"ETH_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xcc473be3"},{"constant":true,"inputs":[],"name":"VAULT_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xd2dd420f"},{"constant":true,"inputs":[],"name":"APP_BASES_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdb8a61d4"},{"constant":true,"inputs":[],"name":"vaultBase","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xeeab4955"},{"constant":true,"inputs":[],"name":"RECOVERY_VAULT_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xfa637d5f"},{"inputs":[{"name":"_vaultBase","type":"address"},{"name":"_lpBase","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"vault","type":"address"}],"name":"DeployVault","type":"event","signature":"0xedeaf64ef333aa90332884a5a2f7f4afd68cb2f994f2305530ffd9f77a7d82f6"},{"anonymous":false,"inputs":[{"indexed":false,"name":"liquidPledging","type":"address"}],"name":"DeployLiquidPledging","type":"event","signature":"0x5aea3adcb99f382f124e44eb79721965a8f357a5919434da5e74e85b8c79a025"},{"anonymous":false,"inputs":[{"indexed":false,"name":"dao","type":"address"}],"name":"DeployDAO","type":"event","signature":"0x3a7eb042a769adf51e9be78b68ed7af0ad7b379246536efc376ed2ca01238282"},{"anonymous":false,"inputs":[{"indexed":false,"name":"reg","type":"address"}],"name":"DeployEVMScriptRegistry","type":"event","signature":"0x1a40224412580c1ae5a2fbe8029a565f49a3a029608a8fd9320b32477f314579"}]}; +let LPFactory = new EmbarkJS.Blockchain.Contract(LPFactoryJSONConfig); +export default LPFactory; diff --git a/abi/contracts/LPVault.js b/abi/contracts/LPVault.js new file mode 100644 index 0000000..0eed13b --- /dev/null +++ b/abi/contracts/LPVault.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let LPVaultJSONConfig = {"contract_name":{"className":"LPVault","args":[],"code":"6060604052341561000f57600080fd5b6114958061001e6000396000f3006060604052600436106101455763ffffffff60e060020a600035041663178e6079811461014a57806332f0a3b51461016f5780633baf35fb1461019e5780634ad65a68146101b1578063539854cd146101c457806360b1e057146101d757806374041d1f146101ea5780637e7db6e1146101fd57806380afdea8146102305780638322fff2146102435780638422927d14610256578063866836ff1461026e578063876ca09f1461028157806387d81789146102975780638b3dd749146103085780639b3fdf4c1461031b5780639d4941d81461032e578063a1658fad1461034d578063a4500c33146103b0578063a5426df1146103c8578063b09927a1146103f3578063b796105c14610406578063bbc3282014610424578063c4d66de814610437578063d4aae0c414610456578063f92a79ff14610469578063ffd82d21146104ba575b600080fd5b341561015557600080fd5b61015d6104d8565b60405190815260200160405180910390f35b341561017a57600080fd5b6101826104fc565b604051600160a060020a03909116815260200160405180910390f35b34156101a957600080fd5b61015d61057d565b34156101bc57600080fd5b61015d610583565b34156101cf57600080fd5b61015d6105b7565b34156101e257600080fd5b61015d6105eb565b34156101f557600080fd5b61018261060f565b341561020857600080fd5b61021c600160a060020a036004351661061e565b604051901515815260200160405180910390f35b341561023b57600080fd5b61015d610669565b341561024e57600080fd5b61018261066f565b341561026157600080fd5b61026c600435610674565b005b341561027957600080fd5b61015d610680565b341561028c57600080fd5b61026c6004356106b4565b34156102a257600080fd5b6102ad600435610730565b604051858152600160a060020a0385166020820152604081018460028111156102d257fe5b60ff16815260200183600160a060020a0316600160a060020a031681526020018281526020019550505050505060405180910390f35b341561031357600080fd5b61015d610781565b341561032657600080fd5b61015d610787565b341561033957600080fd5b61026c600160a060020a03600435166107ab565b341561035857600080fd5b61021c60048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061092395505050505050565b34156103bb57600080fd5b61026c6004351515610a61565b34156103d357600080fd5b61015d600435600160a060020a0360243581169060443516606435610afe565b34156103fe57600080fd5b61015d610cc5565b341561041157600080fd5b61026c6004803560248101910135610cf9565b341561042f57600080fd5b61021c610d27565b341561044257600080fd5b61026c600160a060020a0360043516610d30565b341561046157600080fd5b610182610d89565b341561047457600080fd5b61018260046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610d9895505050505050565b34156104c557600080fd5b61026c6004803560248101910135610e74565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a0316151561051457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561055d57600080fd5b6102c65a03f1151561056e57600080fd5b50505060405180519150505b90565b60655490565b6040517f43414e43454c5f5041594d454e545f524f4c45000000000000000000000000008152601301604051809103902081565b6040517f5345545f4155544f5041595f524f4c45000000000000000000000000000000008152601001604051809103902081565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b606654600160a060020a031681565b6000610663336040517f4553434150455f48415443485f43414c4c45525f524f4c4500000000000000008152601801604051809103902061065e85610ea2565b610923565b92915050565b60015481565b600081565b61067d81610ebc565b50565b6040517f434f4e4649524d5f5041594d454e545f524f4c450000000000000000000000008152601401604051809103902081565b60006065828154811015156106c557fe5b90600052602060002090600402019050610718336040517f434f4e4649524d5f5041594d454e545f524f4c450000000000000000000000008152601401604051809103902061065e858560030154611041565b151561072357600080fd5b61072c826110a1565b5050565b606580548290811061073e57fe5b60009182526020909120600490910201805460018201546002830154600390930154919350600160a060020a038082169360a060020a90920460ff169291169085565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806107b78361061e565b15156107c257600080fd5b6107ca6104fc565b91506107d58261125e565b15156107e057600080fd5b600160a060020a03831615156108325781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561082d57600080fd5b61091e565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561088957600080fd5b6102c65a03f1151561089a57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561090257600080fd5b6102c65a03f1151561091357600080fd5b505050604051805150505b505050565b600061092d6113d4565b6000808451111561094657835160200290508391508082525b600054600160a060020a03161580610a57575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156109ed5780820151838201526020016109d5565b50505050905090810190601f168015610a1a5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610a3b57600080fd5b6102c65a03f11515610a4c57600080fd5b505050604051805190505b9695505050505050565b6040517f5345545f4155544f5041595f524f4c450000000000000000000000000000000081526010016040518091039020610a9b8261128b565b610aa6338383610923565b1515610ab157600080fd5b6064805460ff191684151517908190557f2cd164e981e8d4f5a1d624f9b48a50822486372629e8887030fea23424d01a3b9060ff16604051901515815260200160405180910390a1505050565b606654600090819033600160a060020a03908116911614610b1e57600080fd5b5060658054908190610b3390600183016113e6565b506000606582815481101515610b4557fe5b60009182526020909120600160049092020101805474ff0000000000000000000000000000000000000000191660a060020a836002811115610b8357fe5b021790555085606582815481101515610b9857fe5b60009182526020909120600490910201556065805486919083908110610bba57fe5b906000526020600020906004020160010160006101000a815481600160a060020a030219169083600160a060020a0316021790555083606582815481101515610bff57fe5b906000526020600020906004020160020160006101000a815481600160a060020a030219169083600160a060020a0316021790555082606582815481101515610c4457fe5b6000918252602090912060036004909202010155600160a060020a03851686827f7043e72dbe49b97a16440f93a3d5fae7c11d1d2e815d153b68b1060b7bfaabe08787604051600160a060020a03909216825260208201526040908101905180910390a460645460ff1615610cbc57610cbc816110a1565b95945050505050565b6040517f4553434150455f48415443485f43414c4c45525f524f4c4500000000000000008152601801604051809103902081565b60005b8181101561091e57610d1f838383818110610d1357fe5b90506020020135610ebc565b600101610cfc565b60645460ff1681565b60035415610d3d57600080fd5b600160a060020a0381161515610d5257600080fd5b610d5a6112d8565b6066805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a031681565b6000610da26112f2565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610e09578082015183820152602001610df1565b50505050905090810190601f168015610e365780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610e5457600080fd5b6102c65a03f11515610e6557600080fd5b50505060405180519392505050565b60005b8181101561091e57610e9a838383818110610e8e57fe5b905060200201356106b4565b600101610e77565b610eaa6113d4565b61066382600160a060020a0316611389565b60006040517f43414e43454c5f5041594d454e545f524f4c450000000000000000000000000081526013016040518091039020610ef883611389565b610f03338383610923565b1515610f0e57600080fd5b6065548410610f1c57600080fd5b6065805485908110610f2a57fe5b6000918252602082206004909102019350600184015460a060020a900460ff166002811115610f5557fe5b14610f5f57600080fd5b60018301805474ff000000000000000000000000000000000000000019167402000000000000000000000000000000000000000017905560665483546003850154600160a060020a039092169163e9c211e2919060405160e060020a63ffffffff851602815267ffffffffffffffff90921660048301526024820152604401600060405180830381600087803b1515610ff757600080fd5b6102c65a03f1151561100857600080fd5b505083549050847fd3a53825e9cd3e10f56bcb532f79e5e11fb23cad8a79e2dc8e3773df17a1a7a160405160405180910390a350505050565b6110496113d4565b60026040518059106110585750595b90808252806020026020018201604052509050828160008151811061107957fe5b60209081029091010152818160018151811061109157fe5b6020908102909101015292915050565b606554600090819083106110b457600080fd5b60658054849081106110c257fe5b6000918252602082206004909102019250600183015460a060020a900460ff1660028111156110ed57fe5b146110f757600080fd5b60018201805474ff0000000000000000000000000000000000000000191660a060020a17905560665482546003840154600160a060020a0390921691632ee88808919060405160e060020a63ffffffff851602815267ffffffffffffffff90921660048301526024820152604401600060405180830381600087803b151561117e57600080fd5b6102c65a03f1151561118f57600080fd5b505050600282015460018301546003840154600160a060020a039283169350839263a9059cbb92169060006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561120457600080fd5b6102c65a03f1151561121557600080fd5b50505060405180519050151561122a57600080fd5b8154837f68e9e9dd08fe773726352a12c1cec4763a63f382fbd288ce782eb77ef2da49de60405160405180910390a3505050565b600080600160a060020a038316151561127a5760009150611285565b823b90506000811191505b50919050565b6112936113d4565b600060016040518059106112a45750595b9080825280602002602001820160405250915082905080826000815181106112c857fe5b6020908102909101015250919050565b600354156112e557600080fd5b6112ed6113d0565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561136557600080fd5b6102c65a03f1151561137657600080fd5b50505060405180519250829150505b5090565b6113916113d4565b60016040518059106113a05750595b9080825280602002602001820160405250905081816000815181106113c157fe5b60209081029091010152919050565b4390565b60206040519081016040526000815290565b81548183558181151161091e5760008381526020902061091e9161057a9160049182028101918502015b8082111561138557600080825560018201805474ffffffffffffffffffffffffffffffffffffffffff1916905560028201805473ffffffffffffffffffffffffffffffffffffffff1916905560038201556004016114105600a165627a7a723058206ab5edab256e5464630bb691370e0dff440b2cd2ad475240dea00fbefc69e8440029","runtimeBytecode":"6060604052600436106101455763ffffffff60e060020a600035041663178e6079811461014a57806332f0a3b51461016f5780633baf35fb1461019e5780634ad65a68146101b1578063539854cd146101c457806360b1e057146101d757806374041d1f146101ea5780637e7db6e1146101fd57806380afdea8146102305780638322fff2146102435780638422927d14610256578063866836ff1461026e578063876ca09f1461028157806387d81789146102975780638b3dd749146103085780639b3fdf4c1461031b5780639d4941d81461032e578063a1658fad1461034d578063a4500c33146103b0578063a5426df1146103c8578063b09927a1146103f3578063b796105c14610406578063bbc3282014610424578063c4d66de814610437578063d4aae0c414610456578063f92a79ff14610469578063ffd82d21146104ba575b600080fd5b341561015557600080fd5b61015d6104d8565b60405190815260200160405180910390f35b341561017a57600080fd5b6101826104fc565b604051600160a060020a03909116815260200160405180910390f35b34156101a957600080fd5b61015d61057d565b34156101bc57600080fd5b61015d610583565b34156101cf57600080fd5b61015d6105b7565b34156101e257600080fd5b61015d6105eb565b34156101f557600080fd5b61018261060f565b341561020857600080fd5b61021c600160a060020a036004351661061e565b604051901515815260200160405180910390f35b341561023b57600080fd5b61015d610669565b341561024e57600080fd5b61018261066f565b341561026157600080fd5b61026c600435610674565b005b341561027957600080fd5b61015d610680565b341561028c57600080fd5b61026c6004356106b4565b34156102a257600080fd5b6102ad600435610730565b604051858152600160a060020a0385166020820152604081018460028111156102d257fe5b60ff16815260200183600160a060020a0316600160a060020a031681526020018281526020019550505050505060405180910390f35b341561031357600080fd5b61015d610781565b341561032657600080fd5b61015d610787565b341561033957600080fd5b61026c600160a060020a03600435166107ab565b341561035857600080fd5b61021c60048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061092395505050505050565b34156103bb57600080fd5b61026c6004351515610a61565b34156103d357600080fd5b61015d600435600160a060020a0360243581169060443516606435610afe565b34156103fe57600080fd5b61015d610cc5565b341561041157600080fd5b61026c6004803560248101910135610cf9565b341561042f57600080fd5b61021c610d27565b341561044257600080fd5b61026c600160a060020a0360043516610d30565b341561046157600080fd5b610182610d89565b341561047457600080fd5b61018260046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610d9895505050505050565b34156104c557600080fd5b61026c6004803560248101910135610e74565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a0316151561051457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561055d57600080fd5b6102c65a03f1151561056e57600080fd5b50505060405180519150505b90565b60655490565b6040517f43414e43454c5f5041594d454e545f524f4c45000000000000000000000000008152601301604051809103902081565b6040517f5345545f4155544f5041595f524f4c45000000000000000000000000000000008152601001604051809103902081565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b606654600160a060020a031681565b6000610663336040517f4553434150455f48415443485f43414c4c45525f524f4c4500000000000000008152601801604051809103902061065e85610ea2565b610923565b92915050565b60015481565b600081565b61067d81610ebc565b50565b6040517f434f4e4649524d5f5041594d454e545f524f4c450000000000000000000000008152601401604051809103902081565b60006065828154811015156106c557fe5b90600052602060002090600402019050610718336040517f434f4e4649524d5f5041594d454e545f524f4c450000000000000000000000008152601401604051809103902061065e858560030154611041565b151561072357600080fd5b61072c826110a1565b5050565b606580548290811061073e57fe5b60009182526020909120600490910201805460018201546002830154600390930154919350600160a060020a038082169360a060020a90920460ff169291169085565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806107b78361061e565b15156107c257600080fd5b6107ca6104fc565b91506107d58261125e565b15156107e057600080fd5b600160a060020a03831615156108325781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561082d57600080fd5b61091e565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561088957600080fd5b6102c65a03f1151561089a57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561090257600080fd5b6102c65a03f1151561091357600080fd5b505050604051805150505b505050565b600061092d6113d4565b6000808451111561094657835160200290508391508082525b600054600160a060020a03161580610a57575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156109ed5780820151838201526020016109d5565b50505050905090810190601f168015610a1a5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610a3b57600080fd5b6102c65a03f11515610a4c57600080fd5b505050604051805190505b9695505050505050565b6040517f5345545f4155544f5041595f524f4c450000000000000000000000000000000081526010016040518091039020610a9b8261128b565b610aa6338383610923565b1515610ab157600080fd5b6064805460ff191684151517908190557f2cd164e981e8d4f5a1d624f9b48a50822486372629e8887030fea23424d01a3b9060ff16604051901515815260200160405180910390a1505050565b606654600090819033600160a060020a03908116911614610b1e57600080fd5b5060658054908190610b3390600183016113e6565b506000606582815481101515610b4557fe5b60009182526020909120600160049092020101805474ff0000000000000000000000000000000000000000191660a060020a836002811115610b8357fe5b021790555085606582815481101515610b9857fe5b60009182526020909120600490910201556065805486919083908110610bba57fe5b906000526020600020906004020160010160006101000a815481600160a060020a030219169083600160a060020a0316021790555083606582815481101515610bff57fe5b906000526020600020906004020160020160006101000a815481600160a060020a030219169083600160a060020a0316021790555082606582815481101515610c4457fe5b6000918252602090912060036004909202010155600160a060020a03851686827f7043e72dbe49b97a16440f93a3d5fae7c11d1d2e815d153b68b1060b7bfaabe08787604051600160a060020a03909216825260208201526040908101905180910390a460645460ff1615610cbc57610cbc816110a1565b95945050505050565b6040517f4553434150455f48415443485f43414c4c45525f524f4c4500000000000000008152601801604051809103902081565b60005b8181101561091e57610d1f838383818110610d1357fe5b90506020020135610ebc565b600101610cfc565b60645460ff1681565b60035415610d3d57600080fd5b600160a060020a0381161515610d5257600080fd5b610d5a6112d8565b6066805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a031681565b6000610da26112f2565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610e09578082015183820152602001610df1565b50505050905090810190601f168015610e365780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610e5457600080fd5b6102c65a03f11515610e6557600080fd5b50505060405180519392505050565b60005b8181101561091e57610e9a838383818110610e8e57fe5b905060200201356106b4565b600101610e77565b610eaa6113d4565b61066382600160a060020a0316611389565b60006040517f43414e43454c5f5041594d454e545f524f4c450000000000000000000000000081526013016040518091039020610ef883611389565b610f03338383610923565b1515610f0e57600080fd5b6065548410610f1c57600080fd5b6065805485908110610f2a57fe5b6000918252602082206004909102019350600184015460a060020a900460ff166002811115610f5557fe5b14610f5f57600080fd5b60018301805474ff000000000000000000000000000000000000000019167402000000000000000000000000000000000000000017905560665483546003850154600160a060020a039092169163e9c211e2919060405160e060020a63ffffffff851602815267ffffffffffffffff90921660048301526024820152604401600060405180830381600087803b1515610ff757600080fd5b6102c65a03f1151561100857600080fd5b505083549050847fd3a53825e9cd3e10f56bcb532f79e5e11fb23cad8a79e2dc8e3773df17a1a7a160405160405180910390a350505050565b6110496113d4565b60026040518059106110585750595b90808252806020026020018201604052509050828160008151811061107957fe5b60209081029091010152818160018151811061109157fe5b6020908102909101015292915050565b606554600090819083106110b457600080fd5b60658054849081106110c257fe5b6000918252602082206004909102019250600183015460a060020a900460ff1660028111156110ed57fe5b146110f757600080fd5b60018201805474ff0000000000000000000000000000000000000000191660a060020a17905560665482546003840154600160a060020a0390921691632ee88808919060405160e060020a63ffffffff851602815267ffffffffffffffff90921660048301526024820152604401600060405180830381600087803b151561117e57600080fd5b6102c65a03f1151561118f57600080fd5b505050600282015460018301546003840154600160a060020a039283169350839263a9059cbb92169060006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561120457600080fd5b6102c65a03f1151561121557600080fd5b50505060405180519050151561122a57600080fd5b8154837f68e9e9dd08fe773726352a12c1cec4763a63f382fbd288ce782eb77ef2da49de60405160405180910390a3505050565b600080600160a060020a038316151561127a5760009150611285565b823b90506000811191505b50919050565b6112936113d4565b600060016040518059106112a45750595b9080825280602002602001820160405250915082905080826000815181106112c857fe5b6020908102909101015250919050565b600354156112e557600080fd5b6112ed6113d0565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561136557600080fd5b6102c65a03f1151561137657600080fd5b50505060405180519250829150505b5090565b6113916113d4565b60016040518059106113a05750595b9080825280602002602001820160405250905081816000815181106113c157fe5b60209081029091010152919050565b4390565b60206040519081016040526000815290565b81548183558181151161091e5760008381526020902061091e9161057a9160049182028101918502015b8082111561138557600080825560018201805474ffffffffffffffffffffffffffffffffffffffffff1916905560028201805473ffffffffffffffffffffffffffffffffffffffff1916905560038201556004016114105600a165627a7a723058206ab5edab256e5464630bb691370e0dff440b2cd2ad475240dea00fbefc69e8440029","realRuntimeBytecode":"6060604052600436106101455763ffffffff60e060020a600035041663178e6079811461014a57806332f0a3b51461016f5780633baf35fb1461019e5780634ad65a68146101b1578063539854cd146101c457806360b1e057146101d757806374041d1f146101ea5780637e7db6e1146101fd57806380afdea8146102305780638322fff2146102435780638422927d14610256578063866836ff1461026e578063876ca09f1461028157806387d81789146102975780638b3dd749146103085780639b3fdf4c1461031b5780639d4941d81461032e578063a1658fad1461034d578063a4500c33146103b0578063a5426df1146103c8578063b09927a1146103f3578063b796105c14610406578063bbc3282014610424578063c4d66de814610437578063d4aae0c414610456578063f92a79ff14610469578063ffd82d21146104ba575b600080fd5b341561015557600080fd5b61015d6104d8565b60405190815260200160405180910390f35b341561017a57600080fd5b6101826104fc565b604051600160a060020a03909116815260200160405180910390f35b34156101a957600080fd5b61015d61057d565b34156101bc57600080fd5b61015d610583565b34156101cf57600080fd5b61015d6105b7565b34156101e257600080fd5b61015d6105eb565b34156101f557600080fd5b61018261060f565b341561020857600080fd5b61021c600160a060020a036004351661061e565b604051901515815260200160405180910390f35b341561023b57600080fd5b61015d610669565b341561024e57600080fd5b61018261066f565b341561026157600080fd5b61026c600435610674565b005b341561027957600080fd5b61015d610680565b341561028c57600080fd5b61026c6004356106b4565b34156102a257600080fd5b6102ad600435610730565b604051858152600160a060020a0385166020820152604081018460028111156102d257fe5b60ff16815260200183600160a060020a0316600160a060020a031681526020018281526020019550505050505060405180910390f35b341561031357600080fd5b61015d610781565b341561032657600080fd5b61015d610787565b341561033957600080fd5b61026c600160a060020a03600435166107ab565b341561035857600080fd5b61021c60048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061092395505050505050565b34156103bb57600080fd5b61026c6004351515610a61565b34156103d357600080fd5b61015d600435600160a060020a0360243581169060443516606435610afe565b34156103fe57600080fd5b61015d610cc5565b341561041157600080fd5b61026c6004803560248101910135610cf9565b341561042f57600080fd5b61021c610d27565b341561044257600080fd5b61026c600160a060020a0360043516610d30565b341561046157600080fd5b610182610d89565b341561047457600080fd5b61018260046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610d9895505050505050565b34156104c557600080fd5b61026c6004803560248101910135610e74565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a0316151561051457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561055d57600080fd5b6102c65a03f1151561056e57600080fd5b50505060405180519150505b90565b60655490565b6040517f43414e43454c5f5041594d454e545f524f4c45000000000000000000000000008152601301604051809103902081565b6040517f5345545f4155544f5041595f524f4c45000000000000000000000000000000008152601001604051809103902081565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b606654600160a060020a031681565b6000610663336040517f4553434150455f48415443485f43414c4c45525f524f4c4500000000000000008152601801604051809103902061065e85610ea2565b610923565b92915050565b60015481565b600081565b61067d81610ebc565b50565b6040517f434f4e4649524d5f5041594d454e545f524f4c450000000000000000000000008152601401604051809103902081565b60006065828154811015156106c557fe5b90600052602060002090600402019050610718336040517f434f4e4649524d5f5041594d454e545f524f4c450000000000000000000000008152601401604051809103902061065e858560030154611041565b151561072357600080fd5b61072c826110a1565b5050565b606580548290811061073e57fe5b60009182526020909120600490910201805460018201546002830154600390930154919350600160a060020a038082169360a060020a90920460ff169291169085565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806107b78361061e565b15156107c257600080fd5b6107ca6104fc565b91506107d58261125e565b15156107e057600080fd5b600160a060020a03831615156108325781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561082d57600080fd5b61091e565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561088957600080fd5b6102c65a03f1151561089a57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561090257600080fd5b6102c65a03f1151561091357600080fd5b505050604051805150505b505050565b600061092d6113d4565b6000808451111561094657835160200290508391508082525b600054600160a060020a03161580610a57575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156109ed5780820151838201526020016109d5565b50505050905090810190601f168015610a1a5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610a3b57600080fd5b6102c65a03f11515610a4c57600080fd5b505050604051805190505b9695505050505050565b6040517f5345545f4155544f5041595f524f4c450000000000000000000000000000000081526010016040518091039020610a9b8261128b565b610aa6338383610923565b1515610ab157600080fd5b6064805460ff191684151517908190557f2cd164e981e8d4f5a1d624f9b48a50822486372629e8887030fea23424d01a3b9060ff16604051901515815260200160405180910390a1505050565b606654600090819033600160a060020a03908116911614610b1e57600080fd5b5060658054908190610b3390600183016113e6565b506000606582815481101515610b4557fe5b60009182526020909120600160049092020101805474ff0000000000000000000000000000000000000000191660a060020a836002811115610b8357fe5b021790555085606582815481101515610b9857fe5b60009182526020909120600490910201556065805486919083908110610bba57fe5b906000526020600020906004020160010160006101000a815481600160a060020a030219169083600160a060020a0316021790555083606582815481101515610bff57fe5b906000526020600020906004020160020160006101000a815481600160a060020a030219169083600160a060020a0316021790555082606582815481101515610c4457fe5b6000918252602090912060036004909202010155600160a060020a03851686827f7043e72dbe49b97a16440f93a3d5fae7c11d1d2e815d153b68b1060b7bfaabe08787604051600160a060020a03909216825260208201526040908101905180910390a460645460ff1615610cbc57610cbc816110a1565b95945050505050565b6040517f4553434150455f48415443485f43414c4c45525f524f4c4500000000000000008152601801604051809103902081565b60005b8181101561091e57610d1f838383818110610d1357fe5b90506020020135610ebc565b600101610cfc565b60645460ff1681565b60035415610d3d57600080fd5b600160a060020a0381161515610d5257600080fd5b610d5a6112d8565b6066805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a031681565b6000610da26112f2565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610e09578082015183820152602001610df1565b50505050905090810190601f168015610e365780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610e5457600080fd5b6102c65a03f11515610e6557600080fd5b50505060405180519392505050565b60005b8181101561091e57610e9a838383818110610e8e57fe5b905060200201356106b4565b600101610e77565b610eaa6113d4565b61066382600160a060020a0316611389565b60006040517f43414e43454c5f5041594d454e545f524f4c450000000000000000000000000081526013016040518091039020610ef883611389565b610f03338383610923565b1515610f0e57600080fd5b6065548410610f1c57600080fd5b6065805485908110610f2a57fe5b6000918252602082206004909102019350600184015460a060020a900460ff166002811115610f5557fe5b14610f5f57600080fd5b60018301805474ff000000000000000000000000000000000000000019167402000000000000000000000000000000000000000017905560665483546003850154600160a060020a039092169163e9c211e2919060405160e060020a63ffffffff851602815267ffffffffffffffff90921660048301526024820152604401600060405180830381600087803b1515610ff757600080fd5b6102c65a03f1151561100857600080fd5b505083549050847fd3a53825e9cd3e10f56bcb532f79e5e11fb23cad8a79e2dc8e3773df17a1a7a160405160405180910390a350505050565b6110496113d4565b60026040518059106110585750595b90808252806020026020018201604052509050828160008151811061107957fe5b60209081029091010152818160018151811061109157fe5b6020908102909101015292915050565b606554600090819083106110b457600080fd5b60658054849081106110c257fe5b6000918252602082206004909102019250600183015460a060020a900460ff1660028111156110ed57fe5b146110f757600080fd5b60018201805474ff0000000000000000000000000000000000000000191660a060020a17905560665482546003840154600160a060020a0390921691632ee88808919060405160e060020a63ffffffff851602815267ffffffffffffffff90921660048301526024820152604401600060405180830381600087803b151561117e57600080fd5b6102c65a03f1151561118f57600080fd5b505050600282015460018301546003840154600160a060020a039283169350839263a9059cbb92169060006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561120457600080fd5b6102c65a03f1151561121557600080fd5b50505060405180519050151561122a57600080fd5b8154837f68e9e9dd08fe773726352a12c1cec4763a63f382fbd288ce782eb77ef2da49de60405160405180910390a3505050565b600080600160a060020a038316151561127a5760009150611285565b823b90506000811191505b50919050565b6112936113d4565b600060016040518059106112a45750595b9080825280602002602001820160405250915082905080826000815181106112c857fe5b6020908102909101015250919050565b600354156112e557600080fd5b6112ed6113d0565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561136557600080fd5b6102c65a03f1151561137657600080fd5b50505060405180519250829150505b5090565b6113916113d4565b60016040518059106113a05750595b9080825280602002602001820160405250905081816000815181106113c157fe5b60209081029091010152919050565b4390565b60206040519081016040526000815290565b81548183558181151161091e5760008381526020902061091e9161057a9160049182028101918502015b8082111561138557600080825560018201805474ffffffffffffffffffffffffffffffffffffffffff1916905560028201805473ffffffffffffffffffffffffffffffffffffffff1916905560038201556004016114105600a165627a7a72305820","linkReferences":{},"swarmHash":"6ab5edab256e5464630bb691370e0dff440b2cd2ad475240dea00fbefc69e844","gasEstimates":{"creation":{"codeDepositCost":"1053800","executionCost":"1089","totalCost":"1054889"},"external":{"APP_ADDR_NAMESPACE()":"236","CANCEL_PAYMENT_ROLE()":"374","CONFIRM_PAYMENT_ROLE()":"550","ESCAPE_HATCH_CALLER_ROLE()":"748","ETH()":"512","EVMSCRIPT_REGISTRY_APP()":"566","EVMSCRIPT_REGISTRY_APP_ID()":"346","SET_AUTOPAY_ROLE()":"396","allowRecoverability(address)":"infinite","appId()":"612","authorizePayment(bytes32,address,address,uint256)":"infinite","autoPay()":"932","canPerform(address,bytes32,uint256[])":"infinite","cancelPayment(uint256)":"infinite","confirmPayment(uint256)":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"744","getRecoveryVault()":"infinite","initialize(address)":"41683","kernel()":"1117","liquidPledging()":"721","multiCancel(uint256[])":"infinite","multiConfirm(uint256[])":"infinite","nPayments()":"480","payments(uint256)":"2198","setAutopay(bool)":"infinite","transferToVault(address)":"infinite"},"internal":{"_doCancelPayment(uint256)":"infinite","_doConfirmPayment(uint256)":"infinite"}},"functionHashes":{"APP_ADDR_NAMESPACE()":"178e6079","CANCEL_PAYMENT_ROLE()":"4ad65a68","CONFIRM_PAYMENT_ROLE()":"866836ff","ESCAPE_HATCH_CALLER_ROLE()":"b09927a1","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","SET_AUTOPAY_ROLE()":"539854cd","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","authorizePayment(bytes32,address,address,uint256)":"a5426df1","autoPay()":"bbc32820","canPerform(address,bytes32,uint256[])":"a1658fad","cancelPayment(uint256)":"8422927d","confirmPayment(uint256)":"876ca09f","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getRecoveryVault()":"32f0a3b5","initialize(address)":"c4d66de8","kernel()":"d4aae0c4","liquidPledging()":"74041d1f","multiCancel(uint256[])":"b796105c","multiConfirm(uint256[])":"ffd82d21","nPayments()":"3baf35fb","payments(uint256)":"87d81789","setAutopay(bool)":"a4500c33","transferToVault(address)":"9d4941d8"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x178e6079"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x32f0a3b5"},{"constant":true,"inputs":[],"name":"nPayments","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x3baf35fb"},{"constant":true,"inputs":[],"name":"CANCEL_PAYMENT_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x4ad65a68"},{"constant":true,"inputs":[],"name":"SET_AUTOPAY_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x539854cd"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x60b1e057"},{"constant":true,"inputs":[],"name":"liquidPledging","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x74041d1f"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x7e7db6e1"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x80afdea8"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8322fff2"},{"constant":false,"inputs":[{"name":"_idPayment","type":"uint256"}],"name":"cancelPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x8422927d"},{"constant":true,"inputs":[],"name":"CONFIRM_PAYMENT_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x866836ff"},{"constant":false,"inputs":[{"name":"_idPayment","type":"uint256"}],"name":"confirmPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x876ca09f"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"payments","outputs":[{"name":"ref","type":"bytes32"},{"name":"dest","type":"address"},{"name":"state","type":"uint8"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x87d81789"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8b3dd749"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x9b3fdf4c"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x9d4941d8"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xa1658fad"},{"constant":false,"inputs":[{"name":"_automatic","type":"bool"}],"name":"setAutopay","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa4500c33"},{"constant":false,"inputs":[{"name":"_ref","type":"bytes32"},{"name":"_dest","type":"address"},{"name":"_token","type":"address"},{"name":"_amount","type":"uint256"}],"name":"authorizePayment","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa5426df1"},{"constant":true,"inputs":[],"name":"ESCAPE_HATCH_CALLER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xb09927a1"},{"constant":false,"inputs":[{"name":"_idPayments","type":"uint256[]"}],"name":"multiCancel","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xb796105c"},{"constant":true,"inputs":[],"name":"autoPay","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xbbc32820"},{"constant":false,"inputs":[{"name":"_liquidPledging","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xc4d66de8"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xd4aae0c4"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xf92a79ff"},{"constant":false,"inputs":[{"name":"_idPayments","type":"uint256[]"}],"name":"multiConfirm","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xffd82d21"},{"anonymous":false,"inputs":[{"indexed":false,"name":"autoPay","type":"bool"}],"name":"AutoPaySet","type":"event","signature":"0x2cd164e981e8d4f5a1d624f9b48a50822486372629e8887030fea23424d01a3b"},{"anonymous":false,"inputs":[{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"EscapeFundsCalled","type":"event","signature":"0x4ccddcd1a4e33721aee316370fb3e014294985be0755a68c88009b31e1dc4ae3"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idPayment","type":"uint256"},{"indexed":true,"name":"ref","type":"bytes32"}],"name":"ConfirmPayment","type":"event","signature":"0x68e9e9dd08fe773726352a12c1cec4763a63f382fbd288ce782eb77ef2da49de"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idPayment","type":"uint256"},{"indexed":true,"name":"ref","type":"bytes32"}],"name":"CancelPayment","type":"event","signature":"0xd3a53825e9cd3e10f56bcb532f79e5e11fb23cad8a79e2dc8e3773df17a1a7a1"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idPayment","type":"uint256"},{"indexed":true,"name":"ref","type":"bytes32"},{"indexed":true,"name":"dest","type":"address"},{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"AuthorizePayment","type":"event","signature":"0x7043e72dbe49b97a16440f93a3d5fae7c11d1d2e815d153b68b1060b7bfaabe0"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/LPVault.sol","originalFilename":"contracts/LPVault.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/LPVault.sol","gas":"auto","type":"file","deploy":true,"_gasLimit":6000000,"error":false,"deploymentAccount":"0x1179823e34aBF984C52fC0CdD7b7b9F5dd394aB9","realArgs":[],"address":"0xa25AB823c5A79941a8a9d0ab525D888cA1513419","deployedAddress":"0xa25AB823c5A79941a8a9d0ab525D888cA1513419"},"address":"0xa25AB823c5A79941a8a9d0ab525D888cA1513419","code":"6060604052341561000f57600080fd5b6114958061001e6000396000f3006060604052600436106101455763ffffffff60e060020a600035041663178e6079811461014a57806332f0a3b51461016f5780633baf35fb1461019e5780634ad65a68146101b1578063539854cd146101c457806360b1e057146101d757806374041d1f146101ea5780637e7db6e1146101fd57806380afdea8146102305780638322fff2146102435780638422927d14610256578063866836ff1461026e578063876ca09f1461028157806387d81789146102975780638b3dd749146103085780639b3fdf4c1461031b5780639d4941d81461032e578063a1658fad1461034d578063a4500c33146103b0578063a5426df1146103c8578063b09927a1146103f3578063b796105c14610406578063bbc3282014610424578063c4d66de814610437578063d4aae0c414610456578063f92a79ff14610469578063ffd82d21146104ba575b600080fd5b341561015557600080fd5b61015d6104d8565b60405190815260200160405180910390f35b341561017a57600080fd5b6101826104fc565b604051600160a060020a03909116815260200160405180910390f35b34156101a957600080fd5b61015d61057d565b34156101bc57600080fd5b61015d610583565b34156101cf57600080fd5b61015d6105b7565b34156101e257600080fd5b61015d6105eb565b34156101f557600080fd5b61018261060f565b341561020857600080fd5b61021c600160a060020a036004351661061e565b604051901515815260200160405180910390f35b341561023b57600080fd5b61015d610669565b341561024e57600080fd5b61018261066f565b341561026157600080fd5b61026c600435610674565b005b341561027957600080fd5b61015d610680565b341561028c57600080fd5b61026c6004356106b4565b34156102a257600080fd5b6102ad600435610730565b604051858152600160a060020a0385166020820152604081018460028111156102d257fe5b60ff16815260200183600160a060020a0316600160a060020a031681526020018281526020019550505050505060405180910390f35b341561031357600080fd5b61015d610781565b341561032657600080fd5b61015d610787565b341561033957600080fd5b61026c600160a060020a03600435166107ab565b341561035857600080fd5b61021c60048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061092395505050505050565b34156103bb57600080fd5b61026c6004351515610a61565b34156103d357600080fd5b61015d600435600160a060020a0360243581169060443516606435610afe565b34156103fe57600080fd5b61015d610cc5565b341561041157600080fd5b61026c6004803560248101910135610cf9565b341561042f57600080fd5b61021c610d27565b341561044257600080fd5b61026c600160a060020a0360043516610d30565b341561046157600080fd5b610182610d89565b341561047457600080fd5b61018260046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610d9895505050505050565b34156104c557600080fd5b61026c6004803560248101910135610e74565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a0316151561051457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561055d57600080fd5b6102c65a03f1151561056e57600080fd5b50505060405180519150505b90565b60655490565b6040517f43414e43454c5f5041594d454e545f524f4c45000000000000000000000000008152601301604051809103902081565b6040517f5345545f4155544f5041595f524f4c45000000000000000000000000000000008152601001604051809103902081565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b606654600160a060020a031681565b6000610663336040517f4553434150455f48415443485f43414c4c45525f524f4c4500000000000000008152601801604051809103902061065e85610ea2565b610923565b92915050565b60015481565b600081565b61067d81610ebc565b50565b6040517f434f4e4649524d5f5041594d454e545f524f4c450000000000000000000000008152601401604051809103902081565b60006065828154811015156106c557fe5b90600052602060002090600402019050610718336040517f434f4e4649524d5f5041594d454e545f524f4c450000000000000000000000008152601401604051809103902061065e858560030154611041565b151561072357600080fd5b61072c826110a1565b5050565b606580548290811061073e57fe5b60009182526020909120600490910201805460018201546002830154600390930154919350600160a060020a038082169360a060020a90920460ff169291169085565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806107b78361061e565b15156107c257600080fd5b6107ca6104fc565b91506107d58261125e565b15156107e057600080fd5b600160a060020a03831615156108325781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561082d57600080fd5b61091e565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561088957600080fd5b6102c65a03f1151561089a57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561090257600080fd5b6102c65a03f1151561091357600080fd5b505050604051805150505b505050565b600061092d6113d4565b6000808451111561094657835160200290508391508082525b600054600160a060020a03161580610a57575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156109ed5780820151838201526020016109d5565b50505050905090810190601f168015610a1a5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610a3b57600080fd5b6102c65a03f11515610a4c57600080fd5b505050604051805190505b9695505050505050565b6040517f5345545f4155544f5041595f524f4c450000000000000000000000000000000081526010016040518091039020610a9b8261128b565b610aa6338383610923565b1515610ab157600080fd5b6064805460ff191684151517908190557f2cd164e981e8d4f5a1d624f9b48a50822486372629e8887030fea23424d01a3b9060ff16604051901515815260200160405180910390a1505050565b606654600090819033600160a060020a03908116911614610b1e57600080fd5b5060658054908190610b3390600183016113e6565b506000606582815481101515610b4557fe5b60009182526020909120600160049092020101805474ff0000000000000000000000000000000000000000191660a060020a836002811115610b8357fe5b021790555085606582815481101515610b9857fe5b60009182526020909120600490910201556065805486919083908110610bba57fe5b906000526020600020906004020160010160006101000a815481600160a060020a030219169083600160a060020a0316021790555083606582815481101515610bff57fe5b906000526020600020906004020160020160006101000a815481600160a060020a030219169083600160a060020a0316021790555082606582815481101515610c4457fe5b6000918252602090912060036004909202010155600160a060020a03851686827f7043e72dbe49b97a16440f93a3d5fae7c11d1d2e815d153b68b1060b7bfaabe08787604051600160a060020a03909216825260208201526040908101905180910390a460645460ff1615610cbc57610cbc816110a1565b95945050505050565b6040517f4553434150455f48415443485f43414c4c45525f524f4c4500000000000000008152601801604051809103902081565b60005b8181101561091e57610d1f838383818110610d1357fe5b90506020020135610ebc565b600101610cfc565b60645460ff1681565b60035415610d3d57600080fd5b600160a060020a0381161515610d5257600080fd5b610d5a6112d8565b6066805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a031681565b6000610da26112f2565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610e09578082015183820152602001610df1565b50505050905090810190601f168015610e365780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610e5457600080fd5b6102c65a03f11515610e6557600080fd5b50505060405180519392505050565b60005b8181101561091e57610e9a838383818110610e8e57fe5b905060200201356106b4565b600101610e77565b610eaa6113d4565b61066382600160a060020a0316611389565b60006040517f43414e43454c5f5041594d454e545f524f4c450000000000000000000000000081526013016040518091039020610ef883611389565b610f03338383610923565b1515610f0e57600080fd5b6065548410610f1c57600080fd5b6065805485908110610f2a57fe5b6000918252602082206004909102019350600184015460a060020a900460ff166002811115610f5557fe5b14610f5f57600080fd5b60018301805474ff000000000000000000000000000000000000000019167402000000000000000000000000000000000000000017905560665483546003850154600160a060020a039092169163e9c211e2919060405160e060020a63ffffffff851602815267ffffffffffffffff90921660048301526024820152604401600060405180830381600087803b1515610ff757600080fd5b6102c65a03f1151561100857600080fd5b505083549050847fd3a53825e9cd3e10f56bcb532f79e5e11fb23cad8a79e2dc8e3773df17a1a7a160405160405180910390a350505050565b6110496113d4565b60026040518059106110585750595b90808252806020026020018201604052509050828160008151811061107957fe5b60209081029091010152818160018151811061109157fe5b6020908102909101015292915050565b606554600090819083106110b457600080fd5b60658054849081106110c257fe5b6000918252602082206004909102019250600183015460a060020a900460ff1660028111156110ed57fe5b146110f757600080fd5b60018201805474ff0000000000000000000000000000000000000000191660a060020a17905560665482546003840154600160a060020a0390921691632ee88808919060405160e060020a63ffffffff851602815267ffffffffffffffff90921660048301526024820152604401600060405180830381600087803b151561117e57600080fd5b6102c65a03f1151561118f57600080fd5b505050600282015460018301546003840154600160a060020a039283169350839263a9059cbb92169060006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561120457600080fd5b6102c65a03f1151561121557600080fd5b50505060405180519050151561122a57600080fd5b8154837f68e9e9dd08fe773726352a12c1cec4763a63f382fbd288ce782eb77ef2da49de60405160405180910390a3505050565b600080600160a060020a038316151561127a5760009150611285565b823b90506000811191505b50919050565b6112936113d4565b600060016040518059106112a45750595b9080825280602002602001820160405250915082905080826000815181106112c857fe5b6020908102909101015250919050565b600354156112e557600080fd5b6112ed6113d0565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561136557600080fd5b6102c65a03f1151561137657600080fd5b50505060405180519250829150505b5090565b6113916113d4565b60016040518059106113a05750595b9080825280602002602001820160405250905081816000815181106113c157fe5b60209081029091010152919050565b4390565b60206040519081016040526000815290565b81548183558181151161091e5760008381526020902061091e9161057a9160049182028101918502015b8082111561138557600080825560018201805474ffffffffffffffffffffffffffffffffffffffffff1916905560028201805473ffffffffffffffffffffffffffffffffffffffff1916905560038201556004016114105600a165627a7a723058206ab5edab256e5464630bb691370e0dff440b2cd2ad475240dea00fbefc69e8440029","runtime_bytecode":"6060604052600436106101455763ffffffff60e060020a600035041663178e6079811461014a57806332f0a3b51461016f5780633baf35fb1461019e5780634ad65a68146101b1578063539854cd146101c457806360b1e057146101d757806374041d1f146101ea5780637e7db6e1146101fd57806380afdea8146102305780638322fff2146102435780638422927d14610256578063866836ff1461026e578063876ca09f1461028157806387d81789146102975780638b3dd749146103085780639b3fdf4c1461031b5780639d4941d81461032e578063a1658fad1461034d578063a4500c33146103b0578063a5426df1146103c8578063b09927a1146103f3578063b796105c14610406578063bbc3282014610424578063c4d66de814610437578063d4aae0c414610456578063f92a79ff14610469578063ffd82d21146104ba575b600080fd5b341561015557600080fd5b61015d6104d8565b60405190815260200160405180910390f35b341561017a57600080fd5b6101826104fc565b604051600160a060020a03909116815260200160405180910390f35b34156101a957600080fd5b61015d61057d565b34156101bc57600080fd5b61015d610583565b34156101cf57600080fd5b61015d6105b7565b34156101e257600080fd5b61015d6105eb565b34156101f557600080fd5b61018261060f565b341561020857600080fd5b61021c600160a060020a036004351661061e565b604051901515815260200160405180910390f35b341561023b57600080fd5b61015d610669565b341561024e57600080fd5b61018261066f565b341561026157600080fd5b61026c600435610674565b005b341561027957600080fd5b61015d610680565b341561028c57600080fd5b61026c6004356106b4565b34156102a257600080fd5b6102ad600435610730565b604051858152600160a060020a0385166020820152604081018460028111156102d257fe5b60ff16815260200183600160a060020a0316600160a060020a031681526020018281526020019550505050505060405180910390f35b341561031357600080fd5b61015d610781565b341561032657600080fd5b61015d610787565b341561033957600080fd5b61026c600160a060020a03600435166107ab565b341561035857600080fd5b61021c60048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061092395505050505050565b34156103bb57600080fd5b61026c6004351515610a61565b34156103d357600080fd5b61015d600435600160a060020a0360243581169060443516606435610afe565b34156103fe57600080fd5b61015d610cc5565b341561041157600080fd5b61026c6004803560248101910135610cf9565b341561042f57600080fd5b61021c610d27565b341561044257600080fd5b61026c600160a060020a0360043516610d30565b341561046157600080fd5b610182610d89565b341561047457600080fd5b61018260046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610d9895505050505050565b34156104c557600080fd5b61026c6004803560248101910135610e74565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a0316151561051457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561055d57600080fd5b6102c65a03f1151561056e57600080fd5b50505060405180519150505b90565b60655490565b6040517f43414e43454c5f5041594d454e545f524f4c45000000000000000000000000008152601301604051809103902081565b6040517f5345545f4155544f5041595f524f4c45000000000000000000000000000000008152601001604051809103902081565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b606654600160a060020a031681565b6000610663336040517f4553434150455f48415443485f43414c4c45525f524f4c4500000000000000008152601801604051809103902061065e85610ea2565b610923565b92915050565b60015481565b600081565b61067d81610ebc565b50565b6040517f434f4e4649524d5f5041594d454e545f524f4c450000000000000000000000008152601401604051809103902081565b60006065828154811015156106c557fe5b90600052602060002090600402019050610718336040517f434f4e4649524d5f5041594d454e545f524f4c450000000000000000000000008152601401604051809103902061065e858560030154611041565b151561072357600080fd5b61072c826110a1565b5050565b606580548290811061073e57fe5b60009182526020909120600490910201805460018201546002830154600390930154919350600160a060020a038082169360a060020a90920460ff169291169085565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806107b78361061e565b15156107c257600080fd5b6107ca6104fc565b91506107d58261125e565b15156107e057600080fd5b600160a060020a03831615156108325781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561082d57600080fd5b61091e565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561088957600080fd5b6102c65a03f1151561089a57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561090257600080fd5b6102c65a03f1151561091357600080fd5b505050604051805150505b505050565b600061092d6113d4565b6000808451111561094657835160200290508391508082525b600054600160a060020a03161580610a57575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156109ed5780820151838201526020016109d5565b50505050905090810190601f168015610a1a5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610a3b57600080fd5b6102c65a03f11515610a4c57600080fd5b505050604051805190505b9695505050505050565b6040517f5345545f4155544f5041595f524f4c450000000000000000000000000000000081526010016040518091039020610a9b8261128b565b610aa6338383610923565b1515610ab157600080fd5b6064805460ff191684151517908190557f2cd164e981e8d4f5a1d624f9b48a50822486372629e8887030fea23424d01a3b9060ff16604051901515815260200160405180910390a1505050565b606654600090819033600160a060020a03908116911614610b1e57600080fd5b5060658054908190610b3390600183016113e6565b506000606582815481101515610b4557fe5b60009182526020909120600160049092020101805474ff0000000000000000000000000000000000000000191660a060020a836002811115610b8357fe5b021790555085606582815481101515610b9857fe5b60009182526020909120600490910201556065805486919083908110610bba57fe5b906000526020600020906004020160010160006101000a815481600160a060020a030219169083600160a060020a0316021790555083606582815481101515610bff57fe5b906000526020600020906004020160020160006101000a815481600160a060020a030219169083600160a060020a0316021790555082606582815481101515610c4457fe5b6000918252602090912060036004909202010155600160a060020a03851686827f7043e72dbe49b97a16440f93a3d5fae7c11d1d2e815d153b68b1060b7bfaabe08787604051600160a060020a03909216825260208201526040908101905180910390a460645460ff1615610cbc57610cbc816110a1565b95945050505050565b6040517f4553434150455f48415443485f43414c4c45525f524f4c4500000000000000008152601801604051809103902081565b60005b8181101561091e57610d1f838383818110610d1357fe5b90506020020135610ebc565b600101610cfc565b60645460ff1681565b60035415610d3d57600080fd5b600160a060020a0381161515610d5257600080fd5b610d5a6112d8565b6066805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a031681565b6000610da26112f2565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610e09578082015183820152602001610df1565b50505050905090810190601f168015610e365780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610e5457600080fd5b6102c65a03f11515610e6557600080fd5b50505060405180519392505050565b60005b8181101561091e57610e9a838383818110610e8e57fe5b905060200201356106b4565b600101610e77565b610eaa6113d4565b61066382600160a060020a0316611389565b60006040517f43414e43454c5f5041594d454e545f524f4c450000000000000000000000000081526013016040518091039020610ef883611389565b610f03338383610923565b1515610f0e57600080fd5b6065548410610f1c57600080fd5b6065805485908110610f2a57fe5b6000918252602082206004909102019350600184015460a060020a900460ff166002811115610f5557fe5b14610f5f57600080fd5b60018301805474ff000000000000000000000000000000000000000019167402000000000000000000000000000000000000000017905560665483546003850154600160a060020a039092169163e9c211e2919060405160e060020a63ffffffff851602815267ffffffffffffffff90921660048301526024820152604401600060405180830381600087803b1515610ff757600080fd5b6102c65a03f1151561100857600080fd5b505083549050847fd3a53825e9cd3e10f56bcb532f79e5e11fb23cad8a79e2dc8e3773df17a1a7a160405160405180910390a350505050565b6110496113d4565b60026040518059106110585750595b90808252806020026020018201604052509050828160008151811061107957fe5b60209081029091010152818160018151811061109157fe5b6020908102909101015292915050565b606554600090819083106110b457600080fd5b60658054849081106110c257fe5b6000918252602082206004909102019250600183015460a060020a900460ff1660028111156110ed57fe5b146110f757600080fd5b60018201805474ff0000000000000000000000000000000000000000191660a060020a17905560665482546003840154600160a060020a0390921691632ee88808919060405160e060020a63ffffffff851602815267ffffffffffffffff90921660048301526024820152604401600060405180830381600087803b151561117e57600080fd5b6102c65a03f1151561118f57600080fd5b505050600282015460018301546003840154600160a060020a039283169350839263a9059cbb92169060006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561120457600080fd5b6102c65a03f1151561121557600080fd5b50505060405180519050151561122a57600080fd5b8154837f68e9e9dd08fe773726352a12c1cec4763a63f382fbd288ce782eb77ef2da49de60405160405180910390a3505050565b600080600160a060020a038316151561127a5760009150611285565b823b90506000811191505b50919050565b6112936113d4565b600060016040518059106112a45750595b9080825280602002602001820160405250915082905080826000815181106112c857fe5b6020908102909101015250919050565b600354156112e557600080fd5b6112ed6113d0565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561136557600080fd5b6102c65a03f1151561137657600080fd5b50505060405180519250829150505b5090565b6113916113d4565b60016040518059106113a05750595b9080825280602002602001820160405250905081816000815181106113c157fe5b60209081029091010152919050565b4390565b60206040519081016040526000815290565b81548183558181151161091e5760008381526020902061091e9161057a9160049182028101918502015b8082111561138557600080825560018201805474ffffffffffffffffffffffffffffffffffffffffff1916905560028201805473ffffffffffffffffffffffffffffffffffffffff1916905560038201556004016114105600a165627a7a723058206ab5edab256e5464630bb691370e0dff440b2cd2ad475240dea00fbefc69e8440029","real_runtime_bytecode":"6060604052600436106101455763ffffffff60e060020a600035041663178e6079811461014a57806332f0a3b51461016f5780633baf35fb1461019e5780634ad65a68146101b1578063539854cd146101c457806360b1e057146101d757806374041d1f146101ea5780637e7db6e1146101fd57806380afdea8146102305780638322fff2146102435780638422927d14610256578063866836ff1461026e578063876ca09f1461028157806387d81789146102975780638b3dd749146103085780639b3fdf4c1461031b5780639d4941d81461032e578063a1658fad1461034d578063a4500c33146103b0578063a5426df1146103c8578063b09927a1146103f3578063b796105c14610406578063bbc3282014610424578063c4d66de814610437578063d4aae0c414610456578063f92a79ff14610469578063ffd82d21146104ba575b600080fd5b341561015557600080fd5b61015d6104d8565b60405190815260200160405180910390f35b341561017a57600080fd5b6101826104fc565b604051600160a060020a03909116815260200160405180910390f35b34156101a957600080fd5b61015d61057d565b34156101bc57600080fd5b61015d610583565b34156101cf57600080fd5b61015d6105b7565b34156101e257600080fd5b61015d6105eb565b34156101f557600080fd5b61018261060f565b341561020857600080fd5b61021c600160a060020a036004351661061e565b604051901515815260200160405180910390f35b341561023b57600080fd5b61015d610669565b341561024e57600080fd5b61018261066f565b341561026157600080fd5b61026c600435610674565b005b341561027957600080fd5b61015d610680565b341561028c57600080fd5b61026c6004356106b4565b34156102a257600080fd5b6102ad600435610730565b604051858152600160a060020a0385166020820152604081018460028111156102d257fe5b60ff16815260200183600160a060020a0316600160a060020a031681526020018281526020019550505050505060405180910390f35b341561031357600080fd5b61015d610781565b341561032657600080fd5b61015d610787565b341561033957600080fd5b61026c600160a060020a03600435166107ab565b341561035857600080fd5b61021c60048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061092395505050505050565b34156103bb57600080fd5b61026c6004351515610a61565b34156103d357600080fd5b61015d600435600160a060020a0360243581169060443516606435610afe565b34156103fe57600080fd5b61015d610cc5565b341561041157600080fd5b61026c6004803560248101910135610cf9565b341561042f57600080fd5b61021c610d27565b341561044257600080fd5b61026c600160a060020a0360043516610d30565b341561046157600080fd5b610182610d89565b341561047457600080fd5b61018260046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610d9895505050505050565b34156104c557600080fd5b61026c6004803560248101910135610e74565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60008054600160a060020a0316151561051457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561055d57600080fd5b6102c65a03f1151561056e57600080fd5b50505060405180519150505b90565b60655490565b6040517f43414e43454c5f5041594d454e545f524f4c45000000000000000000000000008152601301604051809103902081565b6040517f5345545f4155544f5041595f524f4c45000000000000000000000000000000008152601001604051809103902081565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b606654600160a060020a031681565b6000610663336040517f4553434150455f48415443485f43414c4c45525f524f4c4500000000000000008152601801604051809103902061065e85610ea2565b610923565b92915050565b60015481565b600081565b61067d81610ebc565b50565b6040517f434f4e4649524d5f5041594d454e545f524f4c450000000000000000000000008152601401604051809103902081565b60006065828154811015156106c557fe5b90600052602060002090600402019050610718336040517f434f4e4649524d5f5041594d454e545f524f4c450000000000000000000000008152601401604051809103902061065e858560030154611041565b151561072357600080fd5b61072c826110a1565b5050565b606580548290811061073e57fe5b60009182526020909120600490910201805460018201546002830154600390930154919350600160a060020a038082169360a060020a90920460ff169291169085565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806107b78361061e565b15156107c257600080fd5b6107ca6104fc565b91506107d58261125e565b15156107e057600080fd5b600160a060020a03831615156108325781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561082d57600080fd5b61091e565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561088957600080fd5b6102c65a03f1151561089a57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561090257600080fd5b6102c65a03f1151561091357600080fd5b505050604051805150505b505050565b600061092d6113d4565b6000808451111561094657835160200290508391508082525b600054600160a060020a03161580610a57575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156109ed5780820151838201526020016109d5565b50505050905090810190601f168015610a1a5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610a3b57600080fd5b6102c65a03f11515610a4c57600080fd5b505050604051805190505b9695505050505050565b6040517f5345545f4155544f5041595f524f4c450000000000000000000000000000000081526010016040518091039020610a9b8261128b565b610aa6338383610923565b1515610ab157600080fd5b6064805460ff191684151517908190557f2cd164e981e8d4f5a1d624f9b48a50822486372629e8887030fea23424d01a3b9060ff16604051901515815260200160405180910390a1505050565b606654600090819033600160a060020a03908116911614610b1e57600080fd5b5060658054908190610b3390600183016113e6565b506000606582815481101515610b4557fe5b60009182526020909120600160049092020101805474ff0000000000000000000000000000000000000000191660a060020a836002811115610b8357fe5b021790555085606582815481101515610b9857fe5b60009182526020909120600490910201556065805486919083908110610bba57fe5b906000526020600020906004020160010160006101000a815481600160a060020a030219169083600160a060020a0316021790555083606582815481101515610bff57fe5b906000526020600020906004020160020160006101000a815481600160a060020a030219169083600160a060020a0316021790555082606582815481101515610c4457fe5b6000918252602090912060036004909202010155600160a060020a03851686827f7043e72dbe49b97a16440f93a3d5fae7c11d1d2e815d153b68b1060b7bfaabe08787604051600160a060020a03909216825260208201526040908101905180910390a460645460ff1615610cbc57610cbc816110a1565b95945050505050565b6040517f4553434150455f48415443485f43414c4c45525f524f4c4500000000000000008152601801604051809103902081565b60005b8181101561091e57610d1f838383818110610d1357fe5b90506020020135610ebc565b600101610cfc565b60645460ff1681565b60035415610d3d57600080fd5b600160a060020a0381161515610d5257600080fd5b610d5a6112d8565b6066805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a031681565b6000610da26112f2565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610e09578082015183820152602001610df1565b50505050905090810190601f168015610e365780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610e5457600080fd5b6102c65a03f11515610e6557600080fd5b50505060405180519392505050565b60005b8181101561091e57610e9a838383818110610e8e57fe5b905060200201356106b4565b600101610e77565b610eaa6113d4565b61066382600160a060020a0316611389565b60006040517f43414e43454c5f5041594d454e545f524f4c450000000000000000000000000081526013016040518091039020610ef883611389565b610f03338383610923565b1515610f0e57600080fd5b6065548410610f1c57600080fd5b6065805485908110610f2a57fe5b6000918252602082206004909102019350600184015460a060020a900460ff166002811115610f5557fe5b14610f5f57600080fd5b60018301805474ff000000000000000000000000000000000000000019167402000000000000000000000000000000000000000017905560665483546003850154600160a060020a039092169163e9c211e2919060405160e060020a63ffffffff851602815267ffffffffffffffff90921660048301526024820152604401600060405180830381600087803b1515610ff757600080fd5b6102c65a03f1151561100857600080fd5b505083549050847fd3a53825e9cd3e10f56bcb532f79e5e11fb23cad8a79e2dc8e3773df17a1a7a160405160405180910390a350505050565b6110496113d4565b60026040518059106110585750595b90808252806020026020018201604052509050828160008151811061107957fe5b60209081029091010152818160018151811061109157fe5b6020908102909101015292915050565b606554600090819083106110b457600080fd5b60658054849081106110c257fe5b6000918252602082206004909102019250600183015460a060020a900460ff1660028111156110ed57fe5b146110f757600080fd5b60018201805474ff0000000000000000000000000000000000000000191660a060020a17905560665482546003840154600160a060020a0390921691632ee88808919060405160e060020a63ffffffff851602815267ffffffffffffffff90921660048301526024820152604401600060405180830381600087803b151561117e57600080fd5b6102c65a03f1151561118f57600080fd5b505050600282015460018301546003840154600160a060020a039283169350839263a9059cbb92169060006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561120457600080fd5b6102c65a03f1151561121557600080fd5b50505060405180519050151561122a57600080fd5b8154837f68e9e9dd08fe773726352a12c1cec4763a63f382fbd288ce782eb77ef2da49de60405160405180910390a3505050565b600080600160a060020a038316151561127a5760009150611285565b823b90506000811191505b50919050565b6112936113d4565b600060016040518059106112a45750595b9080825280602002602001820160405250915082905080826000815181106112c857fe5b6020908102909101015250919050565b600354156112e557600080fd5b6112ed6113d0565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561136557600080fd5b6102c65a03f1151561137657600080fd5b50505060405180519250829150505b5090565b6113916113d4565b60016040518059106113a05750595b9080825280602002602001820160405250905081816000815181106113c157fe5b60209081029091010152919050565b4390565b60206040519081016040526000815290565b81548183558181151161091e5760008381526020902061091e9161057a9160049182028101918502015b8082111561138557600080825560018201805474ffffffffffffffffffffffffffffffffffffffffff1916905560028201805473ffffffffffffffffffffffffffffffffffffffff1916905560038201556004016114105600a165627a7a72305820","swarm_hash":"6ab5edab256e5464630bb691370e0dff440b2cd2ad475240dea00fbefc69e844","gas_estimates":{"creation":{"codeDepositCost":"1053800","executionCost":"1089","totalCost":"1054889"},"external":{"APP_ADDR_NAMESPACE()":"236","CANCEL_PAYMENT_ROLE()":"374","CONFIRM_PAYMENT_ROLE()":"550","ESCAPE_HATCH_CALLER_ROLE()":"748","ETH()":"512","EVMSCRIPT_REGISTRY_APP()":"566","EVMSCRIPT_REGISTRY_APP_ID()":"346","SET_AUTOPAY_ROLE()":"396","allowRecoverability(address)":"infinite","appId()":"612","authorizePayment(bytes32,address,address,uint256)":"infinite","autoPay()":"932","canPerform(address,bytes32,uint256[])":"infinite","cancelPayment(uint256)":"infinite","confirmPayment(uint256)":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"744","getRecoveryVault()":"infinite","initialize(address)":"41683","kernel()":"1117","liquidPledging()":"721","multiCancel(uint256[])":"infinite","multiConfirm(uint256[])":"infinite","nPayments()":"480","payments(uint256)":"2198","setAutopay(bool)":"infinite","transferToVault(address)":"infinite"},"internal":{"_doCancelPayment(uint256)":"infinite","_doConfirmPayment(uint256)":"infinite"}},"function_hashes":{"APP_ADDR_NAMESPACE()":"178e6079","CANCEL_PAYMENT_ROLE()":"4ad65a68","CONFIRM_PAYMENT_ROLE()":"866836ff","ESCAPE_HATCH_CALLER_ROLE()":"b09927a1","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","SET_AUTOPAY_ROLE()":"539854cd","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","authorizePayment(bytes32,address,address,uint256)":"a5426df1","autoPay()":"bbc32820","canPerform(address,bytes32,uint256[])":"a1658fad","cancelPayment(uint256)":"8422927d","confirmPayment(uint256)":"876ca09f","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getRecoveryVault()":"32f0a3b5","initialize(address)":"c4d66de8","kernel()":"d4aae0c4","liquidPledging()":"74041d1f","multiCancel(uint256[])":"b796105c","multiConfirm(uint256[])":"ffd82d21","nPayments()":"3baf35fb","payments(uint256)":"87d81789","setAutopay(bool)":"a4500c33","transferToVault(address)":"9d4941d8"},"abi":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x178e6079"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x32f0a3b5"},{"constant":true,"inputs":[],"name":"nPayments","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x3baf35fb"},{"constant":true,"inputs":[],"name":"CANCEL_PAYMENT_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x4ad65a68"},{"constant":true,"inputs":[],"name":"SET_AUTOPAY_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x539854cd"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x60b1e057"},{"constant":true,"inputs":[],"name":"liquidPledging","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x74041d1f"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x7e7db6e1"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x80afdea8"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8322fff2"},{"constant":false,"inputs":[{"name":"_idPayment","type":"uint256"}],"name":"cancelPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x8422927d"},{"constant":true,"inputs":[],"name":"CONFIRM_PAYMENT_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x866836ff"},{"constant":false,"inputs":[{"name":"_idPayment","type":"uint256"}],"name":"confirmPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x876ca09f"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"payments","outputs":[{"name":"ref","type":"bytes32"},{"name":"dest","type":"address"},{"name":"state","type":"uint8"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x87d81789"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8b3dd749"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x9b3fdf4c"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x9d4941d8"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xa1658fad"},{"constant":false,"inputs":[{"name":"_automatic","type":"bool"}],"name":"setAutopay","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa4500c33"},{"constant":false,"inputs":[{"name":"_ref","type":"bytes32"},{"name":"_dest","type":"address"},{"name":"_token","type":"address"},{"name":"_amount","type":"uint256"}],"name":"authorizePayment","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa5426df1"},{"constant":true,"inputs":[],"name":"ESCAPE_HATCH_CALLER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xb09927a1"},{"constant":false,"inputs":[{"name":"_idPayments","type":"uint256[]"}],"name":"multiCancel","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xb796105c"},{"constant":true,"inputs":[],"name":"autoPay","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xbbc32820"},{"constant":false,"inputs":[{"name":"_liquidPledging","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xc4d66de8"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xd4aae0c4"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xf92a79ff"},{"constant":false,"inputs":[{"name":"_idPayments","type":"uint256[]"}],"name":"multiConfirm","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xffd82d21"},{"anonymous":false,"inputs":[{"indexed":false,"name":"autoPay","type":"bool"}],"name":"AutoPaySet","type":"event","signature":"0x2cd164e981e8d4f5a1d624f9b48a50822486372629e8887030fea23424d01a3b"},{"anonymous":false,"inputs":[{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"EscapeFundsCalled","type":"event","signature":"0x4ccddcd1a4e33721aee316370fb3e014294985be0755a68c88009b31e1dc4ae3"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idPayment","type":"uint256"},{"indexed":true,"name":"ref","type":"bytes32"}],"name":"ConfirmPayment","type":"event","signature":"0x68e9e9dd08fe773726352a12c1cec4763a63f382fbd288ce782eb77ef2da49de"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idPayment","type":"uint256"},{"indexed":true,"name":"ref","type":"bytes32"}],"name":"CancelPayment","type":"event","signature":"0xd3a53825e9cd3e10f56bcb532f79e5e11fb23cad8a79e2dc8e3773df17a1a7a1"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idPayment","type":"uint256"},{"indexed":true,"name":"ref","type":"bytes32"},{"indexed":true,"name":"dest","type":"address"},{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"AuthorizePayment","type":"event","signature":"0x7043e72dbe49b97a16440f93a3d5fae7c11d1d2e815d153b68b1060b7bfaabe0"}]}; +let LPVault = new EmbarkJS.Blockchain.Contract(LPVaultJSONConfig); +export default LPVault; diff --git a/abi/contracts/LiquidPledging.js b/abi/contracts/LiquidPledging.js new file mode 100644 index 0000000..8fe5ad5 --- /dev/null +++ b/abi/contracts/LiquidPledging.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let LiquidPledgingJSONConfig = {"contract_name":{"className":"LiquidPledging","args":[],"code":"60606040526069805460ff19169055341561001957600080fd5b615218806100286000396000f3006060604052600436106102415763ffffffff60e060020a6000350416627611c68114610246578063178e60791461027c5780631c8e8568146102a15780632101a6ad146102c857806324fea3b0146102e75780632a8ec8cc146102fa5780632ee888081461030d5780632f6b64ca1461032f57806332ce8ebc146103eb57806332f0a3b51461040957806338740291146104385780633f657a461461045057806343387983146104de57806347c5ef43146105005780634c4316c71461052f5780634eafbcd51461056357806350f8a8031461058257806352dc7dcc146105bd5780635503d9ba146105ff57806357adafb61461061257806360b1e057146106615780636293c702146106745780636ba3cc87146106935780636e802c6a146106c157806372116e921461077b578063796d5654146107cc57806379f4542e146107eb5780637e7db6e11461080a5780637f61fa931461082957806380afdea81461086b57806381ea44081461087e5780638322fff21461089d5780638b3dd749146108b05780639b3fdf4c146108c35780639d4941d8146108d6578063a1658fad146108f5578063af9f456314610958578063b12b5f761461097a578063c4d66de814610990578063c8ae070f146109af578063cc19ecf7146109c5578063ce17273c14610a11578063d4aae0c414610a60578063d639cd7314610a73578063db7c231414610adb578063e9c211e214610b27578063eba8ba0614610b49578063f6b24b1c14610c9f578063f92a79ff14610ceb578063fbfa77cf14610d3c575b600080fd5b341561025157600080fd5b61027a6001604060020a0360043516600160a060020a0360243581169060443516606435610d4f565b005b341561028757600080fd5b61028f610daa565b60405190815260200160405180910390f35b34156102ac57600080fd5b6102b4610dce565b604051901515815260200160405180910390f35b34156102d357600080fd5b6102b46001604060020a0360043516610dd7565b34156102f257600080fd5b61028f610e79565b341561030557600080fd5b61028f610e9b565b341561031857600080fd5b61027a6001604060020a0360043516602435610ea6565b341561033a57600080fd5b6103546001604060020a0360043581169060243516610fda565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103ae578082015183820152602001610396565b50505050905090810190601f1680156103db5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34156103f657600080fd5b61027a6004803560248101910135611108565b341561041457600080fd5b61041c61119c565b604051600160a060020a03909116815260200160405180910390f35b341561044357600080fd5b61027a600435151561121c565b341561045b57600080fd5b61046f6001604060020a0360043516611282565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104c357fe5b60ff1681526020019850505050505050505060405180910390f35b34156104e957600080fd5b61027a6001604060020a03600435166024356113ff565b341561050b57600080fd5b61027a6001604060020a0360043581169060243581169060443590606435166115e6565b341561053a57600080fd5b61027a6001604060020a0360043581169060243516600160a060020a03604435166064356115fb565b341561056e57600080fd5b6102b4600160a060020a0360043516611792565b341561058d57600080fd5b6105a16001604060020a0360043516611809565b6040516001604060020a03909116815260200160405180910390f35b34156105c857600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166119fe565b341561060a57600080fd5b61028f611c8b565b341561061d57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611c9595505050505050565b341561066c57600080fd5b61028f611d00565b341561067f57600080fd5b61027a600160a060020a0360043516611d24565b341561069e57600080fd5b61027a6001604060020a0360043516600160a060020a0360243516604435611d85565b34156106cc57600080fd5b6105a160048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611d96915050565b341561078657600080fd5b6105a16024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612003565b34156107d757600080fd5b61027a6001604060020a03600435166124b0565b34156107f657600080fd5b61027a600160a060020a036004351661251a565b341561081557600080fd5b6102b4600160a060020a0360043516612592565b341561083457600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516612598565b341561087657600080fd5b61028f612614565b341561088957600080fd5b61028f600160a060020a036004351661261a565b34156108a857600080fd5b61041c61269c565b34156108bb57600080fd5b61028f6126a1565b34156108ce57600080fd5b61028f6126a7565b34156108e157600080fd5b61027a600160a060020a03600435166126cb565b341561090057600080fd5b6102b460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061284295505050505050565b341561096357600080fd5b61027a6001604060020a0360043516602435612980565b341561098557600080fd5b61027a600435612a15565b341561099b57600080fd5b61027a600160a060020a0360043516612a6d565b34156109ba57600080fd5b61027a600435612ad6565b34156109d057600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b45565b3415610a1c57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4e95505050505050565b3415610a6b57600080fd5b61041c612c81565b3415610a7e57600080fd5b61027a600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c90915050565b3415610ae657600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d05565b3415610b3257600080fd5b61027a6001604060020a0360043516602435612e0e565b3415610b5457600080fd5b610b686001604060020a0360043516612f36565b60405180896002811115610b7857fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610bf9578082015183820152602001610be1565b50505050905090810190601f168015610c265780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c5c578082015183820152602001610c44565b50505050905090810190601f168015610c895780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610caa57600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613105565b3415610cf657600080fd5b61041c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061320e95505050505050565b3415610d4757600080fd5b61041c6132ea565b6000600160a060020a0384161515610d6657600080fd5b610d95846020604051908101604052806000815250602060405190810160405260008082526203f48090611d96565b9050610da3818685856115fb565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610de3836132fe565b90506000815460ff166002811115610df757fe5b1415610e065760009150610e73565b6002815460ff166002811115610e1857fe5b14610e1f57fe5b6001810154604060020a900460ff1615610e3c5760019150610e73565b60018101546001604060020a03161515610e595760009150610e73565b6001810154610e70906001604060020a0316610dd7565b91505b50919050565b6040516000805160206151ad8339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610ecb57600080fd5b610ed484613344565b91506001600383015460a060020a900460ff166002811115610ef257fe5b14610efc57600080fd5b6002820154600183018054610fc7926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610f8f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f4c5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613375565b9050610fd4848285613697565b50505050565b600080610fe5614df8565b600080610ff187613344565b915081600101600187036001604060020a031681548110151561101057fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450611044856132fe565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110f85780601f106110cd576101008083540402835291602001916110f8565b820191906000526020600020905b8154815290600101906020018083116110db57829003601f168201915b5050505050925050509250925092565b60006040516000805160206151ad833981519152815260130160405180910390206111533382600060405180591061113d5750595b9080825280602002602001820160405250612842565b151561115e57600080fd5b600091505b60ff821683901015610fd457611191848460ff851681811061118157fe5b9050602002013560001916612ad6565b600190910190611163565b60008054600160a060020a031615156111b457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111fd57600080fd5b6102c65a03f1151561120e57600080fd5b505050604051805191505090565b6040516000805160206151ad833981519152815260130160405180910390206112643382600060405180591061113d5750599080825280602002602001820160405250612842565b151561126f57600080fd5b506069805460ff19169115919091179055565b600080600080600080600080611296614e0a565b61129f8a613344565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561133757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116112f45790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ad57fe5b60028111156113b857fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061140d85611809565b945061141885613344565b92506000600384015460a060020a900460ff16600281111561143657fe5b1461144057600080fd5b6002830154611457906001604060020a031661376b565b600283015460018401805461151f926001604060020a031691906020808202016040519081016040528092919081815260200182805480156114ea57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114a75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613375565b915061152c858386613697565b6002830154611543906001604060020a03166132fe565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b15156115cb57600080fd5b6102c65a03f115156115dc57600080fd5b5050505050505050565b6115ef8461376b565b610fd4848484846137c2565b600080806001604060020a03871681901161161557600080fd5b6000841161162257600080fd5b600160a060020a038516151561163757600080fd5b611640876132fe565b92506000835460ff16600281111561165457fe5b1461165e57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156116d457600080fd5b6102c65a03f115156116e557600080fd5b5050506040518051905015156116fa57600080fd5b61172b87600060405180591061170d5750595b908082528060200260200182016040525060008060008a6000613375565b915061173682613344565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a3611789878386896137c2565b50505050505050565b606954600090819060ff16806117af5750600160a060020a038316155b156117bd5760019150610e73565b600160a060020a03831660009081526068602052604090205460ff16156117e75760019150610e73565b6117f08361261a565b60009081526067602052604090205460ff169392505050565b60008060008061181885613344565b92506000600384015460a060020a900460ff16600281111561183657fe5b14611843578493506119f6565b60028301546000604060020a9091046001604060020a031611801561188257506002830154608060020a90046001604060020a0316611880613e19565b115b156119c557600283015460018401805461194e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116118d75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b60028401549092506119a590604060020a90046001604060020a031660006040518059106119795750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b90506119b685828560000154613697565b8094506119c285613344565b92505b6119ce85613e1d565b90506001604060020a03808216908616146119f2576119f285828560000154613697565b8093505b505050919050565b6000611a0982611792565b1515611a1457600080fd5b5060648054908160018101611a298382614e56565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b1a57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0b929160200190614e82565b5060e082015181600301908051611c26929160200190614e82565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015610fd4576001604060020a03848481518110611cb757fe5b90602001906020020151169150604060020a848481518110611cd557fe5b90602001906020020151811515611ce857fe5b049050611cf582826113ff565b600190920191611c9a565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206151ad83398151915281526013016040518091039020611d4c82613ee5565b611d57338383612842565b1515611d6257600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611d9183338484610d4f565b505050565b6000611da182611792565b1515611dac57600080fd5b5060648054908160018101611dc18382614e56565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e3e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f2f929160200190614e82565b5060e082015181600301908051611f4a929160200190614e82565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fc0578082015183820152602001611fa8565b50505050905090810190601f168015611fed5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061200f83611792565b151561201a57600080fd5b6001604060020a0385161561223757612032856132fe565b90506014612224826101006040519081016040528154909190829060ff16600281111561205b57fe5b600281111561206657fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121745780601f1061214957610100808354040283529160200191612174565b820191906000526020600020905b81548152906001019060200180831161215757829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122165780601f106121eb57610100808354040283529160200191612216565b820191906000526020600020905b8154815290600101906020018083116121f957829003601f168201915b505050505081525050613f05565b6001604060020a03161061223757600080fd5b606480549250826001810161224c8382614e56565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561233c57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161242d929160200190614e82565b5060e082015181600301908051612448929160200190614e82565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124bb826132fe565b90506124c68261376b565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b6040516000805160206151ad833981519152815260130160405180910390206125623382600060405180591061113d5750599080825280602002602001820160405250612842565b151561256d57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126093388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611d96565b979650505050505050565b60015481565b6000612624614df8565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126685780518252601f199092019160209182019101612649565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806126d783612592565b15156126e257600080fd5b6126ea61119c565b91506126f582613f79565b151561270057600080fd5b600160a060020a03831615156127525781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561274d57600080fd5b611d91565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127a957600080fd5b6102c65a03f115156127ba57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561282257600080fd5b6102c65a03f1151561283357600080fd5b50505060405180515050505050565b600061284c614df8565b6000808451111561286557835160200290508391508082525b600054600160a060020a03161580612976575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561290c5780820151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561295a57600080fd5b6102c65a03f1151561296b57600080fd5b505050604051805190505b9695505050505050565b60008061298c84611809565b935061299784613344565b600281015490925060c060020a90046001604060020a031615156129ba57600080fd5b6000600383015460a060020a900460ff1660028111156129d657fe5b146129e057600080fd5b60028201546129f7906001604060020a031661376b565b6002820154610fc79060c060020a90046001604060020a0316613e1d565b6040516000805160206151ad83398151915281526013016040518091039020612a3d82613f9f565b612a48338383612842565b1515612a5357600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612a7a57600080fd5b600160a060020a0381161515612a8f57600080fd5b612a97613fb0565b6069805461010060a860020a031916610100600160a060020a038416021790556001612ac4606482614e56565b506001612ad2606582614efc565b5050565b6040516000805160206151ad83398151915281526013016040518091039020612b1e3382600060405180591061113d5750599080825280602002602001820160405250612842565b1515612b2957600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b50886132fe565b805490915033600160a060020a039081166101009092041614612b7257600080fd5b6001815460ff166002811115612b8457fe5b14612b8e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bba600282018787614f28565b50612bc9600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612ad257612c78828281518110612c6957fe5b90602001906020020151611809565b50600101612c51565b600054600160a060020a031681565b600080805b8451831015612cfd576001604060020a03858481518110612cb257fe5b90602001906020020151169150604060020a858481518110612cd057fe5b90602001906020020151811515612ce357fe5b049050612cf2868383876115e6565b600190920191612c95565b505050505050565b6000612d10886132fe565b805490915033600160a060020a039081166101009092041614612d3257600080fd5b6000815460ff166002811115612d4457fe5b14612d4e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7a600282018787614f28565b50612d89600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3357600080fd5b612e3c84613344565b91506001600383015460a060020a900460ff166002811115612e5a57fe5b14612e6457600080fd5b6002820154600183018054612f2b926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb45790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b9050610fc781611809565b600080612f41614df8565b612f49614df8565b6000806000806000612f5a8a6132fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f8201819004810201604051908101604052809291908181526020018280546001816001161561010002031660029004801561300f5780601f10612fe45761010080835404028352916020019161300f565b820191906000526020600020905b815481529060010190602001808311612ff257829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130ae5780601f10613083576101008083540402835291602001916130ae565b820191906000526020600020905b81548152906001019060200180831161309157829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000613110886132fe565b805490915033600160a060020a03908116610100909204161461313257600080fd5b6002815460ff16600281111561314457fe5b1461314e57600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317a600282018787614f28565b50613189600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000613218613fca565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561327f578082015183820152602001613267565b50505050905090810190601f1680156132ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132ca57600080fd5b6102c65a03f115156132db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331857600080fd5b606480546001604060020a03841690811061332f57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061335e57600080fd5b606580546001604060020a03841690811061332f57fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133ae578082015183820152602001613396565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341857fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134825780925061368a565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c28382614efc565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354357fe5b905291905081518155602082015181600101908051613566929160200190614f96565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561367e57fe5b02179055505050508092505b5050979650505050505050565b60008060006136a96001878787614061565b9250846001604060020a0316866001604060020a031614156136ca57612cfd565b8215156136d657612cfd565b6136df86613344565b91506136ea85613344565b8254909150839010156136fc57600080fd5b81548390038255805483018082558390101561371757600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117896000878786614061565b6000613776826132fe565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b75750805433600160a060020a0390811661010090920416145b1515612ad257600080fd5b600080808080806001604060020a0387168190116137df57600080fd5b6137e889611809565b98506137f389613344565b95506137fe876132fe565b94506000600387015460a060020a900460ff16600281111561381c57fe5b1461382657600080fd5b60028601546001604060020a038b811691161415613b21576000855460ff16600281111561385057fe5b141561386657613861898989614087565b613e0d565b6002855460ff16600281111561387857fe5b1415613889576138618989896140e1565b6001855460ff16600281111561389b57fe5b1415613b1f576139c7866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fa5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b60028111156139be57fe5b9052508861431f565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fa57506001604060020a038414155b15613b0057600186015460001901841415613ae3576002860154600187018054613ad6926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa257602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a5f5790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b925061386189848a613697565b613afa89896001848a600101805490500303614385565b50613e0d565b613b1289898860010180549050614385565b985061386189898961448f565bfe5b613c478661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbd57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7a5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3357fe5b6002811115613c3e57fe5b9052508b61431f565b6001604060020a0390811692508214613b1f576000855460ff166002811115613c6c57fe5b1415613c9d5760028601546001604060020a03888116911614613c8b57fe5b613afa89898860010180549050614385565b6001855460ff166002811115613caf57fe5b1415613dd157613d9c866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fa575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b6001604060020a039081169150811480613db557508181115b15613ae357613b1289896001858a600101805490500303614385565b6002855460ff166002811115613de357fe5b1415613b1f57613e0089896001858a600101805490500303614385565b98506138618989896145bf565b50505050505050505050565b4290565b600080806001604060020a0384161515613e3a5760009250613ede565b613e4384613344565b6002810154909250613e5d906001604060020a03166132fe565b90506000815460ff166002811115613e7157fe5b1415613e7f57839250613ede565b6002815460ff166002811115613e9157fe5b14613e9857fe5b6002820154613eaf906001604060020a0316610dd7565b1515613ebd57839250613ede565b6002820154613edb9060c060020a90046001604060020a0316613e1d565b92505b5050919050565b613eed614df8565b613eff82600160a060020a03166148d2565b92915050565b600080600283516002811115613f1757fe5b14613f1e57fe5b82606001516001604060020a03161515613f3b5760019150610e73565b613f4883606001516132fe565b9050613f6f816101006040519081016040528154909190829060ff16600281111561205b57fe5b6001019392505050565b600080600160a060020a0383161515613f955760009150610e73565b50506000903b1190565b613fa7614df8565b613eff826148d2565b60035415613fbd57600080fd5b613fc5614919565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561403d57600080fd5b6102c65a03f1151561404e57600080fd5b50505060405180519250829150505b5090565b8061406f858580868561491d565b905061407e858486868561491d565b95945050505050565b60008061409385613344565b91506140d48360006040518059106140a85750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613375565b9050610da3858286613697565b60008060006140ef86613344565b92506014614218846101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161414c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b600281111561421057fe5b905250614a85565b1061422257600080fd5b61422b84610dd7565b1561423557600080fd5b60028301546001840180546142d2926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57600091825260209182902080546001604060020a031684529082028301929091600891018084116118d75750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613375565b91506143128460006040518059106119795750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b9050612cfd868287613697565b6000805b83602001515181101561437357826001604060020a03168460200151828151811061434a57fe5b906020019060200201516001604060020a0316141561436b5780915061437e565b600101614323565b6001604060020a0391505b5092915050565b600080614390614df8565b600061439b87613344565b60018101549093508590036040518059106143b35750595b90808252806020026020018201604052509150600090505b600183015485900381101561443e57600183018054829081106143ea57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061441f57fe5b6001604060020a039092166020928302909101909101526001016143cb565b60028301546003840154614478916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613375565b9350614485878588613697565b5050509392505050565b6000614499614df8565b6000806144a587613344565b6001810154909450600a90106144ba57600080fd5b600180850154016040518059106144ce5750595b90808252806020026020018201604052509250600091505b6001840154821015614559576001840180548390811061450257fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061453757fe5b6001604060020a039092166020928302909101909101526001909101906144e6565b6001840154859084908151811061456c57fe5b6001604060020a0392831660209182029092010152600285015460038601546145b292828116928792600092839260c060020a90041690600160a060020a031682613375565b9050611789878288613697565b6000806145cb85613344565b915060146146b6836101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b106146c057600080fd5b6146c983610dd7565b156146d357600080fd5b60028201546001830180546140d4926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561476657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147235790505b505050505085614891866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561480857602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147c55790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561487e57fe5b600281111561488957fe5b905250614b9b565b6001604060020a03166148a2613e19565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613375565b6148da614df8565b60016040518059106148e95750595b90808252806020026020018201604052509050818160008151811061490a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a03161461494457610100614947565b60005b61ffff16925084935061495988613344565b6002810154600382015491935061498b918b916001604060020a0316908a908a908890600160a060020a03168a614c33565b9350600090505b60018201546001604060020a0382161015614a1e57614a148983600101836001604060020a03168154811015156149c557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c33565b9350600101614992565b60028201546000604060020a9091046001604060020a03161115614a795760028201546003830154614a76918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c33565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614aa55760009150610e73565b614ab28360a00151613344565b9050613f6f816101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b6000806000614bad84604001516132fe565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ede57614bf784602001518281518110614be857fe5b906020019060200201516132fe565b80549092506001604060020a0380851660a860020a909204161115614c2b57815460a860020a90046001604060020a031692505b600101614bc8565b80600080614c40896132fe565b600181015490915069010000000000000000009004600160a060020a031615801590614c6c5750600083115b1561368a578915614d4457600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d1357600080fd5b6102c65a03f11515614d2457600080fd5b505050604051805192505082821115614d3c57600080fd5b81925061368a565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614dd757600080fd5b6102c65a03f11515614de857600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e26614df8565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611d9157600402816004028360005260206000209182019101611d91919061504a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614ec357805160ff1916838001178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578251825591602001919060010190614ed5565b5061405d9291506150b1565b815481835581811511611d9157600402816004028360005260206000209182019101611d9191906150cb565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f695782800160ff19823516178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578235825591602001919060010190614f7b565b8280548282559060005260206000209060030160049004810192821561503e5791602002820160005b8382111561500957835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302614fbf565b801561503c5782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615009565b505b5061405d92915061511b565b610ea391905b8082111561405d5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061509a6002830182615140565b6150a8600383016000615140565b50600401615050565b610ea391905b8082111561405d57600081556001016150b7565b610ea391905b8082111561405d5760008082556150eb6001830182615187565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff191690556004016150d1565b610ea391905b8082111561405d57805467ffffffffffffffff19168155600101615121565b50805460018160011615610100020316600290046000825580601f106151665750615184565b601f01602090049060005260206000209081019061518491906150b1565b50565b50805460008255600301600490049060005260206000209081019061518491906150b15600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820ed1eacae6750bb2e266a5f861872a813708ecd94e8e2f531e86e5b01327a4c7d0029","runtimeBytecode":"6060604052600436106102415763ffffffff60e060020a6000350416627611c68114610246578063178e60791461027c5780631c8e8568146102a15780632101a6ad146102c857806324fea3b0146102e75780632a8ec8cc146102fa5780632ee888081461030d5780632f6b64ca1461032f57806332ce8ebc146103eb57806332f0a3b51461040957806338740291146104385780633f657a461461045057806343387983146104de57806347c5ef43146105005780634c4316c71461052f5780634eafbcd51461056357806350f8a8031461058257806352dc7dcc146105bd5780635503d9ba146105ff57806357adafb61461061257806360b1e057146106615780636293c702146106745780636ba3cc87146106935780636e802c6a146106c157806372116e921461077b578063796d5654146107cc57806379f4542e146107eb5780637e7db6e11461080a5780637f61fa931461082957806380afdea81461086b57806381ea44081461087e5780638322fff21461089d5780638b3dd749146108b05780639b3fdf4c146108c35780639d4941d8146108d6578063a1658fad146108f5578063af9f456314610958578063b12b5f761461097a578063c4d66de814610990578063c8ae070f146109af578063cc19ecf7146109c5578063ce17273c14610a11578063d4aae0c414610a60578063d639cd7314610a73578063db7c231414610adb578063e9c211e214610b27578063eba8ba0614610b49578063f6b24b1c14610c9f578063f92a79ff14610ceb578063fbfa77cf14610d3c575b600080fd5b341561025157600080fd5b61027a6001604060020a0360043516600160a060020a0360243581169060443516606435610d4f565b005b341561028757600080fd5b61028f610daa565b60405190815260200160405180910390f35b34156102ac57600080fd5b6102b4610dce565b604051901515815260200160405180910390f35b34156102d357600080fd5b6102b46001604060020a0360043516610dd7565b34156102f257600080fd5b61028f610e79565b341561030557600080fd5b61028f610e9b565b341561031857600080fd5b61027a6001604060020a0360043516602435610ea6565b341561033a57600080fd5b6103546001604060020a0360043581169060243516610fda565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103ae578082015183820152602001610396565b50505050905090810190601f1680156103db5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34156103f657600080fd5b61027a6004803560248101910135611108565b341561041457600080fd5b61041c61119c565b604051600160a060020a03909116815260200160405180910390f35b341561044357600080fd5b61027a600435151561121c565b341561045b57600080fd5b61046f6001604060020a0360043516611282565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104c357fe5b60ff1681526020019850505050505050505060405180910390f35b34156104e957600080fd5b61027a6001604060020a03600435166024356113ff565b341561050b57600080fd5b61027a6001604060020a0360043581169060243581169060443590606435166115e6565b341561053a57600080fd5b61027a6001604060020a0360043581169060243516600160a060020a03604435166064356115fb565b341561056e57600080fd5b6102b4600160a060020a0360043516611792565b341561058d57600080fd5b6105a16001604060020a0360043516611809565b6040516001604060020a03909116815260200160405180910390f35b34156105c857600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166119fe565b341561060a57600080fd5b61028f611c8b565b341561061d57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611c9595505050505050565b341561066c57600080fd5b61028f611d00565b341561067f57600080fd5b61027a600160a060020a0360043516611d24565b341561069e57600080fd5b61027a6001604060020a0360043516600160a060020a0360243516604435611d85565b34156106cc57600080fd5b6105a160048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611d96915050565b341561078657600080fd5b6105a16024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612003565b34156107d757600080fd5b61027a6001604060020a03600435166124b0565b34156107f657600080fd5b61027a600160a060020a036004351661251a565b341561081557600080fd5b6102b4600160a060020a0360043516612592565b341561083457600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516612598565b341561087657600080fd5b61028f612614565b341561088957600080fd5b61028f600160a060020a036004351661261a565b34156108a857600080fd5b61041c61269c565b34156108bb57600080fd5b61028f6126a1565b34156108ce57600080fd5b61028f6126a7565b34156108e157600080fd5b61027a600160a060020a03600435166126cb565b341561090057600080fd5b6102b460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061284295505050505050565b341561096357600080fd5b61027a6001604060020a0360043516602435612980565b341561098557600080fd5b61027a600435612a15565b341561099b57600080fd5b61027a600160a060020a0360043516612a6d565b34156109ba57600080fd5b61027a600435612ad6565b34156109d057600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b45565b3415610a1c57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4e95505050505050565b3415610a6b57600080fd5b61041c612c81565b3415610a7e57600080fd5b61027a600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c90915050565b3415610ae657600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d05565b3415610b3257600080fd5b61027a6001604060020a0360043516602435612e0e565b3415610b5457600080fd5b610b686001604060020a0360043516612f36565b60405180896002811115610b7857fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610bf9578082015183820152602001610be1565b50505050905090810190601f168015610c265780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c5c578082015183820152602001610c44565b50505050905090810190601f168015610c895780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610caa57600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613105565b3415610cf657600080fd5b61041c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061320e95505050505050565b3415610d4757600080fd5b61041c6132ea565b6000600160a060020a0384161515610d6657600080fd5b610d95846020604051908101604052806000815250602060405190810160405260008082526203f48090611d96565b9050610da3818685856115fb565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610de3836132fe565b90506000815460ff166002811115610df757fe5b1415610e065760009150610e73565b6002815460ff166002811115610e1857fe5b14610e1f57fe5b6001810154604060020a900460ff1615610e3c5760019150610e73565b60018101546001604060020a03161515610e595760009150610e73565b6001810154610e70906001604060020a0316610dd7565b91505b50919050565b6040516000805160206151ad8339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610ecb57600080fd5b610ed484613344565b91506001600383015460a060020a900460ff166002811115610ef257fe5b14610efc57600080fd5b6002820154600183018054610fc7926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610f8f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f4c5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613375565b9050610fd4848285613697565b50505050565b600080610fe5614df8565b600080610ff187613344565b915081600101600187036001604060020a031681548110151561101057fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450611044856132fe565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110f85780601f106110cd576101008083540402835291602001916110f8565b820191906000526020600020905b8154815290600101906020018083116110db57829003601f168201915b5050505050925050509250925092565b60006040516000805160206151ad833981519152815260130160405180910390206111533382600060405180591061113d5750595b9080825280602002602001820160405250612842565b151561115e57600080fd5b600091505b60ff821683901015610fd457611191848460ff851681811061118157fe5b9050602002013560001916612ad6565b600190910190611163565b60008054600160a060020a031615156111b457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111fd57600080fd5b6102c65a03f1151561120e57600080fd5b505050604051805191505090565b6040516000805160206151ad833981519152815260130160405180910390206112643382600060405180591061113d5750599080825280602002602001820160405250612842565b151561126f57600080fd5b506069805460ff19169115919091179055565b600080600080600080600080611296614e0a565b61129f8a613344565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561133757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116112f45790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ad57fe5b60028111156113b857fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061140d85611809565b945061141885613344565b92506000600384015460a060020a900460ff16600281111561143657fe5b1461144057600080fd5b6002830154611457906001604060020a031661376b565b600283015460018401805461151f926001604060020a031691906020808202016040519081016040528092919081815260200182805480156114ea57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114a75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613375565b915061152c858386613697565b6002830154611543906001604060020a03166132fe565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b15156115cb57600080fd5b6102c65a03f115156115dc57600080fd5b5050505050505050565b6115ef8461376b565b610fd4848484846137c2565b600080806001604060020a03871681901161161557600080fd5b6000841161162257600080fd5b600160a060020a038516151561163757600080fd5b611640876132fe565b92506000835460ff16600281111561165457fe5b1461165e57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156116d457600080fd5b6102c65a03f115156116e557600080fd5b5050506040518051905015156116fa57600080fd5b61172b87600060405180591061170d5750595b908082528060200260200182016040525060008060008a6000613375565b915061173682613344565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a3611789878386896137c2565b50505050505050565b606954600090819060ff16806117af5750600160a060020a038316155b156117bd5760019150610e73565b600160a060020a03831660009081526068602052604090205460ff16156117e75760019150610e73565b6117f08361261a565b60009081526067602052604090205460ff169392505050565b60008060008061181885613344565b92506000600384015460a060020a900460ff16600281111561183657fe5b14611843578493506119f6565b60028301546000604060020a9091046001604060020a031611801561188257506002830154608060020a90046001604060020a0316611880613e19565b115b156119c557600283015460018401805461194e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116118d75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b60028401549092506119a590604060020a90046001604060020a031660006040518059106119795750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b90506119b685828560000154613697565b8094506119c285613344565b92505b6119ce85613e1d565b90506001604060020a03808216908616146119f2576119f285828560000154613697565b8093505b505050919050565b6000611a0982611792565b1515611a1457600080fd5b5060648054908160018101611a298382614e56565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b1a57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0b929160200190614e82565b5060e082015181600301908051611c26929160200190614e82565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015610fd4576001604060020a03848481518110611cb757fe5b90602001906020020151169150604060020a848481518110611cd557fe5b90602001906020020151811515611ce857fe5b049050611cf582826113ff565b600190920191611c9a565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206151ad83398151915281526013016040518091039020611d4c82613ee5565b611d57338383612842565b1515611d6257600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611d9183338484610d4f565b505050565b6000611da182611792565b1515611dac57600080fd5b5060648054908160018101611dc18382614e56565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e3e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f2f929160200190614e82565b5060e082015181600301908051611f4a929160200190614e82565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fc0578082015183820152602001611fa8565b50505050905090810190601f168015611fed5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061200f83611792565b151561201a57600080fd5b6001604060020a0385161561223757612032856132fe565b90506014612224826101006040519081016040528154909190829060ff16600281111561205b57fe5b600281111561206657fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121745780601f1061214957610100808354040283529160200191612174565b820191906000526020600020905b81548152906001019060200180831161215757829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122165780601f106121eb57610100808354040283529160200191612216565b820191906000526020600020905b8154815290600101906020018083116121f957829003601f168201915b505050505081525050613f05565b6001604060020a03161061223757600080fd5b606480549250826001810161224c8382614e56565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561233c57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161242d929160200190614e82565b5060e082015181600301908051612448929160200190614e82565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124bb826132fe565b90506124c68261376b565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b6040516000805160206151ad833981519152815260130160405180910390206125623382600060405180591061113d5750599080825280602002602001820160405250612842565b151561256d57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126093388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611d96565b979650505050505050565b60015481565b6000612624614df8565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126685780518252601f199092019160209182019101612649565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806126d783612592565b15156126e257600080fd5b6126ea61119c565b91506126f582613f79565b151561270057600080fd5b600160a060020a03831615156127525781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561274d57600080fd5b611d91565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127a957600080fd5b6102c65a03f115156127ba57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561282257600080fd5b6102c65a03f1151561283357600080fd5b50505060405180515050505050565b600061284c614df8565b6000808451111561286557835160200290508391508082525b600054600160a060020a03161580612976575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561290c5780820151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561295a57600080fd5b6102c65a03f1151561296b57600080fd5b505050604051805190505b9695505050505050565b60008061298c84611809565b935061299784613344565b600281015490925060c060020a90046001604060020a031615156129ba57600080fd5b6000600383015460a060020a900460ff1660028111156129d657fe5b146129e057600080fd5b60028201546129f7906001604060020a031661376b565b6002820154610fc79060c060020a90046001604060020a0316613e1d565b6040516000805160206151ad83398151915281526013016040518091039020612a3d82613f9f565b612a48338383612842565b1515612a5357600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612a7a57600080fd5b600160a060020a0381161515612a8f57600080fd5b612a97613fb0565b6069805461010060a860020a031916610100600160a060020a038416021790556001612ac4606482614e56565b506001612ad2606582614efc565b5050565b6040516000805160206151ad83398151915281526013016040518091039020612b1e3382600060405180591061113d5750599080825280602002602001820160405250612842565b1515612b2957600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b50886132fe565b805490915033600160a060020a039081166101009092041614612b7257600080fd5b6001815460ff166002811115612b8457fe5b14612b8e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bba600282018787614f28565b50612bc9600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612ad257612c78828281518110612c6957fe5b90602001906020020151611809565b50600101612c51565b600054600160a060020a031681565b600080805b8451831015612cfd576001604060020a03858481518110612cb257fe5b90602001906020020151169150604060020a858481518110612cd057fe5b90602001906020020151811515612ce357fe5b049050612cf2868383876115e6565b600190920191612c95565b505050505050565b6000612d10886132fe565b805490915033600160a060020a039081166101009092041614612d3257600080fd5b6000815460ff166002811115612d4457fe5b14612d4e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7a600282018787614f28565b50612d89600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3357600080fd5b612e3c84613344565b91506001600383015460a060020a900460ff166002811115612e5a57fe5b14612e6457600080fd5b6002820154600183018054612f2b926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb45790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b9050610fc781611809565b600080612f41614df8565b612f49614df8565b6000806000806000612f5a8a6132fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f8201819004810201604051908101604052809291908181526020018280546001816001161561010002031660029004801561300f5780601f10612fe45761010080835404028352916020019161300f565b820191906000526020600020905b815481529060010190602001808311612ff257829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130ae5780601f10613083576101008083540402835291602001916130ae565b820191906000526020600020905b81548152906001019060200180831161309157829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000613110886132fe565b805490915033600160a060020a03908116610100909204161461313257600080fd5b6002815460ff16600281111561314457fe5b1461314e57600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317a600282018787614f28565b50613189600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000613218613fca565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561327f578082015183820152602001613267565b50505050905090810190601f1680156132ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132ca57600080fd5b6102c65a03f115156132db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331857600080fd5b606480546001604060020a03841690811061332f57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061335e57600080fd5b606580546001604060020a03841690811061332f57fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133ae578082015183820152602001613396565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341857fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134825780925061368a565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c28382614efc565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354357fe5b905291905081518155602082015181600101908051613566929160200190614f96565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561367e57fe5b02179055505050508092505b5050979650505050505050565b60008060006136a96001878787614061565b9250846001604060020a0316866001604060020a031614156136ca57612cfd565b8215156136d657612cfd565b6136df86613344565b91506136ea85613344565b8254909150839010156136fc57600080fd5b81548390038255805483018082558390101561371757600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117896000878786614061565b6000613776826132fe565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b75750805433600160a060020a0390811661010090920416145b1515612ad257600080fd5b600080808080806001604060020a0387168190116137df57600080fd5b6137e889611809565b98506137f389613344565b95506137fe876132fe565b94506000600387015460a060020a900460ff16600281111561381c57fe5b1461382657600080fd5b60028601546001604060020a038b811691161415613b21576000855460ff16600281111561385057fe5b141561386657613861898989614087565b613e0d565b6002855460ff16600281111561387857fe5b1415613889576138618989896140e1565b6001855460ff16600281111561389b57fe5b1415613b1f576139c7866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fa5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b60028111156139be57fe5b9052508861431f565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fa57506001604060020a038414155b15613b0057600186015460001901841415613ae3576002860154600187018054613ad6926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa257602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a5f5790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b925061386189848a613697565b613afa89896001848a600101805490500303614385565b50613e0d565b613b1289898860010180549050614385565b985061386189898961448f565bfe5b613c478661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbd57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7a5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3357fe5b6002811115613c3e57fe5b9052508b61431f565b6001604060020a0390811692508214613b1f576000855460ff166002811115613c6c57fe5b1415613c9d5760028601546001604060020a03888116911614613c8b57fe5b613afa89898860010180549050614385565b6001855460ff166002811115613caf57fe5b1415613dd157613d9c866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fa575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b6001604060020a039081169150811480613db557508181115b15613ae357613b1289896001858a600101805490500303614385565b6002855460ff166002811115613de357fe5b1415613b1f57613e0089896001858a600101805490500303614385565b98506138618989896145bf565b50505050505050505050565b4290565b600080806001604060020a0384161515613e3a5760009250613ede565b613e4384613344565b6002810154909250613e5d906001604060020a03166132fe565b90506000815460ff166002811115613e7157fe5b1415613e7f57839250613ede565b6002815460ff166002811115613e9157fe5b14613e9857fe5b6002820154613eaf906001604060020a0316610dd7565b1515613ebd57839250613ede565b6002820154613edb9060c060020a90046001604060020a0316613e1d565b92505b5050919050565b613eed614df8565b613eff82600160a060020a03166148d2565b92915050565b600080600283516002811115613f1757fe5b14613f1e57fe5b82606001516001604060020a03161515613f3b5760019150610e73565b613f4883606001516132fe565b9050613f6f816101006040519081016040528154909190829060ff16600281111561205b57fe5b6001019392505050565b600080600160a060020a0383161515613f955760009150610e73565b50506000903b1190565b613fa7614df8565b613eff826148d2565b60035415613fbd57600080fd5b613fc5614919565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561403d57600080fd5b6102c65a03f1151561404e57600080fd5b50505060405180519250829150505b5090565b8061406f858580868561491d565b905061407e858486868561491d565b95945050505050565b60008061409385613344565b91506140d48360006040518059106140a85750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613375565b9050610da3858286613697565b60008060006140ef86613344565b92506014614218846101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161414c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b600281111561421057fe5b905250614a85565b1061422257600080fd5b61422b84610dd7565b1561423557600080fd5b60028301546001840180546142d2926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57600091825260209182902080546001604060020a031684529082028301929091600891018084116118d75750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613375565b91506143128460006040518059106119795750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b9050612cfd868287613697565b6000805b83602001515181101561437357826001604060020a03168460200151828151811061434a57fe5b906020019060200201516001604060020a0316141561436b5780915061437e565b600101614323565b6001604060020a0391505b5092915050565b600080614390614df8565b600061439b87613344565b60018101549093508590036040518059106143b35750595b90808252806020026020018201604052509150600090505b600183015485900381101561443e57600183018054829081106143ea57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061441f57fe5b6001604060020a039092166020928302909101909101526001016143cb565b60028301546003840154614478916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613375565b9350614485878588613697565b5050509392505050565b6000614499614df8565b6000806144a587613344565b6001810154909450600a90106144ba57600080fd5b600180850154016040518059106144ce5750595b90808252806020026020018201604052509250600091505b6001840154821015614559576001840180548390811061450257fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061453757fe5b6001604060020a039092166020928302909101909101526001909101906144e6565b6001840154859084908151811061456c57fe5b6001604060020a0392831660209182029092010152600285015460038601546145b292828116928792600092839260c060020a90041690600160a060020a031682613375565b9050611789878288613697565b6000806145cb85613344565b915060146146b6836101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b106146c057600080fd5b6146c983610dd7565b156146d357600080fd5b60028201546001830180546140d4926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561476657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147235790505b505050505085614891866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561480857602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147c55790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561487e57fe5b600281111561488957fe5b905250614b9b565b6001604060020a03166148a2613e19565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613375565b6148da614df8565b60016040518059106148e95750595b90808252806020026020018201604052509050818160008151811061490a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a03161461494457610100614947565b60005b61ffff16925084935061495988613344565b6002810154600382015491935061498b918b916001604060020a0316908a908a908890600160a060020a03168a614c33565b9350600090505b60018201546001604060020a0382161015614a1e57614a148983600101836001604060020a03168154811015156149c557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c33565b9350600101614992565b60028201546000604060020a9091046001604060020a03161115614a795760028201546003830154614a76918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c33565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614aa55760009150610e73565b614ab28360a00151613344565b9050613f6f816101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b6000806000614bad84604001516132fe565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ede57614bf784602001518281518110614be857fe5b906020019060200201516132fe565b80549092506001604060020a0380851660a860020a909204161115614c2b57815460a860020a90046001604060020a031692505b600101614bc8565b80600080614c40896132fe565b600181015490915069010000000000000000009004600160a060020a031615801590614c6c5750600083115b1561368a578915614d4457600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d1357600080fd5b6102c65a03f11515614d2457600080fd5b505050604051805192505082821115614d3c57600080fd5b81925061368a565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614dd757600080fd5b6102c65a03f11515614de857600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e26614df8565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611d9157600402816004028360005260206000209182019101611d91919061504a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614ec357805160ff1916838001178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578251825591602001919060010190614ed5565b5061405d9291506150b1565b815481835581811511611d9157600402816004028360005260206000209182019101611d9191906150cb565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f695782800160ff19823516178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578235825591602001919060010190614f7b565b8280548282559060005260206000209060030160049004810192821561503e5791602002820160005b8382111561500957835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302614fbf565b801561503c5782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615009565b505b5061405d92915061511b565b610ea391905b8082111561405d5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061509a6002830182615140565b6150a8600383016000615140565b50600401615050565b610ea391905b8082111561405d57600081556001016150b7565b610ea391905b8082111561405d5760008082556150eb6001830182615187565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff191690556004016150d1565b610ea391905b8082111561405d57805467ffffffffffffffff19168155600101615121565b50805460018160011615610100020316600290046000825580601f106151665750615184565b601f01602090049060005260206000209081019061518491906150b1565b50565b50805460008255600301600490049060005260206000209081019061518491906150b15600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820ed1eacae6750bb2e266a5f861872a813708ecd94e8e2f531e86e5b01327a4c7d0029","realRuntimeBytecode":"6060604052600436106102415763ffffffff60e060020a6000350416627611c68114610246578063178e60791461027c5780631c8e8568146102a15780632101a6ad146102c857806324fea3b0146102e75780632a8ec8cc146102fa5780632ee888081461030d5780632f6b64ca1461032f57806332ce8ebc146103eb57806332f0a3b51461040957806338740291146104385780633f657a461461045057806343387983146104de57806347c5ef43146105005780634c4316c71461052f5780634eafbcd51461056357806350f8a8031461058257806352dc7dcc146105bd5780635503d9ba146105ff57806357adafb61461061257806360b1e057146106615780636293c702146106745780636ba3cc87146106935780636e802c6a146106c157806372116e921461077b578063796d5654146107cc57806379f4542e146107eb5780637e7db6e11461080a5780637f61fa931461082957806380afdea81461086b57806381ea44081461087e5780638322fff21461089d5780638b3dd749146108b05780639b3fdf4c146108c35780639d4941d8146108d6578063a1658fad146108f5578063af9f456314610958578063b12b5f761461097a578063c4d66de814610990578063c8ae070f146109af578063cc19ecf7146109c5578063ce17273c14610a11578063d4aae0c414610a60578063d639cd7314610a73578063db7c231414610adb578063e9c211e214610b27578063eba8ba0614610b49578063f6b24b1c14610c9f578063f92a79ff14610ceb578063fbfa77cf14610d3c575b600080fd5b341561025157600080fd5b61027a6001604060020a0360043516600160a060020a0360243581169060443516606435610d4f565b005b341561028757600080fd5b61028f610daa565b60405190815260200160405180910390f35b34156102ac57600080fd5b6102b4610dce565b604051901515815260200160405180910390f35b34156102d357600080fd5b6102b46001604060020a0360043516610dd7565b34156102f257600080fd5b61028f610e79565b341561030557600080fd5b61028f610e9b565b341561031857600080fd5b61027a6001604060020a0360043516602435610ea6565b341561033a57600080fd5b6103546001604060020a0360043581169060243516610fda565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103ae578082015183820152602001610396565b50505050905090810190601f1680156103db5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34156103f657600080fd5b61027a6004803560248101910135611108565b341561041457600080fd5b61041c61119c565b604051600160a060020a03909116815260200160405180910390f35b341561044357600080fd5b61027a600435151561121c565b341561045b57600080fd5b61046f6001604060020a0360043516611282565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104c357fe5b60ff1681526020019850505050505050505060405180910390f35b34156104e957600080fd5b61027a6001604060020a03600435166024356113ff565b341561050b57600080fd5b61027a6001604060020a0360043581169060243581169060443590606435166115e6565b341561053a57600080fd5b61027a6001604060020a0360043581169060243516600160a060020a03604435166064356115fb565b341561056e57600080fd5b6102b4600160a060020a0360043516611792565b341561058d57600080fd5b6105a16001604060020a0360043516611809565b6040516001604060020a03909116815260200160405180910390f35b34156105c857600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166119fe565b341561060a57600080fd5b61028f611c8b565b341561061d57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611c9595505050505050565b341561066c57600080fd5b61028f611d00565b341561067f57600080fd5b61027a600160a060020a0360043516611d24565b341561069e57600080fd5b61027a6001604060020a0360043516600160a060020a0360243516604435611d85565b34156106cc57600080fd5b6105a160048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611d96915050565b341561078657600080fd5b6105a16024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612003565b34156107d757600080fd5b61027a6001604060020a03600435166124b0565b34156107f657600080fd5b61027a600160a060020a036004351661251a565b341561081557600080fd5b6102b4600160a060020a0360043516612592565b341561083457600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516612598565b341561087657600080fd5b61028f612614565b341561088957600080fd5b61028f600160a060020a036004351661261a565b34156108a857600080fd5b61041c61269c565b34156108bb57600080fd5b61028f6126a1565b34156108ce57600080fd5b61028f6126a7565b34156108e157600080fd5b61027a600160a060020a03600435166126cb565b341561090057600080fd5b6102b460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061284295505050505050565b341561096357600080fd5b61027a6001604060020a0360043516602435612980565b341561098557600080fd5b61027a600435612a15565b341561099b57600080fd5b61027a600160a060020a0360043516612a6d565b34156109ba57600080fd5b61027a600435612ad6565b34156109d057600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b45565b3415610a1c57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4e95505050505050565b3415610a6b57600080fd5b61041c612c81565b3415610a7e57600080fd5b61027a600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c90915050565b3415610ae657600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d05565b3415610b3257600080fd5b61027a6001604060020a0360043516602435612e0e565b3415610b5457600080fd5b610b686001604060020a0360043516612f36565b60405180896002811115610b7857fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610bf9578082015183820152602001610be1565b50505050905090810190601f168015610c265780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c5c578082015183820152602001610c44565b50505050905090810190601f168015610c895780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610caa57600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613105565b3415610cf657600080fd5b61041c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061320e95505050505050565b3415610d4757600080fd5b61041c6132ea565b6000600160a060020a0384161515610d6657600080fd5b610d95846020604051908101604052806000815250602060405190810160405260008082526203f48090611d96565b9050610da3818685856115fb565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610de3836132fe565b90506000815460ff166002811115610df757fe5b1415610e065760009150610e73565b6002815460ff166002811115610e1857fe5b14610e1f57fe5b6001810154604060020a900460ff1615610e3c5760019150610e73565b60018101546001604060020a03161515610e595760009150610e73565b6001810154610e70906001604060020a0316610dd7565b91505b50919050565b6040516000805160206151ad8339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610ecb57600080fd5b610ed484613344565b91506001600383015460a060020a900460ff166002811115610ef257fe5b14610efc57600080fd5b6002820154600183018054610fc7926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610f8f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f4c5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613375565b9050610fd4848285613697565b50505050565b600080610fe5614df8565b600080610ff187613344565b915081600101600187036001604060020a031681548110151561101057fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450611044856132fe565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110f85780601f106110cd576101008083540402835291602001916110f8565b820191906000526020600020905b8154815290600101906020018083116110db57829003601f168201915b5050505050925050509250925092565b60006040516000805160206151ad833981519152815260130160405180910390206111533382600060405180591061113d5750595b9080825280602002602001820160405250612842565b151561115e57600080fd5b600091505b60ff821683901015610fd457611191848460ff851681811061118157fe5b9050602002013560001916612ad6565b600190910190611163565b60008054600160a060020a031615156111b457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111fd57600080fd5b6102c65a03f1151561120e57600080fd5b505050604051805191505090565b6040516000805160206151ad833981519152815260130160405180910390206112643382600060405180591061113d5750599080825280602002602001820160405250612842565b151561126f57600080fd5b506069805460ff19169115919091179055565b600080600080600080600080611296614e0a565b61129f8a613344565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561133757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116112f45790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ad57fe5b60028111156113b857fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061140d85611809565b945061141885613344565b92506000600384015460a060020a900460ff16600281111561143657fe5b1461144057600080fd5b6002830154611457906001604060020a031661376b565b600283015460018401805461151f926001604060020a031691906020808202016040519081016040528092919081815260200182805480156114ea57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114a75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613375565b915061152c858386613697565b6002830154611543906001604060020a03166132fe565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b15156115cb57600080fd5b6102c65a03f115156115dc57600080fd5b5050505050505050565b6115ef8461376b565b610fd4848484846137c2565b600080806001604060020a03871681901161161557600080fd5b6000841161162257600080fd5b600160a060020a038516151561163757600080fd5b611640876132fe565b92506000835460ff16600281111561165457fe5b1461165e57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156116d457600080fd5b6102c65a03f115156116e557600080fd5b5050506040518051905015156116fa57600080fd5b61172b87600060405180591061170d5750595b908082528060200260200182016040525060008060008a6000613375565b915061173682613344565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a3611789878386896137c2565b50505050505050565b606954600090819060ff16806117af5750600160a060020a038316155b156117bd5760019150610e73565b600160a060020a03831660009081526068602052604090205460ff16156117e75760019150610e73565b6117f08361261a565b60009081526067602052604090205460ff169392505050565b60008060008061181885613344565b92506000600384015460a060020a900460ff16600281111561183657fe5b14611843578493506119f6565b60028301546000604060020a9091046001604060020a031611801561188257506002830154608060020a90046001604060020a0316611880613e19565b115b156119c557600283015460018401805461194e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116118d75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b60028401549092506119a590604060020a90046001604060020a031660006040518059106119795750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b90506119b685828560000154613697565b8094506119c285613344565b92505b6119ce85613e1d565b90506001604060020a03808216908616146119f2576119f285828560000154613697565b8093505b505050919050565b6000611a0982611792565b1515611a1457600080fd5b5060648054908160018101611a298382614e56565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b1a57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0b929160200190614e82565b5060e082015181600301908051611c26929160200190614e82565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015610fd4576001604060020a03848481518110611cb757fe5b90602001906020020151169150604060020a848481518110611cd557fe5b90602001906020020151811515611ce857fe5b049050611cf582826113ff565b600190920191611c9a565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206151ad83398151915281526013016040518091039020611d4c82613ee5565b611d57338383612842565b1515611d6257600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611d9183338484610d4f565b505050565b6000611da182611792565b1515611dac57600080fd5b5060648054908160018101611dc18382614e56565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e3e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f2f929160200190614e82565b5060e082015181600301908051611f4a929160200190614e82565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fc0578082015183820152602001611fa8565b50505050905090810190601f168015611fed5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061200f83611792565b151561201a57600080fd5b6001604060020a0385161561223757612032856132fe565b90506014612224826101006040519081016040528154909190829060ff16600281111561205b57fe5b600281111561206657fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121745780601f1061214957610100808354040283529160200191612174565b820191906000526020600020905b81548152906001019060200180831161215757829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122165780601f106121eb57610100808354040283529160200191612216565b820191906000526020600020905b8154815290600101906020018083116121f957829003601f168201915b505050505081525050613f05565b6001604060020a03161061223757600080fd5b606480549250826001810161224c8382614e56565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561233c57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161242d929160200190614e82565b5060e082015181600301908051612448929160200190614e82565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124bb826132fe565b90506124c68261376b565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b6040516000805160206151ad833981519152815260130160405180910390206125623382600060405180591061113d5750599080825280602002602001820160405250612842565b151561256d57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126093388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611d96565b979650505050505050565b60015481565b6000612624614df8565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126685780518252601f199092019160209182019101612649565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806126d783612592565b15156126e257600080fd5b6126ea61119c565b91506126f582613f79565b151561270057600080fd5b600160a060020a03831615156127525781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561274d57600080fd5b611d91565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127a957600080fd5b6102c65a03f115156127ba57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561282257600080fd5b6102c65a03f1151561283357600080fd5b50505060405180515050505050565b600061284c614df8565b6000808451111561286557835160200290508391508082525b600054600160a060020a03161580612976575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561290c5780820151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561295a57600080fd5b6102c65a03f1151561296b57600080fd5b505050604051805190505b9695505050505050565b60008061298c84611809565b935061299784613344565b600281015490925060c060020a90046001604060020a031615156129ba57600080fd5b6000600383015460a060020a900460ff1660028111156129d657fe5b146129e057600080fd5b60028201546129f7906001604060020a031661376b565b6002820154610fc79060c060020a90046001604060020a0316613e1d565b6040516000805160206151ad83398151915281526013016040518091039020612a3d82613f9f565b612a48338383612842565b1515612a5357600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612a7a57600080fd5b600160a060020a0381161515612a8f57600080fd5b612a97613fb0565b6069805461010060a860020a031916610100600160a060020a038416021790556001612ac4606482614e56565b506001612ad2606582614efc565b5050565b6040516000805160206151ad83398151915281526013016040518091039020612b1e3382600060405180591061113d5750599080825280602002602001820160405250612842565b1515612b2957600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b50886132fe565b805490915033600160a060020a039081166101009092041614612b7257600080fd5b6001815460ff166002811115612b8457fe5b14612b8e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bba600282018787614f28565b50612bc9600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612ad257612c78828281518110612c6957fe5b90602001906020020151611809565b50600101612c51565b600054600160a060020a031681565b600080805b8451831015612cfd576001604060020a03858481518110612cb257fe5b90602001906020020151169150604060020a858481518110612cd057fe5b90602001906020020151811515612ce357fe5b049050612cf2868383876115e6565b600190920191612c95565b505050505050565b6000612d10886132fe565b805490915033600160a060020a039081166101009092041614612d3257600080fd5b6000815460ff166002811115612d4457fe5b14612d4e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7a600282018787614f28565b50612d89600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3357600080fd5b612e3c84613344565b91506001600383015460a060020a900460ff166002811115612e5a57fe5b14612e6457600080fd5b6002820154600183018054612f2b926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb45790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b9050610fc781611809565b600080612f41614df8565b612f49614df8565b6000806000806000612f5a8a6132fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f8201819004810201604051908101604052809291908181526020018280546001816001161561010002031660029004801561300f5780601f10612fe45761010080835404028352916020019161300f565b820191906000526020600020905b815481529060010190602001808311612ff257829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130ae5780601f10613083576101008083540402835291602001916130ae565b820191906000526020600020905b81548152906001019060200180831161309157829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000613110886132fe565b805490915033600160a060020a03908116610100909204161461313257600080fd5b6002815460ff16600281111561314457fe5b1461314e57600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317a600282018787614f28565b50613189600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000613218613fca565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561327f578082015183820152602001613267565b50505050905090810190601f1680156132ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132ca57600080fd5b6102c65a03f115156132db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331857600080fd5b606480546001604060020a03841690811061332f57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061335e57600080fd5b606580546001604060020a03841690811061332f57fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133ae578082015183820152602001613396565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341857fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134825780925061368a565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c28382614efc565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354357fe5b905291905081518155602082015181600101908051613566929160200190614f96565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561367e57fe5b02179055505050508092505b5050979650505050505050565b60008060006136a96001878787614061565b9250846001604060020a0316866001604060020a031614156136ca57612cfd565b8215156136d657612cfd565b6136df86613344565b91506136ea85613344565b8254909150839010156136fc57600080fd5b81548390038255805483018082558390101561371757600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117896000878786614061565b6000613776826132fe565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b75750805433600160a060020a0390811661010090920416145b1515612ad257600080fd5b600080808080806001604060020a0387168190116137df57600080fd5b6137e889611809565b98506137f389613344565b95506137fe876132fe565b94506000600387015460a060020a900460ff16600281111561381c57fe5b1461382657600080fd5b60028601546001604060020a038b811691161415613b21576000855460ff16600281111561385057fe5b141561386657613861898989614087565b613e0d565b6002855460ff16600281111561387857fe5b1415613889576138618989896140e1565b6001855460ff16600281111561389b57fe5b1415613b1f576139c7866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fa5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b60028111156139be57fe5b9052508861431f565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fa57506001604060020a038414155b15613b0057600186015460001901841415613ae3576002860154600187018054613ad6926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa257602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a5f5790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b925061386189848a613697565b613afa89896001848a600101805490500303614385565b50613e0d565b613b1289898860010180549050614385565b985061386189898961448f565bfe5b613c478661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbd57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7a5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3357fe5b6002811115613c3e57fe5b9052508b61431f565b6001604060020a0390811692508214613b1f576000855460ff166002811115613c6c57fe5b1415613c9d5760028601546001604060020a03888116911614613c8b57fe5b613afa89898860010180549050614385565b6001855460ff166002811115613caf57fe5b1415613dd157613d9c866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fa575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b6001604060020a039081169150811480613db557508181115b15613ae357613b1289896001858a600101805490500303614385565b6002855460ff166002811115613de357fe5b1415613b1f57613e0089896001858a600101805490500303614385565b98506138618989896145bf565b50505050505050505050565b4290565b600080806001604060020a0384161515613e3a5760009250613ede565b613e4384613344565b6002810154909250613e5d906001604060020a03166132fe565b90506000815460ff166002811115613e7157fe5b1415613e7f57839250613ede565b6002815460ff166002811115613e9157fe5b14613e9857fe5b6002820154613eaf906001604060020a0316610dd7565b1515613ebd57839250613ede565b6002820154613edb9060c060020a90046001604060020a0316613e1d565b92505b5050919050565b613eed614df8565b613eff82600160a060020a03166148d2565b92915050565b600080600283516002811115613f1757fe5b14613f1e57fe5b82606001516001604060020a03161515613f3b5760019150610e73565b613f4883606001516132fe565b9050613f6f816101006040519081016040528154909190829060ff16600281111561205b57fe5b6001019392505050565b600080600160a060020a0383161515613f955760009150610e73565b50506000903b1190565b613fa7614df8565b613eff826148d2565b60035415613fbd57600080fd5b613fc5614919565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561403d57600080fd5b6102c65a03f1151561404e57600080fd5b50505060405180519250829150505b5090565b8061406f858580868561491d565b905061407e858486868561491d565b95945050505050565b60008061409385613344565b91506140d48360006040518059106140a85750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613375565b9050610da3858286613697565b60008060006140ef86613344565b92506014614218846101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161414c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b600281111561421057fe5b905250614a85565b1061422257600080fd5b61422b84610dd7565b1561423557600080fd5b60028301546001840180546142d2926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57600091825260209182902080546001604060020a031684529082028301929091600891018084116118d75750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613375565b91506143128460006040518059106119795750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b9050612cfd868287613697565b6000805b83602001515181101561437357826001604060020a03168460200151828151811061434a57fe5b906020019060200201516001604060020a0316141561436b5780915061437e565b600101614323565b6001604060020a0391505b5092915050565b600080614390614df8565b600061439b87613344565b60018101549093508590036040518059106143b35750595b90808252806020026020018201604052509150600090505b600183015485900381101561443e57600183018054829081106143ea57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061441f57fe5b6001604060020a039092166020928302909101909101526001016143cb565b60028301546003840154614478916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613375565b9350614485878588613697565b5050509392505050565b6000614499614df8565b6000806144a587613344565b6001810154909450600a90106144ba57600080fd5b600180850154016040518059106144ce5750595b90808252806020026020018201604052509250600091505b6001840154821015614559576001840180548390811061450257fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061453757fe5b6001604060020a039092166020928302909101909101526001909101906144e6565b6001840154859084908151811061456c57fe5b6001604060020a0392831660209182029092010152600285015460038601546145b292828116928792600092839260c060020a90041690600160a060020a031682613375565b9050611789878288613697565b6000806145cb85613344565b915060146146b6836101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b106146c057600080fd5b6146c983610dd7565b156146d357600080fd5b60028201546001830180546140d4926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561476657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147235790505b505050505085614891866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561480857602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147c55790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561487e57fe5b600281111561488957fe5b905250614b9b565b6001604060020a03166148a2613e19565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613375565b6148da614df8565b60016040518059106148e95750595b90808252806020026020018201604052509050818160008151811061490a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a03161461494457610100614947565b60005b61ffff16925084935061495988613344565b6002810154600382015491935061498b918b916001604060020a0316908a908a908890600160a060020a03168a614c33565b9350600090505b60018201546001604060020a0382161015614a1e57614a148983600101836001604060020a03168154811015156149c557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c33565b9350600101614992565b60028201546000604060020a9091046001604060020a03161115614a795760028201546003830154614a76918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c33565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614aa55760009150610e73565b614ab28360a00151613344565b9050613f6f816101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b6000806000614bad84604001516132fe565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ede57614bf784602001518281518110614be857fe5b906020019060200201516132fe565b80549092506001604060020a0380851660a860020a909204161115614c2b57815460a860020a90046001604060020a031692505b600101614bc8565b80600080614c40896132fe565b600181015490915069010000000000000000009004600160a060020a031615801590614c6c5750600083115b1561368a578915614d4457600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d1357600080fd5b6102c65a03f11515614d2457600080fd5b505050604051805192505082821115614d3c57600080fd5b81925061368a565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614dd757600080fd5b6102c65a03f11515614de857600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e26614df8565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611d9157600402816004028360005260206000209182019101611d91919061504a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614ec357805160ff1916838001178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578251825591602001919060010190614ed5565b5061405d9291506150b1565b815481835581811511611d9157600402816004028360005260206000209182019101611d9191906150cb565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f695782800160ff19823516178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578235825591602001919060010190614f7b565b8280548282559060005260206000209060030160049004810192821561503e5791602002820160005b8382111561500957835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302614fbf565b801561503c5782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615009565b505b5061405d92915061511b565b610ea391905b8082111561405d5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061509a6002830182615140565b6150a8600383016000615140565b50600401615050565b610ea391905b8082111561405d57600081556001016150b7565b610ea391905b8082111561405d5760008082556150eb6001830182615187565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff191690556004016150d1565b610ea391905b8082111561405d57805467ffffffffffffffff19168155600101615121565b50805460018160011615610100020316600290046000825580601f106151665750615184565b601f01602090049060005260206000209081019061518491906150b1565b50565b50805460008255600301600490049060005260206000209081019061518491906150b15600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820","linkReferences":{},"swarmHash":"ed1eacae6750bb2e266a5f861872a813708ecd94e8e2f531e86e5b01327a4c7d","gasEstimates":{"creation":{"codeDepositCost":"4203200","executionCost":"25049","totalCost":"4228249"},"external":{"APP_ADDR_NAMESPACE()":"258","ETH()":"996","EVMSCRIPT_REGISTRY_APP()":"962","EVMSCRIPT_REGISTRY_APP_ID()":"676","PLUGIN_MANAGER_ROLE()":"infinite","addDelegate(string,string,uint64,address)":"infinite","addGiver(address,string,string,uint64,address)":"infinite","addGiver(string,string,uint64,address)":"infinite","addGiverAndDonate(uint64,address,address,uint256)":"infinite","addGiverAndDonate(uint64,address,uint256)":"infinite","addProject(string,string,address,uint64,uint64,address)":"infinite","addValidPluginContract(bytes32)":"infinite","addValidPluginContracts(bytes32[])":"infinite","addValidPluginInstance(address)":"infinite","allowRecoverability(address)":"919","appId()":"1074","canPerform(address,bytes32,uint256[])":"infinite","cancelPayment(uint64,uint256)":"infinite","cancelPledge(uint64,uint256)":"infinite","cancelProject(uint64)":"infinite","confirmPayment(uint64,uint256)":"infinite","donate(uint64,uint64,address,uint256)":"infinite","getCodeHash(address)":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"1140","getPledge(uint64)":"infinite","getPledgeAdmin(uint64)":"infinite","getPledgeDelegate(uint64,uint64)":"infinite","getRecoveryVault()":"infinite","initialize(address)":"infinite","isProjectCanceled(uint64)":"infinite","isValidPlugin(address)":"infinite","kernel()":"1513","mNormalizePledge(uint64[])":"infinite","mTransfer(uint64,uint256[],uint64)":"infinite","mWithdraw(uint256[])":"infinite","normalizePledge(uint64)":"infinite","numberOfPledgeAdmins()":"841","numberOfPledges()":"556","removeValidPluginContract(bytes32)":"infinite","removeValidPluginInstance(address)":"infinite","transfer(uint64,uint64,uint256,uint64)":"infinite","transferToVault(address)":"infinite","updateDelegate(uint64,address,string,string,uint64)":"infinite","updateGiver(uint64,address,string,string,uint64)":"infinite","updateProject(uint64,address,string,string,uint64)":"infinite","useWhitelist(bool)":"infinite","vault()":"1678","whitelistDisabled()":"492","withdraw(uint64,uint256)":"infinite"}},"functionHashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","PLUGIN_MANAGER_ROLE()":"24fea3b0","addDelegate(string,string,uint64,address)":"52dc7dcc","addGiver(address,string,string,uint64,address)":"6e802c6a","addGiver(string,string,uint64,address)":"7f61fa93","addGiverAndDonate(uint64,address,address,uint256)":"007611c6","addGiverAndDonate(uint64,address,uint256)":"6ba3cc87","addProject(string,string,address,uint64,uint64,address)":"72116e92","addValidPluginContract(bytes32)":"c8ae070f","addValidPluginContracts(bytes32[])":"32ce8ebc","addValidPluginInstance(address)":"79f4542e","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","cancelPayment(uint64,uint256)":"e9c211e2","cancelPledge(uint64,uint256)":"af9f4563","cancelProject(uint64)":"796d5654","confirmPayment(uint64,uint256)":"2ee88808","donate(uint64,uint64,address,uint256)":"4c4316c7","getCodeHash(address)":"81ea4408","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getPledge(uint64)":"3f657a46","getPledgeAdmin(uint64)":"eba8ba06","getPledgeDelegate(uint64,uint64)":"2f6b64ca","getRecoveryVault()":"32f0a3b5","initialize(address)":"c4d66de8","isProjectCanceled(uint64)":"2101a6ad","isValidPlugin(address)":"4eafbcd5","kernel()":"d4aae0c4","mNormalizePledge(uint64[])":"ce17273c","mTransfer(uint64,uint256[],uint64)":"d639cd73","mWithdraw(uint256[])":"57adafb6","normalizePledge(uint64)":"50f8a803","numberOfPledgeAdmins()":"5503d9ba","numberOfPledges()":"2a8ec8cc","removeValidPluginContract(bytes32)":"b12b5f76","removeValidPluginInstance(address)":"6293c702","transfer(uint64,uint64,uint256,uint64)":"47c5ef43","transferToVault(address)":"9d4941d8","updateDelegate(uint64,address,string,string,uint64)":"cc19ecf7","updateGiver(uint64,address,string,string,uint64)":"db7c2314","updateProject(uint64,address,string,string,uint64)":"f6b24b1c","useWhitelist(bool)":"38740291","vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568","withdraw(uint64,uint256)":"43387983"},"abiDefinition":[{"constant":false,"inputs":[{"name":"idReceiver","type":"uint64"},{"name":"donorAddress","type":"address"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"addGiverAndDonate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x007611c6"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x178e6079"},{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x1c8e8568"},{"constant":true,"inputs":[{"name":"projectId","type":"uint64"}],"name":"isProjectCanceled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x2101a6ad"},{"constant":true,"inputs":[],"name":"PLUGIN_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x24fea3b0"},{"constant":true,"inputs":[],"name":"numberOfPledges","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x2a8ec8cc"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"confirmPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x2ee88808"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"idxDelegate","type":"uint64"}],"name":"getPledgeDelegate","outputs":[{"name":"idDelegate","type":"uint64"},{"name":"addr","type":"address"},{"name":"name","type":"string"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x2f6b64ca"},{"constant":false,"inputs":[{"name":"contractHashes","type":"bytes32[]"}],"name":"addValidPluginContracts","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x32ce8ebc"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x32f0a3b5"},{"constant":false,"inputs":[{"name":"useWhitelist","type":"bool"}],"name":"useWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x38740291"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"getPledge","outputs":[{"name":"amount","type":"uint256"},{"name":"owner","type":"uint64"},{"name":"nDelegates","type":"uint64"},{"name":"intendedProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"oldPledge","type":"uint64"},{"name":"token","type":"address"},{"name":"pledgeState","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x3f657a46"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x43387983"},{"constant":false,"inputs":[{"name":"idSender","type":"uint64"},{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"},{"name":"idReceiver","type":"uint64"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x47c5ef43"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"idReceiver","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"donate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x4c4316c7"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isValidPlugin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x4eafbcd5"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"normalizePledge","outputs":[{"name":"","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x50f8a803"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addDelegate","outputs":[{"name":"idDelegate","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x52dc7dcc"},{"constant":true,"inputs":[],"name":"numberOfPledgeAdmins","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x5503d9ba"},{"constant":false,"inputs":[{"name":"pledgesAmounts","type":"uint256[]"}],"name":"mWithdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x57adafb6"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x60b1e057"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"removeValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x6293c702"},{"constant":false,"inputs":[{"name":"idReceiver","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"addGiverAndDonate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x6ba3cc87"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x6e802c6a"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"projectAdmin","type":"address"},{"name":"parentProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addProject","outputs":[{"name":"idProject","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x72116e92"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"}],"name":"cancelProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x796d5654"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"addValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x79f4542e"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x7e7db6e1"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x7f61fa93"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x80afdea8"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getCodeHash","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x81ea4408"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8322fff2"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8b3dd749"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x9b3fdf4c"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x9d4941d8"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xa1658fad"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"cancelPledge","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xaf9f4563"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"removeValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xb12b5f76"},{"constant":false,"inputs":[{"name":"_vault","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xc4d66de8"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"addValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xc8ae070f"},{"constant":false,"inputs":[{"name":"idDelegate","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateDelegate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xcc19ecf7"},{"constant":false,"inputs":[{"name":"pledges","type":"uint64[]"}],"name":"mNormalizePledge","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xce17273c"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xd4aae0c4"},{"constant":false,"inputs":[{"name":"idSender","type":"uint64"},{"name":"pledgesAmounts","type":"uint256[]"},{"name":"idReceiver","type":"uint64"}],"name":"mTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd639cd73"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateGiver","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xdb7c2314"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"cancelPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xe9c211e2"},{"constant":true,"inputs":[{"name":"idAdmin","type":"uint64"}],"name":"getPledgeAdmin","outputs":[{"name":"adminType","type":"uint8"},{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"parentProject","type":"uint64"},{"name":"canceled","type":"bool"},{"name":"plugin","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xeba8ba06"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xf6b24b1c"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xf92a79ff"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xfbfa77cf"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"uint256"},{"indexed":true,"name":"to","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Transfer","type":"event","signature":"0xaf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f6"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint256"}],"name":"CancelProject","type":"event","signature":"0x74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d346"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverAdded","type":"event","signature":"0xf5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a3"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverUpdated","type":"event","signature":"0x4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateAdded","type":"event","signature":"0xd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateUpdated","type":"event","signature":"0x6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectAdded","type":"event","signature":"0x9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectUpdated","type":"event","signature":"0xab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c58707"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/LiquidPledging.sol","originalFilename":"contracts/LiquidPledging.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/LiquidPledging.sol","gas":"auto","type":"file","deploy":true,"_gasLimit":6000000,"error":false,"deploymentAccount":"0x1179823e34aBF984C52fC0CdD7b7b9F5dd394aB9","realArgs":[],"address":"0x07E92635AF5e524C20B20F2770aE0E0Ef597eD07","deployedAddress":"0x07E92635AF5e524C20B20F2770aE0E0Ef597eD07"},"address":"0x07E92635AF5e524C20B20F2770aE0E0Ef597eD07","code":"60606040526069805460ff19169055341561001957600080fd5b615218806100286000396000f3006060604052600436106102415763ffffffff60e060020a6000350416627611c68114610246578063178e60791461027c5780631c8e8568146102a15780632101a6ad146102c857806324fea3b0146102e75780632a8ec8cc146102fa5780632ee888081461030d5780632f6b64ca1461032f57806332ce8ebc146103eb57806332f0a3b51461040957806338740291146104385780633f657a461461045057806343387983146104de57806347c5ef43146105005780634c4316c71461052f5780634eafbcd51461056357806350f8a8031461058257806352dc7dcc146105bd5780635503d9ba146105ff57806357adafb61461061257806360b1e057146106615780636293c702146106745780636ba3cc87146106935780636e802c6a146106c157806372116e921461077b578063796d5654146107cc57806379f4542e146107eb5780637e7db6e11461080a5780637f61fa931461082957806380afdea81461086b57806381ea44081461087e5780638322fff21461089d5780638b3dd749146108b05780639b3fdf4c146108c35780639d4941d8146108d6578063a1658fad146108f5578063af9f456314610958578063b12b5f761461097a578063c4d66de814610990578063c8ae070f146109af578063cc19ecf7146109c5578063ce17273c14610a11578063d4aae0c414610a60578063d639cd7314610a73578063db7c231414610adb578063e9c211e214610b27578063eba8ba0614610b49578063f6b24b1c14610c9f578063f92a79ff14610ceb578063fbfa77cf14610d3c575b600080fd5b341561025157600080fd5b61027a6001604060020a0360043516600160a060020a0360243581169060443516606435610d4f565b005b341561028757600080fd5b61028f610daa565b60405190815260200160405180910390f35b34156102ac57600080fd5b6102b4610dce565b604051901515815260200160405180910390f35b34156102d357600080fd5b6102b46001604060020a0360043516610dd7565b34156102f257600080fd5b61028f610e79565b341561030557600080fd5b61028f610e9b565b341561031857600080fd5b61027a6001604060020a0360043516602435610ea6565b341561033a57600080fd5b6103546001604060020a0360043581169060243516610fda565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103ae578082015183820152602001610396565b50505050905090810190601f1680156103db5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34156103f657600080fd5b61027a6004803560248101910135611108565b341561041457600080fd5b61041c61119c565b604051600160a060020a03909116815260200160405180910390f35b341561044357600080fd5b61027a600435151561121c565b341561045b57600080fd5b61046f6001604060020a0360043516611282565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104c357fe5b60ff1681526020019850505050505050505060405180910390f35b34156104e957600080fd5b61027a6001604060020a03600435166024356113ff565b341561050b57600080fd5b61027a6001604060020a0360043581169060243581169060443590606435166115e6565b341561053a57600080fd5b61027a6001604060020a0360043581169060243516600160a060020a03604435166064356115fb565b341561056e57600080fd5b6102b4600160a060020a0360043516611792565b341561058d57600080fd5b6105a16001604060020a0360043516611809565b6040516001604060020a03909116815260200160405180910390f35b34156105c857600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166119fe565b341561060a57600080fd5b61028f611c8b565b341561061d57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611c9595505050505050565b341561066c57600080fd5b61028f611d00565b341561067f57600080fd5b61027a600160a060020a0360043516611d24565b341561069e57600080fd5b61027a6001604060020a0360043516600160a060020a0360243516604435611d85565b34156106cc57600080fd5b6105a160048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611d96915050565b341561078657600080fd5b6105a16024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612003565b34156107d757600080fd5b61027a6001604060020a03600435166124b0565b34156107f657600080fd5b61027a600160a060020a036004351661251a565b341561081557600080fd5b6102b4600160a060020a0360043516612592565b341561083457600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516612598565b341561087657600080fd5b61028f612614565b341561088957600080fd5b61028f600160a060020a036004351661261a565b34156108a857600080fd5b61041c61269c565b34156108bb57600080fd5b61028f6126a1565b34156108ce57600080fd5b61028f6126a7565b34156108e157600080fd5b61027a600160a060020a03600435166126cb565b341561090057600080fd5b6102b460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061284295505050505050565b341561096357600080fd5b61027a6001604060020a0360043516602435612980565b341561098557600080fd5b61027a600435612a15565b341561099b57600080fd5b61027a600160a060020a0360043516612a6d565b34156109ba57600080fd5b61027a600435612ad6565b34156109d057600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b45565b3415610a1c57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4e95505050505050565b3415610a6b57600080fd5b61041c612c81565b3415610a7e57600080fd5b61027a600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c90915050565b3415610ae657600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d05565b3415610b3257600080fd5b61027a6001604060020a0360043516602435612e0e565b3415610b5457600080fd5b610b686001604060020a0360043516612f36565b60405180896002811115610b7857fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610bf9578082015183820152602001610be1565b50505050905090810190601f168015610c265780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c5c578082015183820152602001610c44565b50505050905090810190601f168015610c895780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610caa57600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613105565b3415610cf657600080fd5b61041c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061320e95505050505050565b3415610d4757600080fd5b61041c6132ea565b6000600160a060020a0384161515610d6657600080fd5b610d95846020604051908101604052806000815250602060405190810160405260008082526203f48090611d96565b9050610da3818685856115fb565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610de3836132fe565b90506000815460ff166002811115610df757fe5b1415610e065760009150610e73565b6002815460ff166002811115610e1857fe5b14610e1f57fe5b6001810154604060020a900460ff1615610e3c5760019150610e73565b60018101546001604060020a03161515610e595760009150610e73565b6001810154610e70906001604060020a0316610dd7565b91505b50919050565b6040516000805160206151ad8339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610ecb57600080fd5b610ed484613344565b91506001600383015460a060020a900460ff166002811115610ef257fe5b14610efc57600080fd5b6002820154600183018054610fc7926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610f8f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f4c5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613375565b9050610fd4848285613697565b50505050565b600080610fe5614df8565b600080610ff187613344565b915081600101600187036001604060020a031681548110151561101057fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450611044856132fe565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110f85780601f106110cd576101008083540402835291602001916110f8565b820191906000526020600020905b8154815290600101906020018083116110db57829003601f168201915b5050505050925050509250925092565b60006040516000805160206151ad833981519152815260130160405180910390206111533382600060405180591061113d5750595b9080825280602002602001820160405250612842565b151561115e57600080fd5b600091505b60ff821683901015610fd457611191848460ff851681811061118157fe5b9050602002013560001916612ad6565b600190910190611163565b60008054600160a060020a031615156111b457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111fd57600080fd5b6102c65a03f1151561120e57600080fd5b505050604051805191505090565b6040516000805160206151ad833981519152815260130160405180910390206112643382600060405180591061113d5750599080825280602002602001820160405250612842565b151561126f57600080fd5b506069805460ff19169115919091179055565b600080600080600080600080611296614e0a565b61129f8a613344565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561133757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116112f45790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ad57fe5b60028111156113b857fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061140d85611809565b945061141885613344565b92506000600384015460a060020a900460ff16600281111561143657fe5b1461144057600080fd5b6002830154611457906001604060020a031661376b565b600283015460018401805461151f926001604060020a031691906020808202016040519081016040528092919081815260200182805480156114ea57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114a75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613375565b915061152c858386613697565b6002830154611543906001604060020a03166132fe565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b15156115cb57600080fd5b6102c65a03f115156115dc57600080fd5b5050505050505050565b6115ef8461376b565b610fd4848484846137c2565b600080806001604060020a03871681901161161557600080fd5b6000841161162257600080fd5b600160a060020a038516151561163757600080fd5b611640876132fe565b92506000835460ff16600281111561165457fe5b1461165e57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156116d457600080fd5b6102c65a03f115156116e557600080fd5b5050506040518051905015156116fa57600080fd5b61172b87600060405180591061170d5750595b908082528060200260200182016040525060008060008a6000613375565b915061173682613344565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a3611789878386896137c2565b50505050505050565b606954600090819060ff16806117af5750600160a060020a038316155b156117bd5760019150610e73565b600160a060020a03831660009081526068602052604090205460ff16156117e75760019150610e73565b6117f08361261a565b60009081526067602052604090205460ff169392505050565b60008060008061181885613344565b92506000600384015460a060020a900460ff16600281111561183657fe5b14611843578493506119f6565b60028301546000604060020a9091046001604060020a031611801561188257506002830154608060020a90046001604060020a0316611880613e19565b115b156119c557600283015460018401805461194e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116118d75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b60028401549092506119a590604060020a90046001604060020a031660006040518059106119795750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b90506119b685828560000154613697565b8094506119c285613344565b92505b6119ce85613e1d565b90506001604060020a03808216908616146119f2576119f285828560000154613697565b8093505b505050919050565b6000611a0982611792565b1515611a1457600080fd5b5060648054908160018101611a298382614e56565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b1a57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0b929160200190614e82565b5060e082015181600301908051611c26929160200190614e82565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015610fd4576001604060020a03848481518110611cb757fe5b90602001906020020151169150604060020a848481518110611cd557fe5b90602001906020020151811515611ce857fe5b049050611cf582826113ff565b600190920191611c9a565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206151ad83398151915281526013016040518091039020611d4c82613ee5565b611d57338383612842565b1515611d6257600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611d9183338484610d4f565b505050565b6000611da182611792565b1515611dac57600080fd5b5060648054908160018101611dc18382614e56565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e3e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f2f929160200190614e82565b5060e082015181600301908051611f4a929160200190614e82565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fc0578082015183820152602001611fa8565b50505050905090810190601f168015611fed5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061200f83611792565b151561201a57600080fd5b6001604060020a0385161561223757612032856132fe565b90506014612224826101006040519081016040528154909190829060ff16600281111561205b57fe5b600281111561206657fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121745780601f1061214957610100808354040283529160200191612174565b820191906000526020600020905b81548152906001019060200180831161215757829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122165780601f106121eb57610100808354040283529160200191612216565b820191906000526020600020905b8154815290600101906020018083116121f957829003601f168201915b505050505081525050613f05565b6001604060020a03161061223757600080fd5b606480549250826001810161224c8382614e56565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561233c57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161242d929160200190614e82565b5060e082015181600301908051612448929160200190614e82565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124bb826132fe565b90506124c68261376b565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b6040516000805160206151ad833981519152815260130160405180910390206125623382600060405180591061113d5750599080825280602002602001820160405250612842565b151561256d57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126093388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611d96565b979650505050505050565b60015481565b6000612624614df8565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126685780518252601f199092019160209182019101612649565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806126d783612592565b15156126e257600080fd5b6126ea61119c565b91506126f582613f79565b151561270057600080fd5b600160a060020a03831615156127525781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561274d57600080fd5b611d91565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127a957600080fd5b6102c65a03f115156127ba57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561282257600080fd5b6102c65a03f1151561283357600080fd5b50505060405180515050505050565b600061284c614df8565b6000808451111561286557835160200290508391508082525b600054600160a060020a03161580612976575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561290c5780820151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561295a57600080fd5b6102c65a03f1151561296b57600080fd5b505050604051805190505b9695505050505050565b60008061298c84611809565b935061299784613344565b600281015490925060c060020a90046001604060020a031615156129ba57600080fd5b6000600383015460a060020a900460ff1660028111156129d657fe5b146129e057600080fd5b60028201546129f7906001604060020a031661376b565b6002820154610fc79060c060020a90046001604060020a0316613e1d565b6040516000805160206151ad83398151915281526013016040518091039020612a3d82613f9f565b612a48338383612842565b1515612a5357600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612a7a57600080fd5b600160a060020a0381161515612a8f57600080fd5b612a97613fb0565b6069805461010060a860020a031916610100600160a060020a038416021790556001612ac4606482614e56565b506001612ad2606582614efc565b5050565b6040516000805160206151ad83398151915281526013016040518091039020612b1e3382600060405180591061113d5750599080825280602002602001820160405250612842565b1515612b2957600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b50886132fe565b805490915033600160a060020a039081166101009092041614612b7257600080fd5b6001815460ff166002811115612b8457fe5b14612b8e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bba600282018787614f28565b50612bc9600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612ad257612c78828281518110612c6957fe5b90602001906020020151611809565b50600101612c51565b600054600160a060020a031681565b600080805b8451831015612cfd576001604060020a03858481518110612cb257fe5b90602001906020020151169150604060020a858481518110612cd057fe5b90602001906020020151811515612ce357fe5b049050612cf2868383876115e6565b600190920191612c95565b505050505050565b6000612d10886132fe565b805490915033600160a060020a039081166101009092041614612d3257600080fd5b6000815460ff166002811115612d4457fe5b14612d4e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7a600282018787614f28565b50612d89600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3357600080fd5b612e3c84613344565b91506001600383015460a060020a900460ff166002811115612e5a57fe5b14612e6457600080fd5b6002820154600183018054612f2b926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb45790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b9050610fc781611809565b600080612f41614df8565b612f49614df8565b6000806000806000612f5a8a6132fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f8201819004810201604051908101604052809291908181526020018280546001816001161561010002031660029004801561300f5780601f10612fe45761010080835404028352916020019161300f565b820191906000526020600020905b815481529060010190602001808311612ff257829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130ae5780601f10613083576101008083540402835291602001916130ae565b820191906000526020600020905b81548152906001019060200180831161309157829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000613110886132fe565b805490915033600160a060020a03908116610100909204161461313257600080fd5b6002815460ff16600281111561314457fe5b1461314e57600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317a600282018787614f28565b50613189600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000613218613fca565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561327f578082015183820152602001613267565b50505050905090810190601f1680156132ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132ca57600080fd5b6102c65a03f115156132db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331857600080fd5b606480546001604060020a03841690811061332f57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061335e57600080fd5b606580546001604060020a03841690811061332f57fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133ae578082015183820152602001613396565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341857fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134825780925061368a565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c28382614efc565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354357fe5b905291905081518155602082015181600101908051613566929160200190614f96565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561367e57fe5b02179055505050508092505b5050979650505050505050565b60008060006136a96001878787614061565b9250846001604060020a0316866001604060020a031614156136ca57612cfd565b8215156136d657612cfd565b6136df86613344565b91506136ea85613344565b8254909150839010156136fc57600080fd5b81548390038255805483018082558390101561371757600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117896000878786614061565b6000613776826132fe565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b75750805433600160a060020a0390811661010090920416145b1515612ad257600080fd5b600080808080806001604060020a0387168190116137df57600080fd5b6137e889611809565b98506137f389613344565b95506137fe876132fe565b94506000600387015460a060020a900460ff16600281111561381c57fe5b1461382657600080fd5b60028601546001604060020a038b811691161415613b21576000855460ff16600281111561385057fe5b141561386657613861898989614087565b613e0d565b6002855460ff16600281111561387857fe5b1415613889576138618989896140e1565b6001855460ff16600281111561389b57fe5b1415613b1f576139c7866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fa5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b60028111156139be57fe5b9052508861431f565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fa57506001604060020a038414155b15613b0057600186015460001901841415613ae3576002860154600187018054613ad6926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa257602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a5f5790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b925061386189848a613697565b613afa89896001848a600101805490500303614385565b50613e0d565b613b1289898860010180549050614385565b985061386189898961448f565bfe5b613c478661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbd57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7a5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3357fe5b6002811115613c3e57fe5b9052508b61431f565b6001604060020a0390811692508214613b1f576000855460ff166002811115613c6c57fe5b1415613c9d5760028601546001604060020a03888116911614613c8b57fe5b613afa89898860010180549050614385565b6001855460ff166002811115613caf57fe5b1415613dd157613d9c866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fa575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b6001604060020a039081169150811480613db557508181115b15613ae357613b1289896001858a600101805490500303614385565b6002855460ff166002811115613de357fe5b1415613b1f57613e0089896001858a600101805490500303614385565b98506138618989896145bf565b50505050505050505050565b4290565b600080806001604060020a0384161515613e3a5760009250613ede565b613e4384613344565b6002810154909250613e5d906001604060020a03166132fe565b90506000815460ff166002811115613e7157fe5b1415613e7f57839250613ede565b6002815460ff166002811115613e9157fe5b14613e9857fe5b6002820154613eaf906001604060020a0316610dd7565b1515613ebd57839250613ede565b6002820154613edb9060c060020a90046001604060020a0316613e1d565b92505b5050919050565b613eed614df8565b613eff82600160a060020a03166148d2565b92915050565b600080600283516002811115613f1757fe5b14613f1e57fe5b82606001516001604060020a03161515613f3b5760019150610e73565b613f4883606001516132fe565b9050613f6f816101006040519081016040528154909190829060ff16600281111561205b57fe5b6001019392505050565b600080600160a060020a0383161515613f955760009150610e73565b50506000903b1190565b613fa7614df8565b613eff826148d2565b60035415613fbd57600080fd5b613fc5614919565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561403d57600080fd5b6102c65a03f1151561404e57600080fd5b50505060405180519250829150505b5090565b8061406f858580868561491d565b905061407e858486868561491d565b95945050505050565b60008061409385613344565b91506140d48360006040518059106140a85750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613375565b9050610da3858286613697565b60008060006140ef86613344565b92506014614218846101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161414c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b600281111561421057fe5b905250614a85565b1061422257600080fd5b61422b84610dd7565b1561423557600080fd5b60028301546001840180546142d2926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57600091825260209182902080546001604060020a031684529082028301929091600891018084116118d75750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613375565b91506143128460006040518059106119795750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b9050612cfd868287613697565b6000805b83602001515181101561437357826001604060020a03168460200151828151811061434a57fe5b906020019060200201516001604060020a0316141561436b5780915061437e565b600101614323565b6001604060020a0391505b5092915050565b600080614390614df8565b600061439b87613344565b60018101549093508590036040518059106143b35750595b90808252806020026020018201604052509150600090505b600183015485900381101561443e57600183018054829081106143ea57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061441f57fe5b6001604060020a039092166020928302909101909101526001016143cb565b60028301546003840154614478916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613375565b9350614485878588613697565b5050509392505050565b6000614499614df8565b6000806144a587613344565b6001810154909450600a90106144ba57600080fd5b600180850154016040518059106144ce5750595b90808252806020026020018201604052509250600091505b6001840154821015614559576001840180548390811061450257fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061453757fe5b6001604060020a039092166020928302909101909101526001909101906144e6565b6001840154859084908151811061456c57fe5b6001604060020a0392831660209182029092010152600285015460038601546145b292828116928792600092839260c060020a90041690600160a060020a031682613375565b9050611789878288613697565b6000806145cb85613344565b915060146146b6836101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b106146c057600080fd5b6146c983610dd7565b156146d357600080fd5b60028201546001830180546140d4926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561476657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147235790505b505050505085614891866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561480857602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147c55790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561487e57fe5b600281111561488957fe5b905250614b9b565b6001604060020a03166148a2613e19565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613375565b6148da614df8565b60016040518059106148e95750595b90808252806020026020018201604052509050818160008151811061490a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a03161461494457610100614947565b60005b61ffff16925084935061495988613344565b6002810154600382015491935061498b918b916001604060020a0316908a908a908890600160a060020a03168a614c33565b9350600090505b60018201546001604060020a0382161015614a1e57614a148983600101836001604060020a03168154811015156149c557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c33565b9350600101614992565b60028201546000604060020a9091046001604060020a03161115614a795760028201546003830154614a76918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c33565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614aa55760009150610e73565b614ab28360a00151613344565b9050613f6f816101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b6000806000614bad84604001516132fe565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ede57614bf784602001518281518110614be857fe5b906020019060200201516132fe565b80549092506001604060020a0380851660a860020a909204161115614c2b57815460a860020a90046001604060020a031692505b600101614bc8565b80600080614c40896132fe565b600181015490915069010000000000000000009004600160a060020a031615801590614c6c5750600083115b1561368a578915614d4457600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d1357600080fd5b6102c65a03f11515614d2457600080fd5b505050604051805192505082821115614d3c57600080fd5b81925061368a565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614dd757600080fd5b6102c65a03f11515614de857600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e26614df8565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611d9157600402816004028360005260206000209182019101611d91919061504a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614ec357805160ff1916838001178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578251825591602001919060010190614ed5565b5061405d9291506150b1565b815481835581811511611d9157600402816004028360005260206000209182019101611d9191906150cb565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f695782800160ff19823516178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578235825591602001919060010190614f7b565b8280548282559060005260206000209060030160049004810192821561503e5791602002820160005b8382111561500957835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302614fbf565b801561503c5782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615009565b505b5061405d92915061511b565b610ea391905b8082111561405d5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061509a6002830182615140565b6150a8600383016000615140565b50600401615050565b610ea391905b8082111561405d57600081556001016150b7565b610ea391905b8082111561405d5760008082556150eb6001830182615187565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff191690556004016150d1565b610ea391905b8082111561405d57805467ffffffffffffffff19168155600101615121565b50805460018160011615610100020316600290046000825580601f106151665750615184565b601f01602090049060005260206000209081019061518491906150b1565b50565b50805460008255600301600490049060005260206000209081019061518491906150b15600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820ed1eacae6750bb2e266a5f861872a813708ecd94e8e2f531e86e5b01327a4c7d0029","runtime_bytecode":"6060604052600436106102415763ffffffff60e060020a6000350416627611c68114610246578063178e60791461027c5780631c8e8568146102a15780632101a6ad146102c857806324fea3b0146102e75780632a8ec8cc146102fa5780632ee888081461030d5780632f6b64ca1461032f57806332ce8ebc146103eb57806332f0a3b51461040957806338740291146104385780633f657a461461045057806343387983146104de57806347c5ef43146105005780634c4316c71461052f5780634eafbcd51461056357806350f8a8031461058257806352dc7dcc146105bd5780635503d9ba146105ff57806357adafb61461061257806360b1e057146106615780636293c702146106745780636ba3cc87146106935780636e802c6a146106c157806372116e921461077b578063796d5654146107cc57806379f4542e146107eb5780637e7db6e11461080a5780637f61fa931461082957806380afdea81461086b57806381ea44081461087e5780638322fff21461089d5780638b3dd749146108b05780639b3fdf4c146108c35780639d4941d8146108d6578063a1658fad146108f5578063af9f456314610958578063b12b5f761461097a578063c4d66de814610990578063c8ae070f146109af578063cc19ecf7146109c5578063ce17273c14610a11578063d4aae0c414610a60578063d639cd7314610a73578063db7c231414610adb578063e9c211e214610b27578063eba8ba0614610b49578063f6b24b1c14610c9f578063f92a79ff14610ceb578063fbfa77cf14610d3c575b600080fd5b341561025157600080fd5b61027a6001604060020a0360043516600160a060020a0360243581169060443516606435610d4f565b005b341561028757600080fd5b61028f610daa565b60405190815260200160405180910390f35b34156102ac57600080fd5b6102b4610dce565b604051901515815260200160405180910390f35b34156102d357600080fd5b6102b46001604060020a0360043516610dd7565b34156102f257600080fd5b61028f610e79565b341561030557600080fd5b61028f610e9b565b341561031857600080fd5b61027a6001604060020a0360043516602435610ea6565b341561033a57600080fd5b6103546001604060020a0360043581169060243516610fda565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103ae578082015183820152602001610396565b50505050905090810190601f1680156103db5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34156103f657600080fd5b61027a6004803560248101910135611108565b341561041457600080fd5b61041c61119c565b604051600160a060020a03909116815260200160405180910390f35b341561044357600080fd5b61027a600435151561121c565b341561045b57600080fd5b61046f6001604060020a0360043516611282565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104c357fe5b60ff1681526020019850505050505050505060405180910390f35b34156104e957600080fd5b61027a6001604060020a03600435166024356113ff565b341561050b57600080fd5b61027a6001604060020a0360043581169060243581169060443590606435166115e6565b341561053a57600080fd5b61027a6001604060020a0360043581169060243516600160a060020a03604435166064356115fb565b341561056e57600080fd5b6102b4600160a060020a0360043516611792565b341561058d57600080fd5b6105a16001604060020a0360043516611809565b6040516001604060020a03909116815260200160405180910390f35b34156105c857600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166119fe565b341561060a57600080fd5b61028f611c8b565b341561061d57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611c9595505050505050565b341561066c57600080fd5b61028f611d00565b341561067f57600080fd5b61027a600160a060020a0360043516611d24565b341561069e57600080fd5b61027a6001604060020a0360043516600160a060020a0360243516604435611d85565b34156106cc57600080fd5b6105a160048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611d96915050565b341561078657600080fd5b6105a16024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612003565b34156107d757600080fd5b61027a6001604060020a03600435166124b0565b34156107f657600080fd5b61027a600160a060020a036004351661251a565b341561081557600080fd5b6102b4600160a060020a0360043516612592565b341561083457600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516612598565b341561087657600080fd5b61028f612614565b341561088957600080fd5b61028f600160a060020a036004351661261a565b34156108a857600080fd5b61041c61269c565b34156108bb57600080fd5b61028f6126a1565b34156108ce57600080fd5b61028f6126a7565b34156108e157600080fd5b61027a600160a060020a03600435166126cb565b341561090057600080fd5b6102b460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061284295505050505050565b341561096357600080fd5b61027a6001604060020a0360043516602435612980565b341561098557600080fd5b61027a600435612a15565b341561099b57600080fd5b61027a600160a060020a0360043516612a6d565b34156109ba57600080fd5b61027a600435612ad6565b34156109d057600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b45565b3415610a1c57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4e95505050505050565b3415610a6b57600080fd5b61041c612c81565b3415610a7e57600080fd5b61027a600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c90915050565b3415610ae657600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d05565b3415610b3257600080fd5b61027a6001604060020a0360043516602435612e0e565b3415610b5457600080fd5b610b686001604060020a0360043516612f36565b60405180896002811115610b7857fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610bf9578082015183820152602001610be1565b50505050905090810190601f168015610c265780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c5c578082015183820152602001610c44565b50505050905090810190601f168015610c895780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610caa57600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613105565b3415610cf657600080fd5b61041c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061320e95505050505050565b3415610d4757600080fd5b61041c6132ea565b6000600160a060020a0384161515610d6657600080fd5b610d95846020604051908101604052806000815250602060405190810160405260008082526203f48090611d96565b9050610da3818685856115fb565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610de3836132fe565b90506000815460ff166002811115610df757fe5b1415610e065760009150610e73565b6002815460ff166002811115610e1857fe5b14610e1f57fe5b6001810154604060020a900460ff1615610e3c5760019150610e73565b60018101546001604060020a03161515610e595760009150610e73565b6001810154610e70906001604060020a0316610dd7565b91505b50919050565b6040516000805160206151ad8339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610ecb57600080fd5b610ed484613344565b91506001600383015460a060020a900460ff166002811115610ef257fe5b14610efc57600080fd5b6002820154600183018054610fc7926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610f8f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f4c5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613375565b9050610fd4848285613697565b50505050565b600080610fe5614df8565b600080610ff187613344565b915081600101600187036001604060020a031681548110151561101057fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450611044856132fe565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110f85780601f106110cd576101008083540402835291602001916110f8565b820191906000526020600020905b8154815290600101906020018083116110db57829003601f168201915b5050505050925050509250925092565b60006040516000805160206151ad833981519152815260130160405180910390206111533382600060405180591061113d5750595b9080825280602002602001820160405250612842565b151561115e57600080fd5b600091505b60ff821683901015610fd457611191848460ff851681811061118157fe5b9050602002013560001916612ad6565b600190910190611163565b60008054600160a060020a031615156111b457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111fd57600080fd5b6102c65a03f1151561120e57600080fd5b505050604051805191505090565b6040516000805160206151ad833981519152815260130160405180910390206112643382600060405180591061113d5750599080825280602002602001820160405250612842565b151561126f57600080fd5b506069805460ff19169115919091179055565b600080600080600080600080611296614e0a565b61129f8a613344565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561133757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116112f45790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ad57fe5b60028111156113b857fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061140d85611809565b945061141885613344565b92506000600384015460a060020a900460ff16600281111561143657fe5b1461144057600080fd5b6002830154611457906001604060020a031661376b565b600283015460018401805461151f926001604060020a031691906020808202016040519081016040528092919081815260200182805480156114ea57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114a75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613375565b915061152c858386613697565b6002830154611543906001604060020a03166132fe565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b15156115cb57600080fd5b6102c65a03f115156115dc57600080fd5b5050505050505050565b6115ef8461376b565b610fd4848484846137c2565b600080806001604060020a03871681901161161557600080fd5b6000841161162257600080fd5b600160a060020a038516151561163757600080fd5b611640876132fe565b92506000835460ff16600281111561165457fe5b1461165e57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156116d457600080fd5b6102c65a03f115156116e557600080fd5b5050506040518051905015156116fa57600080fd5b61172b87600060405180591061170d5750595b908082528060200260200182016040525060008060008a6000613375565b915061173682613344565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a3611789878386896137c2565b50505050505050565b606954600090819060ff16806117af5750600160a060020a038316155b156117bd5760019150610e73565b600160a060020a03831660009081526068602052604090205460ff16156117e75760019150610e73565b6117f08361261a565b60009081526067602052604090205460ff169392505050565b60008060008061181885613344565b92506000600384015460a060020a900460ff16600281111561183657fe5b14611843578493506119f6565b60028301546000604060020a9091046001604060020a031611801561188257506002830154608060020a90046001604060020a0316611880613e19565b115b156119c557600283015460018401805461194e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116118d75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b60028401549092506119a590604060020a90046001604060020a031660006040518059106119795750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b90506119b685828560000154613697565b8094506119c285613344565b92505b6119ce85613e1d565b90506001604060020a03808216908616146119f2576119f285828560000154613697565b8093505b505050919050565b6000611a0982611792565b1515611a1457600080fd5b5060648054908160018101611a298382614e56565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b1a57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0b929160200190614e82565b5060e082015181600301908051611c26929160200190614e82565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015610fd4576001604060020a03848481518110611cb757fe5b90602001906020020151169150604060020a848481518110611cd557fe5b90602001906020020151811515611ce857fe5b049050611cf582826113ff565b600190920191611c9a565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206151ad83398151915281526013016040518091039020611d4c82613ee5565b611d57338383612842565b1515611d6257600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611d9183338484610d4f565b505050565b6000611da182611792565b1515611dac57600080fd5b5060648054908160018101611dc18382614e56565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e3e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f2f929160200190614e82565b5060e082015181600301908051611f4a929160200190614e82565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fc0578082015183820152602001611fa8565b50505050905090810190601f168015611fed5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061200f83611792565b151561201a57600080fd5b6001604060020a0385161561223757612032856132fe565b90506014612224826101006040519081016040528154909190829060ff16600281111561205b57fe5b600281111561206657fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121745780601f1061214957610100808354040283529160200191612174565b820191906000526020600020905b81548152906001019060200180831161215757829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122165780601f106121eb57610100808354040283529160200191612216565b820191906000526020600020905b8154815290600101906020018083116121f957829003601f168201915b505050505081525050613f05565b6001604060020a03161061223757600080fd5b606480549250826001810161224c8382614e56565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561233c57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161242d929160200190614e82565b5060e082015181600301908051612448929160200190614e82565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124bb826132fe565b90506124c68261376b565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b6040516000805160206151ad833981519152815260130160405180910390206125623382600060405180591061113d5750599080825280602002602001820160405250612842565b151561256d57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126093388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611d96565b979650505050505050565b60015481565b6000612624614df8565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126685780518252601f199092019160209182019101612649565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806126d783612592565b15156126e257600080fd5b6126ea61119c565b91506126f582613f79565b151561270057600080fd5b600160a060020a03831615156127525781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561274d57600080fd5b611d91565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127a957600080fd5b6102c65a03f115156127ba57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561282257600080fd5b6102c65a03f1151561283357600080fd5b50505060405180515050505050565b600061284c614df8565b6000808451111561286557835160200290508391508082525b600054600160a060020a03161580612976575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561290c5780820151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561295a57600080fd5b6102c65a03f1151561296b57600080fd5b505050604051805190505b9695505050505050565b60008061298c84611809565b935061299784613344565b600281015490925060c060020a90046001604060020a031615156129ba57600080fd5b6000600383015460a060020a900460ff1660028111156129d657fe5b146129e057600080fd5b60028201546129f7906001604060020a031661376b565b6002820154610fc79060c060020a90046001604060020a0316613e1d565b6040516000805160206151ad83398151915281526013016040518091039020612a3d82613f9f565b612a48338383612842565b1515612a5357600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612a7a57600080fd5b600160a060020a0381161515612a8f57600080fd5b612a97613fb0565b6069805461010060a860020a031916610100600160a060020a038416021790556001612ac4606482614e56565b506001612ad2606582614efc565b5050565b6040516000805160206151ad83398151915281526013016040518091039020612b1e3382600060405180591061113d5750599080825280602002602001820160405250612842565b1515612b2957600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b50886132fe565b805490915033600160a060020a039081166101009092041614612b7257600080fd5b6001815460ff166002811115612b8457fe5b14612b8e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bba600282018787614f28565b50612bc9600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612ad257612c78828281518110612c6957fe5b90602001906020020151611809565b50600101612c51565b600054600160a060020a031681565b600080805b8451831015612cfd576001604060020a03858481518110612cb257fe5b90602001906020020151169150604060020a858481518110612cd057fe5b90602001906020020151811515612ce357fe5b049050612cf2868383876115e6565b600190920191612c95565b505050505050565b6000612d10886132fe565b805490915033600160a060020a039081166101009092041614612d3257600080fd5b6000815460ff166002811115612d4457fe5b14612d4e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7a600282018787614f28565b50612d89600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3357600080fd5b612e3c84613344565b91506001600383015460a060020a900460ff166002811115612e5a57fe5b14612e6457600080fd5b6002820154600183018054612f2b926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb45790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b9050610fc781611809565b600080612f41614df8565b612f49614df8565b6000806000806000612f5a8a6132fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f8201819004810201604051908101604052809291908181526020018280546001816001161561010002031660029004801561300f5780601f10612fe45761010080835404028352916020019161300f565b820191906000526020600020905b815481529060010190602001808311612ff257829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130ae5780601f10613083576101008083540402835291602001916130ae565b820191906000526020600020905b81548152906001019060200180831161309157829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000613110886132fe565b805490915033600160a060020a03908116610100909204161461313257600080fd5b6002815460ff16600281111561314457fe5b1461314e57600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317a600282018787614f28565b50613189600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000613218613fca565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561327f578082015183820152602001613267565b50505050905090810190601f1680156132ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132ca57600080fd5b6102c65a03f115156132db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331857600080fd5b606480546001604060020a03841690811061332f57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061335e57600080fd5b606580546001604060020a03841690811061332f57fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133ae578082015183820152602001613396565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341857fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134825780925061368a565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c28382614efc565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354357fe5b905291905081518155602082015181600101908051613566929160200190614f96565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561367e57fe5b02179055505050508092505b5050979650505050505050565b60008060006136a96001878787614061565b9250846001604060020a0316866001604060020a031614156136ca57612cfd565b8215156136d657612cfd565b6136df86613344565b91506136ea85613344565b8254909150839010156136fc57600080fd5b81548390038255805483018082558390101561371757600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117896000878786614061565b6000613776826132fe565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b75750805433600160a060020a0390811661010090920416145b1515612ad257600080fd5b600080808080806001604060020a0387168190116137df57600080fd5b6137e889611809565b98506137f389613344565b95506137fe876132fe565b94506000600387015460a060020a900460ff16600281111561381c57fe5b1461382657600080fd5b60028601546001604060020a038b811691161415613b21576000855460ff16600281111561385057fe5b141561386657613861898989614087565b613e0d565b6002855460ff16600281111561387857fe5b1415613889576138618989896140e1565b6001855460ff16600281111561389b57fe5b1415613b1f576139c7866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fa5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b60028111156139be57fe5b9052508861431f565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fa57506001604060020a038414155b15613b0057600186015460001901841415613ae3576002860154600187018054613ad6926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa257602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a5f5790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b925061386189848a613697565b613afa89896001848a600101805490500303614385565b50613e0d565b613b1289898860010180549050614385565b985061386189898961448f565bfe5b613c478661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbd57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7a5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3357fe5b6002811115613c3e57fe5b9052508b61431f565b6001604060020a0390811692508214613b1f576000855460ff166002811115613c6c57fe5b1415613c9d5760028601546001604060020a03888116911614613c8b57fe5b613afa89898860010180549050614385565b6001855460ff166002811115613caf57fe5b1415613dd157613d9c866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fa575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b6001604060020a039081169150811480613db557508181115b15613ae357613b1289896001858a600101805490500303614385565b6002855460ff166002811115613de357fe5b1415613b1f57613e0089896001858a600101805490500303614385565b98506138618989896145bf565b50505050505050505050565b4290565b600080806001604060020a0384161515613e3a5760009250613ede565b613e4384613344565b6002810154909250613e5d906001604060020a03166132fe565b90506000815460ff166002811115613e7157fe5b1415613e7f57839250613ede565b6002815460ff166002811115613e9157fe5b14613e9857fe5b6002820154613eaf906001604060020a0316610dd7565b1515613ebd57839250613ede565b6002820154613edb9060c060020a90046001604060020a0316613e1d565b92505b5050919050565b613eed614df8565b613eff82600160a060020a03166148d2565b92915050565b600080600283516002811115613f1757fe5b14613f1e57fe5b82606001516001604060020a03161515613f3b5760019150610e73565b613f4883606001516132fe565b9050613f6f816101006040519081016040528154909190829060ff16600281111561205b57fe5b6001019392505050565b600080600160a060020a0383161515613f955760009150610e73565b50506000903b1190565b613fa7614df8565b613eff826148d2565b60035415613fbd57600080fd5b613fc5614919565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561403d57600080fd5b6102c65a03f1151561404e57600080fd5b50505060405180519250829150505b5090565b8061406f858580868561491d565b905061407e858486868561491d565b95945050505050565b60008061409385613344565b91506140d48360006040518059106140a85750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613375565b9050610da3858286613697565b60008060006140ef86613344565b92506014614218846101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161414c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b600281111561421057fe5b905250614a85565b1061422257600080fd5b61422b84610dd7565b1561423557600080fd5b60028301546001840180546142d2926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57600091825260209182902080546001604060020a031684529082028301929091600891018084116118d75750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613375565b91506143128460006040518059106119795750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b9050612cfd868287613697565b6000805b83602001515181101561437357826001604060020a03168460200151828151811061434a57fe5b906020019060200201516001604060020a0316141561436b5780915061437e565b600101614323565b6001604060020a0391505b5092915050565b600080614390614df8565b600061439b87613344565b60018101549093508590036040518059106143b35750595b90808252806020026020018201604052509150600090505b600183015485900381101561443e57600183018054829081106143ea57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061441f57fe5b6001604060020a039092166020928302909101909101526001016143cb565b60028301546003840154614478916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613375565b9350614485878588613697565b5050509392505050565b6000614499614df8565b6000806144a587613344565b6001810154909450600a90106144ba57600080fd5b600180850154016040518059106144ce5750595b90808252806020026020018201604052509250600091505b6001840154821015614559576001840180548390811061450257fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061453757fe5b6001604060020a039092166020928302909101909101526001909101906144e6565b6001840154859084908151811061456c57fe5b6001604060020a0392831660209182029092010152600285015460038601546145b292828116928792600092839260c060020a90041690600160a060020a031682613375565b9050611789878288613697565b6000806145cb85613344565b915060146146b6836101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b106146c057600080fd5b6146c983610dd7565b156146d357600080fd5b60028201546001830180546140d4926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561476657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147235790505b505050505085614891866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561480857602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147c55790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561487e57fe5b600281111561488957fe5b905250614b9b565b6001604060020a03166148a2613e19565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613375565b6148da614df8565b60016040518059106148e95750595b90808252806020026020018201604052509050818160008151811061490a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a03161461494457610100614947565b60005b61ffff16925084935061495988613344565b6002810154600382015491935061498b918b916001604060020a0316908a908a908890600160a060020a03168a614c33565b9350600090505b60018201546001604060020a0382161015614a1e57614a148983600101836001604060020a03168154811015156149c557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c33565b9350600101614992565b60028201546000604060020a9091046001604060020a03161115614a795760028201546003830154614a76918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c33565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614aa55760009150610e73565b614ab28360a00151613344565b9050613f6f816101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b6000806000614bad84604001516132fe565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ede57614bf784602001518281518110614be857fe5b906020019060200201516132fe565b80549092506001604060020a0380851660a860020a909204161115614c2b57815460a860020a90046001604060020a031692505b600101614bc8565b80600080614c40896132fe565b600181015490915069010000000000000000009004600160a060020a031615801590614c6c5750600083115b1561368a578915614d4457600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d1357600080fd5b6102c65a03f11515614d2457600080fd5b505050604051805192505082821115614d3c57600080fd5b81925061368a565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614dd757600080fd5b6102c65a03f11515614de857600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e26614df8565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611d9157600402816004028360005260206000209182019101611d91919061504a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614ec357805160ff1916838001178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578251825591602001919060010190614ed5565b5061405d9291506150b1565b815481835581811511611d9157600402816004028360005260206000209182019101611d9191906150cb565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f695782800160ff19823516178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578235825591602001919060010190614f7b565b8280548282559060005260206000209060030160049004810192821561503e5791602002820160005b8382111561500957835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302614fbf565b801561503c5782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615009565b505b5061405d92915061511b565b610ea391905b8082111561405d5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061509a6002830182615140565b6150a8600383016000615140565b50600401615050565b610ea391905b8082111561405d57600081556001016150b7565b610ea391905b8082111561405d5760008082556150eb6001830182615187565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff191690556004016150d1565b610ea391905b8082111561405d57805467ffffffffffffffff19168155600101615121565b50805460018160011615610100020316600290046000825580601f106151665750615184565b601f01602090049060005260206000209081019061518491906150b1565b50565b50805460008255600301600490049060005260206000209081019061518491906150b15600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820ed1eacae6750bb2e266a5f861872a813708ecd94e8e2f531e86e5b01327a4c7d0029","real_runtime_bytecode":"6060604052600436106102415763ffffffff60e060020a6000350416627611c68114610246578063178e60791461027c5780631c8e8568146102a15780632101a6ad146102c857806324fea3b0146102e75780632a8ec8cc146102fa5780632ee888081461030d5780632f6b64ca1461032f57806332ce8ebc146103eb57806332f0a3b51461040957806338740291146104385780633f657a461461045057806343387983146104de57806347c5ef43146105005780634c4316c71461052f5780634eafbcd51461056357806350f8a8031461058257806352dc7dcc146105bd5780635503d9ba146105ff57806357adafb61461061257806360b1e057146106615780636293c702146106745780636ba3cc87146106935780636e802c6a146106c157806372116e921461077b578063796d5654146107cc57806379f4542e146107eb5780637e7db6e11461080a5780637f61fa931461082957806380afdea81461086b57806381ea44081461087e5780638322fff21461089d5780638b3dd749146108b05780639b3fdf4c146108c35780639d4941d8146108d6578063a1658fad146108f5578063af9f456314610958578063b12b5f761461097a578063c4d66de814610990578063c8ae070f146109af578063cc19ecf7146109c5578063ce17273c14610a11578063d4aae0c414610a60578063d639cd7314610a73578063db7c231414610adb578063e9c211e214610b27578063eba8ba0614610b49578063f6b24b1c14610c9f578063f92a79ff14610ceb578063fbfa77cf14610d3c575b600080fd5b341561025157600080fd5b61027a6001604060020a0360043516600160a060020a0360243581169060443516606435610d4f565b005b341561028757600080fd5b61028f610daa565b60405190815260200160405180910390f35b34156102ac57600080fd5b6102b4610dce565b604051901515815260200160405180910390f35b34156102d357600080fd5b6102b46001604060020a0360043516610dd7565b34156102f257600080fd5b61028f610e79565b341561030557600080fd5b61028f610e9b565b341561031857600080fd5b61027a6001604060020a0360043516602435610ea6565b341561033a57600080fd5b6103546001604060020a0360043581169060243516610fda565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103ae578082015183820152602001610396565b50505050905090810190601f1680156103db5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34156103f657600080fd5b61027a6004803560248101910135611108565b341561041457600080fd5b61041c61119c565b604051600160a060020a03909116815260200160405180910390f35b341561044357600080fd5b61027a600435151561121c565b341561045b57600080fd5b61046f6001604060020a0360043516611282565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104c357fe5b60ff1681526020019850505050505050505060405180910390f35b34156104e957600080fd5b61027a6001604060020a03600435166024356113ff565b341561050b57600080fd5b61027a6001604060020a0360043581169060243581169060443590606435166115e6565b341561053a57600080fd5b61027a6001604060020a0360043581169060243516600160a060020a03604435166064356115fb565b341561056e57600080fd5b6102b4600160a060020a0360043516611792565b341561058d57600080fd5b6105a16001604060020a0360043516611809565b6040516001604060020a03909116815260200160405180910390f35b34156105c857600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166119fe565b341561060a57600080fd5b61028f611c8b565b341561061d57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611c9595505050505050565b341561066c57600080fd5b61028f611d00565b341561067f57600080fd5b61027a600160a060020a0360043516611d24565b341561069e57600080fd5b61027a6001604060020a0360043516600160a060020a0360243516604435611d85565b34156106cc57600080fd5b6105a160048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611d96915050565b341561078657600080fd5b6105a16024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612003565b34156107d757600080fd5b61027a6001604060020a03600435166124b0565b34156107f657600080fd5b61027a600160a060020a036004351661251a565b341561081557600080fd5b6102b4600160a060020a0360043516612592565b341561083457600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516612598565b341561087657600080fd5b61028f612614565b341561088957600080fd5b61028f600160a060020a036004351661261a565b34156108a857600080fd5b61041c61269c565b34156108bb57600080fd5b61028f6126a1565b34156108ce57600080fd5b61028f6126a7565b34156108e157600080fd5b61027a600160a060020a03600435166126cb565b341561090057600080fd5b6102b460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061284295505050505050565b341561096357600080fd5b61027a6001604060020a0360043516602435612980565b341561098557600080fd5b61027a600435612a15565b341561099b57600080fd5b61027a600160a060020a0360043516612a6d565b34156109ba57600080fd5b61027a600435612ad6565b34156109d057600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b45565b3415610a1c57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4e95505050505050565b3415610a6b57600080fd5b61041c612c81565b3415610a7e57600080fd5b61027a600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c90915050565b3415610ae657600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d05565b3415610b3257600080fd5b61027a6001604060020a0360043516602435612e0e565b3415610b5457600080fd5b610b686001604060020a0360043516612f36565b60405180896002811115610b7857fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610bf9578082015183820152602001610be1565b50505050905090810190601f168015610c265780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c5c578082015183820152602001610c44565b50505050905090810190601f168015610c895780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610caa57600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613105565b3415610cf657600080fd5b61041c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061320e95505050505050565b3415610d4757600080fd5b61041c6132ea565b6000600160a060020a0384161515610d6657600080fd5b610d95846020604051908101604052806000815250602060405190810160405260008082526203f48090611d96565b9050610da3818685856115fb565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610de3836132fe565b90506000815460ff166002811115610df757fe5b1415610e065760009150610e73565b6002815460ff166002811115610e1857fe5b14610e1f57fe5b6001810154604060020a900460ff1615610e3c5760019150610e73565b60018101546001604060020a03161515610e595760009150610e73565b6001810154610e70906001604060020a0316610dd7565b91505b50919050565b6040516000805160206151ad8339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610ecb57600080fd5b610ed484613344565b91506001600383015460a060020a900460ff166002811115610ef257fe5b14610efc57600080fd5b6002820154600183018054610fc7926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610f8f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f4c5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613375565b9050610fd4848285613697565b50505050565b600080610fe5614df8565b600080610ff187613344565b915081600101600187036001604060020a031681548110151561101057fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450611044856132fe565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110f85780601f106110cd576101008083540402835291602001916110f8565b820191906000526020600020905b8154815290600101906020018083116110db57829003601f168201915b5050505050925050509250925092565b60006040516000805160206151ad833981519152815260130160405180910390206111533382600060405180591061113d5750595b9080825280602002602001820160405250612842565b151561115e57600080fd5b600091505b60ff821683901015610fd457611191848460ff851681811061118157fe5b9050602002013560001916612ad6565b600190910190611163565b60008054600160a060020a031615156111b457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111fd57600080fd5b6102c65a03f1151561120e57600080fd5b505050604051805191505090565b6040516000805160206151ad833981519152815260130160405180910390206112643382600060405180591061113d5750599080825280602002602001820160405250612842565b151561126f57600080fd5b506069805460ff19169115919091179055565b600080600080600080600080611296614e0a565b61129f8a613344565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561133757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116112f45790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ad57fe5b60028111156113b857fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061140d85611809565b945061141885613344565b92506000600384015460a060020a900460ff16600281111561143657fe5b1461144057600080fd5b6002830154611457906001604060020a031661376b565b600283015460018401805461151f926001604060020a031691906020808202016040519081016040528092919081815260200182805480156114ea57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114a75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613375565b915061152c858386613697565b6002830154611543906001604060020a03166132fe565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b15156115cb57600080fd5b6102c65a03f115156115dc57600080fd5b5050505050505050565b6115ef8461376b565b610fd4848484846137c2565b600080806001604060020a03871681901161161557600080fd5b6000841161162257600080fd5b600160a060020a038516151561163757600080fd5b611640876132fe565b92506000835460ff16600281111561165457fe5b1461165e57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156116d457600080fd5b6102c65a03f115156116e557600080fd5b5050506040518051905015156116fa57600080fd5b61172b87600060405180591061170d5750595b908082528060200260200182016040525060008060008a6000613375565b915061173682613344565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a3611789878386896137c2565b50505050505050565b606954600090819060ff16806117af5750600160a060020a038316155b156117bd5760019150610e73565b600160a060020a03831660009081526068602052604090205460ff16156117e75760019150610e73565b6117f08361261a565b60009081526067602052604090205460ff169392505050565b60008060008061181885613344565b92506000600384015460a060020a900460ff16600281111561183657fe5b14611843578493506119f6565b60028301546000604060020a9091046001604060020a031611801561188257506002830154608060020a90046001604060020a0316611880613e19565b115b156119c557600283015460018401805461194e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116118d75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b60028401549092506119a590604060020a90046001604060020a031660006040518059106119795750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b90506119b685828560000154613697565b8094506119c285613344565b92505b6119ce85613e1d565b90506001604060020a03808216908616146119f2576119f285828560000154613697565b8093505b505050919050565b6000611a0982611792565b1515611a1457600080fd5b5060648054908160018101611a298382614e56565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b1a57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0b929160200190614e82565b5060e082015181600301908051611c26929160200190614e82565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015610fd4576001604060020a03848481518110611cb757fe5b90602001906020020151169150604060020a848481518110611cd557fe5b90602001906020020151811515611ce857fe5b049050611cf582826113ff565b600190920191611c9a565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206151ad83398151915281526013016040518091039020611d4c82613ee5565b611d57338383612842565b1515611d6257600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611d9183338484610d4f565b505050565b6000611da182611792565b1515611dac57600080fd5b5060648054908160018101611dc18382614e56565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e3e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f2f929160200190614e82565b5060e082015181600301908051611f4a929160200190614e82565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fc0578082015183820152602001611fa8565b50505050905090810190601f168015611fed5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061200f83611792565b151561201a57600080fd5b6001604060020a0385161561223757612032856132fe565b90506014612224826101006040519081016040528154909190829060ff16600281111561205b57fe5b600281111561206657fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121745780601f1061214957610100808354040283529160200191612174565b820191906000526020600020905b81548152906001019060200180831161215757829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122165780601f106121eb57610100808354040283529160200191612216565b820191906000526020600020905b8154815290600101906020018083116121f957829003601f168201915b505050505081525050613f05565b6001604060020a03161061223757600080fd5b606480549250826001810161224c8382614e56565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561233c57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161242d929160200190614e82565b5060e082015181600301908051612448929160200190614e82565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124bb826132fe565b90506124c68261376b565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b6040516000805160206151ad833981519152815260130160405180910390206125623382600060405180591061113d5750599080825280602002602001820160405250612842565b151561256d57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126093388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611d96565b979650505050505050565b60015481565b6000612624614df8565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126685780518252601f199092019160209182019101612649565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806126d783612592565b15156126e257600080fd5b6126ea61119c565b91506126f582613f79565b151561270057600080fd5b600160a060020a03831615156127525781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561274d57600080fd5b611d91565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127a957600080fd5b6102c65a03f115156127ba57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561282257600080fd5b6102c65a03f1151561283357600080fd5b50505060405180515050505050565b600061284c614df8565b6000808451111561286557835160200290508391508082525b600054600160a060020a03161580612976575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561290c5780820151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561295a57600080fd5b6102c65a03f1151561296b57600080fd5b505050604051805190505b9695505050505050565b60008061298c84611809565b935061299784613344565b600281015490925060c060020a90046001604060020a031615156129ba57600080fd5b6000600383015460a060020a900460ff1660028111156129d657fe5b146129e057600080fd5b60028201546129f7906001604060020a031661376b565b6002820154610fc79060c060020a90046001604060020a0316613e1d565b6040516000805160206151ad83398151915281526013016040518091039020612a3d82613f9f565b612a48338383612842565b1515612a5357600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612a7a57600080fd5b600160a060020a0381161515612a8f57600080fd5b612a97613fb0565b6069805461010060a860020a031916610100600160a060020a038416021790556001612ac4606482614e56565b506001612ad2606582614efc565b5050565b6040516000805160206151ad83398151915281526013016040518091039020612b1e3382600060405180591061113d5750599080825280602002602001820160405250612842565b1515612b2957600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b50886132fe565b805490915033600160a060020a039081166101009092041614612b7257600080fd5b6001815460ff166002811115612b8457fe5b14612b8e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bba600282018787614f28565b50612bc9600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612ad257612c78828281518110612c6957fe5b90602001906020020151611809565b50600101612c51565b600054600160a060020a031681565b600080805b8451831015612cfd576001604060020a03858481518110612cb257fe5b90602001906020020151169150604060020a858481518110612cd057fe5b90602001906020020151811515612ce357fe5b049050612cf2868383876115e6565b600190920191612c95565b505050505050565b6000612d10886132fe565b805490915033600160a060020a039081166101009092041614612d3257600080fd5b6000815460ff166002811115612d4457fe5b14612d4e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7a600282018787614f28565b50612d89600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3357600080fd5b612e3c84613344565b91506001600383015460a060020a900460ff166002811115612e5a57fe5b14612e6457600080fd5b6002820154600183018054612f2b926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb45790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b9050610fc781611809565b600080612f41614df8565b612f49614df8565b6000806000806000612f5a8a6132fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f8201819004810201604051908101604052809291908181526020018280546001816001161561010002031660029004801561300f5780601f10612fe45761010080835404028352916020019161300f565b820191906000526020600020905b815481529060010190602001808311612ff257829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130ae5780601f10613083576101008083540402835291602001916130ae565b820191906000526020600020905b81548152906001019060200180831161309157829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000613110886132fe565b805490915033600160a060020a03908116610100909204161461313257600080fd5b6002815460ff16600281111561314457fe5b1461314e57600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317a600282018787614f28565b50613189600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000613218613fca565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561327f578082015183820152602001613267565b50505050905090810190601f1680156132ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132ca57600080fd5b6102c65a03f115156132db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331857600080fd5b606480546001604060020a03841690811061332f57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061335e57600080fd5b606580546001604060020a03841690811061332f57fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133ae578082015183820152602001613396565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341857fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134825780925061368a565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c28382614efc565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354357fe5b905291905081518155602082015181600101908051613566929160200190614f96565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561367e57fe5b02179055505050508092505b5050979650505050505050565b60008060006136a96001878787614061565b9250846001604060020a0316866001604060020a031614156136ca57612cfd565b8215156136d657612cfd565b6136df86613344565b91506136ea85613344565b8254909150839010156136fc57600080fd5b81548390038255805483018082558390101561371757600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117896000878786614061565b6000613776826132fe565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b75750805433600160a060020a0390811661010090920416145b1515612ad257600080fd5b600080808080806001604060020a0387168190116137df57600080fd5b6137e889611809565b98506137f389613344565b95506137fe876132fe565b94506000600387015460a060020a900460ff16600281111561381c57fe5b1461382657600080fd5b60028601546001604060020a038b811691161415613b21576000855460ff16600281111561385057fe5b141561386657613861898989614087565b613e0d565b6002855460ff16600281111561387857fe5b1415613889576138618989896140e1565b6001855460ff16600281111561389b57fe5b1415613b1f576139c7866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fa5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b60028111156139be57fe5b9052508861431f565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fa57506001604060020a038414155b15613b0057600186015460001901841415613ae3576002860154600187018054613ad6926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa257602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a5f5790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b925061386189848a613697565b613afa89896001848a600101805490500303614385565b50613e0d565b613b1289898860010180549050614385565b985061386189898961448f565bfe5b613c478661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbd57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7a5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3357fe5b6002811115613c3e57fe5b9052508b61431f565b6001604060020a0390811692508214613b1f576000855460ff166002811115613c6c57fe5b1415613c9d5760028601546001604060020a03888116911614613c8b57fe5b613afa89898860010180549050614385565b6001855460ff166002811115613caf57fe5b1415613dd157613d9c866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fa575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b6001604060020a039081169150811480613db557508181115b15613ae357613b1289896001858a600101805490500303614385565b6002855460ff166002811115613de357fe5b1415613b1f57613e0089896001858a600101805490500303614385565b98506138618989896145bf565b50505050505050505050565b4290565b600080806001604060020a0384161515613e3a5760009250613ede565b613e4384613344565b6002810154909250613e5d906001604060020a03166132fe565b90506000815460ff166002811115613e7157fe5b1415613e7f57839250613ede565b6002815460ff166002811115613e9157fe5b14613e9857fe5b6002820154613eaf906001604060020a0316610dd7565b1515613ebd57839250613ede565b6002820154613edb9060c060020a90046001604060020a0316613e1d565b92505b5050919050565b613eed614df8565b613eff82600160a060020a03166148d2565b92915050565b600080600283516002811115613f1757fe5b14613f1e57fe5b82606001516001604060020a03161515613f3b5760019150610e73565b613f4883606001516132fe565b9050613f6f816101006040519081016040528154909190829060ff16600281111561205b57fe5b6001019392505050565b600080600160a060020a0383161515613f955760009150610e73565b50506000903b1190565b613fa7614df8565b613eff826148d2565b60035415613fbd57600080fd5b613fc5614919565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561403d57600080fd5b6102c65a03f1151561404e57600080fd5b50505060405180519250829150505b5090565b8061406f858580868561491d565b905061407e858486868561491d565b95945050505050565b60008061409385613344565b91506140d48360006040518059106140a85750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613375565b9050610da3858286613697565b60008060006140ef86613344565b92506014614218846101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161414c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b600281111561421057fe5b905250614a85565b1061422257600080fd5b61422b84610dd7565b1561423557600080fd5b60028301546001840180546142d2926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57600091825260209182902080546001604060020a031684529082028301929091600891018084116118d75750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613375565b91506143128460006040518059106119795750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b9050612cfd868287613697565b6000805b83602001515181101561437357826001604060020a03168460200151828151811061434a57fe5b906020019060200201516001604060020a0316141561436b5780915061437e565b600101614323565b6001604060020a0391505b5092915050565b600080614390614df8565b600061439b87613344565b60018101549093508590036040518059106143b35750595b90808252806020026020018201604052509150600090505b600183015485900381101561443e57600183018054829081106143ea57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061441f57fe5b6001604060020a039092166020928302909101909101526001016143cb565b60028301546003840154614478916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613375565b9350614485878588613697565b5050509392505050565b6000614499614df8565b6000806144a587613344565b6001810154909450600a90106144ba57600080fd5b600180850154016040518059106144ce5750595b90808252806020026020018201604052509250600091505b6001840154821015614559576001840180548390811061450257fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061453757fe5b6001604060020a039092166020928302909101909101526001909101906144e6565b6001840154859084908151811061456c57fe5b6001604060020a0392831660209182029092010152600285015460038601546145b292828116928792600092839260c060020a90041690600160a060020a031682613375565b9050611789878288613697565b6000806145cb85613344565b915060146146b6836101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b106146c057600080fd5b6146c983610dd7565b156146d357600080fd5b60028201546001830180546140d4926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561476657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147235790505b505050505085614891866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561480857602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147c55790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561487e57fe5b600281111561488957fe5b905250614b9b565b6001604060020a03166148a2613e19565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613375565b6148da614df8565b60016040518059106148e95750595b90808252806020026020018201604052509050818160008151811061490a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a03161461494457610100614947565b60005b61ffff16925084935061495988613344565b6002810154600382015491935061498b918b916001604060020a0316908a908a908890600160a060020a03168a614c33565b9350600090505b60018201546001604060020a0382161015614a1e57614a148983600101836001604060020a03168154811015156149c557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c33565b9350600101614992565b60028201546000604060020a9091046001604060020a03161115614a795760028201546003830154614a76918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c33565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614aa55760009150610e73565b614ab28360a00151613344565b9050613f6f816101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b6000806000614bad84604001516132fe565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ede57614bf784602001518281518110614be857fe5b906020019060200201516132fe565b80549092506001604060020a0380851660a860020a909204161115614c2b57815460a860020a90046001604060020a031692505b600101614bc8565b80600080614c40896132fe565b600181015490915069010000000000000000009004600160a060020a031615801590614c6c5750600083115b1561368a578915614d4457600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d1357600080fd5b6102c65a03f11515614d2457600080fd5b505050604051805192505082821115614d3c57600080fd5b81925061368a565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614dd757600080fd5b6102c65a03f11515614de857600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e26614df8565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611d9157600402816004028360005260206000209182019101611d91919061504a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614ec357805160ff1916838001178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578251825591602001919060010190614ed5565b5061405d9291506150b1565b815481835581811511611d9157600402816004028360005260206000209182019101611d9191906150cb565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f695782800160ff19823516178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578235825591602001919060010190614f7b565b8280548282559060005260206000209060030160049004810192821561503e5791602002820160005b8382111561500957835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302614fbf565b801561503c5782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615009565b505b5061405d92915061511b565b610ea391905b8082111561405d5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061509a6002830182615140565b6150a8600383016000615140565b50600401615050565b610ea391905b8082111561405d57600081556001016150b7565b610ea391905b8082111561405d5760008082556150eb6001830182615187565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff191690556004016150d1565b610ea391905b8082111561405d57805467ffffffffffffffff19168155600101615121565b50805460018160011615610100020316600290046000825580601f106151665750615184565b601f01602090049060005260206000209081019061518491906150b1565b50565b50805460008255600301600490049060005260206000209081019061518491906150b15600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820","swarm_hash":"ed1eacae6750bb2e266a5f861872a813708ecd94e8e2f531e86e5b01327a4c7d","gas_estimates":{"creation":{"codeDepositCost":"4203200","executionCost":"25049","totalCost":"4228249"},"external":{"APP_ADDR_NAMESPACE()":"258","ETH()":"996","EVMSCRIPT_REGISTRY_APP()":"962","EVMSCRIPT_REGISTRY_APP_ID()":"676","PLUGIN_MANAGER_ROLE()":"infinite","addDelegate(string,string,uint64,address)":"infinite","addGiver(address,string,string,uint64,address)":"infinite","addGiver(string,string,uint64,address)":"infinite","addGiverAndDonate(uint64,address,address,uint256)":"infinite","addGiverAndDonate(uint64,address,uint256)":"infinite","addProject(string,string,address,uint64,uint64,address)":"infinite","addValidPluginContract(bytes32)":"infinite","addValidPluginContracts(bytes32[])":"infinite","addValidPluginInstance(address)":"infinite","allowRecoverability(address)":"919","appId()":"1074","canPerform(address,bytes32,uint256[])":"infinite","cancelPayment(uint64,uint256)":"infinite","cancelPledge(uint64,uint256)":"infinite","cancelProject(uint64)":"infinite","confirmPayment(uint64,uint256)":"infinite","donate(uint64,uint64,address,uint256)":"infinite","getCodeHash(address)":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"1140","getPledge(uint64)":"infinite","getPledgeAdmin(uint64)":"infinite","getPledgeDelegate(uint64,uint64)":"infinite","getRecoveryVault()":"infinite","initialize(address)":"infinite","isProjectCanceled(uint64)":"infinite","isValidPlugin(address)":"infinite","kernel()":"1513","mNormalizePledge(uint64[])":"infinite","mTransfer(uint64,uint256[],uint64)":"infinite","mWithdraw(uint256[])":"infinite","normalizePledge(uint64)":"infinite","numberOfPledgeAdmins()":"841","numberOfPledges()":"556","removeValidPluginContract(bytes32)":"infinite","removeValidPluginInstance(address)":"infinite","transfer(uint64,uint64,uint256,uint64)":"infinite","transferToVault(address)":"infinite","updateDelegate(uint64,address,string,string,uint64)":"infinite","updateGiver(uint64,address,string,string,uint64)":"infinite","updateProject(uint64,address,string,string,uint64)":"infinite","useWhitelist(bool)":"infinite","vault()":"1678","whitelistDisabled()":"492","withdraw(uint64,uint256)":"infinite"}},"function_hashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","PLUGIN_MANAGER_ROLE()":"24fea3b0","addDelegate(string,string,uint64,address)":"52dc7dcc","addGiver(address,string,string,uint64,address)":"6e802c6a","addGiver(string,string,uint64,address)":"7f61fa93","addGiverAndDonate(uint64,address,address,uint256)":"007611c6","addGiverAndDonate(uint64,address,uint256)":"6ba3cc87","addProject(string,string,address,uint64,uint64,address)":"72116e92","addValidPluginContract(bytes32)":"c8ae070f","addValidPluginContracts(bytes32[])":"32ce8ebc","addValidPluginInstance(address)":"79f4542e","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","cancelPayment(uint64,uint256)":"e9c211e2","cancelPledge(uint64,uint256)":"af9f4563","cancelProject(uint64)":"796d5654","confirmPayment(uint64,uint256)":"2ee88808","donate(uint64,uint64,address,uint256)":"4c4316c7","getCodeHash(address)":"81ea4408","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getPledge(uint64)":"3f657a46","getPledgeAdmin(uint64)":"eba8ba06","getPledgeDelegate(uint64,uint64)":"2f6b64ca","getRecoveryVault()":"32f0a3b5","initialize(address)":"c4d66de8","isProjectCanceled(uint64)":"2101a6ad","isValidPlugin(address)":"4eafbcd5","kernel()":"d4aae0c4","mNormalizePledge(uint64[])":"ce17273c","mTransfer(uint64,uint256[],uint64)":"d639cd73","mWithdraw(uint256[])":"57adafb6","normalizePledge(uint64)":"50f8a803","numberOfPledgeAdmins()":"5503d9ba","numberOfPledges()":"2a8ec8cc","removeValidPluginContract(bytes32)":"b12b5f76","removeValidPluginInstance(address)":"6293c702","transfer(uint64,uint64,uint256,uint64)":"47c5ef43","transferToVault(address)":"9d4941d8","updateDelegate(uint64,address,string,string,uint64)":"cc19ecf7","updateGiver(uint64,address,string,string,uint64)":"db7c2314","updateProject(uint64,address,string,string,uint64)":"f6b24b1c","useWhitelist(bool)":"38740291","vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568","withdraw(uint64,uint256)":"43387983"},"abi":[{"constant":false,"inputs":[{"name":"idReceiver","type":"uint64"},{"name":"donorAddress","type":"address"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"addGiverAndDonate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x007611c6"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x178e6079"},{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x1c8e8568"},{"constant":true,"inputs":[{"name":"projectId","type":"uint64"}],"name":"isProjectCanceled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x2101a6ad"},{"constant":true,"inputs":[],"name":"PLUGIN_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x24fea3b0"},{"constant":true,"inputs":[],"name":"numberOfPledges","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x2a8ec8cc"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"confirmPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x2ee88808"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"idxDelegate","type":"uint64"}],"name":"getPledgeDelegate","outputs":[{"name":"idDelegate","type":"uint64"},{"name":"addr","type":"address"},{"name":"name","type":"string"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x2f6b64ca"},{"constant":false,"inputs":[{"name":"contractHashes","type":"bytes32[]"}],"name":"addValidPluginContracts","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x32ce8ebc"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x32f0a3b5"},{"constant":false,"inputs":[{"name":"useWhitelist","type":"bool"}],"name":"useWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x38740291"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"getPledge","outputs":[{"name":"amount","type":"uint256"},{"name":"owner","type":"uint64"},{"name":"nDelegates","type":"uint64"},{"name":"intendedProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"oldPledge","type":"uint64"},{"name":"token","type":"address"},{"name":"pledgeState","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x3f657a46"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x43387983"},{"constant":false,"inputs":[{"name":"idSender","type":"uint64"},{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"},{"name":"idReceiver","type":"uint64"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x47c5ef43"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"idReceiver","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"donate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x4c4316c7"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isValidPlugin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x4eafbcd5"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"normalizePledge","outputs":[{"name":"","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x50f8a803"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addDelegate","outputs":[{"name":"idDelegate","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x52dc7dcc"},{"constant":true,"inputs":[],"name":"numberOfPledgeAdmins","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x5503d9ba"},{"constant":false,"inputs":[{"name":"pledgesAmounts","type":"uint256[]"}],"name":"mWithdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x57adafb6"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x60b1e057"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"removeValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x6293c702"},{"constant":false,"inputs":[{"name":"idReceiver","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"addGiverAndDonate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x6ba3cc87"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x6e802c6a"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"projectAdmin","type":"address"},{"name":"parentProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addProject","outputs":[{"name":"idProject","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x72116e92"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"}],"name":"cancelProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x796d5654"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"addValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x79f4542e"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x7e7db6e1"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x7f61fa93"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x80afdea8"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getCodeHash","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x81ea4408"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8322fff2"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8b3dd749"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x9b3fdf4c"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x9d4941d8"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xa1658fad"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"cancelPledge","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xaf9f4563"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"removeValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xb12b5f76"},{"constant":false,"inputs":[{"name":"_vault","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xc4d66de8"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"addValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xc8ae070f"},{"constant":false,"inputs":[{"name":"idDelegate","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateDelegate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xcc19ecf7"},{"constant":false,"inputs":[{"name":"pledges","type":"uint64[]"}],"name":"mNormalizePledge","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xce17273c"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xd4aae0c4"},{"constant":false,"inputs":[{"name":"idSender","type":"uint64"},{"name":"pledgesAmounts","type":"uint256[]"},{"name":"idReceiver","type":"uint64"}],"name":"mTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd639cd73"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateGiver","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xdb7c2314"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"cancelPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xe9c211e2"},{"constant":true,"inputs":[{"name":"idAdmin","type":"uint64"}],"name":"getPledgeAdmin","outputs":[{"name":"adminType","type":"uint8"},{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"parentProject","type":"uint64"},{"name":"canceled","type":"bool"},{"name":"plugin","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xeba8ba06"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xf6b24b1c"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xf92a79ff"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xfbfa77cf"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"uint256"},{"indexed":true,"name":"to","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Transfer","type":"event","signature":"0xaf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f6"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint256"}],"name":"CancelProject","type":"event","signature":"0x74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d346"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverAdded","type":"event","signature":"0xf5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a3"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverUpdated","type":"event","signature":"0x4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateAdded","type":"event","signature":"0xd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateUpdated","type":"event","signature":"0x6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectAdded","type":"event","signature":"0x9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectUpdated","type":"event","signature":"0xab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c58707"}]}; +let LiquidPledging = new EmbarkJS.Blockchain.Contract(LiquidPledgingJSONConfig); +export default LiquidPledging; diff --git a/abi/contracts/LiquidPledging.json b/abi/contracts/LiquidPledging.json new file mode 100644 index 0000000..38f1ece --- /dev/null +++ b/abi/contracts/LiquidPledging.json @@ -0,0 +1 @@ +{"contract_name":{"className":"LiquidPledging","args":[],"code":"60606040526069805460ff19169055341561001957600080fd5b615218806100286000396000f3006060604052600436106102415763ffffffff60e060020a6000350416627611c68114610246578063178e60791461027c5780631c8e8568146102a15780632101a6ad146102c857806324fea3b0146102e75780632a8ec8cc146102fa5780632ee888081461030d5780632f6b64ca1461032f57806332ce8ebc146103eb57806332f0a3b51461040957806338740291146104385780633f657a461461045057806343387983146104de57806347c5ef43146105005780634c4316c71461052f5780634eafbcd51461056357806350f8a8031461058257806352dc7dcc146105bd5780635503d9ba146105ff57806357adafb61461061257806360b1e057146106615780636293c702146106745780636ba3cc87146106935780636e802c6a146106c157806372116e921461077b578063796d5654146107cc57806379f4542e146107eb5780637e7db6e11461080a5780637f61fa931461082957806380afdea81461086b57806381ea44081461087e5780638322fff21461089d5780638b3dd749146108b05780639b3fdf4c146108c35780639d4941d8146108d6578063a1658fad146108f5578063af9f456314610958578063b12b5f761461097a578063c4d66de814610990578063c8ae070f146109af578063cc19ecf7146109c5578063ce17273c14610a11578063d4aae0c414610a60578063d639cd7314610a73578063db7c231414610adb578063e9c211e214610b27578063eba8ba0614610b49578063f6b24b1c14610c9f578063f92a79ff14610ceb578063fbfa77cf14610d3c575b600080fd5b341561025157600080fd5b61027a6001604060020a0360043516600160a060020a0360243581169060443516606435610d4f565b005b341561028757600080fd5b61028f610daa565b60405190815260200160405180910390f35b34156102ac57600080fd5b6102b4610dce565b604051901515815260200160405180910390f35b34156102d357600080fd5b6102b46001604060020a0360043516610dd7565b34156102f257600080fd5b61028f610e79565b341561030557600080fd5b61028f610e9b565b341561031857600080fd5b61027a6001604060020a0360043516602435610ea6565b341561033a57600080fd5b6103546001604060020a0360043581169060243516610fda565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103ae578082015183820152602001610396565b50505050905090810190601f1680156103db5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34156103f657600080fd5b61027a6004803560248101910135611108565b341561041457600080fd5b61041c61119c565b604051600160a060020a03909116815260200160405180910390f35b341561044357600080fd5b61027a600435151561121c565b341561045b57600080fd5b61046f6001604060020a0360043516611282565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104c357fe5b60ff1681526020019850505050505050505060405180910390f35b34156104e957600080fd5b61027a6001604060020a03600435166024356113ff565b341561050b57600080fd5b61027a6001604060020a0360043581169060243581169060443590606435166115e6565b341561053a57600080fd5b61027a6001604060020a0360043581169060243516600160a060020a03604435166064356115fb565b341561056e57600080fd5b6102b4600160a060020a0360043516611792565b341561058d57600080fd5b6105a16001604060020a0360043516611809565b6040516001604060020a03909116815260200160405180910390f35b34156105c857600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166119fe565b341561060a57600080fd5b61028f611c8b565b341561061d57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611c9595505050505050565b341561066c57600080fd5b61028f611d00565b341561067f57600080fd5b61027a600160a060020a0360043516611d24565b341561069e57600080fd5b61027a6001604060020a0360043516600160a060020a0360243516604435611d85565b34156106cc57600080fd5b6105a160048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611d96915050565b341561078657600080fd5b6105a16024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612003565b34156107d757600080fd5b61027a6001604060020a03600435166124b0565b34156107f657600080fd5b61027a600160a060020a036004351661251a565b341561081557600080fd5b6102b4600160a060020a0360043516612592565b341561083457600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516612598565b341561087657600080fd5b61028f612614565b341561088957600080fd5b61028f600160a060020a036004351661261a565b34156108a857600080fd5b61041c61269c565b34156108bb57600080fd5b61028f6126a1565b34156108ce57600080fd5b61028f6126a7565b34156108e157600080fd5b61027a600160a060020a03600435166126cb565b341561090057600080fd5b6102b460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061284295505050505050565b341561096357600080fd5b61027a6001604060020a0360043516602435612980565b341561098557600080fd5b61027a600435612a15565b341561099b57600080fd5b61027a600160a060020a0360043516612a6d565b34156109ba57600080fd5b61027a600435612ad6565b34156109d057600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b45565b3415610a1c57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4e95505050505050565b3415610a6b57600080fd5b61041c612c81565b3415610a7e57600080fd5b61027a600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c90915050565b3415610ae657600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d05565b3415610b3257600080fd5b61027a6001604060020a0360043516602435612e0e565b3415610b5457600080fd5b610b686001604060020a0360043516612f36565b60405180896002811115610b7857fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610bf9578082015183820152602001610be1565b50505050905090810190601f168015610c265780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c5c578082015183820152602001610c44565b50505050905090810190601f168015610c895780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610caa57600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613105565b3415610cf657600080fd5b61041c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061320e95505050505050565b3415610d4757600080fd5b61041c6132ea565b6000600160a060020a0384161515610d6657600080fd5b610d95846020604051908101604052806000815250602060405190810160405260008082526203f48090611d96565b9050610da3818685856115fb565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610de3836132fe565b90506000815460ff166002811115610df757fe5b1415610e065760009150610e73565b6002815460ff166002811115610e1857fe5b14610e1f57fe5b6001810154604060020a900460ff1615610e3c5760019150610e73565b60018101546001604060020a03161515610e595760009150610e73565b6001810154610e70906001604060020a0316610dd7565b91505b50919050565b6040516000805160206151ad8339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610ecb57600080fd5b610ed484613344565b91506001600383015460a060020a900460ff166002811115610ef257fe5b14610efc57600080fd5b6002820154600183018054610fc7926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610f8f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f4c5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613375565b9050610fd4848285613697565b50505050565b600080610fe5614df8565b600080610ff187613344565b915081600101600187036001604060020a031681548110151561101057fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450611044856132fe565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110f85780601f106110cd576101008083540402835291602001916110f8565b820191906000526020600020905b8154815290600101906020018083116110db57829003601f168201915b5050505050925050509250925092565b60006040516000805160206151ad833981519152815260130160405180910390206111533382600060405180591061113d5750595b9080825280602002602001820160405250612842565b151561115e57600080fd5b600091505b60ff821683901015610fd457611191848460ff851681811061118157fe5b9050602002013560001916612ad6565b600190910190611163565b60008054600160a060020a031615156111b457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111fd57600080fd5b6102c65a03f1151561120e57600080fd5b505050604051805191505090565b6040516000805160206151ad833981519152815260130160405180910390206112643382600060405180591061113d5750599080825280602002602001820160405250612842565b151561126f57600080fd5b506069805460ff19169115919091179055565b600080600080600080600080611296614e0a565b61129f8a613344565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561133757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116112f45790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ad57fe5b60028111156113b857fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061140d85611809565b945061141885613344565b92506000600384015460a060020a900460ff16600281111561143657fe5b1461144057600080fd5b6002830154611457906001604060020a031661376b565b600283015460018401805461151f926001604060020a031691906020808202016040519081016040528092919081815260200182805480156114ea57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114a75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613375565b915061152c858386613697565b6002830154611543906001604060020a03166132fe565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b15156115cb57600080fd5b6102c65a03f115156115dc57600080fd5b5050505050505050565b6115ef8461376b565b610fd4848484846137c2565b600080806001604060020a03871681901161161557600080fd5b6000841161162257600080fd5b600160a060020a038516151561163757600080fd5b611640876132fe565b92506000835460ff16600281111561165457fe5b1461165e57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156116d457600080fd5b6102c65a03f115156116e557600080fd5b5050506040518051905015156116fa57600080fd5b61172b87600060405180591061170d5750595b908082528060200260200182016040525060008060008a6000613375565b915061173682613344565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a3611789878386896137c2565b50505050505050565b606954600090819060ff16806117af5750600160a060020a038316155b156117bd5760019150610e73565b600160a060020a03831660009081526068602052604090205460ff16156117e75760019150610e73565b6117f08361261a565b60009081526067602052604090205460ff169392505050565b60008060008061181885613344565b92506000600384015460a060020a900460ff16600281111561183657fe5b14611843578493506119f6565b60028301546000604060020a9091046001604060020a031611801561188257506002830154608060020a90046001604060020a0316611880613e19565b115b156119c557600283015460018401805461194e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116118d75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b60028401549092506119a590604060020a90046001604060020a031660006040518059106119795750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b90506119b685828560000154613697565b8094506119c285613344565b92505b6119ce85613e1d565b90506001604060020a03808216908616146119f2576119f285828560000154613697565b8093505b505050919050565b6000611a0982611792565b1515611a1457600080fd5b5060648054908160018101611a298382614e56565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b1a57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0b929160200190614e82565b5060e082015181600301908051611c26929160200190614e82565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015610fd4576001604060020a03848481518110611cb757fe5b90602001906020020151169150604060020a848481518110611cd557fe5b90602001906020020151811515611ce857fe5b049050611cf582826113ff565b600190920191611c9a565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206151ad83398151915281526013016040518091039020611d4c82613ee5565b611d57338383612842565b1515611d6257600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611d9183338484610d4f565b505050565b6000611da182611792565b1515611dac57600080fd5b5060648054908160018101611dc18382614e56565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e3e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f2f929160200190614e82565b5060e082015181600301908051611f4a929160200190614e82565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fc0578082015183820152602001611fa8565b50505050905090810190601f168015611fed5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061200f83611792565b151561201a57600080fd5b6001604060020a0385161561223757612032856132fe565b90506014612224826101006040519081016040528154909190829060ff16600281111561205b57fe5b600281111561206657fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121745780601f1061214957610100808354040283529160200191612174565b820191906000526020600020905b81548152906001019060200180831161215757829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122165780601f106121eb57610100808354040283529160200191612216565b820191906000526020600020905b8154815290600101906020018083116121f957829003601f168201915b505050505081525050613f05565b6001604060020a03161061223757600080fd5b606480549250826001810161224c8382614e56565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561233c57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161242d929160200190614e82565b5060e082015181600301908051612448929160200190614e82565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124bb826132fe565b90506124c68261376b565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b6040516000805160206151ad833981519152815260130160405180910390206125623382600060405180591061113d5750599080825280602002602001820160405250612842565b151561256d57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126093388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611d96565b979650505050505050565b60015481565b6000612624614df8565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126685780518252601f199092019160209182019101612649565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806126d783612592565b15156126e257600080fd5b6126ea61119c565b91506126f582613f79565b151561270057600080fd5b600160a060020a03831615156127525781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561274d57600080fd5b611d91565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127a957600080fd5b6102c65a03f115156127ba57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561282257600080fd5b6102c65a03f1151561283357600080fd5b50505060405180515050505050565b600061284c614df8565b6000808451111561286557835160200290508391508082525b600054600160a060020a03161580612976575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561290c5780820151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561295a57600080fd5b6102c65a03f1151561296b57600080fd5b505050604051805190505b9695505050505050565b60008061298c84611809565b935061299784613344565b600281015490925060c060020a90046001604060020a031615156129ba57600080fd5b6000600383015460a060020a900460ff1660028111156129d657fe5b146129e057600080fd5b60028201546129f7906001604060020a031661376b565b6002820154610fc79060c060020a90046001604060020a0316613e1d565b6040516000805160206151ad83398151915281526013016040518091039020612a3d82613f9f565b612a48338383612842565b1515612a5357600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612a7a57600080fd5b600160a060020a0381161515612a8f57600080fd5b612a97613fb0565b6069805461010060a860020a031916610100600160a060020a038416021790556001612ac4606482614e56565b506001612ad2606582614efc565b5050565b6040516000805160206151ad83398151915281526013016040518091039020612b1e3382600060405180591061113d5750599080825280602002602001820160405250612842565b1515612b2957600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b50886132fe565b805490915033600160a060020a039081166101009092041614612b7257600080fd5b6001815460ff166002811115612b8457fe5b14612b8e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bba600282018787614f28565b50612bc9600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612ad257612c78828281518110612c6957fe5b90602001906020020151611809565b50600101612c51565b600054600160a060020a031681565b600080805b8451831015612cfd576001604060020a03858481518110612cb257fe5b90602001906020020151169150604060020a858481518110612cd057fe5b90602001906020020151811515612ce357fe5b049050612cf2868383876115e6565b600190920191612c95565b505050505050565b6000612d10886132fe565b805490915033600160a060020a039081166101009092041614612d3257600080fd5b6000815460ff166002811115612d4457fe5b14612d4e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7a600282018787614f28565b50612d89600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3357600080fd5b612e3c84613344565b91506001600383015460a060020a900460ff166002811115612e5a57fe5b14612e6457600080fd5b6002820154600183018054612f2b926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb45790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b9050610fc781611809565b600080612f41614df8565b612f49614df8565b6000806000806000612f5a8a6132fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f8201819004810201604051908101604052809291908181526020018280546001816001161561010002031660029004801561300f5780601f10612fe45761010080835404028352916020019161300f565b820191906000526020600020905b815481529060010190602001808311612ff257829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130ae5780601f10613083576101008083540402835291602001916130ae565b820191906000526020600020905b81548152906001019060200180831161309157829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000613110886132fe565b805490915033600160a060020a03908116610100909204161461313257600080fd5b6002815460ff16600281111561314457fe5b1461314e57600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317a600282018787614f28565b50613189600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000613218613fca565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561327f578082015183820152602001613267565b50505050905090810190601f1680156132ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132ca57600080fd5b6102c65a03f115156132db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331857600080fd5b606480546001604060020a03841690811061332f57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061335e57600080fd5b606580546001604060020a03841690811061332f57fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133ae578082015183820152602001613396565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341857fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134825780925061368a565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c28382614efc565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354357fe5b905291905081518155602082015181600101908051613566929160200190614f96565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561367e57fe5b02179055505050508092505b5050979650505050505050565b60008060006136a96001878787614061565b9250846001604060020a0316866001604060020a031614156136ca57612cfd565b8215156136d657612cfd565b6136df86613344565b91506136ea85613344565b8254909150839010156136fc57600080fd5b81548390038255805483018082558390101561371757600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117896000878786614061565b6000613776826132fe565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b75750805433600160a060020a0390811661010090920416145b1515612ad257600080fd5b600080808080806001604060020a0387168190116137df57600080fd5b6137e889611809565b98506137f389613344565b95506137fe876132fe565b94506000600387015460a060020a900460ff16600281111561381c57fe5b1461382657600080fd5b60028601546001604060020a038b811691161415613b21576000855460ff16600281111561385057fe5b141561386657613861898989614087565b613e0d565b6002855460ff16600281111561387857fe5b1415613889576138618989896140e1565b6001855460ff16600281111561389b57fe5b1415613b1f576139c7866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fa5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b60028111156139be57fe5b9052508861431f565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fa57506001604060020a038414155b15613b0057600186015460001901841415613ae3576002860154600187018054613ad6926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa257602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a5f5790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b925061386189848a613697565b613afa89896001848a600101805490500303614385565b50613e0d565b613b1289898860010180549050614385565b985061386189898961448f565bfe5b613c478661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbd57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7a5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3357fe5b6002811115613c3e57fe5b9052508b61431f565b6001604060020a0390811692508214613b1f576000855460ff166002811115613c6c57fe5b1415613c9d5760028601546001604060020a03888116911614613c8b57fe5b613afa89898860010180549050614385565b6001855460ff166002811115613caf57fe5b1415613dd157613d9c866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fa575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b6001604060020a039081169150811480613db557508181115b15613ae357613b1289896001858a600101805490500303614385565b6002855460ff166002811115613de357fe5b1415613b1f57613e0089896001858a600101805490500303614385565b98506138618989896145bf565b50505050505050505050565b4290565b600080806001604060020a0384161515613e3a5760009250613ede565b613e4384613344565b6002810154909250613e5d906001604060020a03166132fe565b90506000815460ff166002811115613e7157fe5b1415613e7f57839250613ede565b6002815460ff166002811115613e9157fe5b14613e9857fe5b6002820154613eaf906001604060020a0316610dd7565b1515613ebd57839250613ede565b6002820154613edb9060c060020a90046001604060020a0316613e1d565b92505b5050919050565b613eed614df8565b613eff82600160a060020a03166148d2565b92915050565b600080600283516002811115613f1757fe5b14613f1e57fe5b82606001516001604060020a03161515613f3b5760019150610e73565b613f4883606001516132fe565b9050613f6f816101006040519081016040528154909190829060ff16600281111561205b57fe5b6001019392505050565b600080600160a060020a0383161515613f955760009150610e73565b50506000903b1190565b613fa7614df8565b613eff826148d2565b60035415613fbd57600080fd5b613fc5614919565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561403d57600080fd5b6102c65a03f1151561404e57600080fd5b50505060405180519250829150505b5090565b8061406f858580868561491d565b905061407e858486868561491d565b95945050505050565b60008061409385613344565b91506140d48360006040518059106140a85750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613375565b9050610da3858286613697565b60008060006140ef86613344565b92506014614218846101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161414c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b600281111561421057fe5b905250614a85565b1061422257600080fd5b61422b84610dd7565b1561423557600080fd5b60028301546001840180546142d2926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57600091825260209182902080546001604060020a031684529082028301929091600891018084116118d75750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613375565b91506143128460006040518059106119795750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b9050612cfd868287613697565b6000805b83602001515181101561437357826001604060020a03168460200151828151811061434a57fe5b906020019060200201516001604060020a0316141561436b5780915061437e565b600101614323565b6001604060020a0391505b5092915050565b600080614390614df8565b600061439b87613344565b60018101549093508590036040518059106143b35750595b90808252806020026020018201604052509150600090505b600183015485900381101561443e57600183018054829081106143ea57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061441f57fe5b6001604060020a039092166020928302909101909101526001016143cb565b60028301546003840154614478916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613375565b9350614485878588613697565b5050509392505050565b6000614499614df8565b6000806144a587613344565b6001810154909450600a90106144ba57600080fd5b600180850154016040518059106144ce5750595b90808252806020026020018201604052509250600091505b6001840154821015614559576001840180548390811061450257fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061453757fe5b6001604060020a039092166020928302909101909101526001909101906144e6565b6001840154859084908151811061456c57fe5b6001604060020a0392831660209182029092010152600285015460038601546145b292828116928792600092839260c060020a90041690600160a060020a031682613375565b9050611789878288613697565b6000806145cb85613344565b915060146146b6836101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b106146c057600080fd5b6146c983610dd7565b156146d357600080fd5b60028201546001830180546140d4926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561476657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147235790505b505050505085614891866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561480857602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147c55790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561487e57fe5b600281111561488957fe5b905250614b9b565b6001604060020a03166148a2613e19565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613375565b6148da614df8565b60016040518059106148e95750595b90808252806020026020018201604052509050818160008151811061490a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a03161461494457610100614947565b60005b61ffff16925084935061495988613344565b6002810154600382015491935061498b918b916001604060020a0316908a908a908890600160a060020a03168a614c33565b9350600090505b60018201546001604060020a0382161015614a1e57614a148983600101836001604060020a03168154811015156149c557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c33565b9350600101614992565b60028201546000604060020a9091046001604060020a03161115614a795760028201546003830154614a76918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c33565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614aa55760009150610e73565b614ab28360a00151613344565b9050613f6f816101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b6000806000614bad84604001516132fe565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ede57614bf784602001518281518110614be857fe5b906020019060200201516132fe565b80549092506001604060020a0380851660a860020a909204161115614c2b57815460a860020a90046001604060020a031692505b600101614bc8565b80600080614c40896132fe565b600181015490915069010000000000000000009004600160a060020a031615801590614c6c5750600083115b1561368a578915614d4457600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d1357600080fd5b6102c65a03f11515614d2457600080fd5b505050604051805192505082821115614d3c57600080fd5b81925061368a565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614dd757600080fd5b6102c65a03f11515614de857600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e26614df8565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611d9157600402816004028360005260206000209182019101611d91919061504a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614ec357805160ff1916838001178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578251825591602001919060010190614ed5565b5061405d9291506150b1565b815481835581811511611d9157600402816004028360005260206000209182019101611d9191906150cb565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f695782800160ff19823516178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578235825591602001919060010190614f7b565b8280548282559060005260206000209060030160049004810192821561503e5791602002820160005b8382111561500957835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302614fbf565b801561503c5782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615009565b505b5061405d92915061511b565b610ea391905b8082111561405d5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061509a6002830182615140565b6150a8600383016000615140565b50600401615050565b610ea391905b8082111561405d57600081556001016150b7565b610ea391905b8082111561405d5760008082556150eb6001830182615187565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff191690556004016150d1565b610ea391905b8082111561405d57805467ffffffffffffffff19168155600101615121565b50805460018160011615610100020316600290046000825580601f106151665750615184565b601f01602090049060005260206000209081019061518491906150b1565b50565b50805460008255600301600490049060005260206000209081019061518491906150b15600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820ed1eacae6750bb2e266a5f861872a813708ecd94e8e2f531e86e5b01327a4c7d0029","runtimeBytecode":"6060604052600436106102415763ffffffff60e060020a6000350416627611c68114610246578063178e60791461027c5780631c8e8568146102a15780632101a6ad146102c857806324fea3b0146102e75780632a8ec8cc146102fa5780632ee888081461030d5780632f6b64ca1461032f57806332ce8ebc146103eb57806332f0a3b51461040957806338740291146104385780633f657a461461045057806343387983146104de57806347c5ef43146105005780634c4316c71461052f5780634eafbcd51461056357806350f8a8031461058257806352dc7dcc146105bd5780635503d9ba146105ff57806357adafb61461061257806360b1e057146106615780636293c702146106745780636ba3cc87146106935780636e802c6a146106c157806372116e921461077b578063796d5654146107cc57806379f4542e146107eb5780637e7db6e11461080a5780637f61fa931461082957806380afdea81461086b57806381ea44081461087e5780638322fff21461089d5780638b3dd749146108b05780639b3fdf4c146108c35780639d4941d8146108d6578063a1658fad146108f5578063af9f456314610958578063b12b5f761461097a578063c4d66de814610990578063c8ae070f146109af578063cc19ecf7146109c5578063ce17273c14610a11578063d4aae0c414610a60578063d639cd7314610a73578063db7c231414610adb578063e9c211e214610b27578063eba8ba0614610b49578063f6b24b1c14610c9f578063f92a79ff14610ceb578063fbfa77cf14610d3c575b600080fd5b341561025157600080fd5b61027a6001604060020a0360043516600160a060020a0360243581169060443516606435610d4f565b005b341561028757600080fd5b61028f610daa565b60405190815260200160405180910390f35b34156102ac57600080fd5b6102b4610dce565b604051901515815260200160405180910390f35b34156102d357600080fd5b6102b46001604060020a0360043516610dd7565b34156102f257600080fd5b61028f610e79565b341561030557600080fd5b61028f610e9b565b341561031857600080fd5b61027a6001604060020a0360043516602435610ea6565b341561033a57600080fd5b6103546001604060020a0360043581169060243516610fda565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103ae578082015183820152602001610396565b50505050905090810190601f1680156103db5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34156103f657600080fd5b61027a6004803560248101910135611108565b341561041457600080fd5b61041c61119c565b604051600160a060020a03909116815260200160405180910390f35b341561044357600080fd5b61027a600435151561121c565b341561045b57600080fd5b61046f6001604060020a0360043516611282565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104c357fe5b60ff1681526020019850505050505050505060405180910390f35b34156104e957600080fd5b61027a6001604060020a03600435166024356113ff565b341561050b57600080fd5b61027a6001604060020a0360043581169060243581169060443590606435166115e6565b341561053a57600080fd5b61027a6001604060020a0360043581169060243516600160a060020a03604435166064356115fb565b341561056e57600080fd5b6102b4600160a060020a0360043516611792565b341561058d57600080fd5b6105a16001604060020a0360043516611809565b6040516001604060020a03909116815260200160405180910390f35b34156105c857600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166119fe565b341561060a57600080fd5b61028f611c8b565b341561061d57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611c9595505050505050565b341561066c57600080fd5b61028f611d00565b341561067f57600080fd5b61027a600160a060020a0360043516611d24565b341561069e57600080fd5b61027a6001604060020a0360043516600160a060020a0360243516604435611d85565b34156106cc57600080fd5b6105a160048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611d96915050565b341561078657600080fd5b6105a16024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612003565b34156107d757600080fd5b61027a6001604060020a03600435166124b0565b34156107f657600080fd5b61027a600160a060020a036004351661251a565b341561081557600080fd5b6102b4600160a060020a0360043516612592565b341561083457600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516612598565b341561087657600080fd5b61028f612614565b341561088957600080fd5b61028f600160a060020a036004351661261a565b34156108a857600080fd5b61041c61269c565b34156108bb57600080fd5b61028f6126a1565b34156108ce57600080fd5b61028f6126a7565b34156108e157600080fd5b61027a600160a060020a03600435166126cb565b341561090057600080fd5b6102b460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061284295505050505050565b341561096357600080fd5b61027a6001604060020a0360043516602435612980565b341561098557600080fd5b61027a600435612a15565b341561099b57600080fd5b61027a600160a060020a0360043516612a6d565b34156109ba57600080fd5b61027a600435612ad6565b34156109d057600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b45565b3415610a1c57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4e95505050505050565b3415610a6b57600080fd5b61041c612c81565b3415610a7e57600080fd5b61027a600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c90915050565b3415610ae657600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d05565b3415610b3257600080fd5b61027a6001604060020a0360043516602435612e0e565b3415610b5457600080fd5b610b686001604060020a0360043516612f36565b60405180896002811115610b7857fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610bf9578082015183820152602001610be1565b50505050905090810190601f168015610c265780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c5c578082015183820152602001610c44565b50505050905090810190601f168015610c895780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610caa57600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613105565b3415610cf657600080fd5b61041c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061320e95505050505050565b3415610d4757600080fd5b61041c6132ea565b6000600160a060020a0384161515610d6657600080fd5b610d95846020604051908101604052806000815250602060405190810160405260008082526203f48090611d96565b9050610da3818685856115fb565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610de3836132fe565b90506000815460ff166002811115610df757fe5b1415610e065760009150610e73565b6002815460ff166002811115610e1857fe5b14610e1f57fe5b6001810154604060020a900460ff1615610e3c5760019150610e73565b60018101546001604060020a03161515610e595760009150610e73565b6001810154610e70906001604060020a0316610dd7565b91505b50919050565b6040516000805160206151ad8339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610ecb57600080fd5b610ed484613344565b91506001600383015460a060020a900460ff166002811115610ef257fe5b14610efc57600080fd5b6002820154600183018054610fc7926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610f8f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f4c5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613375565b9050610fd4848285613697565b50505050565b600080610fe5614df8565b600080610ff187613344565b915081600101600187036001604060020a031681548110151561101057fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450611044856132fe565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110f85780601f106110cd576101008083540402835291602001916110f8565b820191906000526020600020905b8154815290600101906020018083116110db57829003601f168201915b5050505050925050509250925092565b60006040516000805160206151ad833981519152815260130160405180910390206111533382600060405180591061113d5750595b9080825280602002602001820160405250612842565b151561115e57600080fd5b600091505b60ff821683901015610fd457611191848460ff851681811061118157fe5b9050602002013560001916612ad6565b600190910190611163565b60008054600160a060020a031615156111b457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111fd57600080fd5b6102c65a03f1151561120e57600080fd5b505050604051805191505090565b6040516000805160206151ad833981519152815260130160405180910390206112643382600060405180591061113d5750599080825280602002602001820160405250612842565b151561126f57600080fd5b506069805460ff19169115919091179055565b600080600080600080600080611296614e0a565b61129f8a613344565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561133757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116112f45790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ad57fe5b60028111156113b857fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061140d85611809565b945061141885613344565b92506000600384015460a060020a900460ff16600281111561143657fe5b1461144057600080fd5b6002830154611457906001604060020a031661376b565b600283015460018401805461151f926001604060020a031691906020808202016040519081016040528092919081815260200182805480156114ea57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114a75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613375565b915061152c858386613697565b6002830154611543906001604060020a03166132fe565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b15156115cb57600080fd5b6102c65a03f115156115dc57600080fd5b5050505050505050565b6115ef8461376b565b610fd4848484846137c2565b600080806001604060020a03871681901161161557600080fd5b6000841161162257600080fd5b600160a060020a038516151561163757600080fd5b611640876132fe565b92506000835460ff16600281111561165457fe5b1461165e57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156116d457600080fd5b6102c65a03f115156116e557600080fd5b5050506040518051905015156116fa57600080fd5b61172b87600060405180591061170d5750595b908082528060200260200182016040525060008060008a6000613375565b915061173682613344565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a3611789878386896137c2565b50505050505050565b606954600090819060ff16806117af5750600160a060020a038316155b156117bd5760019150610e73565b600160a060020a03831660009081526068602052604090205460ff16156117e75760019150610e73565b6117f08361261a565b60009081526067602052604090205460ff169392505050565b60008060008061181885613344565b92506000600384015460a060020a900460ff16600281111561183657fe5b14611843578493506119f6565b60028301546000604060020a9091046001604060020a031611801561188257506002830154608060020a90046001604060020a0316611880613e19565b115b156119c557600283015460018401805461194e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116118d75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b60028401549092506119a590604060020a90046001604060020a031660006040518059106119795750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b90506119b685828560000154613697565b8094506119c285613344565b92505b6119ce85613e1d565b90506001604060020a03808216908616146119f2576119f285828560000154613697565b8093505b505050919050565b6000611a0982611792565b1515611a1457600080fd5b5060648054908160018101611a298382614e56565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b1a57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0b929160200190614e82565b5060e082015181600301908051611c26929160200190614e82565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015610fd4576001604060020a03848481518110611cb757fe5b90602001906020020151169150604060020a848481518110611cd557fe5b90602001906020020151811515611ce857fe5b049050611cf582826113ff565b600190920191611c9a565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206151ad83398151915281526013016040518091039020611d4c82613ee5565b611d57338383612842565b1515611d6257600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611d9183338484610d4f565b505050565b6000611da182611792565b1515611dac57600080fd5b5060648054908160018101611dc18382614e56565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e3e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f2f929160200190614e82565b5060e082015181600301908051611f4a929160200190614e82565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fc0578082015183820152602001611fa8565b50505050905090810190601f168015611fed5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061200f83611792565b151561201a57600080fd5b6001604060020a0385161561223757612032856132fe565b90506014612224826101006040519081016040528154909190829060ff16600281111561205b57fe5b600281111561206657fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121745780601f1061214957610100808354040283529160200191612174565b820191906000526020600020905b81548152906001019060200180831161215757829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122165780601f106121eb57610100808354040283529160200191612216565b820191906000526020600020905b8154815290600101906020018083116121f957829003601f168201915b505050505081525050613f05565b6001604060020a03161061223757600080fd5b606480549250826001810161224c8382614e56565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561233c57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161242d929160200190614e82565b5060e082015181600301908051612448929160200190614e82565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124bb826132fe565b90506124c68261376b565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b6040516000805160206151ad833981519152815260130160405180910390206125623382600060405180591061113d5750599080825280602002602001820160405250612842565b151561256d57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126093388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611d96565b979650505050505050565b60015481565b6000612624614df8565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126685780518252601f199092019160209182019101612649565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806126d783612592565b15156126e257600080fd5b6126ea61119c565b91506126f582613f79565b151561270057600080fd5b600160a060020a03831615156127525781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561274d57600080fd5b611d91565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127a957600080fd5b6102c65a03f115156127ba57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561282257600080fd5b6102c65a03f1151561283357600080fd5b50505060405180515050505050565b600061284c614df8565b6000808451111561286557835160200290508391508082525b600054600160a060020a03161580612976575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561290c5780820151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561295a57600080fd5b6102c65a03f1151561296b57600080fd5b505050604051805190505b9695505050505050565b60008061298c84611809565b935061299784613344565b600281015490925060c060020a90046001604060020a031615156129ba57600080fd5b6000600383015460a060020a900460ff1660028111156129d657fe5b146129e057600080fd5b60028201546129f7906001604060020a031661376b565b6002820154610fc79060c060020a90046001604060020a0316613e1d565b6040516000805160206151ad83398151915281526013016040518091039020612a3d82613f9f565b612a48338383612842565b1515612a5357600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612a7a57600080fd5b600160a060020a0381161515612a8f57600080fd5b612a97613fb0565b6069805461010060a860020a031916610100600160a060020a038416021790556001612ac4606482614e56565b506001612ad2606582614efc565b5050565b6040516000805160206151ad83398151915281526013016040518091039020612b1e3382600060405180591061113d5750599080825280602002602001820160405250612842565b1515612b2957600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b50886132fe565b805490915033600160a060020a039081166101009092041614612b7257600080fd5b6001815460ff166002811115612b8457fe5b14612b8e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bba600282018787614f28565b50612bc9600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612ad257612c78828281518110612c6957fe5b90602001906020020151611809565b50600101612c51565b600054600160a060020a031681565b600080805b8451831015612cfd576001604060020a03858481518110612cb257fe5b90602001906020020151169150604060020a858481518110612cd057fe5b90602001906020020151811515612ce357fe5b049050612cf2868383876115e6565b600190920191612c95565b505050505050565b6000612d10886132fe565b805490915033600160a060020a039081166101009092041614612d3257600080fd5b6000815460ff166002811115612d4457fe5b14612d4e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7a600282018787614f28565b50612d89600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3357600080fd5b612e3c84613344565b91506001600383015460a060020a900460ff166002811115612e5a57fe5b14612e6457600080fd5b6002820154600183018054612f2b926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb45790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b9050610fc781611809565b600080612f41614df8565b612f49614df8565b6000806000806000612f5a8a6132fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f8201819004810201604051908101604052809291908181526020018280546001816001161561010002031660029004801561300f5780601f10612fe45761010080835404028352916020019161300f565b820191906000526020600020905b815481529060010190602001808311612ff257829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130ae5780601f10613083576101008083540402835291602001916130ae565b820191906000526020600020905b81548152906001019060200180831161309157829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000613110886132fe565b805490915033600160a060020a03908116610100909204161461313257600080fd5b6002815460ff16600281111561314457fe5b1461314e57600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317a600282018787614f28565b50613189600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000613218613fca565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561327f578082015183820152602001613267565b50505050905090810190601f1680156132ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132ca57600080fd5b6102c65a03f115156132db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331857600080fd5b606480546001604060020a03841690811061332f57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061335e57600080fd5b606580546001604060020a03841690811061332f57fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133ae578082015183820152602001613396565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341857fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134825780925061368a565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c28382614efc565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354357fe5b905291905081518155602082015181600101908051613566929160200190614f96565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561367e57fe5b02179055505050508092505b5050979650505050505050565b60008060006136a96001878787614061565b9250846001604060020a0316866001604060020a031614156136ca57612cfd565b8215156136d657612cfd565b6136df86613344565b91506136ea85613344565b8254909150839010156136fc57600080fd5b81548390038255805483018082558390101561371757600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117896000878786614061565b6000613776826132fe565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b75750805433600160a060020a0390811661010090920416145b1515612ad257600080fd5b600080808080806001604060020a0387168190116137df57600080fd5b6137e889611809565b98506137f389613344565b95506137fe876132fe565b94506000600387015460a060020a900460ff16600281111561381c57fe5b1461382657600080fd5b60028601546001604060020a038b811691161415613b21576000855460ff16600281111561385057fe5b141561386657613861898989614087565b613e0d565b6002855460ff16600281111561387857fe5b1415613889576138618989896140e1565b6001855460ff16600281111561389b57fe5b1415613b1f576139c7866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fa5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b60028111156139be57fe5b9052508861431f565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fa57506001604060020a038414155b15613b0057600186015460001901841415613ae3576002860154600187018054613ad6926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa257602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a5f5790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b925061386189848a613697565b613afa89896001848a600101805490500303614385565b50613e0d565b613b1289898860010180549050614385565b985061386189898961448f565bfe5b613c478661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbd57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7a5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3357fe5b6002811115613c3e57fe5b9052508b61431f565b6001604060020a0390811692508214613b1f576000855460ff166002811115613c6c57fe5b1415613c9d5760028601546001604060020a03888116911614613c8b57fe5b613afa89898860010180549050614385565b6001855460ff166002811115613caf57fe5b1415613dd157613d9c866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fa575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b6001604060020a039081169150811480613db557508181115b15613ae357613b1289896001858a600101805490500303614385565b6002855460ff166002811115613de357fe5b1415613b1f57613e0089896001858a600101805490500303614385565b98506138618989896145bf565b50505050505050505050565b4290565b600080806001604060020a0384161515613e3a5760009250613ede565b613e4384613344565b6002810154909250613e5d906001604060020a03166132fe565b90506000815460ff166002811115613e7157fe5b1415613e7f57839250613ede565b6002815460ff166002811115613e9157fe5b14613e9857fe5b6002820154613eaf906001604060020a0316610dd7565b1515613ebd57839250613ede565b6002820154613edb9060c060020a90046001604060020a0316613e1d565b92505b5050919050565b613eed614df8565b613eff82600160a060020a03166148d2565b92915050565b600080600283516002811115613f1757fe5b14613f1e57fe5b82606001516001604060020a03161515613f3b5760019150610e73565b613f4883606001516132fe565b9050613f6f816101006040519081016040528154909190829060ff16600281111561205b57fe5b6001019392505050565b600080600160a060020a0383161515613f955760009150610e73565b50506000903b1190565b613fa7614df8565b613eff826148d2565b60035415613fbd57600080fd5b613fc5614919565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561403d57600080fd5b6102c65a03f1151561404e57600080fd5b50505060405180519250829150505b5090565b8061406f858580868561491d565b905061407e858486868561491d565b95945050505050565b60008061409385613344565b91506140d48360006040518059106140a85750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613375565b9050610da3858286613697565b60008060006140ef86613344565b92506014614218846101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161414c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b600281111561421057fe5b905250614a85565b1061422257600080fd5b61422b84610dd7565b1561423557600080fd5b60028301546001840180546142d2926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57600091825260209182902080546001604060020a031684529082028301929091600891018084116118d75750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613375565b91506143128460006040518059106119795750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b9050612cfd868287613697565b6000805b83602001515181101561437357826001604060020a03168460200151828151811061434a57fe5b906020019060200201516001604060020a0316141561436b5780915061437e565b600101614323565b6001604060020a0391505b5092915050565b600080614390614df8565b600061439b87613344565b60018101549093508590036040518059106143b35750595b90808252806020026020018201604052509150600090505b600183015485900381101561443e57600183018054829081106143ea57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061441f57fe5b6001604060020a039092166020928302909101909101526001016143cb565b60028301546003840154614478916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613375565b9350614485878588613697565b5050509392505050565b6000614499614df8565b6000806144a587613344565b6001810154909450600a90106144ba57600080fd5b600180850154016040518059106144ce5750595b90808252806020026020018201604052509250600091505b6001840154821015614559576001840180548390811061450257fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061453757fe5b6001604060020a039092166020928302909101909101526001909101906144e6565b6001840154859084908151811061456c57fe5b6001604060020a0392831660209182029092010152600285015460038601546145b292828116928792600092839260c060020a90041690600160a060020a031682613375565b9050611789878288613697565b6000806145cb85613344565b915060146146b6836101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b106146c057600080fd5b6146c983610dd7565b156146d357600080fd5b60028201546001830180546140d4926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561476657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147235790505b505050505085614891866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561480857602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147c55790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561487e57fe5b600281111561488957fe5b905250614b9b565b6001604060020a03166148a2613e19565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613375565b6148da614df8565b60016040518059106148e95750595b90808252806020026020018201604052509050818160008151811061490a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a03161461494457610100614947565b60005b61ffff16925084935061495988613344565b6002810154600382015491935061498b918b916001604060020a0316908a908a908890600160a060020a03168a614c33565b9350600090505b60018201546001604060020a0382161015614a1e57614a148983600101836001604060020a03168154811015156149c557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c33565b9350600101614992565b60028201546000604060020a9091046001604060020a03161115614a795760028201546003830154614a76918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c33565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614aa55760009150610e73565b614ab28360a00151613344565b9050613f6f816101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b6000806000614bad84604001516132fe565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ede57614bf784602001518281518110614be857fe5b906020019060200201516132fe565b80549092506001604060020a0380851660a860020a909204161115614c2b57815460a860020a90046001604060020a031692505b600101614bc8565b80600080614c40896132fe565b600181015490915069010000000000000000009004600160a060020a031615801590614c6c5750600083115b1561368a578915614d4457600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d1357600080fd5b6102c65a03f11515614d2457600080fd5b505050604051805192505082821115614d3c57600080fd5b81925061368a565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614dd757600080fd5b6102c65a03f11515614de857600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e26614df8565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611d9157600402816004028360005260206000209182019101611d91919061504a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614ec357805160ff1916838001178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578251825591602001919060010190614ed5565b5061405d9291506150b1565b815481835581811511611d9157600402816004028360005260206000209182019101611d9191906150cb565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f695782800160ff19823516178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578235825591602001919060010190614f7b565b8280548282559060005260206000209060030160049004810192821561503e5791602002820160005b8382111561500957835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302614fbf565b801561503c5782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615009565b505b5061405d92915061511b565b610ea391905b8082111561405d5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061509a6002830182615140565b6150a8600383016000615140565b50600401615050565b610ea391905b8082111561405d57600081556001016150b7565b610ea391905b8082111561405d5760008082556150eb6001830182615187565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff191690556004016150d1565b610ea391905b8082111561405d57805467ffffffffffffffff19168155600101615121565b50805460018160011615610100020316600290046000825580601f106151665750615184565b601f01602090049060005260206000209081019061518491906150b1565b50565b50805460008255600301600490049060005260206000209081019061518491906150b15600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820ed1eacae6750bb2e266a5f861872a813708ecd94e8e2f531e86e5b01327a4c7d0029","realRuntimeBytecode":"6060604052600436106102415763ffffffff60e060020a6000350416627611c68114610246578063178e60791461027c5780631c8e8568146102a15780632101a6ad146102c857806324fea3b0146102e75780632a8ec8cc146102fa5780632ee888081461030d5780632f6b64ca1461032f57806332ce8ebc146103eb57806332f0a3b51461040957806338740291146104385780633f657a461461045057806343387983146104de57806347c5ef43146105005780634c4316c71461052f5780634eafbcd51461056357806350f8a8031461058257806352dc7dcc146105bd5780635503d9ba146105ff57806357adafb61461061257806360b1e057146106615780636293c702146106745780636ba3cc87146106935780636e802c6a146106c157806372116e921461077b578063796d5654146107cc57806379f4542e146107eb5780637e7db6e11461080a5780637f61fa931461082957806380afdea81461086b57806381ea44081461087e5780638322fff21461089d5780638b3dd749146108b05780639b3fdf4c146108c35780639d4941d8146108d6578063a1658fad146108f5578063af9f456314610958578063b12b5f761461097a578063c4d66de814610990578063c8ae070f146109af578063cc19ecf7146109c5578063ce17273c14610a11578063d4aae0c414610a60578063d639cd7314610a73578063db7c231414610adb578063e9c211e214610b27578063eba8ba0614610b49578063f6b24b1c14610c9f578063f92a79ff14610ceb578063fbfa77cf14610d3c575b600080fd5b341561025157600080fd5b61027a6001604060020a0360043516600160a060020a0360243581169060443516606435610d4f565b005b341561028757600080fd5b61028f610daa565b60405190815260200160405180910390f35b34156102ac57600080fd5b6102b4610dce565b604051901515815260200160405180910390f35b34156102d357600080fd5b6102b46001604060020a0360043516610dd7565b34156102f257600080fd5b61028f610e79565b341561030557600080fd5b61028f610e9b565b341561031857600080fd5b61027a6001604060020a0360043516602435610ea6565b341561033a57600080fd5b6103546001604060020a0360043581169060243516610fda565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103ae578082015183820152602001610396565b50505050905090810190601f1680156103db5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34156103f657600080fd5b61027a6004803560248101910135611108565b341561041457600080fd5b61041c61119c565b604051600160a060020a03909116815260200160405180910390f35b341561044357600080fd5b61027a600435151561121c565b341561045b57600080fd5b61046f6001604060020a0360043516611282565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104c357fe5b60ff1681526020019850505050505050505060405180910390f35b34156104e957600080fd5b61027a6001604060020a03600435166024356113ff565b341561050b57600080fd5b61027a6001604060020a0360043581169060243581169060443590606435166115e6565b341561053a57600080fd5b61027a6001604060020a0360043581169060243516600160a060020a03604435166064356115fb565b341561056e57600080fd5b6102b4600160a060020a0360043516611792565b341561058d57600080fd5b6105a16001604060020a0360043516611809565b6040516001604060020a03909116815260200160405180910390f35b34156105c857600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166119fe565b341561060a57600080fd5b61028f611c8b565b341561061d57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611c9595505050505050565b341561066c57600080fd5b61028f611d00565b341561067f57600080fd5b61027a600160a060020a0360043516611d24565b341561069e57600080fd5b61027a6001604060020a0360043516600160a060020a0360243516604435611d85565b34156106cc57600080fd5b6105a160048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611d96915050565b341561078657600080fd5b6105a16024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612003565b34156107d757600080fd5b61027a6001604060020a03600435166124b0565b34156107f657600080fd5b61027a600160a060020a036004351661251a565b341561081557600080fd5b6102b4600160a060020a0360043516612592565b341561083457600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516612598565b341561087657600080fd5b61028f612614565b341561088957600080fd5b61028f600160a060020a036004351661261a565b34156108a857600080fd5b61041c61269c565b34156108bb57600080fd5b61028f6126a1565b34156108ce57600080fd5b61028f6126a7565b34156108e157600080fd5b61027a600160a060020a03600435166126cb565b341561090057600080fd5b6102b460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061284295505050505050565b341561096357600080fd5b61027a6001604060020a0360043516602435612980565b341561098557600080fd5b61027a600435612a15565b341561099b57600080fd5b61027a600160a060020a0360043516612a6d565b34156109ba57600080fd5b61027a600435612ad6565b34156109d057600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b45565b3415610a1c57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4e95505050505050565b3415610a6b57600080fd5b61041c612c81565b3415610a7e57600080fd5b61027a600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c90915050565b3415610ae657600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d05565b3415610b3257600080fd5b61027a6001604060020a0360043516602435612e0e565b3415610b5457600080fd5b610b686001604060020a0360043516612f36565b60405180896002811115610b7857fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610bf9578082015183820152602001610be1565b50505050905090810190601f168015610c265780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c5c578082015183820152602001610c44565b50505050905090810190601f168015610c895780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610caa57600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613105565b3415610cf657600080fd5b61041c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061320e95505050505050565b3415610d4757600080fd5b61041c6132ea565b6000600160a060020a0384161515610d6657600080fd5b610d95846020604051908101604052806000815250602060405190810160405260008082526203f48090611d96565b9050610da3818685856115fb565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610de3836132fe565b90506000815460ff166002811115610df757fe5b1415610e065760009150610e73565b6002815460ff166002811115610e1857fe5b14610e1f57fe5b6001810154604060020a900460ff1615610e3c5760019150610e73565b60018101546001604060020a03161515610e595760009150610e73565b6001810154610e70906001604060020a0316610dd7565b91505b50919050565b6040516000805160206151ad8339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610ecb57600080fd5b610ed484613344565b91506001600383015460a060020a900460ff166002811115610ef257fe5b14610efc57600080fd5b6002820154600183018054610fc7926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610f8f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f4c5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613375565b9050610fd4848285613697565b50505050565b600080610fe5614df8565b600080610ff187613344565b915081600101600187036001604060020a031681548110151561101057fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450611044856132fe565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110f85780601f106110cd576101008083540402835291602001916110f8565b820191906000526020600020905b8154815290600101906020018083116110db57829003601f168201915b5050505050925050509250925092565b60006040516000805160206151ad833981519152815260130160405180910390206111533382600060405180591061113d5750595b9080825280602002602001820160405250612842565b151561115e57600080fd5b600091505b60ff821683901015610fd457611191848460ff851681811061118157fe5b9050602002013560001916612ad6565b600190910190611163565b60008054600160a060020a031615156111b457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111fd57600080fd5b6102c65a03f1151561120e57600080fd5b505050604051805191505090565b6040516000805160206151ad833981519152815260130160405180910390206112643382600060405180591061113d5750599080825280602002602001820160405250612842565b151561126f57600080fd5b506069805460ff19169115919091179055565b600080600080600080600080611296614e0a565b61129f8a613344565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561133757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116112f45790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ad57fe5b60028111156113b857fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061140d85611809565b945061141885613344565b92506000600384015460a060020a900460ff16600281111561143657fe5b1461144057600080fd5b6002830154611457906001604060020a031661376b565b600283015460018401805461151f926001604060020a031691906020808202016040519081016040528092919081815260200182805480156114ea57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114a75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613375565b915061152c858386613697565b6002830154611543906001604060020a03166132fe565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b15156115cb57600080fd5b6102c65a03f115156115dc57600080fd5b5050505050505050565b6115ef8461376b565b610fd4848484846137c2565b600080806001604060020a03871681901161161557600080fd5b6000841161162257600080fd5b600160a060020a038516151561163757600080fd5b611640876132fe565b92506000835460ff16600281111561165457fe5b1461165e57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156116d457600080fd5b6102c65a03f115156116e557600080fd5b5050506040518051905015156116fa57600080fd5b61172b87600060405180591061170d5750595b908082528060200260200182016040525060008060008a6000613375565b915061173682613344565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a3611789878386896137c2565b50505050505050565b606954600090819060ff16806117af5750600160a060020a038316155b156117bd5760019150610e73565b600160a060020a03831660009081526068602052604090205460ff16156117e75760019150610e73565b6117f08361261a565b60009081526067602052604090205460ff169392505050565b60008060008061181885613344565b92506000600384015460a060020a900460ff16600281111561183657fe5b14611843578493506119f6565b60028301546000604060020a9091046001604060020a031611801561188257506002830154608060020a90046001604060020a0316611880613e19565b115b156119c557600283015460018401805461194e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116118d75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b60028401549092506119a590604060020a90046001604060020a031660006040518059106119795750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b90506119b685828560000154613697565b8094506119c285613344565b92505b6119ce85613e1d565b90506001604060020a03808216908616146119f2576119f285828560000154613697565b8093505b505050919050565b6000611a0982611792565b1515611a1457600080fd5b5060648054908160018101611a298382614e56565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b1a57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0b929160200190614e82565b5060e082015181600301908051611c26929160200190614e82565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015610fd4576001604060020a03848481518110611cb757fe5b90602001906020020151169150604060020a848481518110611cd557fe5b90602001906020020151811515611ce857fe5b049050611cf582826113ff565b600190920191611c9a565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206151ad83398151915281526013016040518091039020611d4c82613ee5565b611d57338383612842565b1515611d6257600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611d9183338484610d4f565b505050565b6000611da182611792565b1515611dac57600080fd5b5060648054908160018101611dc18382614e56565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e3e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f2f929160200190614e82565b5060e082015181600301908051611f4a929160200190614e82565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fc0578082015183820152602001611fa8565b50505050905090810190601f168015611fed5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061200f83611792565b151561201a57600080fd5b6001604060020a0385161561223757612032856132fe565b90506014612224826101006040519081016040528154909190829060ff16600281111561205b57fe5b600281111561206657fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121745780601f1061214957610100808354040283529160200191612174565b820191906000526020600020905b81548152906001019060200180831161215757829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122165780601f106121eb57610100808354040283529160200191612216565b820191906000526020600020905b8154815290600101906020018083116121f957829003601f168201915b505050505081525050613f05565b6001604060020a03161061223757600080fd5b606480549250826001810161224c8382614e56565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561233c57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161242d929160200190614e82565b5060e082015181600301908051612448929160200190614e82565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124bb826132fe565b90506124c68261376b565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b6040516000805160206151ad833981519152815260130160405180910390206125623382600060405180591061113d5750599080825280602002602001820160405250612842565b151561256d57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126093388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611d96565b979650505050505050565b60015481565b6000612624614df8565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126685780518252601f199092019160209182019101612649565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806126d783612592565b15156126e257600080fd5b6126ea61119c565b91506126f582613f79565b151561270057600080fd5b600160a060020a03831615156127525781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561274d57600080fd5b611d91565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127a957600080fd5b6102c65a03f115156127ba57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561282257600080fd5b6102c65a03f1151561283357600080fd5b50505060405180515050505050565b600061284c614df8565b6000808451111561286557835160200290508391508082525b600054600160a060020a03161580612976575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561290c5780820151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561295a57600080fd5b6102c65a03f1151561296b57600080fd5b505050604051805190505b9695505050505050565b60008061298c84611809565b935061299784613344565b600281015490925060c060020a90046001604060020a031615156129ba57600080fd5b6000600383015460a060020a900460ff1660028111156129d657fe5b146129e057600080fd5b60028201546129f7906001604060020a031661376b565b6002820154610fc79060c060020a90046001604060020a0316613e1d565b6040516000805160206151ad83398151915281526013016040518091039020612a3d82613f9f565b612a48338383612842565b1515612a5357600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612a7a57600080fd5b600160a060020a0381161515612a8f57600080fd5b612a97613fb0565b6069805461010060a860020a031916610100600160a060020a038416021790556001612ac4606482614e56565b506001612ad2606582614efc565b5050565b6040516000805160206151ad83398151915281526013016040518091039020612b1e3382600060405180591061113d5750599080825280602002602001820160405250612842565b1515612b2957600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b50886132fe565b805490915033600160a060020a039081166101009092041614612b7257600080fd5b6001815460ff166002811115612b8457fe5b14612b8e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bba600282018787614f28565b50612bc9600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612ad257612c78828281518110612c6957fe5b90602001906020020151611809565b50600101612c51565b600054600160a060020a031681565b600080805b8451831015612cfd576001604060020a03858481518110612cb257fe5b90602001906020020151169150604060020a858481518110612cd057fe5b90602001906020020151811515612ce357fe5b049050612cf2868383876115e6565b600190920191612c95565b505050505050565b6000612d10886132fe565b805490915033600160a060020a039081166101009092041614612d3257600080fd5b6000815460ff166002811115612d4457fe5b14612d4e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7a600282018787614f28565b50612d89600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3357600080fd5b612e3c84613344565b91506001600383015460a060020a900460ff166002811115612e5a57fe5b14612e6457600080fd5b6002820154600183018054612f2b926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb45790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b9050610fc781611809565b600080612f41614df8565b612f49614df8565b6000806000806000612f5a8a6132fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f8201819004810201604051908101604052809291908181526020018280546001816001161561010002031660029004801561300f5780601f10612fe45761010080835404028352916020019161300f565b820191906000526020600020905b815481529060010190602001808311612ff257829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130ae5780601f10613083576101008083540402835291602001916130ae565b820191906000526020600020905b81548152906001019060200180831161309157829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000613110886132fe565b805490915033600160a060020a03908116610100909204161461313257600080fd5b6002815460ff16600281111561314457fe5b1461314e57600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317a600282018787614f28565b50613189600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000613218613fca565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561327f578082015183820152602001613267565b50505050905090810190601f1680156132ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132ca57600080fd5b6102c65a03f115156132db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331857600080fd5b606480546001604060020a03841690811061332f57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061335e57600080fd5b606580546001604060020a03841690811061332f57fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133ae578082015183820152602001613396565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341857fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134825780925061368a565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c28382614efc565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354357fe5b905291905081518155602082015181600101908051613566929160200190614f96565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561367e57fe5b02179055505050508092505b5050979650505050505050565b60008060006136a96001878787614061565b9250846001604060020a0316866001604060020a031614156136ca57612cfd565b8215156136d657612cfd565b6136df86613344565b91506136ea85613344565b8254909150839010156136fc57600080fd5b81548390038255805483018082558390101561371757600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117896000878786614061565b6000613776826132fe565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b75750805433600160a060020a0390811661010090920416145b1515612ad257600080fd5b600080808080806001604060020a0387168190116137df57600080fd5b6137e889611809565b98506137f389613344565b95506137fe876132fe565b94506000600387015460a060020a900460ff16600281111561381c57fe5b1461382657600080fd5b60028601546001604060020a038b811691161415613b21576000855460ff16600281111561385057fe5b141561386657613861898989614087565b613e0d565b6002855460ff16600281111561387857fe5b1415613889576138618989896140e1565b6001855460ff16600281111561389b57fe5b1415613b1f576139c7866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fa5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b60028111156139be57fe5b9052508861431f565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fa57506001604060020a038414155b15613b0057600186015460001901841415613ae3576002860154600187018054613ad6926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa257602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a5f5790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b925061386189848a613697565b613afa89896001848a600101805490500303614385565b50613e0d565b613b1289898860010180549050614385565b985061386189898961448f565bfe5b613c478661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbd57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7a5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3357fe5b6002811115613c3e57fe5b9052508b61431f565b6001604060020a0390811692508214613b1f576000855460ff166002811115613c6c57fe5b1415613c9d5760028601546001604060020a03888116911614613c8b57fe5b613afa89898860010180549050614385565b6001855460ff166002811115613caf57fe5b1415613dd157613d9c866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fa575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b6001604060020a039081169150811480613db557508181115b15613ae357613b1289896001858a600101805490500303614385565b6002855460ff166002811115613de357fe5b1415613b1f57613e0089896001858a600101805490500303614385565b98506138618989896145bf565b50505050505050505050565b4290565b600080806001604060020a0384161515613e3a5760009250613ede565b613e4384613344565b6002810154909250613e5d906001604060020a03166132fe565b90506000815460ff166002811115613e7157fe5b1415613e7f57839250613ede565b6002815460ff166002811115613e9157fe5b14613e9857fe5b6002820154613eaf906001604060020a0316610dd7565b1515613ebd57839250613ede565b6002820154613edb9060c060020a90046001604060020a0316613e1d565b92505b5050919050565b613eed614df8565b613eff82600160a060020a03166148d2565b92915050565b600080600283516002811115613f1757fe5b14613f1e57fe5b82606001516001604060020a03161515613f3b5760019150610e73565b613f4883606001516132fe565b9050613f6f816101006040519081016040528154909190829060ff16600281111561205b57fe5b6001019392505050565b600080600160a060020a0383161515613f955760009150610e73565b50506000903b1190565b613fa7614df8565b613eff826148d2565b60035415613fbd57600080fd5b613fc5614919565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561403d57600080fd5b6102c65a03f1151561404e57600080fd5b50505060405180519250829150505b5090565b8061406f858580868561491d565b905061407e858486868561491d565b95945050505050565b60008061409385613344565b91506140d48360006040518059106140a85750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613375565b9050610da3858286613697565b60008060006140ef86613344565b92506014614218846101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161414c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b600281111561421057fe5b905250614a85565b1061422257600080fd5b61422b84610dd7565b1561423557600080fd5b60028301546001840180546142d2926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57600091825260209182902080546001604060020a031684529082028301929091600891018084116118d75750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613375565b91506143128460006040518059106119795750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b9050612cfd868287613697565b6000805b83602001515181101561437357826001604060020a03168460200151828151811061434a57fe5b906020019060200201516001604060020a0316141561436b5780915061437e565b600101614323565b6001604060020a0391505b5092915050565b600080614390614df8565b600061439b87613344565b60018101549093508590036040518059106143b35750595b90808252806020026020018201604052509150600090505b600183015485900381101561443e57600183018054829081106143ea57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061441f57fe5b6001604060020a039092166020928302909101909101526001016143cb565b60028301546003840154614478916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613375565b9350614485878588613697565b5050509392505050565b6000614499614df8565b6000806144a587613344565b6001810154909450600a90106144ba57600080fd5b600180850154016040518059106144ce5750595b90808252806020026020018201604052509250600091505b6001840154821015614559576001840180548390811061450257fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061453757fe5b6001604060020a039092166020928302909101909101526001909101906144e6565b6001840154859084908151811061456c57fe5b6001604060020a0392831660209182029092010152600285015460038601546145b292828116928792600092839260c060020a90041690600160a060020a031682613375565b9050611789878288613697565b6000806145cb85613344565b915060146146b6836101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b106146c057600080fd5b6146c983610dd7565b156146d357600080fd5b60028201546001830180546140d4926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561476657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147235790505b505050505085614891866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561480857602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147c55790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561487e57fe5b600281111561488957fe5b905250614b9b565b6001604060020a03166148a2613e19565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613375565b6148da614df8565b60016040518059106148e95750595b90808252806020026020018201604052509050818160008151811061490a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a03161461494457610100614947565b60005b61ffff16925084935061495988613344565b6002810154600382015491935061498b918b916001604060020a0316908a908a908890600160a060020a03168a614c33565b9350600090505b60018201546001604060020a0382161015614a1e57614a148983600101836001604060020a03168154811015156149c557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c33565b9350600101614992565b60028201546000604060020a9091046001604060020a03161115614a795760028201546003830154614a76918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c33565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614aa55760009150610e73565b614ab28360a00151613344565b9050613f6f816101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b6000806000614bad84604001516132fe565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ede57614bf784602001518281518110614be857fe5b906020019060200201516132fe565b80549092506001604060020a0380851660a860020a909204161115614c2b57815460a860020a90046001604060020a031692505b600101614bc8565b80600080614c40896132fe565b600181015490915069010000000000000000009004600160a060020a031615801590614c6c5750600083115b1561368a578915614d4457600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d1357600080fd5b6102c65a03f11515614d2457600080fd5b505050604051805192505082821115614d3c57600080fd5b81925061368a565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614dd757600080fd5b6102c65a03f11515614de857600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e26614df8565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611d9157600402816004028360005260206000209182019101611d91919061504a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614ec357805160ff1916838001178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578251825591602001919060010190614ed5565b5061405d9291506150b1565b815481835581811511611d9157600402816004028360005260206000209182019101611d9191906150cb565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f695782800160ff19823516178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578235825591602001919060010190614f7b565b8280548282559060005260206000209060030160049004810192821561503e5791602002820160005b8382111561500957835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302614fbf565b801561503c5782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615009565b505b5061405d92915061511b565b610ea391905b8082111561405d5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061509a6002830182615140565b6150a8600383016000615140565b50600401615050565b610ea391905b8082111561405d57600081556001016150b7565b610ea391905b8082111561405d5760008082556150eb6001830182615187565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff191690556004016150d1565b610ea391905b8082111561405d57805467ffffffffffffffff19168155600101615121565b50805460018160011615610100020316600290046000825580601f106151665750615184565b601f01602090049060005260206000209081019061518491906150b1565b50565b50805460008255600301600490049060005260206000209081019061518491906150b15600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820","linkReferences":{},"swarmHash":"ed1eacae6750bb2e266a5f861872a813708ecd94e8e2f531e86e5b01327a4c7d","gasEstimates":{"creation":{"codeDepositCost":"4203200","executionCost":"25049","totalCost":"4228249"},"external":{"APP_ADDR_NAMESPACE()":"258","ETH()":"996","EVMSCRIPT_REGISTRY_APP()":"962","EVMSCRIPT_REGISTRY_APP_ID()":"676","PLUGIN_MANAGER_ROLE()":"infinite","addDelegate(string,string,uint64,address)":"infinite","addGiver(address,string,string,uint64,address)":"infinite","addGiver(string,string,uint64,address)":"infinite","addGiverAndDonate(uint64,address,address,uint256)":"infinite","addGiverAndDonate(uint64,address,uint256)":"infinite","addProject(string,string,address,uint64,uint64,address)":"infinite","addValidPluginContract(bytes32)":"infinite","addValidPluginContracts(bytes32[])":"infinite","addValidPluginInstance(address)":"infinite","allowRecoverability(address)":"919","appId()":"1074","canPerform(address,bytes32,uint256[])":"infinite","cancelPayment(uint64,uint256)":"infinite","cancelPledge(uint64,uint256)":"infinite","cancelProject(uint64)":"infinite","confirmPayment(uint64,uint256)":"infinite","donate(uint64,uint64,address,uint256)":"infinite","getCodeHash(address)":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"1140","getPledge(uint64)":"infinite","getPledgeAdmin(uint64)":"infinite","getPledgeDelegate(uint64,uint64)":"infinite","getRecoveryVault()":"infinite","initialize(address)":"infinite","isProjectCanceled(uint64)":"infinite","isValidPlugin(address)":"infinite","kernel()":"1513","mNormalizePledge(uint64[])":"infinite","mTransfer(uint64,uint256[],uint64)":"infinite","mWithdraw(uint256[])":"infinite","normalizePledge(uint64)":"infinite","numberOfPledgeAdmins()":"841","numberOfPledges()":"556","removeValidPluginContract(bytes32)":"infinite","removeValidPluginInstance(address)":"infinite","transfer(uint64,uint64,uint256,uint64)":"infinite","transferToVault(address)":"infinite","updateDelegate(uint64,address,string,string,uint64)":"infinite","updateGiver(uint64,address,string,string,uint64)":"infinite","updateProject(uint64,address,string,string,uint64)":"infinite","useWhitelist(bool)":"infinite","vault()":"1678","whitelistDisabled()":"492","withdraw(uint64,uint256)":"infinite"}},"functionHashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","PLUGIN_MANAGER_ROLE()":"24fea3b0","addDelegate(string,string,uint64,address)":"52dc7dcc","addGiver(address,string,string,uint64,address)":"6e802c6a","addGiver(string,string,uint64,address)":"7f61fa93","addGiverAndDonate(uint64,address,address,uint256)":"007611c6","addGiverAndDonate(uint64,address,uint256)":"6ba3cc87","addProject(string,string,address,uint64,uint64,address)":"72116e92","addValidPluginContract(bytes32)":"c8ae070f","addValidPluginContracts(bytes32[])":"32ce8ebc","addValidPluginInstance(address)":"79f4542e","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","cancelPayment(uint64,uint256)":"e9c211e2","cancelPledge(uint64,uint256)":"af9f4563","cancelProject(uint64)":"796d5654","confirmPayment(uint64,uint256)":"2ee88808","donate(uint64,uint64,address,uint256)":"4c4316c7","getCodeHash(address)":"81ea4408","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getPledge(uint64)":"3f657a46","getPledgeAdmin(uint64)":"eba8ba06","getPledgeDelegate(uint64,uint64)":"2f6b64ca","getRecoveryVault()":"32f0a3b5","initialize(address)":"c4d66de8","isProjectCanceled(uint64)":"2101a6ad","isValidPlugin(address)":"4eafbcd5","kernel()":"d4aae0c4","mNormalizePledge(uint64[])":"ce17273c","mTransfer(uint64,uint256[],uint64)":"d639cd73","mWithdraw(uint256[])":"57adafb6","normalizePledge(uint64)":"50f8a803","numberOfPledgeAdmins()":"5503d9ba","numberOfPledges()":"2a8ec8cc","removeValidPluginContract(bytes32)":"b12b5f76","removeValidPluginInstance(address)":"6293c702","transfer(uint64,uint64,uint256,uint64)":"47c5ef43","transferToVault(address)":"9d4941d8","updateDelegate(uint64,address,string,string,uint64)":"cc19ecf7","updateGiver(uint64,address,string,string,uint64)":"db7c2314","updateProject(uint64,address,string,string,uint64)":"f6b24b1c","useWhitelist(bool)":"38740291","vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568","withdraw(uint64,uint256)":"43387983"},"abiDefinition":[{"constant":false,"inputs":[{"name":"idReceiver","type":"uint64"},{"name":"donorAddress","type":"address"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"addGiverAndDonate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x007611c6"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x178e6079"},{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x1c8e8568"},{"constant":true,"inputs":[{"name":"projectId","type":"uint64"}],"name":"isProjectCanceled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x2101a6ad"},{"constant":true,"inputs":[],"name":"PLUGIN_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x24fea3b0"},{"constant":true,"inputs":[],"name":"numberOfPledges","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x2a8ec8cc"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"confirmPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x2ee88808"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"idxDelegate","type":"uint64"}],"name":"getPledgeDelegate","outputs":[{"name":"idDelegate","type":"uint64"},{"name":"addr","type":"address"},{"name":"name","type":"string"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x2f6b64ca"},{"constant":false,"inputs":[{"name":"contractHashes","type":"bytes32[]"}],"name":"addValidPluginContracts","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x32ce8ebc"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x32f0a3b5"},{"constant":false,"inputs":[{"name":"useWhitelist","type":"bool"}],"name":"useWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x38740291"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"getPledge","outputs":[{"name":"amount","type":"uint256"},{"name":"owner","type":"uint64"},{"name":"nDelegates","type":"uint64"},{"name":"intendedProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"oldPledge","type":"uint64"},{"name":"token","type":"address"},{"name":"pledgeState","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x3f657a46"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x43387983"},{"constant":false,"inputs":[{"name":"idSender","type":"uint64"},{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"},{"name":"idReceiver","type":"uint64"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x47c5ef43"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"idReceiver","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"donate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x4c4316c7"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isValidPlugin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x4eafbcd5"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"normalizePledge","outputs":[{"name":"","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x50f8a803"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addDelegate","outputs":[{"name":"idDelegate","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x52dc7dcc"},{"constant":true,"inputs":[],"name":"numberOfPledgeAdmins","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x5503d9ba"},{"constant":false,"inputs":[{"name":"pledgesAmounts","type":"uint256[]"}],"name":"mWithdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x57adafb6"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x60b1e057"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"removeValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x6293c702"},{"constant":false,"inputs":[{"name":"idReceiver","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"addGiverAndDonate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x6ba3cc87"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x6e802c6a"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"projectAdmin","type":"address"},{"name":"parentProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addProject","outputs":[{"name":"idProject","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x72116e92"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"}],"name":"cancelProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x796d5654"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"addValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x79f4542e"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x7e7db6e1"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x7f61fa93"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x80afdea8"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getCodeHash","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x81ea4408"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8322fff2"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8b3dd749"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x9b3fdf4c"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x9d4941d8"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xa1658fad"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"cancelPledge","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xaf9f4563"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"removeValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xb12b5f76"},{"constant":false,"inputs":[{"name":"_vault","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xc4d66de8"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"addValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xc8ae070f"},{"constant":false,"inputs":[{"name":"idDelegate","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateDelegate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xcc19ecf7"},{"constant":false,"inputs":[{"name":"pledges","type":"uint64[]"}],"name":"mNormalizePledge","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xce17273c"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xd4aae0c4"},{"constant":false,"inputs":[{"name":"idSender","type":"uint64"},{"name":"pledgesAmounts","type":"uint256[]"},{"name":"idReceiver","type":"uint64"}],"name":"mTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd639cd73"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateGiver","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xdb7c2314"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"cancelPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xe9c211e2"},{"constant":true,"inputs":[{"name":"idAdmin","type":"uint64"}],"name":"getPledgeAdmin","outputs":[{"name":"adminType","type":"uint8"},{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"parentProject","type":"uint64"},{"name":"canceled","type":"bool"},{"name":"plugin","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xeba8ba06"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xf6b24b1c"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xf92a79ff"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xfbfa77cf"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"uint256"},{"indexed":true,"name":"to","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Transfer","type":"event","signature":"0xaf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f6"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint256"}],"name":"CancelProject","type":"event","signature":"0x74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d346"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverAdded","type":"event","signature":"0xf5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a3"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverUpdated","type":"event","signature":"0x4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateAdded","type":"event","signature":"0xd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateUpdated","type":"event","signature":"0x6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectAdded","type":"event","signature":"0x9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectUpdated","type":"event","signature":"0xab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c58707"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/LiquidPledging.sol","originalFilename":"contracts/LiquidPledging.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/LiquidPledging.sol","gas":"auto","type":"file","deploy":true,"_gasLimit":6000000,"error":false,"deploymentAccount":"0x1179823e34aBF984C52fC0CdD7b7b9F5dd394aB9","realArgs":[],"address":"0x07E92635AF5e524C20B20F2770aE0E0Ef597eD07","deployedAddress":"0x07E92635AF5e524C20B20F2770aE0E0Ef597eD07"},"address":"0x07E92635AF5e524C20B20F2770aE0E0Ef597eD07","code":"60606040526069805460ff19169055341561001957600080fd5b615218806100286000396000f3006060604052600436106102415763ffffffff60e060020a6000350416627611c68114610246578063178e60791461027c5780631c8e8568146102a15780632101a6ad146102c857806324fea3b0146102e75780632a8ec8cc146102fa5780632ee888081461030d5780632f6b64ca1461032f57806332ce8ebc146103eb57806332f0a3b51461040957806338740291146104385780633f657a461461045057806343387983146104de57806347c5ef43146105005780634c4316c71461052f5780634eafbcd51461056357806350f8a8031461058257806352dc7dcc146105bd5780635503d9ba146105ff57806357adafb61461061257806360b1e057146106615780636293c702146106745780636ba3cc87146106935780636e802c6a146106c157806372116e921461077b578063796d5654146107cc57806379f4542e146107eb5780637e7db6e11461080a5780637f61fa931461082957806380afdea81461086b57806381ea44081461087e5780638322fff21461089d5780638b3dd749146108b05780639b3fdf4c146108c35780639d4941d8146108d6578063a1658fad146108f5578063af9f456314610958578063b12b5f761461097a578063c4d66de814610990578063c8ae070f146109af578063cc19ecf7146109c5578063ce17273c14610a11578063d4aae0c414610a60578063d639cd7314610a73578063db7c231414610adb578063e9c211e214610b27578063eba8ba0614610b49578063f6b24b1c14610c9f578063f92a79ff14610ceb578063fbfa77cf14610d3c575b600080fd5b341561025157600080fd5b61027a6001604060020a0360043516600160a060020a0360243581169060443516606435610d4f565b005b341561028757600080fd5b61028f610daa565b60405190815260200160405180910390f35b34156102ac57600080fd5b6102b4610dce565b604051901515815260200160405180910390f35b34156102d357600080fd5b6102b46001604060020a0360043516610dd7565b34156102f257600080fd5b61028f610e79565b341561030557600080fd5b61028f610e9b565b341561031857600080fd5b61027a6001604060020a0360043516602435610ea6565b341561033a57600080fd5b6103546001604060020a0360043581169060243516610fda565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103ae578082015183820152602001610396565b50505050905090810190601f1680156103db5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34156103f657600080fd5b61027a6004803560248101910135611108565b341561041457600080fd5b61041c61119c565b604051600160a060020a03909116815260200160405180910390f35b341561044357600080fd5b61027a600435151561121c565b341561045b57600080fd5b61046f6001604060020a0360043516611282565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104c357fe5b60ff1681526020019850505050505050505060405180910390f35b34156104e957600080fd5b61027a6001604060020a03600435166024356113ff565b341561050b57600080fd5b61027a6001604060020a0360043581169060243581169060443590606435166115e6565b341561053a57600080fd5b61027a6001604060020a0360043581169060243516600160a060020a03604435166064356115fb565b341561056e57600080fd5b6102b4600160a060020a0360043516611792565b341561058d57600080fd5b6105a16001604060020a0360043516611809565b6040516001604060020a03909116815260200160405180910390f35b34156105c857600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166119fe565b341561060a57600080fd5b61028f611c8b565b341561061d57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611c9595505050505050565b341561066c57600080fd5b61028f611d00565b341561067f57600080fd5b61027a600160a060020a0360043516611d24565b341561069e57600080fd5b61027a6001604060020a0360043516600160a060020a0360243516604435611d85565b34156106cc57600080fd5b6105a160048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611d96915050565b341561078657600080fd5b6105a16024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612003565b34156107d757600080fd5b61027a6001604060020a03600435166124b0565b34156107f657600080fd5b61027a600160a060020a036004351661251a565b341561081557600080fd5b6102b4600160a060020a0360043516612592565b341561083457600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516612598565b341561087657600080fd5b61028f612614565b341561088957600080fd5b61028f600160a060020a036004351661261a565b34156108a857600080fd5b61041c61269c565b34156108bb57600080fd5b61028f6126a1565b34156108ce57600080fd5b61028f6126a7565b34156108e157600080fd5b61027a600160a060020a03600435166126cb565b341561090057600080fd5b6102b460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061284295505050505050565b341561096357600080fd5b61027a6001604060020a0360043516602435612980565b341561098557600080fd5b61027a600435612a15565b341561099b57600080fd5b61027a600160a060020a0360043516612a6d565b34156109ba57600080fd5b61027a600435612ad6565b34156109d057600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b45565b3415610a1c57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4e95505050505050565b3415610a6b57600080fd5b61041c612c81565b3415610a7e57600080fd5b61027a600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c90915050565b3415610ae657600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d05565b3415610b3257600080fd5b61027a6001604060020a0360043516602435612e0e565b3415610b5457600080fd5b610b686001604060020a0360043516612f36565b60405180896002811115610b7857fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610bf9578082015183820152602001610be1565b50505050905090810190601f168015610c265780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c5c578082015183820152602001610c44565b50505050905090810190601f168015610c895780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610caa57600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613105565b3415610cf657600080fd5b61041c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061320e95505050505050565b3415610d4757600080fd5b61041c6132ea565b6000600160a060020a0384161515610d6657600080fd5b610d95846020604051908101604052806000815250602060405190810160405260008082526203f48090611d96565b9050610da3818685856115fb565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610de3836132fe565b90506000815460ff166002811115610df757fe5b1415610e065760009150610e73565b6002815460ff166002811115610e1857fe5b14610e1f57fe5b6001810154604060020a900460ff1615610e3c5760019150610e73565b60018101546001604060020a03161515610e595760009150610e73565b6001810154610e70906001604060020a0316610dd7565b91505b50919050565b6040516000805160206151ad8339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610ecb57600080fd5b610ed484613344565b91506001600383015460a060020a900460ff166002811115610ef257fe5b14610efc57600080fd5b6002820154600183018054610fc7926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610f8f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f4c5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613375565b9050610fd4848285613697565b50505050565b600080610fe5614df8565b600080610ff187613344565b915081600101600187036001604060020a031681548110151561101057fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450611044856132fe565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110f85780601f106110cd576101008083540402835291602001916110f8565b820191906000526020600020905b8154815290600101906020018083116110db57829003601f168201915b5050505050925050509250925092565b60006040516000805160206151ad833981519152815260130160405180910390206111533382600060405180591061113d5750595b9080825280602002602001820160405250612842565b151561115e57600080fd5b600091505b60ff821683901015610fd457611191848460ff851681811061118157fe5b9050602002013560001916612ad6565b600190910190611163565b60008054600160a060020a031615156111b457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111fd57600080fd5b6102c65a03f1151561120e57600080fd5b505050604051805191505090565b6040516000805160206151ad833981519152815260130160405180910390206112643382600060405180591061113d5750599080825280602002602001820160405250612842565b151561126f57600080fd5b506069805460ff19169115919091179055565b600080600080600080600080611296614e0a565b61129f8a613344565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561133757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116112f45790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ad57fe5b60028111156113b857fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061140d85611809565b945061141885613344565b92506000600384015460a060020a900460ff16600281111561143657fe5b1461144057600080fd5b6002830154611457906001604060020a031661376b565b600283015460018401805461151f926001604060020a031691906020808202016040519081016040528092919081815260200182805480156114ea57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114a75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613375565b915061152c858386613697565b6002830154611543906001604060020a03166132fe565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b15156115cb57600080fd5b6102c65a03f115156115dc57600080fd5b5050505050505050565b6115ef8461376b565b610fd4848484846137c2565b600080806001604060020a03871681901161161557600080fd5b6000841161162257600080fd5b600160a060020a038516151561163757600080fd5b611640876132fe565b92506000835460ff16600281111561165457fe5b1461165e57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156116d457600080fd5b6102c65a03f115156116e557600080fd5b5050506040518051905015156116fa57600080fd5b61172b87600060405180591061170d5750595b908082528060200260200182016040525060008060008a6000613375565b915061173682613344565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a3611789878386896137c2565b50505050505050565b606954600090819060ff16806117af5750600160a060020a038316155b156117bd5760019150610e73565b600160a060020a03831660009081526068602052604090205460ff16156117e75760019150610e73565b6117f08361261a565b60009081526067602052604090205460ff169392505050565b60008060008061181885613344565b92506000600384015460a060020a900460ff16600281111561183657fe5b14611843578493506119f6565b60028301546000604060020a9091046001604060020a031611801561188257506002830154608060020a90046001604060020a0316611880613e19565b115b156119c557600283015460018401805461194e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116118d75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b60028401549092506119a590604060020a90046001604060020a031660006040518059106119795750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b90506119b685828560000154613697565b8094506119c285613344565b92505b6119ce85613e1d565b90506001604060020a03808216908616146119f2576119f285828560000154613697565b8093505b505050919050565b6000611a0982611792565b1515611a1457600080fd5b5060648054908160018101611a298382614e56565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b1a57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0b929160200190614e82565b5060e082015181600301908051611c26929160200190614e82565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015610fd4576001604060020a03848481518110611cb757fe5b90602001906020020151169150604060020a848481518110611cd557fe5b90602001906020020151811515611ce857fe5b049050611cf582826113ff565b600190920191611c9a565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206151ad83398151915281526013016040518091039020611d4c82613ee5565b611d57338383612842565b1515611d6257600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611d9183338484610d4f565b505050565b6000611da182611792565b1515611dac57600080fd5b5060648054908160018101611dc18382614e56565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e3e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f2f929160200190614e82565b5060e082015181600301908051611f4a929160200190614e82565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fc0578082015183820152602001611fa8565b50505050905090810190601f168015611fed5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061200f83611792565b151561201a57600080fd5b6001604060020a0385161561223757612032856132fe565b90506014612224826101006040519081016040528154909190829060ff16600281111561205b57fe5b600281111561206657fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121745780601f1061214957610100808354040283529160200191612174565b820191906000526020600020905b81548152906001019060200180831161215757829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122165780601f106121eb57610100808354040283529160200191612216565b820191906000526020600020905b8154815290600101906020018083116121f957829003601f168201915b505050505081525050613f05565b6001604060020a03161061223757600080fd5b606480549250826001810161224c8382614e56565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561233c57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161242d929160200190614e82565b5060e082015181600301908051612448929160200190614e82565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124bb826132fe565b90506124c68261376b565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b6040516000805160206151ad833981519152815260130160405180910390206125623382600060405180591061113d5750599080825280602002602001820160405250612842565b151561256d57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126093388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611d96565b979650505050505050565b60015481565b6000612624614df8565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126685780518252601f199092019160209182019101612649565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806126d783612592565b15156126e257600080fd5b6126ea61119c565b91506126f582613f79565b151561270057600080fd5b600160a060020a03831615156127525781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561274d57600080fd5b611d91565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127a957600080fd5b6102c65a03f115156127ba57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561282257600080fd5b6102c65a03f1151561283357600080fd5b50505060405180515050505050565b600061284c614df8565b6000808451111561286557835160200290508391508082525b600054600160a060020a03161580612976575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561290c5780820151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561295a57600080fd5b6102c65a03f1151561296b57600080fd5b505050604051805190505b9695505050505050565b60008061298c84611809565b935061299784613344565b600281015490925060c060020a90046001604060020a031615156129ba57600080fd5b6000600383015460a060020a900460ff1660028111156129d657fe5b146129e057600080fd5b60028201546129f7906001604060020a031661376b565b6002820154610fc79060c060020a90046001604060020a0316613e1d565b6040516000805160206151ad83398151915281526013016040518091039020612a3d82613f9f565b612a48338383612842565b1515612a5357600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612a7a57600080fd5b600160a060020a0381161515612a8f57600080fd5b612a97613fb0565b6069805461010060a860020a031916610100600160a060020a038416021790556001612ac4606482614e56565b506001612ad2606582614efc565b5050565b6040516000805160206151ad83398151915281526013016040518091039020612b1e3382600060405180591061113d5750599080825280602002602001820160405250612842565b1515612b2957600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b50886132fe565b805490915033600160a060020a039081166101009092041614612b7257600080fd5b6001815460ff166002811115612b8457fe5b14612b8e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bba600282018787614f28565b50612bc9600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612ad257612c78828281518110612c6957fe5b90602001906020020151611809565b50600101612c51565b600054600160a060020a031681565b600080805b8451831015612cfd576001604060020a03858481518110612cb257fe5b90602001906020020151169150604060020a858481518110612cd057fe5b90602001906020020151811515612ce357fe5b049050612cf2868383876115e6565b600190920191612c95565b505050505050565b6000612d10886132fe565b805490915033600160a060020a039081166101009092041614612d3257600080fd5b6000815460ff166002811115612d4457fe5b14612d4e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7a600282018787614f28565b50612d89600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3357600080fd5b612e3c84613344565b91506001600383015460a060020a900460ff166002811115612e5a57fe5b14612e6457600080fd5b6002820154600183018054612f2b926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb45790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b9050610fc781611809565b600080612f41614df8565b612f49614df8565b6000806000806000612f5a8a6132fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f8201819004810201604051908101604052809291908181526020018280546001816001161561010002031660029004801561300f5780601f10612fe45761010080835404028352916020019161300f565b820191906000526020600020905b815481529060010190602001808311612ff257829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130ae5780601f10613083576101008083540402835291602001916130ae565b820191906000526020600020905b81548152906001019060200180831161309157829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000613110886132fe565b805490915033600160a060020a03908116610100909204161461313257600080fd5b6002815460ff16600281111561314457fe5b1461314e57600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317a600282018787614f28565b50613189600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000613218613fca565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561327f578082015183820152602001613267565b50505050905090810190601f1680156132ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132ca57600080fd5b6102c65a03f115156132db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331857600080fd5b606480546001604060020a03841690811061332f57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061335e57600080fd5b606580546001604060020a03841690811061332f57fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133ae578082015183820152602001613396565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341857fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134825780925061368a565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c28382614efc565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354357fe5b905291905081518155602082015181600101908051613566929160200190614f96565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561367e57fe5b02179055505050508092505b5050979650505050505050565b60008060006136a96001878787614061565b9250846001604060020a0316866001604060020a031614156136ca57612cfd565b8215156136d657612cfd565b6136df86613344565b91506136ea85613344565b8254909150839010156136fc57600080fd5b81548390038255805483018082558390101561371757600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117896000878786614061565b6000613776826132fe565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b75750805433600160a060020a0390811661010090920416145b1515612ad257600080fd5b600080808080806001604060020a0387168190116137df57600080fd5b6137e889611809565b98506137f389613344565b95506137fe876132fe565b94506000600387015460a060020a900460ff16600281111561381c57fe5b1461382657600080fd5b60028601546001604060020a038b811691161415613b21576000855460ff16600281111561385057fe5b141561386657613861898989614087565b613e0d565b6002855460ff16600281111561387857fe5b1415613889576138618989896140e1565b6001855460ff16600281111561389b57fe5b1415613b1f576139c7866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fa5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b60028111156139be57fe5b9052508861431f565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fa57506001604060020a038414155b15613b0057600186015460001901841415613ae3576002860154600187018054613ad6926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa257602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a5f5790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b925061386189848a613697565b613afa89896001848a600101805490500303614385565b50613e0d565b613b1289898860010180549050614385565b985061386189898961448f565bfe5b613c478661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbd57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7a5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3357fe5b6002811115613c3e57fe5b9052508b61431f565b6001604060020a0390811692508214613b1f576000855460ff166002811115613c6c57fe5b1415613c9d5760028601546001604060020a03888116911614613c8b57fe5b613afa89898860010180549050614385565b6001855460ff166002811115613caf57fe5b1415613dd157613d9c866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fa575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b6001604060020a039081169150811480613db557508181115b15613ae357613b1289896001858a600101805490500303614385565b6002855460ff166002811115613de357fe5b1415613b1f57613e0089896001858a600101805490500303614385565b98506138618989896145bf565b50505050505050505050565b4290565b600080806001604060020a0384161515613e3a5760009250613ede565b613e4384613344565b6002810154909250613e5d906001604060020a03166132fe565b90506000815460ff166002811115613e7157fe5b1415613e7f57839250613ede565b6002815460ff166002811115613e9157fe5b14613e9857fe5b6002820154613eaf906001604060020a0316610dd7565b1515613ebd57839250613ede565b6002820154613edb9060c060020a90046001604060020a0316613e1d565b92505b5050919050565b613eed614df8565b613eff82600160a060020a03166148d2565b92915050565b600080600283516002811115613f1757fe5b14613f1e57fe5b82606001516001604060020a03161515613f3b5760019150610e73565b613f4883606001516132fe565b9050613f6f816101006040519081016040528154909190829060ff16600281111561205b57fe5b6001019392505050565b600080600160a060020a0383161515613f955760009150610e73565b50506000903b1190565b613fa7614df8565b613eff826148d2565b60035415613fbd57600080fd5b613fc5614919565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561403d57600080fd5b6102c65a03f1151561404e57600080fd5b50505060405180519250829150505b5090565b8061406f858580868561491d565b905061407e858486868561491d565b95945050505050565b60008061409385613344565b91506140d48360006040518059106140a85750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613375565b9050610da3858286613697565b60008060006140ef86613344565b92506014614218846101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161414c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b600281111561421057fe5b905250614a85565b1061422257600080fd5b61422b84610dd7565b1561423557600080fd5b60028301546001840180546142d2926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57600091825260209182902080546001604060020a031684529082028301929091600891018084116118d75750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613375565b91506143128460006040518059106119795750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b9050612cfd868287613697565b6000805b83602001515181101561437357826001604060020a03168460200151828151811061434a57fe5b906020019060200201516001604060020a0316141561436b5780915061437e565b600101614323565b6001604060020a0391505b5092915050565b600080614390614df8565b600061439b87613344565b60018101549093508590036040518059106143b35750595b90808252806020026020018201604052509150600090505b600183015485900381101561443e57600183018054829081106143ea57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061441f57fe5b6001604060020a039092166020928302909101909101526001016143cb565b60028301546003840154614478916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613375565b9350614485878588613697565b5050509392505050565b6000614499614df8565b6000806144a587613344565b6001810154909450600a90106144ba57600080fd5b600180850154016040518059106144ce5750595b90808252806020026020018201604052509250600091505b6001840154821015614559576001840180548390811061450257fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061453757fe5b6001604060020a039092166020928302909101909101526001909101906144e6565b6001840154859084908151811061456c57fe5b6001604060020a0392831660209182029092010152600285015460038601546145b292828116928792600092839260c060020a90041690600160a060020a031682613375565b9050611789878288613697565b6000806145cb85613344565b915060146146b6836101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b106146c057600080fd5b6146c983610dd7565b156146d357600080fd5b60028201546001830180546140d4926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561476657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147235790505b505050505085614891866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561480857602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147c55790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561487e57fe5b600281111561488957fe5b905250614b9b565b6001604060020a03166148a2613e19565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613375565b6148da614df8565b60016040518059106148e95750595b90808252806020026020018201604052509050818160008151811061490a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a03161461494457610100614947565b60005b61ffff16925084935061495988613344565b6002810154600382015491935061498b918b916001604060020a0316908a908a908890600160a060020a03168a614c33565b9350600090505b60018201546001604060020a0382161015614a1e57614a148983600101836001604060020a03168154811015156149c557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c33565b9350600101614992565b60028201546000604060020a9091046001604060020a03161115614a795760028201546003830154614a76918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c33565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614aa55760009150610e73565b614ab28360a00151613344565b9050613f6f816101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b6000806000614bad84604001516132fe565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ede57614bf784602001518281518110614be857fe5b906020019060200201516132fe565b80549092506001604060020a0380851660a860020a909204161115614c2b57815460a860020a90046001604060020a031692505b600101614bc8565b80600080614c40896132fe565b600181015490915069010000000000000000009004600160a060020a031615801590614c6c5750600083115b1561368a578915614d4457600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d1357600080fd5b6102c65a03f11515614d2457600080fd5b505050604051805192505082821115614d3c57600080fd5b81925061368a565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614dd757600080fd5b6102c65a03f11515614de857600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e26614df8565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611d9157600402816004028360005260206000209182019101611d91919061504a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614ec357805160ff1916838001178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578251825591602001919060010190614ed5565b5061405d9291506150b1565b815481835581811511611d9157600402816004028360005260206000209182019101611d9191906150cb565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f695782800160ff19823516178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578235825591602001919060010190614f7b565b8280548282559060005260206000209060030160049004810192821561503e5791602002820160005b8382111561500957835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302614fbf565b801561503c5782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615009565b505b5061405d92915061511b565b610ea391905b8082111561405d5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061509a6002830182615140565b6150a8600383016000615140565b50600401615050565b610ea391905b8082111561405d57600081556001016150b7565b610ea391905b8082111561405d5760008082556150eb6001830182615187565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff191690556004016150d1565b610ea391905b8082111561405d57805467ffffffffffffffff19168155600101615121565b50805460018160011615610100020316600290046000825580601f106151665750615184565b601f01602090049060005260206000209081019061518491906150b1565b50565b50805460008255600301600490049060005260206000209081019061518491906150b15600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820ed1eacae6750bb2e266a5f861872a813708ecd94e8e2f531e86e5b01327a4c7d0029","runtime_bytecode":"6060604052600436106102415763ffffffff60e060020a6000350416627611c68114610246578063178e60791461027c5780631c8e8568146102a15780632101a6ad146102c857806324fea3b0146102e75780632a8ec8cc146102fa5780632ee888081461030d5780632f6b64ca1461032f57806332ce8ebc146103eb57806332f0a3b51461040957806338740291146104385780633f657a461461045057806343387983146104de57806347c5ef43146105005780634c4316c71461052f5780634eafbcd51461056357806350f8a8031461058257806352dc7dcc146105bd5780635503d9ba146105ff57806357adafb61461061257806360b1e057146106615780636293c702146106745780636ba3cc87146106935780636e802c6a146106c157806372116e921461077b578063796d5654146107cc57806379f4542e146107eb5780637e7db6e11461080a5780637f61fa931461082957806380afdea81461086b57806381ea44081461087e5780638322fff21461089d5780638b3dd749146108b05780639b3fdf4c146108c35780639d4941d8146108d6578063a1658fad146108f5578063af9f456314610958578063b12b5f761461097a578063c4d66de814610990578063c8ae070f146109af578063cc19ecf7146109c5578063ce17273c14610a11578063d4aae0c414610a60578063d639cd7314610a73578063db7c231414610adb578063e9c211e214610b27578063eba8ba0614610b49578063f6b24b1c14610c9f578063f92a79ff14610ceb578063fbfa77cf14610d3c575b600080fd5b341561025157600080fd5b61027a6001604060020a0360043516600160a060020a0360243581169060443516606435610d4f565b005b341561028757600080fd5b61028f610daa565b60405190815260200160405180910390f35b34156102ac57600080fd5b6102b4610dce565b604051901515815260200160405180910390f35b34156102d357600080fd5b6102b46001604060020a0360043516610dd7565b34156102f257600080fd5b61028f610e79565b341561030557600080fd5b61028f610e9b565b341561031857600080fd5b61027a6001604060020a0360043516602435610ea6565b341561033a57600080fd5b6103546001604060020a0360043581169060243516610fda565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103ae578082015183820152602001610396565b50505050905090810190601f1680156103db5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34156103f657600080fd5b61027a6004803560248101910135611108565b341561041457600080fd5b61041c61119c565b604051600160a060020a03909116815260200160405180910390f35b341561044357600080fd5b61027a600435151561121c565b341561045b57600080fd5b61046f6001604060020a0360043516611282565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104c357fe5b60ff1681526020019850505050505050505060405180910390f35b34156104e957600080fd5b61027a6001604060020a03600435166024356113ff565b341561050b57600080fd5b61027a6001604060020a0360043581169060243581169060443590606435166115e6565b341561053a57600080fd5b61027a6001604060020a0360043581169060243516600160a060020a03604435166064356115fb565b341561056e57600080fd5b6102b4600160a060020a0360043516611792565b341561058d57600080fd5b6105a16001604060020a0360043516611809565b6040516001604060020a03909116815260200160405180910390f35b34156105c857600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166119fe565b341561060a57600080fd5b61028f611c8b565b341561061d57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611c9595505050505050565b341561066c57600080fd5b61028f611d00565b341561067f57600080fd5b61027a600160a060020a0360043516611d24565b341561069e57600080fd5b61027a6001604060020a0360043516600160a060020a0360243516604435611d85565b34156106cc57600080fd5b6105a160048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611d96915050565b341561078657600080fd5b6105a16024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612003565b34156107d757600080fd5b61027a6001604060020a03600435166124b0565b34156107f657600080fd5b61027a600160a060020a036004351661251a565b341561081557600080fd5b6102b4600160a060020a0360043516612592565b341561083457600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516612598565b341561087657600080fd5b61028f612614565b341561088957600080fd5b61028f600160a060020a036004351661261a565b34156108a857600080fd5b61041c61269c565b34156108bb57600080fd5b61028f6126a1565b34156108ce57600080fd5b61028f6126a7565b34156108e157600080fd5b61027a600160a060020a03600435166126cb565b341561090057600080fd5b6102b460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061284295505050505050565b341561096357600080fd5b61027a6001604060020a0360043516602435612980565b341561098557600080fd5b61027a600435612a15565b341561099b57600080fd5b61027a600160a060020a0360043516612a6d565b34156109ba57600080fd5b61027a600435612ad6565b34156109d057600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b45565b3415610a1c57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4e95505050505050565b3415610a6b57600080fd5b61041c612c81565b3415610a7e57600080fd5b61027a600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c90915050565b3415610ae657600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d05565b3415610b3257600080fd5b61027a6001604060020a0360043516602435612e0e565b3415610b5457600080fd5b610b686001604060020a0360043516612f36565b60405180896002811115610b7857fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610bf9578082015183820152602001610be1565b50505050905090810190601f168015610c265780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c5c578082015183820152602001610c44565b50505050905090810190601f168015610c895780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610caa57600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613105565b3415610cf657600080fd5b61041c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061320e95505050505050565b3415610d4757600080fd5b61041c6132ea565b6000600160a060020a0384161515610d6657600080fd5b610d95846020604051908101604052806000815250602060405190810160405260008082526203f48090611d96565b9050610da3818685856115fb565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610de3836132fe565b90506000815460ff166002811115610df757fe5b1415610e065760009150610e73565b6002815460ff166002811115610e1857fe5b14610e1f57fe5b6001810154604060020a900460ff1615610e3c5760019150610e73565b60018101546001604060020a03161515610e595760009150610e73565b6001810154610e70906001604060020a0316610dd7565b91505b50919050565b6040516000805160206151ad8339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610ecb57600080fd5b610ed484613344565b91506001600383015460a060020a900460ff166002811115610ef257fe5b14610efc57600080fd5b6002820154600183018054610fc7926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610f8f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f4c5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613375565b9050610fd4848285613697565b50505050565b600080610fe5614df8565b600080610ff187613344565b915081600101600187036001604060020a031681548110151561101057fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450611044856132fe565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110f85780601f106110cd576101008083540402835291602001916110f8565b820191906000526020600020905b8154815290600101906020018083116110db57829003601f168201915b5050505050925050509250925092565b60006040516000805160206151ad833981519152815260130160405180910390206111533382600060405180591061113d5750595b9080825280602002602001820160405250612842565b151561115e57600080fd5b600091505b60ff821683901015610fd457611191848460ff851681811061118157fe5b9050602002013560001916612ad6565b600190910190611163565b60008054600160a060020a031615156111b457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111fd57600080fd5b6102c65a03f1151561120e57600080fd5b505050604051805191505090565b6040516000805160206151ad833981519152815260130160405180910390206112643382600060405180591061113d5750599080825280602002602001820160405250612842565b151561126f57600080fd5b506069805460ff19169115919091179055565b600080600080600080600080611296614e0a565b61129f8a613344565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561133757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116112f45790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ad57fe5b60028111156113b857fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061140d85611809565b945061141885613344565b92506000600384015460a060020a900460ff16600281111561143657fe5b1461144057600080fd5b6002830154611457906001604060020a031661376b565b600283015460018401805461151f926001604060020a031691906020808202016040519081016040528092919081815260200182805480156114ea57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114a75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613375565b915061152c858386613697565b6002830154611543906001604060020a03166132fe565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b15156115cb57600080fd5b6102c65a03f115156115dc57600080fd5b5050505050505050565b6115ef8461376b565b610fd4848484846137c2565b600080806001604060020a03871681901161161557600080fd5b6000841161162257600080fd5b600160a060020a038516151561163757600080fd5b611640876132fe565b92506000835460ff16600281111561165457fe5b1461165e57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156116d457600080fd5b6102c65a03f115156116e557600080fd5b5050506040518051905015156116fa57600080fd5b61172b87600060405180591061170d5750595b908082528060200260200182016040525060008060008a6000613375565b915061173682613344565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a3611789878386896137c2565b50505050505050565b606954600090819060ff16806117af5750600160a060020a038316155b156117bd5760019150610e73565b600160a060020a03831660009081526068602052604090205460ff16156117e75760019150610e73565b6117f08361261a565b60009081526067602052604090205460ff169392505050565b60008060008061181885613344565b92506000600384015460a060020a900460ff16600281111561183657fe5b14611843578493506119f6565b60028301546000604060020a9091046001604060020a031611801561188257506002830154608060020a90046001604060020a0316611880613e19565b115b156119c557600283015460018401805461194e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116118d75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b60028401549092506119a590604060020a90046001604060020a031660006040518059106119795750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b90506119b685828560000154613697565b8094506119c285613344565b92505b6119ce85613e1d565b90506001604060020a03808216908616146119f2576119f285828560000154613697565b8093505b505050919050565b6000611a0982611792565b1515611a1457600080fd5b5060648054908160018101611a298382614e56565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b1a57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0b929160200190614e82565b5060e082015181600301908051611c26929160200190614e82565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015610fd4576001604060020a03848481518110611cb757fe5b90602001906020020151169150604060020a848481518110611cd557fe5b90602001906020020151811515611ce857fe5b049050611cf582826113ff565b600190920191611c9a565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206151ad83398151915281526013016040518091039020611d4c82613ee5565b611d57338383612842565b1515611d6257600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611d9183338484610d4f565b505050565b6000611da182611792565b1515611dac57600080fd5b5060648054908160018101611dc18382614e56565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e3e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f2f929160200190614e82565b5060e082015181600301908051611f4a929160200190614e82565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fc0578082015183820152602001611fa8565b50505050905090810190601f168015611fed5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061200f83611792565b151561201a57600080fd5b6001604060020a0385161561223757612032856132fe565b90506014612224826101006040519081016040528154909190829060ff16600281111561205b57fe5b600281111561206657fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121745780601f1061214957610100808354040283529160200191612174565b820191906000526020600020905b81548152906001019060200180831161215757829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122165780601f106121eb57610100808354040283529160200191612216565b820191906000526020600020905b8154815290600101906020018083116121f957829003601f168201915b505050505081525050613f05565b6001604060020a03161061223757600080fd5b606480549250826001810161224c8382614e56565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561233c57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161242d929160200190614e82565b5060e082015181600301908051612448929160200190614e82565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124bb826132fe565b90506124c68261376b565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b6040516000805160206151ad833981519152815260130160405180910390206125623382600060405180591061113d5750599080825280602002602001820160405250612842565b151561256d57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126093388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611d96565b979650505050505050565b60015481565b6000612624614df8565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126685780518252601f199092019160209182019101612649565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806126d783612592565b15156126e257600080fd5b6126ea61119c565b91506126f582613f79565b151561270057600080fd5b600160a060020a03831615156127525781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561274d57600080fd5b611d91565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127a957600080fd5b6102c65a03f115156127ba57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561282257600080fd5b6102c65a03f1151561283357600080fd5b50505060405180515050505050565b600061284c614df8565b6000808451111561286557835160200290508391508082525b600054600160a060020a03161580612976575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561290c5780820151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561295a57600080fd5b6102c65a03f1151561296b57600080fd5b505050604051805190505b9695505050505050565b60008061298c84611809565b935061299784613344565b600281015490925060c060020a90046001604060020a031615156129ba57600080fd5b6000600383015460a060020a900460ff1660028111156129d657fe5b146129e057600080fd5b60028201546129f7906001604060020a031661376b565b6002820154610fc79060c060020a90046001604060020a0316613e1d565b6040516000805160206151ad83398151915281526013016040518091039020612a3d82613f9f565b612a48338383612842565b1515612a5357600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612a7a57600080fd5b600160a060020a0381161515612a8f57600080fd5b612a97613fb0565b6069805461010060a860020a031916610100600160a060020a038416021790556001612ac4606482614e56565b506001612ad2606582614efc565b5050565b6040516000805160206151ad83398151915281526013016040518091039020612b1e3382600060405180591061113d5750599080825280602002602001820160405250612842565b1515612b2957600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b50886132fe565b805490915033600160a060020a039081166101009092041614612b7257600080fd5b6001815460ff166002811115612b8457fe5b14612b8e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bba600282018787614f28565b50612bc9600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612ad257612c78828281518110612c6957fe5b90602001906020020151611809565b50600101612c51565b600054600160a060020a031681565b600080805b8451831015612cfd576001604060020a03858481518110612cb257fe5b90602001906020020151169150604060020a858481518110612cd057fe5b90602001906020020151811515612ce357fe5b049050612cf2868383876115e6565b600190920191612c95565b505050505050565b6000612d10886132fe565b805490915033600160a060020a039081166101009092041614612d3257600080fd5b6000815460ff166002811115612d4457fe5b14612d4e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7a600282018787614f28565b50612d89600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3357600080fd5b612e3c84613344565b91506001600383015460a060020a900460ff166002811115612e5a57fe5b14612e6457600080fd5b6002820154600183018054612f2b926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb45790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b9050610fc781611809565b600080612f41614df8565b612f49614df8565b6000806000806000612f5a8a6132fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f8201819004810201604051908101604052809291908181526020018280546001816001161561010002031660029004801561300f5780601f10612fe45761010080835404028352916020019161300f565b820191906000526020600020905b815481529060010190602001808311612ff257829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130ae5780601f10613083576101008083540402835291602001916130ae565b820191906000526020600020905b81548152906001019060200180831161309157829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000613110886132fe565b805490915033600160a060020a03908116610100909204161461313257600080fd5b6002815460ff16600281111561314457fe5b1461314e57600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317a600282018787614f28565b50613189600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000613218613fca565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561327f578082015183820152602001613267565b50505050905090810190601f1680156132ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132ca57600080fd5b6102c65a03f115156132db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331857600080fd5b606480546001604060020a03841690811061332f57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061335e57600080fd5b606580546001604060020a03841690811061332f57fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133ae578082015183820152602001613396565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341857fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134825780925061368a565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c28382614efc565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354357fe5b905291905081518155602082015181600101908051613566929160200190614f96565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561367e57fe5b02179055505050508092505b5050979650505050505050565b60008060006136a96001878787614061565b9250846001604060020a0316866001604060020a031614156136ca57612cfd565b8215156136d657612cfd565b6136df86613344565b91506136ea85613344565b8254909150839010156136fc57600080fd5b81548390038255805483018082558390101561371757600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117896000878786614061565b6000613776826132fe565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b75750805433600160a060020a0390811661010090920416145b1515612ad257600080fd5b600080808080806001604060020a0387168190116137df57600080fd5b6137e889611809565b98506137f389613344565b95506137fe876132fe565b94506000600387015460a060020a900460ff16600281111561381c57fe5b1461382657600080fd5b60028601546001604060020a038b811691161415613b21576000855460ff16600281111561385057fe5b141561386657613861898989614087565b613e0d565b6002855460ff16600281111561387857fe5b1415613889576138618989896140e1565b6001855460ff16600281111561389b57fe5b1415613b1f576139c7866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fa5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b60028111156139be57fe5b9052508861431f565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fa57506001604060020a038414155b15613b0057600186015460001901841415613ae3576002860154600187018054613ad6926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa257602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a5f5790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b925061386189848a613697565b613afa89896001848a600101805490500303614385565b50613e0d565b613b1289898860010180549050614385565b985061386189898961448f565bfe5b613c478661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbd57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7a5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3357fe5b6002811115613c3e57fe5b9052508b61431f565b6001604060020a0390811692508214613b1f576000855460ff166002811115613c6c57fe5b1415613c9d5760028601546001604060020a03888116911614613c8b57fe5b613afa89898860010180549050614385565b6001855460ff166002811115613caf57fe5b1415613dd157613d9c866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fa575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b6001604060020a039081169150811480613db557508181115b15613ae357613b1289896001858a600101805490500303614385565b6002855460ff166002811115613de357fe5b1415613b1f57613e0089896001858a600101805490500303614385565b98506138618989896145bf565b50505050505050505050565b4290565b600080806001604060020a0384161515613e3a5760009250613ede565b613e4384613344565b6002810154909250613e5d906001604060020a03166132fe565b90506000815460ff166002811115613e7157fe5b1415613e7f57839250613ede565b6002815460ff166002811115613e9157fe5b14613e9857fe5b6002820154613eaf906001604060020a0316610dd7565b1515613ebd57839250613ede565b6002820154613edb9060c060020a90046001604060020a0316613e1d565b92505b5050919050565b613eed614df8565b613eff82600160a060020a03166148d2565b92915050565b600080600283516002811115613f1757fe5b14613f1e57fe5b82606001516001604060020a03161515613f3b5760019150610e73565b613f4883606001516132fe565b9050613f6f816101006040519081016040528154909190829060ff16600281111561205b57fe5b6001019392505050565b600080600160a060020a0383161515613f955760009150610e73565b50506000903b1190565b613fa7614df8565b613eff826148d2565b60035415613fbd57600080fd5b613fc5614919565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561403d57600080fd5b6102c65a03f1151561404e57600080fd5b50505060405180519250829150505b5090565b8061406f858580868561491d565b905061407e858486868561491d565b95945050505050565b60008061409385613344565b91506140d48360006040518059106140a85750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613375565b9050610da3858286613697565b60008060006140ef86613344565b92506014614218846101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161414c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b600281111561421057fe5b905250614a85565b1061422257600080fd5b61422b84610dd7565b1561423557600080fd5b60028301546001840180546142d2926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57600091825260209182902080546001604060020a031684529082028301929091600891018084116118d75750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613375565b91506143128460006040518059106119795750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b9050612cfd868287613697565b6000805b83602001515181101561437357826001604060020a03168460200151828151811061434a57fe5b906020019060200201516001604060020a0316141561436b5780915061437e565b600101614323565b6001604060020a0391505b5092915050565b600080614390614df8565b600061439b87613344565b60018101549093508590036040518059106143b35750595b90808252806020026020018201604052509150600090505b600183015485900381101561443e57600183018054829081106143ea57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061441f57fe5b6001604060020a039092166020928302909101909101526001016143cb565b60028301546003840154614478916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613375565b9350614485878588613697565b5050509392505050565b6000614499614df8565b6000806144a587613344565b6001810154909450600a90106144ba57600080fd5b600180850154016040518059106144ce5750595b90808252806020026020018201604052509250600091505b6001840154821015614559576001840180548390811061450257fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061453757fe5b6001604060020a039092166020928302909101909101526001909101906144e6565b6001840154859084908151811061456c57fe5b6001604060020a0392831660209182029092010152600285015460038601546145b292828116928792600092839260c060020a90041690600160a060020a031682613375565b9050611789878288613697565b6000806145cb85613344565b915060146146b6836101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b106146c057600080fd5b6146c983610dd7565b156146d357600080fd5b60028201546001830180546140d4926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561476657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147235790505b505050505085614891866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561480857602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147c55790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561487e57fe5b600281111561488957fe5b905250614b9b565b6001604060020a03166148a2613e19565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613375565b6148da614df8565b60016040518059106148e95750595b90808252806020026020018201604052509050818160008151811061490a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a03161461494457610100614947565b60005b61ffff16925084935061495988613344565b6002810154600382015491935061498b918b916001604060020a0316908a908a908890600160a060020a03168a614c33565b9350600090505b60018201546001604060020a0382161015614a1e57614a148983600101836001604060020a03168154811015156149c557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c33565b9350600101614992565b60028201546000604060020a9091046001604060020a03161115614a795760028201546003830154614a76918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c33565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614aa55760009150610e73565b614ab28360a00151613344565b9050613f6f816101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b6000806000614bad84604001516132fe565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ede57614bf784602001518281518110614be857fe5b906020019060200201516132fe565b80549092506001604060020a0380851660a860020a909204161115614c2b57815460a860020a90046001604060020a031692505b600101614bc8565b80600080614c40896132fe565b600181015490915069010000000000000000009004600160a060020a031615801590614c6c5750600083115b1561368a578915614d4457600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d1357600080fd5b6102c65a03f11515614d2457600080fd5b505050604051805192505082821115614d3c57600080fd5b81925061368a565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614dd757600080fd5b6102c65a03f11515614de857600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e26614df8565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611d9157600402816004028360005260206000209182019101611d91919061504a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614ec357805160ff1916838001178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578251825591602001919060010190614ed5565b5061405d9291506150b1565b815481835581811511611d9157600402816004028360005260206000209182019101611d9191906150cb565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f695782800160ff19823516178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578235825591602001919060010190614f7b565b8280548282559060005260206000209060030160049004810192821561503e5791602002820160005b8382111561500957835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302614fbf565b801561503c5782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615009565b505b5061405d92915061511b565b610ea391905b8082111561405d5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061509a6002830182615140565b6150a8600383016000615140565b50600401615050565b610ea391905b8082111561405d57600081556001016150b7565b610ea391905b8082111561405d5760008082556150eb6001830182615187565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff191690556004016150d1565b610ea391905b8082111561405d57805467ffffffffffffffff19168155600101615121565b50805460018160011615610100020316600290046000825580601f106151665750615184565b601f01602090049060005260206000209081019061518491906150b1565b50565b50805460008255600301600490049060005260206000209081019061518491906150b15600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820ed1eacae6750bb2e266a5f861872a813708ecd94e8e2f531e86e5b01327a4c7d0029","real_runtime_bytecode":"6060604052600436106102415763ffffffff60e060020a6000350416627611c68114610246578063178e60791461027c5780631c8e8568146102a15780632101a6ad146102c857806324fea3b0146102e75780632a8ec8cc146102fa5780632ee888081461030d5780632f6b64ca1461032f57806332ce8ebc146103eb57806332f0a3b51461040957806338740291146104385780633f657a461461045057806343387983146104de57806347c5ef43146105005780634c4316c71461052f5780634eafbcd51461056357806350f8a8031461058257806352dc7dcc146105bd5780635503d9ba146105ff57806357adafb61461061257806360b1e057146106615780636293c702146106745780636ba3cc87146106935780636e802c6a146106c157806372116e921461077b578063796d5654146107cc57806379f4542e146107eb5780637e7db6e11461080a5780637f61fa931461082957806380afdea81461086b57806381ea44081461087e5780638322fff21461089d5780638b3dd749146108b05780639b3fdf4c146108c35780639d4941d8146108d6578063a1658fad146108f5578063af9f456314610958578063b12b5f761461097a578063c4d66de814610990578063c8ae070f146109af578063cc19ecf7146109c5578063ce17273c14610a11578063d4aae0c414610a60578063d639cd7314610a73578063db7c231414610adb578063e9c211e214610b27578063eba8ba0614610b49578063f6b24b1c14610c9f578063f92a79ff14610ceb578063fbfa77cf14610d3c575b600080fd5b341561025157600080fd5b61027a6001604060020a0360043516600160a060020a0360243581169060443516606435610d4f565b005b341561028757600080fd5b61028f610daa565b60405190815260200160405180910390f35b34156102ac57600080fd5b6102b4610dce565b604051901515815260200160405180910390f35b34156102d357600080fd5b6102b46001604060020a0360043516610dd7565b34156102f257600080fd5b61028f610e79565b341561030557600080fd5b61028f610e9b565b341561031857600080fd5b61027a6001604060020a0360043516602435610ea6565b341561033a57600080fd5b6103546001604060020a0360043581169060243516610fda565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103ae578082015183820152602001610396565b50505050905090810190601f1680156103db5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34156103f657600080fd5b61027a6004803560248101910135611108565b341561041457600080fd5b61041c61119c565b604051600160a060020a03909116815260200160405180910390f35b341561044357600080fd5b61027a600435151561121c565b341561045b57600080fd5b61046f6001604060020a0360043516611282565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104c357fe5b60ff1681526020019850505050505050505060405180910390f35b34156104e957600080fd5b61027a6001604060020a03600435166024356113ff565b341561050b57600080fd5b61027a6001604060020a0360043581169060243581169060443590606435166115e6565b341561053a57600080fd5b61027a6001604060020a0360043581169060243516600160a060020a03604435166064356115fb565b341561056e57600080fd5b6102b4600160a060020a0360043516611792565b341561058d57600080fd5b6105a16001604060020a0360043516611809565b6040516001604060020a03909116815260200160405180910390f35b34156105c857600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166119fe565b341561060a57600080fd5b61028f611c8b565b341561061d57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611c9595505050505050565b341561066c57600080fd5b61028f611d00565b341561067f57600080fd5b61027a600160a060020a0360043516611d24565b341561069e57600080fd5b61027a6001604060020a0360043516600160a060020a0360243516604435611d85565b34156106cc57600080fd5b6105a160048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611d96915050565b341561078657600080fd5b6105a16024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612003565b34156107d757600080fd5b61027a6001604060020a03600435166124b0565b34156107f657600080fd5b61027a600160a060020a036004351661251a565b341561081557600080fd5b6102b4600160a060020a0360043516612592565b341561083457600080fd5b6105a160246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516612598565b341561087657600080fd5b61028f612614565b341561088957600080fd5b61028f600160a060020a036004351661261a565b34156108a857600080fd5b61041c61269c565b34156108bb57600080fd5b61028f6126a1565b34156108ce57600080fd5b61028f6126a7565b34156108e157600080fd5b61027a600160a060020a03600435166126cb565b341561090057600080fd5b6102b460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061284295505050505050565b341561096357600080fd5b61027a6001604060020a0360043516602435612980565b341561098557600080fd5b61027a600435612a15565b341561099b57600080fd5b61027a600160a060020a0360043516612a6d565b34156109ba57600080fd5b61027a600435612ad6565b34156109d057600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b45565b3415610a1c57600080fd5b61027a6004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4e95505050505050565b3415610a6b57600080fd5b61041c612c81565b3415610a7e57600080fd5b61027a600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c90915050565b3415610ae657600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d05565b3415610b3257600080fd5b61027a6001604060020a0360043516602435612e0e565b3415610b5457600080fd5b610b686001604060020a0360043516612f36565b60405180896002811115610b7857fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610bf9578082015183820152602001610be1565b50505050905090810190601f168015610c265780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c5c578082015183820152602001610c44565b50505050905090810190601f168015610c895780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610caa57600080fd5b61027a600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613105565b3415610cf657600080fd5b61041c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061320e95505050505050565b3415610d4757600080fd5b61041c6132ea565b6000600160a060020a0384161515610d6657600080fd5b610d95846020604051908101604052806000815250602060405190810160405260008082526203f48090611d96565b9050610da3818685856115fb565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610de3836132fe565b90506000815460ff166002811115610df757fe5b1415610e065760009150610e73565b6002815460ff166002811115610e1857fe5b14610e1f57fe5b6001810154604060020a900460ff1615610e3c5760019150610e73565b60018101546001604060020a03161515610e595760009150610e73565b6001810154610e70906001604060020a0316610dd7565b91505b50919050565b6040516000805160206151ad8339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610ecb57600080fd5b610ed484613344565b91506001600383015460a060020a900460ff166002811115610ef257fe5b14610efc57600080fd5b6002820154600183018054610fc7926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610f8f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f4c5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613375565b9050610fd4848285613697565b50505050565b600080610fe5614df8565b600080610ff187613344565b915081600101600187036001604060020a031681548110151561101057fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450611044856132fe565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110f85780601f106110cd576101008083540402835291602001916110f8565b820191906000526020600020905b8154815290600101906020018083116110db57829003601f168201915b5050505050925050509250925092565b60006040516000805160206151ad833981519152815260130160405180910390206111533382600060405180591061113d5750595b9080825280602002602001820160405250612842565b151561115e57600080fd5b600091505b60ff821683901015610fd457611191848460ff851681811061118157fe5b9050602002013560001916612ad6565b600190910190611163565b60008054600160a060020a031615156111b457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111fd57600080fd5b6102c65a03f1151561120e57600080fd5b505050604051805191505090565b6040516000805160206151ad833981519152815260130160405180910390206112643382600060405180591061113d5750599080825280602002602001820160405250612842565b151561126f57600080fd5b506069805460ff19169115919091179055565b600080600080600080600080611296614e0a565b61129f8a613344565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561133757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116112f45790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ad57fe5b60028111156113b857fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061140d85611809565b945061141885613344565b92506000600384015460a060020a900460ff16600281111561143657fe5b1461144057600080fd5b6002830154611457906001604060020a031661376b565b600283015460018401805461151f926001604060020a031691906020808202016040519081016040528092919081815260200182805480156114ea57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114a75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613375565b915061152c858386613697565b6002830154611543906001604060020a03166132fe565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b15156115cb57600080fd5b6102c65a03f115156115dc57600080fd5b5050505050505050565b6115ef8461376b565b610fd4848484846137c2565b600080806001604060020a03871681901161161557600080fd5b6000841161162257600080fd5b600160a060020a038516151561163757600080fd5b611640876132fe565b92506000835460ff16600281111561165457fe5b1461165e57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156116d457600080fd5b6102c65a03f115156116e557600080fd5b5050506040518051905015156116fa57600080fd5b61172b87600060405180591061170d5750595b908082528060200260200182016040525060008060008a6000613375565b915061173682613344565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a3611789878386896137c2565b50505050505050565b606954600090819060ff16806117af5750600160a060020a038316155b156117bd5760019150610e73565b600160a060020a03831660009081526068602052604090205460ff16156117e75760019150610e73565b6117f08361261a565b60009081526067602052604090205460ff169392505050565b60008060008061181885613344565b92506000600384015460a060020a900460ff16600281111561183657fe5b14611843578493506119f6565b60028301546000604060020a9091046001604060020a031611801561188257506002830154608060020a90046001604060020a0316611880613e19565b115b156119c557600283015460018401805461194e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116118d75790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b60028401549092506119a590604060020a90046001604060020a031660006040518059106119795750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b90506119b685828560000154613697565b8094506119c285613344565b92505b6119ce85613e1d565b90506001604060020a03808216908616146119f2576119f285828560000154613697565b8093505b505050919050565b6000611a0982611792565b1515611a1457600080fd5b5060648054908160018101611a298382614e56565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b1a57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0b929160200190614e82565b5060e082015181600301908051611c26929160200190614e82565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015610fd4576001604060020a03848481518110611cb757fe5b90602001906020020151169150604060020a848481518110611cd557fe5b90602001906020020151811515611ce857fe5b049050611cf582826113ff565b600190920191611c9a565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206151ad83398151915281526013016040518091039020611d4c82613ee5565b611d57338383612842565b1515611d6257600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611d9183338484610d4f565b505050565b6000611da182611792565b1515611dac57600080fd5b5060648054908160018101611dc18382614e56565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e3e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f2f929160200190614e82565b5060e082015181600301908051611f4a929160200190614e82565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fc0578082015183820152602001611fa8565b50505050905090810190601f168015611fed5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061200f83611792565b151561201a57600080fd5b6001604060020a0385161561223757612032856132fe565b90506014612224826101006040519081016040528154909190829060ff16600281111561205b57fe5b600281111561206657fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121745780601f1061214957610100808354040283529160200191612174565b820191906000526020600020905b81548152906001019060200180831161215757829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122165780601f106121eb57610100808354040283529160200191612216565b820191906000526020600020905b8154815290600101906020018083116121f957829003601f168201915b505050505081525050613f05565b6001604060020a03161061223757600080fd5b606480549250826001810161224c8382614e56565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561233c57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a026000805160206151cd833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161242d929160200190614e82565b5060e082015181600301908051612448929160200190614e82565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124bb826132fe565b90506124c68261376b565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b6040516000805160206151ad833981519152815260130160405180910390206125623382600060405180591061113d5750599080825280602002602001820160405250612842565b151561256d57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126093388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611d96565b979650505050505050565b60015481565b6000612624614df8565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126685780518252601f199092019160209182019101612649565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806126d783612592565b15156126e257600080fd5b6126ea61119c565b91506126f582613f79565b151561270057600080fd5b600160a060020a03831615156127525781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561274d57600080fd5b611d91565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127a957600080fd5b6102c65a03f115156127ba57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561282257600080fd5b6102c65a03f1151561283357600080fd5b50505060405180515050505050565b600061284c614df8565b6000808451111561286557835160200290508391508082525b600054600160a060020a03161580612976575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561290c5780820151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561295a57600080fd5b6102c65a03f1151561296b57600080fd5b505050604051805190505b9695505050505050565b60008061298c84611809565b935061299784613344565b600281015490925060c060020a90046001604060020a031615156129ba57600080fd5b6000600383015460a060020a900460ff1660028111156129d657fe5b146129e057600080fd5b60028201546129f7906001604060020a031661376b565b6002820154610fc79060c060020a90046001604060020a0316613e1d565b6040516000805160206151ad83398151915281526013016040518091039020612a3d82613f9f565b612a48338383612842565b1515612a5357600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612a7a57600080fd5b600160a060020a0381161515612a8f57600080fd5b612a97613fb0565b6069805461010060a860020a031916610100600160a060020a038416021790556001612ac4606482614e56565b506001612ad2606582614efc565b5050565b6040516000805160206151ad83398151915281526013016040518091039020612b1e3382600060405180591061113d5750599080825280602002602001820160405250612842565b1515612b2957600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b50886132fe565b805490915033600160a060020a039081166101009092041614612b7257600080fd5b6001815460ff166002811115612b8457fe5b14612b8e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bba600282018787614f28565b50612bc9600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612ad257612c78828281518110612c6957fe5b90602001906020020151611809565b50600101612c51565b600054600160a060020a031681565b600080805b8451831015612cfd576001604060020a03858481518110612cb257fe5b90602001906020020151169150604060020a858481518110612cd057fe5b90602001906020020151811515612ce357fe5b049050612cf2868383876115e6565b600190920191612c95565b505050505050565b6000612d10886132fe565b805490915033600160a060020a039081166101009092041614612d3257600080fd5b6000815460ff166002811115612d4457fe5b14612d4e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7a600282018787614f28565b50612d89600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3357600080fd5b612e3c84613344565b91506001600383015460a060020a900460ff166002811115612e5a57fe5b14612e6457600080fd5b6002820154600183018054612f2b926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb45790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b9050610fc781611809565b600080612f41614df8565b612f49614df8565b6000806000806000612f5a8a6132fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f8201819004810201604051908101604052809291908181526020018280546001816001161561010002031660029004801561300f5780601f10612fe45761010080835404028352916020019161300f565b820191906000526020600020905b815481529060010190602001808311612ff257829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130ae5780601f10613083576101008083540402835291602001916130ae565b820191906000526020600020905b81548152906001019060200180831161309157829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000613110886132fe565b805490915033600160a060020a03908116610100909204161461313257600080fd5b6002815460ff16600281111561314457fe5b1461314e57600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317a600282018787614f28565b50613189600382018585614f28565b5080546001604060020a0380841660a860020a026000805160206151cd83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000613218613fca565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561327f578082015183820152602001613267565b50505050905090810190601f1680156132ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132ca57600080fd5b6102c65a03f115156132db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331857600080fd5b606480546001604060020a03841690811061332f57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061335e57600080fd5b606580546001604060020a03841690811061332f57fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133ae578082015183820152602001613396565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341857fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134825780925061368a565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c28382614efc565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354357fe5b905291905081518155602082015181600101908051613566929160200190614f96565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561367e57fe5b02179055505050508092505b5050979650505050505050565b60008060006136a96001878787614061565b9250846001604060020a0316866001604060020a031614156136ca57612cfd565b8215156136d657612cfd565b6136df86613344565b91506136ea85613344565b8254909150839010156136fc57600080fd5b81548390038255805483018082558390101561371757600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117896000878786614061565b6000613776826132fe565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b75750805433600160a060020a0390811661010090920416145b1515612ad257600080fd5b600080808080806001604060020a0387168190116137df57600080fd5b6137e889611809565b98506137f389613344565b95506137fe876132fe565b94506000600387015460a060020a900460ff16600281111561381c57fe5b1461382657600080fd5b60028601546001604060020a038b811691161415613b21576000855460ff16600281111561385057fe5b141561386657613861898989614087565b613e0d565b6002855460ff16600281111561387857fe5b1415613889576138618989896140e1565b6001855460ff16600281111561389b57fe5b1415613b1f576139c7866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fa5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b60028111156139be57fe5b9052508861431f565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fa57506001604060020a038414155b15613b0057600186015460001901841415613ae3576002860154600187018054613ad6926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa257602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a5f5790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613375565b925061386189848a613697565b613afa89896001848a600101805490500303614385565b50613e0d565b613b1289898860010180549050614385565b985061386189898961448f565bfe5b613c478661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbd57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7a5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3357fe5b6002811115613c3e57fe5b9052508b61431f565b6001604060020a0390811692508214613b1f576000855460ff166002811115613c6c57fe5b1415613c9d5760028601546001604060020a03888116911614613c8b57fe5b613afa89898860010180549050614385565b6001855460ff166002811115613caf57fe5b1415613dd157613d9c866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393d57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fa575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b357fe5b6001604060020a039081169150811480613db557508181115b15613ae357613b1289896001858a600101805490500303614385565b6002855460ff166002811115613de357fe5b1415613b1f57613e0089896001858a600101805490500303614385565b98506138618989896145bf565b50505050505050505050565b4290565b600080806001604060020a0384161515613e3a5760009250613ede565b613e4384613344565b6002810154909250613e5d906001604060020a03166132fe565b90506000815460ff166002811115613e7157fe5b1415613e7f57839250613ede565b6002815460ff166002811115613e9157fe5b14613e9857fe5b6002820154613eaf906001604060020a0316610dd7565b1515613ebd57839250613ede565b6002820154613edb9060c060020a90046001604060020a0316613e1d565b92505b5050919050565b613eed614df8565b613eff82600160a060020a03166148d2565b92915050565b600080600283516002811115613f1757fe5b14613f1e57fe5b82606001516001604060020a03161515613f3b5760019150610e73565b613f4883606001516132fe565b9050613f6f816101006040519081016040528154909190829060ff16600281111561205b57fe5b6001019392505050565b600080600160a060020a0383161515613f955760009150610e73565b50506000903b1190565b613fa7614df8565b613eff826148d2565b60035415613fbd57600080fd5b613fc5614919565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561403d57600080fd5b6102c65a03f1151561404e57600080fd5b50505060405180519250829150505b5090565b8061406f858580868561491d565b905061407e858486868561491d565b95945050505050565b60008061409385613344565b91506140d48360006040518059106140a85750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613375565b9050610da3858286613697565b60008060006140ef86613344565b92506014614218846101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161414c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b600281111561421057fe5b905250614a85565b1061422257600080fd5b61422b84610dd7565b1561423557600080fd5b60028301546001840180546142d2926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561191a57600091825260209182902080546001604060020a031684529082028301929091600891018084116118d75750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613375565b91506143128460006040518059106119795750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613375565b9050612cfd868287613697565b6000805b83602001515181101561437357826001604060020a03168460200151828151811061434a57fe5b906020019060200201516001604060020a0316141561436b5780915061437e565b600101614323565b6001604060020a0391505b5092915050565b600080614390614df8565b600061439b87613344565b60018101549093508590036040518059106143b35750595b90808252806020026020018201604052509150600090505b600183015485900381101561443e57600183018054829081106143ea57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061441f57fe5b6001604060020a039092166020928302909101909101526001016143cb565b60028301546003840154614478916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613375565b9350614485878588613697565b5050509392505050565b6000614499614df8565b6000806144a587613344565b6001810154909450600a90106144ba57600080fd5b600180850154016040518059106144ce5750595b90808252806020026020018201604052509250600091505b6001840154821015614559576001840180548390811061450257fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061453757fe5b6001604060020a039092166020928302909101909101526001909101906144e6565b6001840154859084908151811061456c57fe5b6001604060020a0392831660209182029092010152600285015460038601546145b292828116928792600092839260c060020a90041690600160a060020a031682613375565b9050611789878288613697565b6000806145cb85613344565b915060146146b6836101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b106146c057600080fd5b6146c983610dd7565b156146d357600080fd5b60028201546001830180546140d4926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561476657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147235790505b505050505085614891866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561480857602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147c55790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561487e57fe5b600281111561488957fe5b905250614b9b565b6001604060020a03166148a2613e19565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613375565b6148da614df8565b60016040518059106148e95750595b90808252806020026020018201604052509050818160008151811061490a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a03161461494457610100614947565b60005b61ffff16925084935061495988613344565b6002810154600382015491935061498b918b916001604060020a0316908a908a908890600160a060020a03168a614c33565b9350600090505b60018201546001604060020a0382161015614a1e57614a148983600101836001604060020a03168154811015156149c557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c33565b9350600101614992565b60028201546000604060020a9091046001604060020a03161115614a795760028201546003830154614a76918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c33565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614aa55760009150610e73565b614ab28360a00151613344565b9050613f6f816101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561418f57600091825260209182902080546001604060020a0316845290820283019290916008910180841161414c575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561420557fe5b6000806000614bad84604001516132fe565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ede57614bf784602001518281518110614be857fe5b906020019060200201516132fe565b80549092506001604060020a0380851660a860020a909204161115614c2b57815460a860020a90046001604060020a031692505b600101614bc8565b80600080614c40896132fe565b600181015490915069010000000000000000009004600160a060020a031615801590614c6c5750600083115b1561368a578915614d4457600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d1357600080fd5b6102c65a03f11515614d2457600080fd5b505050604051805192505082821115614d3c57600080fd5b81925061368a565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614dd757600080fd5b6102c65a03f11515614de857600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e26614df8565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611d9157600402816004028360005260206000209182019101611d91919061504a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614ec357805160ff1916838001178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578251825591602001919060010190614ed5565b5061405d9291506150b1565b815481835581811511611d9157600402816004028360005260206000209182019101611d9191906150cb565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f695782800160ff19823516178555614ef0565b82800160010185558215614ef0579182015b82811115614ef0578235825591602001919060010190614f7b565b8280548282559060005260206000209060030160049004810192821561503e5791602002820160005b8382111561500957835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302614fbf565b801561503c5782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615009565b505b5061405d92915061511b565b610ea391905b8082111561405d5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061509a6002830182615140565b6150a8600383016000615140565b50600401615050565b610ea391905b8082111561405d57600081556001016150b7565b610ea391905b8082111561405d5760008082556150eb6001830182615187565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff191690556004016150d1565b610ea391905b8082111561405d57805467ffffffffffffffff19168155600101615121565b50805460018160011615610100020316600290046000825580601f106151665750615184565b601f01602090049060005260206000209081019061518491906150b1565b50565b50805460008255600301600490049060005260206000209081019061518491906150b15600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820","swarm_hash":"ed1eacae6750bb2e266a5f861872a813708ecd94e8e2f531e86e5b01327a4c7d","gas_estimates":{"creation":{"codeDepositCost":"4203200","executionCost":"25049","totalCost":"4228249"},"external":{"APP_ADDR_NAMESPACE()":"258","ETH()":"996","EVMSCRIPT_REGISTRY_APP()":"962","EVMSCRIPT_REGISTRY_APP_ID()":"676","PLUGIN_MANAGER_ROLE()":"infinite","addDelegate(string,string,uint64,address)":"infinite","addGiver(address,string,string,uint64,address)":"infinite","addGiver(string,string,uint64,address)":"infinite","addGiverAndDonate(uint64,address,address,uint256)":"infinite","addGiverAndDonate(uint64,address,uint256)":"infinite","addProject(string,string,address,uint64,uint64,address)":"infinite","addValidPluginContract(bytes32)":"infinite","addValidPluginContracts(bytes32[])":"infinite","addValidPluginInstance(address)":"infinite","allowRecoverability(address)":"919","appId()":"1074","canPerform(address,bytes32,uint256[])":"infinite","cancelPayment(uint64,uint256)":"infinite","cancelPledge(uint64,uint256)":"infinite","cancelProject(uint64)":"infinite","confirmPayment(uint64,uint256)":"infinite","donate(uint64,uint64,address,uint256)":"infinite","getCodeHash(address)":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"1140","getPledge(uint64)":"infinite","getPledgeAdmin(uint64)":"infinite","getPledgeDelegate(uint64,uint64)":"infinite","getRecoveryVault()":"infinite","initialize(address)":"infinite","isProjectCanceled(uint64)":"infinite","isValidPlugin(address)":"infinite","kernel()":"1513","mNormalizePledge(uint64[])":"infinite","mTransfer(uint64,uint256[],uint64)":"infinite","mWithdraw(uint256[])":"infinite","normalizePledge(uint64)":"infinite","numberOfPledgeAdmins()":"841","numberOfPledges()":"556","removeValidPluginContract(bytes32)":"infinite","removeValidPluginInstance(address)":"infinite","transfer(uint64,uint64,uint256,uint64)":"infinite","transferToVault(address)":"infinite","updateDelegate(uint64,address,string,string,uint64)":"infinite","updateGiver(uint64,address,string,string,uint64)":"infinite","updateProject(uint64,address,string,string,uint64)":"infinite","useWhitelist(bool)":"infinite","vault()":"1678","whitelistDisabled()":"492","withdraw(uint64,uint256)":"infinite"}},"function_hashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","PLUGIN_MANAGER_ROLE()":"24fea3b0","addDelegate(string,string,uint64,address)":"52dc7dcc","addGiver(address,string,string,uint64,address)":"6e802c6a","addGiver(string,string,uint64,address)":"7f61fa93","addGiverAndDonate(uint64,address,address,uint256)":"007611c6","addGiverAndDonate(uint64,address,uint256)":"6ba3cc87","addProject(string,string,address,uint64,uint64,address)":"72116e92","addValidPluginContract(bytes32)":"c8ae070f","addValidPluginContracts(bytes32[])":"32ce8ebc","addValidPluginInstance(address)":"79f4542e","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","cancelPayment(uint64,uint256)":"e9c211e2","cancelPledge(uint64,uint256)":"af9f4563","cancelProject(uint64)":"796d5654","confirmPayment(uint64,uint256)":"2ee88808","donate(uint64,uint64,address,uint256)":"4c4316c7","getCodeHash(address)":"81ea4408","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getPledge(uint64)":"3f657a46","getPledgeAdmin(uint64)":"eba8ba06","getPledgeDelegate(uint64,uint64)":"2f6b64ca","getRecoveryVault()":"32f0a3b5","initialize(address)":"c4d66de8","isProjectCanceled(uint64)":"2101a6ad","isValidPlugin(address)":"4eafbcd5","kernel()":"d4aae0c4","mNormalizePledge(uint64[])":"ce17273c","mTransfer(uint64,uint256[],uint64)":"d639cd73","mWithdraw(uint256[])":"57adafb6","normalizePledge(uint64)":"50f8a803","numberOfPledgeAdmins()":"5503d9ba","numberOfPledges()":"2a8ec8cc","removeValidPluginContract(bytes32)":"b12b5f76","removeValidPluginInstance(address)":"6293c702","transfer(uint64,uint64,uint256,uint64)":"47c5ef43","transferToVault(address)":"9d4941d8","updateDelegate(uint64,address,string,string,uint64)":"cc19ecf7","updateGiver(uint64,address,string,string,uint64)":"db7c2314","updateProject(uint64,address,string,string,uint64)":"f6b24b1c","useWhitelist(bool)":"38740291","vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568","withdraw(uint64,uint256)":"43387983"},"abi":[{"constant":false,"inputs":[{"name":"idReceiver","type":"uint64"},{"name":"donorAddress","type":"address"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"addGiverAndDonate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x007611c6"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x178e6079"},{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x1c8e8568"},{"constant":true,"inputs":[{"name":"projectId","type":"uint64"}],"name":"isProjectCanceled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x2101a6ad"},{"constant":true,"inputs":[],"name":"PLUGIN_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x24fea3b0"},{"constant":true,"inputs":[],"name":"numberOfPledges","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x2a8ec8cc"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"confirmPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x2ee88808"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"idxDelegate","type":"uint64"}],"name":"getPledgeDelegate","outputs":[{"name":"idDelegate","type":"uint64"},{"name":"addr","type":"address"},{"name":"name","type":"string"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x2f6b64ca"},{"constant":false,"inputs":[{"name":"contractHashes","type":"bytes32[]"}],"name":"addValidPluginContracts","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x32ce8ebc"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x32f0a3b5"},{"constant":false,"inputs":[{"name":"useWhitelist","type":"bool"}],"name":"useWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x38740291"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"getPledge","outputs":[{"name":"amount","type":"uint256"},{"name":"owner","type":"uint64"},{"name":"nDelegates","type":"uint64"},{"name":"intendedProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"oldPledge","type":"uint64"},{"name":"token","type":"address"},{"name":"pledgeState","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x3f657a46"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x43387983"},{"constant":false,"inputs":[{"name":"idSender","type":"uint64"},{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"},{"name":"idReceiver","type":"uint64"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x47c5ef43"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"idReceiver","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"donate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x4c4316c7"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isValidPlugin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x4eafbcd5"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"normalizePledge","outputs":[{"name":"","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x50f8a803"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addDelegate","outputs":[{"name":"idDelegate","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x52dc7dcc"},{"constant":true,"inputs":[],"name":"numberOfPledgeAdmins","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x5503d9ba"},{"constant":false,"inputs":[{"name":"pledgesAmounts","type":"uint256[]"}],"name":"mWithdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x57adafb6"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x60b1e057"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"removeValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x6293c702"},{"constant":false,"inputs":[{"name":"idReceiver","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"addGiverAndDonate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x6ba3cc87"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x6e802c6a"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"projectAdmin","type":"address"},{"name":"parentProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addProject","outputs":[{"name":"idProject","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x72116e92"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"}],"name":"cancelProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x796d5654"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"addValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x79f4542e"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x7e7db6e1"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x7f61fa93"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x80afdea8"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getCodeHash","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x81ea4408"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8322fff2"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x8b3dd749"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x9b3fdf4c"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x9d4941d8"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xa1658fad"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"cancelPledge","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xaf9f4563"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"removeValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xb12b5f76"},{"constant":false,"inputs":[{"name":"_vault","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xc4d66de8"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"addValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xc8ae070f"},{"constant":false,"inputs":[{"name":"idDelegate","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateDelegate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xcc19ecf7"},{"constant":false,"inputs":[{"name":"pledges","type":"uint64[]"}],"name":"mNormalizePledge","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xce17273c"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xd4aae0c4"},{"constant":false,"inputs":[{"name":"idSender","type":"uint64"},{"name":"pledgesAmounts","type":"uint256[]"},{"name":"idReceiver","type":"uint64"}],"name":"mTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd639cd73"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateGiver","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xdb7c2314"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"cancelPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xe9c211e2"},{"constant":true,"inputs":[{"name":"idAdmin","type":"uint64"}],"name":"getPledgeAdmin","outputs":[{"name":"adminType","type":"uint8"},{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"parentProject","type":"uint64"},{"name":"canceled","type":"bool"},{"name":"plugin","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xeba8ba06"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xf6b24b1c"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xf92a79ff"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xfbfa77cf"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"uint256"},{"indexed":true,"name":"to","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Transfer","type":"event","signature":"0xaf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f6"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint256"}],"name":"CancelProject","type":"event","signature":"0x74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d346"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverAdded","type":"event","signature":"0xf5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a3"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverUpdated","type":"event","signature":"0x4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateAdded","type":"event","signature":"0xd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateUpdated","type":"event","signature":"0x6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectAdded","type":"event","signature":"0x9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectUpdated","type":"event","signature":"0xab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c58707"}]} diff --git a/abi/contracts/LiquidPledgingACLHelpers.js b/abi/contracts/LiquidPledgingACLHelpers.js new file mode 100644 index 0000000..6974fe3 --- /dev/null +++ b/abi/contracts/LiquidPledgingACLHelpers.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let LiquidPledgingACLHelpersJSONConfig = {"contract_name":{"className":"LiquidPledgingACLHelpers","args":[],"code":"60606040523415600e57600080fd5b603580601b6000396000f3006060604052600080fd00a165627a7a723058200d230317887c7be4c73606ff816ab32fd8bc2f4b60898c2c831e339349ebe8700029","runtimeBytecode":"6060604052600080fd00a165627a7a723058200d230317887c7be4c73606ff816ab32fd8bc2f4b60898c2c831e339349ebe8700029","realRuntimeBytecode":"6060604052600080fd00a165627a7a72305820","linkReferences":{},"swarmHash":"0d230317887c7be4c73606ff816ab32fd8bc2f4b60898c2c831e339349ebe870","gasEstimates":{"creation":{"codeDepositCost":"10600","executionCost":"61","totalCost":"10661"},"internal":{"arr(bool)":"infinite","arr(uint64,uint64,address,uint256,address)":"infinite"}},"functionHashes":{},"abiDefinition":[],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/LiquidPledgingACLHelpers.sol","originalFilename":"contracts/LiquidPledgingACLHelpers.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/LiquidPledgingACLHelpers.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"60606040523415600e57600080fd5b603580601b6000396000f3006060604052600080fd00a165627a7a723058200d230317887c7be4c73606ff816ab32fd8bc2f4b60898c2c831e339349ebe8700029","runtime_bytecode":"6060604052600080fd00a165627a7a723058200d230317887c7be4c73606ff816ab32fd8bc2f4b60898c2c831e339349ebe8700029","real_runtime_bytecode":"6060604052600080fd00a165627a7a72305820","swarm_hash":"0d230317887c7be4c73606ff816ab32fd8bc2f4b60898c2c831e339349ebe870","gas_estimates":{"creation":{"codeDepositCost":"10600","executionCost":"61","totalCost":"10661"},"internal":{"arr(bool)":"infinite","arr(uint64,uint64,address,uint256,address)":"infinite"}},"function_hashes":{},"abi":[]}; +let LiquidPledgingACLHelpers = new EmbarkJS.Blockchain.Contract(LiquidPledgingACLHelpersJSONConfig); +export default LiquidPledgingACLHelpers; diff --git a/abi/contracts/LiquidPledgingBase.js b/abi/contracts/LiquidPledgingBase.js new file mode 100644 index 0000000..eb85c2f --- /dev/null +++ b/abi/contracts/LiquidPledgingBase.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let LiquidPledgingBaseJSONConfig = {"contract_name":{"className":"LiquidPledgingBase","args":[],"code":"60606040526069805460ff19169055341561001957600080fd5b6136a4806100286000396000f3006060604052600436106101be5763ffffffff60e060020a600035041663178e607981146101c35780631c8e8568146101e85780632101a6ad1461020f57806324fea3b01461022e5780632a8ec8cc146102415780632f6b64ca1461025457806332ce8ebc1461031057806332f0a3b514610330578063387402911461035f5780633f657a46146103775780634eafbcd51461040557806350f8a8031461042457806352dc7dcc1461045f5780635503d9ba146104a157806360b1e057146104b45780636293c702146104c75780636e802c6a146104e657806372116e92146105a057806379f4542e146105f15780637e7db6e1146106105780637f61fa931461062f57806380afdea81461067157806381ea4408146106845780638322fff2146106a35780638b3dd749146106b65780639b3fdf4c146106c95780639d4941d8146106dc578063a1658fad146106fb578063b12b5f761461075e578063c4d66de814610774578063c8ae070f14610793578063cc19ecf7146107a9578063d4aae0c4146107f5578063db7c231414610808578063eba8ba0614610854578063f6b24b1c146109aa578063f92a79ff146109f6578063fbfa77cf14610a47575b600080fd5b34156101ce57600080fd5b6101d6610a5a565b60405190815260200160405180910390f35b34156101f357600080fd5b6101fb610a7e565b604051901515815260200160405180910390f35b341561021a57600080fd5b6101fb6001604060020a0360043516610a87565b341561023957600080fd5b6101d6610b2e565b341561024c57600080fd5b6101d6610b50565b341561025f57600080fd5b6102796001604060020a0360043581169060243516610b5b565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156102d35780820151838201526020016102bb565b50505050905090810190601f1680156103005780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b341561031b57600080fd5b61032e6004803560248101910135610c89565b005b341561033b57600080fd5b610343610d23565b604051600160a060020a03909116815260200160405180910390f35b341561036a57600080fd5b61032e6004351515610da3565b341561038257600080fd5b6103966001604060020a0360043516610e09565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156103ea57fe5b60ff1681526020019850505050505050505060405180910390f35b341561041057600080fd5b6101fb600160a060020a0360043516610fa9565b341561042f57600080fd5b6104436001604060020a0360043516611020565b6040516001604060020a03909116815260200160405180910390f35b341561046a57600080fd5b61044360246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a036064351661123d565b34156104ac57600080fd5b6101d66114cf565b34156104bf57600080fd5b6101d66114d9565b34156104d257600080fd5b61032e600160a060020a03600435166114fd565b34156104f157600080fd5b61044360048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a0316925061155e915050565b34156105ab57600080fd5b6104436024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a435166117d0565b34156105fc57600080fd5b61032e600160a060020a0360043516611c87565b341561061b57600080fd5b6101fb600160a060020a0360043516611cff565b341561063a57600080fd5b61044360246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516611d05565b341561067c57600080fd5b6101d6611d81565b341561068f57600080fd5b6101d6600160a060020a0360043516611d87565b34156106ae57600080fd5b610343611e09565b34156106c157600080fd5b6101d6611e0e565b34156106d457600080fd5b6101d6611e14565b34156106e757600080fd5b61032e600160a060020a0360043516611e38565b341561070657600080fd5b6101fb60048035600160a060020a0316906024803591906064906044359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650611fb095505050505050565b341561076957600080fd5b61032e6004356120ee565b341561077f57600080fd5b61032e600160a060020a0360043516612146565b341561079e57600080fd5b61032e6004356121af565b34156107b457600080fd5b61032e600480356001604060020a039081169160248035600160a060020a03169260443580830193908101359260643590810192910135906084351661221e565b341561080057600080fd5b610343612327565b341561081357600080fd5b61032e600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612336565b341561085f57600080fd5b6108736001604060020a036004351661243f565b6040518089600281111561088357fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b838110156109045780820151838201526020016108ec565b50505050905090810190601f1680156109315780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561096757808201518382015260200161094f565b50505050905090810190601f1680156109945780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b34156109b557600080fd5b61032e600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612613565b3415610a0157600080fd5b61034360046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061271c95505050505050565b3415610a5257600080fd5b6103436127f8565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610a938361280c565b90506000815460ff166002811115610aa757fe5b1415610ab65760009150610b28565b6002815460ff166002811115610ac857fe5b14610acf57fe5b600181015468010000000000000000900460ff1615610af15760019150610b28565b60018101546001604060020a03161515610b0e5760009150610b28565b6001810154610b25906001604060020a0316610a87565b91505b50919050565b6040516000805160206136398339815191528152601301604051809103902081565b606554600019015b90565b600080610b66613284565b600080610b7287612852565b915081600101600187036001604060020a0316815481101515610b9157fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450610bc58561280c565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c795780601f10610c4e57610100808354040283529160200191610c79565b820191906000526020600020905b815481529060010190602001808311610c5c57829003601f168201915b5050505050925050509250925092565b600060405160008051602061363983398151915281526013016040518091039020610cd433826000604051805910610cbe5750595b9080825280602002602001820160405250611fb0565b1515610cdf57600080fd5b600091505b60ff821683901015610d1d57610d12848460ff8516818110610d0257fe5b90506020020135600019166121af565b600190910190610ce4565b50505050565b60008054600160a060020a03161515610d3b57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610d8457600080fd5b6102c65a03f11515610d9557600080fd5b505050604051805191505090565b60405160008051602061363983398151915281526013016040518091039020610deb33826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b1515610df657600080fd5b506069805460ff19169115919091179055565b600080600080600080600080610e1d613296565b610e268a612852565b61010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015610ebe57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610e7b5790505b50505091835250506002828101546001604060020a0380821660208501526801000000000000000082048116604085015270010000000000000000000000000000000082048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019174010000000000000000000000000000000000000000900460ff1690811115610f5757fe5b6002811115610f6257fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b606954600090819060ff1680610fc65750600160a060020a038316155b15610fd45760019150610b28565b600160a060020a03831660009081526068602052604090205460ff1615610ffe5760019150610b28565b61100783611d87565b60009081526067602052604090205460ff169392505050565b60008060008061102f85612852565b92506000600384015474010000000000000000000000000000000000000000900460ff16600281111561105e57fe5b1461106b57849350611235565b60028301546000680100000000000000009091046001604060020a03161180156110bc5750600283015470010000000000000000000000000000000090046001604060020a03166110ba612883565b115b15611204576002830154600184018054611188926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561115457602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116111115790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682612887565b60028401549092506111e4906801000000000000000090046001604060020a031660006040518059106111b85750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682612887565b90506111f585828560000154612bba565b80945061120185612852565b92505b61120d85612c98565b90506001604060020a03808216908616146112315761123185828560000154612bba565b8093505b505050919050565b600061124882610fa9565b151561125357600080fd5b506064805490816001810161126883826132e2565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561135957fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161144f92916020019061330e565b5060e08201518160030190805161146a92916020019061330e565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206136398339815191528152601301604051809103902061152582612d60565b611530338383611fb0565b151561153b57600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b600061156982610fa9565b151561157457600080fd5b506064805490816001810161158983826132e2565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff1916600183600281111561160657fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c0820151816002019080516116fc92916020019061330e565b5060e08201518160030190805161171792916020019061330e565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b8381101561178d578082015183820152602001611775565b50505050905090810190601f1680156117ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b6000806117dc83610fa9565b15156117e757600080fd5b6001604060020a03851615611a09576117ff8561280c565b905060146119f6826101006040519081016040528154909190829060ff16600281111561182857fe5b600281111561183357fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a03908116604080870191909152600180880154928316606088015268010000000000000000830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156119465780601f1061191b57610100808354040283529160200191611946565b820191906000526020600020905b81548152906001019060200180831161192957829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119e85780601f106119bd576101008083540402835291602001916119e8565b820191906000526020600020905b8154815290600101906020018083116119cb57829003601f168201915b505050505081525050612d80565b6001604060020a031610611a0957600080fd5b6064805492508260018101611a1e83826132e2565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b0e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0492916020019061330e565b5060e082015181600301908051611c1f92916020019061330e565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60405160008051602061363983398151915281526013016040518091039020611ccf33826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b1515611cda57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b6000611d763388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050868661155e565b979650505050505050565b60015481565b6000611d91613284565b823b604051915080825280600060208401863c50806040518082805190602001908083835b60208310611dd55780518252601f199092019160209182019101611db6565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080611e4483611cff565b1515611e4f57600080fd5b611e57610d23565b9150611e6282612df4565b1515611e6d57600080fd5b600160a060020a0383161515611ebf5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515611eba57600080fd5b611fab565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515611f1657600080fd5b6102c65a03f11515611f2757600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515611f8f57600080fd5b6102c65a03f11515611fa057600080fd5b505050604051805150505b505050565b6000611fba613284565b60008084511115611fd357835160200290508391508082525b600054600160a060020a031615806120e4575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561207a578082015183820152602001612062565b50505050905090810190601f1680156120a75780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156120c857600080fd5b6102c65a03f115156120d957600080fd5b505050604051805190505b9695505050505050565b6040516000805160206136398339815191528152601301604051809103902061211682612e1a565b612121338383611fb0565b151561212c57600080fd5b50506000908152606760205260409020805460ff19169055565b6003541561215357600080fd5b600160a060020a038116151561216857600080fd5b612170612e2b565b6069805461010060a860020a031916610100600160a060020a03841602179055600161219d6064826132e2565b5060016121ab606582613388565b5050565b604051600080516020613639833981519152815260130160405180910390206121f733826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b151561220257600080fd5b506000908152606760205260409020805460ff19166001179055565b60006122298861280c565b805490915033600160a060020a03908116610100909204161461224b57600080fd5b6001815460ff16600281111561225d57fe5b1461226757600080fd5b805461010060a860020a031916610100600160a060020a038916021781556122936002820187876133b4565b506122a26003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600054600160a060020a031681565b60006123418861280c565b805490915033600160a060020a03908116610100909204161461236357600080fd5b6000815460ff16600281111561237557fe5b1461237f57600080fd5b805461010060a860020a031916610100600160a060020a038916021781556123ab6002820187876133b4565b506123ba6003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60008061244a613284565b612452613284565b60008060008060006124638a61280c565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f820181900481020160405190810160405280929190818152602001828054600181600116156101000203166002900480156125185780601f106124ed57610100808354040283529160200191612518565b820191906000526020600020905b8154815290600101906020018083116124fb57829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156125b75780601f1061258c576101008083540402835291602001916125b7565b820191906000526020600020905b81548152906001019060200180831161259a57829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a5083169850505068010000000000000000810460ff16955069010000000000000000009004600160a060020a03169350915050565b600061261e8861280c565b805490915033600160a060020a03908116610100909204161461264057600080fd5b6002815460ff16600281111561265257fe5b1461265c57600080fd5b805461010060a860020a031916610100600160a060020a038916021781556126886002820187876133b4565b506126976003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000612726612e45565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561278d578082015183820152602001612775565b50505050905090810190601f1680156127ba5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156127d857600080fd5b6102c65a03f115156127e957600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061282657600080fd5b606480546001604060020a03841690811061283d57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061286c57600080fd5b606580546001604060020a03841690811061283d57fe5b4290565b6000806000888a898989898960405180888051906020019060200280838360005b838110156128c05780820151838201526020016128a8565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561292a57fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a03909116915081111561299457809250612bad565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016129d48382613388565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a03168152602001886002811115612a5557fe5b905291905081518155602082015181600101908051612a78929160200190613422565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191674010000000000000000000000000000000000000000836002811115612ba157fe5b02179055505050508092505b5050979650505050505050565b6000806000612bcc6001878787612edc565b9250846001604060020a0316866001604060020a03161415612bed57612c90565b821515612bf957612c90565b612c0286612852565b9150612c0d85612852565b825490915083901015612c1f57600080fd5b815483900382558054830180825583901015612c3a57600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a3612c8e6000878786612edc565b505b505050505050565b600080806001604060020a0384161515612cb55760009250612d59565b612cbe84612852565b6002810154909250612cd8906001604060020a031661280c565b90506000815460ff166002811115612cec57fe5b1415612cfa57839250612d59565b6002815460ff166002811115612d0c57fe5b14612d1357fe5b6002820154612d2a906001604060020a0316610a87565b1515612d3857839250612d59565b6002820154612d569060c060020a90046001604060020a0316612c98565b92505b5050919050565b612d68613284565b612d7a82600160a060020a0316612f02565b92915050565b600080600283516002811115612d9257fe5b14612d9957fe5b82606001516001604060020a03161515612db65760019150610b28565b612dc3836060015161280c565b9050612dea816101006040519081016040528154909190829060ff16600281111561182857fe5b6001019392505050565b600080600160a060020a0383161515612e105760009150610b28565b50506000903b1190565b612e22613284565b612d7a82612f02565b60035415612e3857600080fd5b612e40612f49565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515612eb857600080fd5b6102c65a03f11515612ec957600080fd5b50505060405180519250829150505b5090565b80612eea8585808685612f4d565b9050612ef98584868685612f4d565b95945050505050565b612f0a613284565b6001604051805910612f195750595b908082528060200260200182016040525090508181600081518110612f3a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a031614612f7457610100612f77565b60005b61ffff169250849350612f8988612852565b60028101546003820154919350612fbb918b916001604060020a0316908a908a908890600160a060020a03168a6130bf565b9350600090505b60018201546001604060020a038216101561304e576130448983600101836001604060020a0316815481101515612ff557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a6130bf565b9350600101612fc2565b60028201546000680100000000000000009091046001604060020a031611156130b357600282015460038301546130b0918b91680100000000000000009091046001604060020a0316908a908a9060ff890190600160a060020a03168a6130bf565b93505b50505095945050505050565b806000806130cc8961280c565b600181015490915069010000000000000000009004600160a060020a0316158015906130f85750600083115b15612bad5789156131d057600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b151561319f57600080fd5b6102c65a03f115156131b057600080fd5b5050506040518051925050828211156131c857600080fd5b819250612bad565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b151561326357600080fd5b6102c65a03f1151561327457600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b61010060405190810160405280600081526020016132b2613284565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611fab57600402816004028360005260206000209182019101611fab91906134d6565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061334f57805160ff191683800117855561337c565b8280016001018555821561337c579182015b8281111561337c578251825591602001919060010190613361565b50612ed892915061353d565b815481835581811511611fab57600402816004028360005260206000209182019101611fab9190613557565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106133f55782800160ff1982351617855561337c565b8280016001018555821561337c579182015b8281111561337c578235825591602001919060010190613407565b828054828255906000526020600020906003016004900481019282156134ca5791602002820160005b8382111561349557835183826101000a8154816001604060020a0302191690836001604060020a03160217905550926020019260080160208160070104928301926001030261344b565b80156134c85782816101000a8154906001604060020a030219169055600801602081600701049283019260010302613495565b505b50612ed89291506135a7565b610b5891905b80821115612ed85780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061352660028301826135cc565b6135346003830160006135cc565b506004016134dc565b610b5891905b80821115612ed85760008155600101613543565b610b5891905b80821115612ed85760008082556135776001830182613613565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff1916905560040161355d565b610b5891905b80821115612ed857805467ffffffffffffffff191681556001016135ad565b50805460018160011615610100020316600290046000825580601f106135f25750613610565b601f016020900490600052602060002090810190613610919061353d565b50565b508054600082556003016004900490600052602060002090810190613610919061353d5600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820710d619ac7121c5adf1629f9fe7074d333ce6b21313c6e16596b118218e6fbcd0029","runtimeBytecode":"6060604052600436106101be5763ffffffff60e060020a600035041663178e607981146101c35780631c8e8568146101e85780632101a6ad1461020f57806324fea3b01461022e5780632a8ec8cc146102415780632f6b64ca1461025457806332ce8ebc1461031057806332f0a3b514610330578063387402911461035f5780633f657a46146103775780634eafbcd51461040557806350f8a8031461042457806352dc7dcc1461045f5780635503d9ba146104a157806360b1e057146104b45780636293c702146104c75780636e802c6a146104e657806372116e92146105a057806379f4542e146105f15780637e7db6e1146106105780637f61fa931461062f57806380afdea81461067157806381ea4408146106845780638322fff2146106a35780638b3dd749146106b65780639b3fdf4c146106c95780639d4941d8146106dc578063a1658fad146106fb578063b12b5f761461075e578063c4d66de814610774578063c8ae070f14610793578063cc19ecf7146107a9578063d4aae0c4146107f5578063db7c231414610808578063eba8ba0614610854578063f6b24b1c146109aa578063f92a79ff146109f6578063fbfa77cf14610a47575b600080fd5b34156101ce57600080fd5b6101d6610a5a565b60405190815260200160405180910390f35b34156101f357600080fd5b6101fb610a7e565b604051901515815260200160405180910390f35b341561021a57600080fd5b6101fb6001604060020a0360043516610a87565b341561023957600080fd5b6101d6610b2e565b341561024c57600080fd5b6101d6610b50565b341561025f57600080fd5b6102796001604060020a0360043581169060243516610b5b565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156102d35780820151838201526020016102bb565b50505050905090810190601f1680156103005780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b341561031b57600080fd5b61032e6004803560248101910135610c89565b005b341561033b57600080fd5b610343610d23565b604051600160a060020a03909116815260200160405180910390f35b341561036a57600080fd5b61032e6004351515610da3565b341561038257600080fd5b6103966001604060020a0360043516610e09565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156103ea57fe5b60ff1681526020019850505050505050505060405180910390f35b341561041057600080fd5b6101fb600160a060020a0360043516610fa9565b341561042f57600080fd5b6104436001604060020a0360043516611020565b6040516001604060020a03909116815260200160405180910390f35b341561046a57600080fd5b61044360246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a036064351661123d565b34156104ac57600080fd5b6101d66114cf565b34156104bf57600080fd5b6101d66114d9565b34156104d257600080fd5b61032e600160a060020a03600435166114fd565b34156104f157600080fd5b61044360048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a0316925061155e915050565b34156105ab57600080fd5b6104436024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a435166117d0565b34156105fc57600080fd5b61032e600160a060020a0360043516611c87565b341561061b57600080fd5b6101fb600160a060020a0360043516611cff565b341561063a57600080fd5b61044360246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516611d05565b341561067c57600080fd5b6101d6611d81565b341561068f57600080fd5b6101d6600160a060020a0360043516611d87565b34156106ae57600080fd5b610343611e09565b34156106c157600080fd5b6101d6611e0e565b34156106d457600080fd5b6101d6611e14565b34156106e757600080fd5b61032e600160a060020a0360043516611e38565b341561070657600080fd5b6101fb60048035600160a060020a0316906024803591906064906044359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650611fb095505050505050565b341561076957600080fd5b61032e6004356120ee565b341561077f57600080fd5b61032e600160a060020a0360043516612146565b341561079e57600080fd5b61032e6004356121af565b34156107b457600080fd5b61032e600480356001604060020a039081169160248035600160a060020a03169260443580830193908101359260643590810192910135906084351661221e565b341561080057600080fd5b610343612327565b341561081357600080fd5b61032e600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612336565b341561085f57600080fd5b6108736001604060020a036004351661243f565b6040518089600281111561088357fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b838110156109045780820151838201526020016108ec565b50505050905090810190601f1680156109315780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561096757808201518382015260200161094f565b50505050905090810190601f1680156109945780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b34156109b557600080fd5b61032e600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612613565b3415610a0157600080fd5b61034360046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061271c95505050505050565b3415610a5257600080fd5b6103436127f8565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610a938361280c565b90506000815460ff166002811115610aa757fe5b1415610ab65760009150610b28565b6002815460ff166002811115610ac857fe5b14610acf57fe5b600181015468010000000000000000900460ff1615610af15760019150610b28565b60018101546001604060020a03161515610b0e5760009150610b28565b6001810154610b25906001604060020a0316610a87565b91505b50919050565b6040516000805160206136398339815191528152601301604051809103902081565b606554600019015b90565b600080610b66613284565b600080610b7287612852565b915081600101600187036001604060020a0316815481101515610b9157fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450610bc58561280c565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c795780601f10610c4e57610100808354040283529160200191610c79565b820191906000526020600020905b815481529060010190602001808311610c5c57829003601f168201915b5050505050925050509250925092565b600060405160008051602061363983398151915281526013016040518091039020610cd433826000604051805910610cbe5750595b9080825280602002602001820160405250611fb0565b1515610cdf57600080fd5b600091505b60ff821683901015610d1d57610d12848460ff8516818110610d0257fe5b90506020020135600019166121af565b600190910190610ce4565b50505050565b60008054600160a060020a03161515610d3b57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610d8457600080fd5b6102c65a03f11515610d9557600080fd5b505050604051805191505090565b60405160008051602061363983398151915281526013016040518091039020610deb33826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b1515610df657600080fd5b506069805460ff19169115919091179055565b600080600080600080600080610e1d613296565b610e268a612852565b61010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015610ebe57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610e7b5790505b50505091835250506002828101546001604060020a0380821660208501526801000000000000000082048116604085015270010000000000000000000000000000000082048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019174010000000000000000000000000000000000000000900460ff1690811115610f5757fe5b6002811115610f6257fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b606954600090819060ff1680610fc65750600160a060020a038316155b15610fd45760019150610b28565b600160a060020a03831660009081526068602052604090205460ff1615610ffe5760019150610b28565b61100783611d87565b60009081526067602052604090205460ff169392505050565b60008060008061102f85612852565b92506000600384015474010000000000000000000000000000000000000000900460ff16600281111561105e57fe5b1461106b57849350611235565b60028301546000680100000000000000009091046001604060020a03161180156110bc5750600283015470010000000000000000000000000000000090046001604060020a03166110ba612883565b115b15611204576002830154600184018054611188926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561115457602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116111115790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682612887565b60028401549092506111e4906801000000000000000090046001604060020a031660006040518059106111b85750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682612887565b90506111f585828560000154612bba565b80945061120185612852565b92505b61120d85612c98565b90506001604060020a03808216908616146112315761123185828560000154612bba565b8093505b505050919050565b600061124882610fa9565b151561125357600080fd5b506064805490816001810161126883826132e2565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561135957fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161144f92916020019061330e565b5060e08201518160030190805161146a92916020019061330e565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206136398339815191528152601301604051809103902061152582612d60565b611530338383611fb0565b151561153b57600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b600061156982610fa9565b151561157457600080fd5b506064805490816001810161158983826132e2565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff1916600183600281111561160657fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c0820151816002019080516116fc92916020019061330e565b5060e08201518160030190805161171792916020019061330e565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b8381101561178d578082015183820152602001611775565b50505050905090810190601f1680156117ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b6000806117dc83610fa9565b15156117e757600080fd5b6001604060020a03851615611a09576117ff8561280c565b905060146119f6826101006040519081016040528154909190829060ff16600281111561182857fe5b600281111561183357fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a03908116604080870191909152600180880154928316606088015268010000000000000000830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156119465780601f1061191b57610100808354040283529160200191611946565b820191906000526020600020905b81548152906001019060200180831161192957829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119e85780601f106119bd576101008083540402835291602001916119e8565b820191906000526020600020905b8154815290600101906020018083116119cb57829003601f168201915b505050505081525050612d80565b6001604060020a031610611a0957600080fd5b6064805492508260018101611a1e83826132e2565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b0e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0492916020019061330e565b5060e082015181600301908051611c1f92916020019061330e565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60405160008051602061363983398151915281526013016040518091039020611ccf33826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b1515611cda57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b6000611d763388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050868661155e565b979650505050505050565b60015481565b6000611d91613284565b823b604051915080825280600060208401863c50806040518082805190602001908083835b60208310611dd55780518252601f199092019160209182019101611db6565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080611e4483611cff565b1515611e4f57600080fd5b611e57610d23565b9150611e6282612df4565b1515611e6d57600080fd5b600160a060020a0383161515611ebf5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515611eba57600080fd5b611fab565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515611f1657600080fd5b6102c65a03f11515611f2757600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515611f8f57600080fd5b6102c65a03f11515611fa057600080fd5b505050604051805150505b505050565b6000611fba613284565b60008084511115611fd357835160200290508391508082525b600054600160a060020a031615806120e4575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561207a578082015183820152602001612062565b50505050905090810190601f1680156120a75780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156120c857600080fd5b6102c65a03f115156120d957600080fd5b505050604051805190505b9695505050505050565b6040516000805160206136398339815191528152601301604051809103902061211682612e1a565b612121338383611fb0565b151561212c57600080fd5b50506000908152606760205260409020805460ff19169055565b6003541561215357600080fd5b600160a060020a038116151561216857600080fd5b612170612e2b565b6069805461010060a860020a031916610100600160a060020a03841602179055600161219d6064826132e2565b5060016121ab606582613388565b5050565b604051600080516020613639833981519152815260130160405180910390206121f733826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b151561220257600080fd5b506000908152606760205260409020805460ff19166001179055565b60006122298861280c565b805490915033600160a060020a03908116610100909204161461224b57600080fd5b6001815460ff16600281111561225d57fe5b1461226757600080fd5b805461010060a860020a031916610100600160a060020a038916021781556122936002820187876133b4565b506122a26003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600054600160a060020a031681565b60006123418861280c565b805490915033600160a060020a03908116610100909204161461236357600080fd5b6000815460ff16600281111561237557fe5b1461237f57600080fd5b805461010060a860020a031916610100600160a060020a038916021781556123ab6002820187876133b4565b506123ba6003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60008061244a613284565b612452613284565b60008060008060006124638a61280c565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f820181900481020160405190810160405280929190818152602001828054600181600116156101000203166002900480156125185780601f106124ed57610100808354040283529160200191612518565b820191906000526020600020905b8154815290600101906020018083116124fb57829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156125b75780601f1061258c576101008083540402835291602001916125b7565b820191906000526020600020905b81548152906001019060200180831161259a57829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a5083169850505068010000000000000000810460ff16955069010000000000000000009004600160a060020a03169350915050565b600061261e8861280c565b805490915033600160a060020a03908116610100909204161461264057600080fd5b6002815460ff16600281111561265257fe5b1461265c57600080fd5b805461010060a860020a031916610100600160a060020a038916021781556126886002820187876133b4565b506126976003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000612726612e45565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561278d578082015183820152602001612775565b50505050905090810190601f1680156127ba5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156127d857600080fd5b6102c65a03f115156127e957600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061282657600080fd5b606480546001604060020a03841690811061283d57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061286c57600080fd5b606580546001604060020a03841690811061283d57fe5b4290565b6000806000888a898989898960405180888051906020019060200280838360005b838110156128c05780820151838201526020016128a8565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561292a57fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a03909116915081111561299457809250612bad565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016129d48382613388565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a03168152602001886002811115612a5557fe5b905291905081518155602082015181600101908051612a78929160200190613422565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191674010000000000000000000000000000000000000000836002811115612ba157fe5b02179055505050508092505b5050979650505050505050565b6000806000612bcc6001878787612edc565b9250846001604060020a0316866001604060020a03161415612bed57612c90565b821515612bf957612c90565b612c0286612852565b9150612c0d85612852565b825490915083901015612c1f57600080fd5b815483900382558054830180825583901015612c3a57600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a3612c8e6000878786612edc565b505b505050505050565b600080806001604060020a0384161515612cb55760009250612d59565b612cbe84612852565b6002810154909250612cd8906001604060020a031661280c565b90506000815460ff166002811115612cec57fe5b1415612cfa57839250612d59565b6002815460ff166002811115612d0c57fe5b14612d1357fe5b6002820154612d2a906001604060020a0316610a87565b1515612d3857839250612d59565b6002820154612d569060c060020a90046001604060020a0316612c98565b92505b5050919050565b612d68613284565b612d7a82600160a060020a0316612f02565b92915050565b600080600283516002811115612d9257fe5b14612d9957fe5b82606001516001604060020a03161515612db65760019150610b28565b612dc3836060015161280c565b9050612dea816101006040519081016040528154909190829060ff16600281111561182857fe5b6001019392505050565b600080600160a060020a0383161515612e105760009150610b28565b50506000903b1190565b612e22613284565b612d7a82612f02565b60035415612e3857600080fd5b612e40612f49565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515612eb857600080fd5b6102c65a03f11515612ec957600080fd5b50505060405180519250829150505b5090565b80612eea8585808685612f4d565b9050612ef98584868685612f4d565b95945050505050565b612f0a613284565b6001604051805910612f195750595b908082528060200260200182016040525090508181600081518110612f3a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a031614612f7457610100612f77565b60005b61ffff169250849350612f8988612852565b60028101546003820154919350612fbb918b916001604060020a0316908a908a908890600160a060020a03168a6130bf565b9350600090505b60018201546001604060020a038216101561304e576130448983600101836001604060020a0316815481101515612ff557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a6130bf565b9350600101612fc2565b60028201546000680100000000000000009091046001604060020a031611156130b357600282015460038301546130b0918b91680100000000000000009091046001604060020a0316908a908a9060ff890190600160a060020a03168a6130bf565b93505b50505095945050505050565b806000806130cc8961280c565b600181015490915069010000000000000000009004600160a060020a0316158015906130f85750600083115b15612bad5789156131d057600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b151561319f57600080fd5b6102c65a03f115156131b057600080fd5b5050506040518051925050828211156131c857600080fd5b819250612bad565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b151561326357600080fd5b6102c65a03f1151561327457600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b61010060405190810160405280600081526020016132b2613284565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611fab57600402816004028360005260206000209182019101611fab91906134d6565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061334f57805160ff191683800117855561337c565b8280016001018555821561337c579182015b8281111561337c578251825591602001919060010190613361565b50612ed892915061353d565b815481835581811511611fab57600402816004028360005260206000209182019101611fab9190613557565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106133f55782800160ff1982351617855561337c565b8280016001018555821561337c579182015b8281111561337c578235825591602001919060010190613407565b828054828255906000526020600020906003016004900481019282156134ca5791602002820160005b8382111561349557835183826101000a8154816001604060020a0302191690836001604060020a03160217905550926020019260080160208160070104928301926001030261344b565b80156134c85782816101000a8154906001604060020a030219169055600801602081600701049283019260010302613495565b505b50612ed89291506135a7565b610b5891905b80821115612ed85780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061352660028301826135cc565b6135346003830160006135cc565b506004016134dc565b610b5891905b80821115612ed85760008155600101613543565b610b5891905b80821115612ed85760008082556135776001830182613613565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff1916905560040161355d565b610b5891905b80821115612ed857805467ffffffffffffffff191681556001016135ad565b50805460018160011615610100020316600290046000825580601f106135f25750613610565b601f016020900490600052602060002090810190613610919061353d565b50565b508054600082556003016004900490600052602060002090810190613610919061353d5600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820710d619ac7121c5adf1629f9fe7074d333ce6b21313c6e16596b118218e6fbcd0029","realRuntimeBytecode":"6060604052600436106101be5763ffffffff60e060020a600035041663178e607981146101c35780631c8e8568146101e85780632101a6ad1461020f57806324fea3b01461022e5780632a8ec8cc146102415780632f6b64ca1461025457806332ce8ebc1461031057806332f0a3b514610330578063387402911461035f5780633f657a46146103775780634eafbcd51461040557806350f8a8031461042457806352dc7dcc1461045f5780635503d9ba146104a157806360b1e057146104b45780636293c702146104c75780636e802c6a146104e657806372116e92146105a057806379f4542e146105f15780637e7db6e1146106105780637f61fa931461062f57806380afdea81461067157806381ea4408146106845780638322fff2146106a35780638b3dd749146106b65780639b3fdf4c146106c95780639d4941d8146106dc578063a1658fad146106fb578063b12b5f761461075e578063c4d66de814610774578063c8ae070f14610793578063cc19ecf7146107a9578063d4aae0c4146107f5578063db7c231414610808578063eba8ba0614610854578063f6b24b1c146109aa578063f92a79ff146109f6578063fbfa77cf14610a47575b600080fd5b34156101ce57600080fd5b6101d6610a5a565b60405190815260200160405180910390f35b34156101f357600080fd5b6101fb610a7e565b604051901515815260200160405180910390f35b341561021a57600080fd5b6101fb6001604060020a0360043516610a87565b341561023957600080fd5b6101d6610b2e565b341561024c57600080fd5b6101d6610b50565b341561025f57600080fd5b6102796001604060020a0360043581169060243516610b5b565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156102d35780820151838201526020016102bb565b50505050905090810190601f1680156103005780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b341561031b57600080fd5b61032e6004803560248101910135610c89565b005b341561033b57600080fd5b610343610d23565b604051600160a060020a03909116815260200160405180910390f35b341561036a57600080fd5b61032e6004351515610da3565b341561038257600080fd5b6103966001604060020a0360043516610e09565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156103ea57fe5b60ff1681526020019850505050505050505060405180910390f35b341561041057600080fd5b6101fb600160a060020a0360043516610fa9565b341561042f57600080fd5b6104436001604060020a0360043516611020565b6040516001604060020a03909116815260200160405180910390f35b341561046a57600080fd5b61044360246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a036064351661123d565b34156104ac57600080fd5b6101d66114cf565b34156104bf57600080fd5b6101d66114d9565b34156104d257600080fd5b61032e600160a060020a03600435166114fd565b34156104f157600080fd5b61044360048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a0316925061155e915050565b34156105ab57600080fd5b6104436024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a435166117d0565b34156105fc57600080fd5b61032e600160a060020a0360043516611c87565b341561061b57600080fd5b6101fb600160a060020a0360043516611cff565b341561063a57600080fd5b61044360246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516611d05565b341561067c57600080fd5b6101d6611d81565b341561068f57600080fd5b6101d6600160a060020a0360043516611d87565b34156106ae57600080fd5b610343611e09565b34156106c157600080fd5b6101d6611e0e565b34156106d457600080fd5b6101d6611e14565b34156106e757600080fd5b61032e600160a060020a0360043516611e38565b341561070657600080fd5b6101fb60048035600160a060020a0316906024803591906064906044359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650611fb095505050505050565b341561076957600080fd5b61032e6004356120ee565b341561077f57600080fd5b61032e600160a060020a0360043516612146565b341561079e57600080fd5b61032e6004356121af565b34156107b457600080fd5b61032e600480356001604060020a039081169160248035600160a060020a03169260443580830193908101359260643590810192910135906084351661221e565b341561080057600080fd5b610343612327565b341561081357600080fd5b61032e600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612336565b341561085f57600080fd5b6108736001604060020a036004351661243f565b6040518089600281111561088357fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b838110156109045780820151838201526020016108ec565b50505050905090810190601f1680156109315780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561096757808201518382015260200161094f565b50505050905090810190601f1680156109945780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b34156109b557600080fd5b61032e600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612613565b3415610a0157600080fd5b61034360046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061271c95505050505050565b3415610a5257600080fd5b6103436127f8565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610a938361280c565b90506000815460ff166002811115610aa757fe5b1415610ab65760009150610b28565b6002815460ff166002811115610ac857fe5b14610acf57fe5b600181015468010000000000000000900460ff1615610af15760019150610b28565b60018101546001604060020a03161515610b0e5760009150610b28565b6001810154610b25906001604060020a0316610a87565b91505b50919050565b6040516000805160206136398339815191528152601301604051809103902081565b606554600019015b90565b600080610b66613284565b600080610b7287612852565b915081600101600187036001604060020a0316815481101515610b9157fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450610bc58561280c565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c795780601f10610c4e57610100808354040283529160200191610c79565b820191906000526020600020905b815481529060010190602001808311610c5c57829003601f168201915b5050505050925050509250925092565b600060405160008051602061363983398151915281526013016040518091039020610cd433826000604051805910610cbe5750595b9080825280602002602001820160405250611fb0565b1515610cdf57600080fd5b600091505b60ff821683901015610d1d57610d12848460ff8516818110610d0257fe5b90506020020135600019166121af565b600190910190610ce4565b50505050565b60008054600160a060020a03161515610d3b57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610d8457600080fd5b6102c65a03f11515610d9557600080fd5b505050604051805191505090565b60405160008051602061363983398151915281526013016040518091039020610deb33826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b1515610df657600080fd5b506069805460ff19169115919091179055565b600080600080600080600080610e1d613296565b610e268a612852565b61010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015610ebe57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610e7b5790505b50505091835250506002828101546001604060020a0380821660208501526801000000000000000082048116604085015270010000000000000000000000000000000082048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019174010000000000000000000000000000000000000000900460ff1690811115610f5757fe5b6002811115610f6257fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b606954600090819060ff1680610fc65750600160a060020a038316155b15610fd45760019150610b28565b600160a060020a03831660009081526068602052604090205460ff1615610ffe5760019150610b28565b61100783611d87565b60009081526067602052604090205460ff169392505050565b60008060008061102f85612852565b92506000600384015474010000000000000000000000000000000000000000900460ff16600281111561105e57fe5b1461106b57849350611235565b60028301546000680100000000000000009091046001604060020a03161180156110bc5750600283015470010000000000000000000000000000000090046001604060020a03166110ba612883565b115b15611204576002830154600184018054611188926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561115457602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116111115790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682612887565b60028401549092506111e4906801000000000000000090046001604060020a031660006040518059106111b85750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682612887565b90506111f585828560000154612bba565b80945061120185612852565b92505b61120d85612c98565b90506001604060020a03808216908616146112315761123185828560000154612bba565b8093505b505050919050565b600061124882610fa9565b151561125357600080fd5b506064805490816001810161126883826132e2565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561135957fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161144f92916020019061330e565b5060e08201518160030190805161146a92916020019061330e565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206136398339815191528152601301604051809103902061152582612d60565b611530338383611fb0565b151561153b57600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b600061156982610fa9565b151561157457600080fd5b506064805490816001810161158983826132e2565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff1916600183600281111561160657fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c0820151816002019080516116fc92916020019061330e565b5060e08201518160030190805161171792916020019061330e565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b8381101561178d578082015183820152602001611775565b50505050905090810190601f1680156117ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b6000806117dc83610fa9565b15156117e757600080fd5b6001604060020a03851615611a09576117ff8561280c565b905060146119f6826101006040519081016040528154909190829060ff16600281111561182857fe5b600281111561183357fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a03908116604080870191909152600180880154928316606088015268010000000000000000830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156119465780601f1061191b57610100808354040283529160200191611946565b820191906000526020600020905b81548152906001019060200180831161192957829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119e85780601f106119bd576101008083540402835291602001916119e8565b820191906000526020600020905b8154815290600101906020018083116119cb57829003601f168201915b505050505081525050612d80565b6001604060020a031610611a0957600080fd5b6064805492508260018101611a1e83826132e2565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b0e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0492916020019061330e565b5060e082015181600301908051611c1f92916020019061330e565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60405160008051602061363983398151915281526013016040518091039020611ccf33826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b1515611cda57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b6000611d763388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050868661155e565b979650505050505050565b60015481565b6000611d91613284565b823b604051915080825280600060208401863c50806040518082805190602001908083835b60208310611dd55780518252601f199092019160209182019101611db6565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080611e4483611cff565b1515611e4f57600080fd5b611e57610d23565b9150611e6282612df4565b1515611e6d57600080fd5b600160a060020a0383161515611ebf5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515611eba57600080fd5b611fab565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515611f1657600080fd5b6102c65a03f11515611f2757600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515611f8f57600080fd5b6102c65a03f11515611fa057600080fd5b505050604051805150505b505050565b6000611fba613284565b60008084511115611fd357835160200290508391508082525b600054600160a060020a031615806120e4575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561207a578082015183820152602001612062565b50505050905090810190601f1680156120a75780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156120c857600080fd5b6102c65a03f115156120d957600080fd5b505050604051805190505b9695505050505050565b6040516000805160206136398339815191528152601301604051809103902061211682612e1a565b612121338383611fb0565b151561212c57600080fd5b50506000908152606760205260409020805460ff19169055565b6003541561215357600080fd5b600160a060020a038116151561216857600080fd5b612170612e2b565b6069805461010060a860020a031916610100600160a060020a03841602179055600161219d6064826132e2565b5060016121ab606582613388565b5050565b604051600080516020613639833981519152815260130160405180910390206121f733826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b151561220257600080fd5b506000908152606760205260409020805460ff19166001179055565b60006122298861280c565b805490915033600160a060020a03908116610100909204161461224b57600080fd5b6001815460ff16600281111561225d57fe5b1461226757600080fd5b805461010060a860020a031916610100600160a060020a038916021781556122936002820187876133b4565b506122a26003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600054600160a060020a031681565b60006123418861280c565b805490915033600160a060020a03908116610100909204161461236357600080fd5b6000815460ff16600281111561237557fe5b1461237f57600080fd5b805461010060a860020a031916610100600160a060020a038916021781556123ab6002820187876133b4565b506123ba6003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60008061244a613284565b612452613284565b60008060008060006124638a61280c565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f820181900481020160405190810160405280929190818152602001828054600181600116156101000203166002900480156125185780601f106124ed57610100808354040283529160200191612518565b820191906000526020600020905b8154815290600101906020018083116124fb57829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156125b75780601f1061258c576101008083540402835291602001916125b7565b820191906000526020600020905b81548152906001019060200180831161259a57829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a5083169850505068010000000000000000810460ff16955069010000000000000000009004600160a060020a03169350915050565b600061261e8861280c565b805490915033600160a060020a03908116610100909204161461264057600080fd5b6002815460ff16600281111561265257fe5b1461265c57600080fd5b805461010060a860020a031916610100600160a060020a038916021781556126886002820187876133b4565b506126976003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000612726612e45565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561278d578082015183820152602001612775565b50505050905090810190601f1680156127ba5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156127d857600080fd5b6102c65a03f115156127e957600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061282657600080fd5b606480546001604060020a03841690811061283d57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061286c57600080fd5b606580546001604060020a03841690811061283d57fe5b4290565b6000806000888a898989898960405180888051906020019060200280838360005b838110156128c05780820151838201526020016128a8565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561292a57fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a03909116915081111561299457809250612bad565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016129d48382613388565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a03168152602001886002811115612a5557fe5b905291905081518155602082015181600101908051612a78929160200190613422565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191674010000000000000000000000000000000000000000836002811115612ba157fe5b02179055505050508092505b5050979650505050505050565b6000806000612bcc6001878787612edc565b9250846001604060020a0316866001604060020a03161415612bed57612c90565b821515612bf957612c90565b612c0286612852565b9150612c0d85612852565b825490915083901015612c1f57600080fd5b815483900382558054830180825583901015612c3a57600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a3612c8e6000878786612edc565b505b505050505050565b600080806001604060020a0384161515612cb55760009250612d59565b612cbe84612852565b6002810154909250612cd8906001604060020a031661280c565b90506000815460ff166002811115612cec57fe5b1415612cfa57839250612d59565b6002815460ff166002811115612d0c57fe5b14612d1357fe5b6002820154612d2a906001604060020a0316610a87565b1515612d3857839250612d59565b6002820154612d569060c060020a90046001604060020a0316612c98565b92505b5050919050565b612d68613284565b612d7a82600160a060020a0316612f02565b92915050565b600080600283516002811115612d9257fe5b14612d9957fe5b82606001516001604060020a03161515612db65760019150610b28565b612dc3836060015161280c565b9050612dea816101006040519081016040528154909190829060ff16600281111561182857fe5b6001019392505050565b600080600160a060020a0383161515612e105760009150610b28565b50506000903b1190565b612e22613284565b612d7a82612f02565b60035415612e3857600080fd5b612e40612f49565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515612eb857600080fd5b6102c65a03f11515612ec957600080fd5b50505060405180519250829150505b5090565b80612eea8585808685612f4d565b9050612ef98584868685612f4d565b95945050505050565b612f0a613284565b6001604051805910612f195750595b908082528060200260200182016040525090508181600081518110612f3a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a031614612f7457610100612f77565b60005b61ffff169250849350612f8988612852565b60028101546003820154919350612fbb918b916001604060020a0316908a908a908890600160a060020a03168a6130bf565b9350600090505b60018201546001604060020a038216101561304e576130448983600101836001604060020a0316815481101515612ff557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a6130bf565b9350600101612fc2565b60028201546000680100000000000000009091046001604060020a031611156130b357600282015460038301546130b0918b91680100000000000000009091046001604060020a0316908a908a9060ff890190600160a060020a03168a6130bf565b93505b50505095945050505050565b806000806130cc8961280c565b600181015490915069010000000000000000009004600160a060020a0316158015906130f85750600083115b15612bad5789156131d057600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b151561319f57600080fd5b6102c65a03f115156131b057600080fd5b5050506040518051925050828211156131c857600080fd5b819250612bad565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b151561326357600080fd5b6102c65a03f1151561327457600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b61010060405190810160405280600081526020016132b2613284565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611fab57600402816004028360005260206000209182019101611fab91906134d6565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061334f57805160ff191683800117855561337c565b8280016001018555821561337c579182015b8281111561337c578251825591602001919060010190613361565b50612ed892915061353d565b815481835581811511611fab57600402816004028360005260206000209182019101611fab9190613557565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106133f55782800160ff1982351617855561337c565b8280016001018555821561337c579182015b8281111561337c578235825591602001919060010190613407565b828054828255906000526020600020906003016004900481019282156134ca5791602002820160005b8382111561349557835183826101000a8154816001604060020a0302191690836001604060020a03160217905550926020019260080160208160070104928301926001030261344b565b80156134c85782816101000a8154906001604060020a030219169055600801602081600701049283019260010302613495565b505b50612ed89291506135a7565b610b5891905b80821115612ed85780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061352660028301826135cc565b6135346003830160006135cc565b506004016134dc565b610b5891905b80821115612ed85760008155600101613543565b610b5891905b80821115612ed85760008082556135776001830182613613565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff1916905560040161355d565b610b5891905b80821115612ed857805467ffffffffffffffff191681556001016135ad565b50805460018160011615610100020316600290046000825580601f106135f25750613610565b601f016020900490600052602060002090810190613610919061353d565b50565b508054600082556003016004900490600052602060002090810190613610919061353d5600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820","linkReferences":{},"swarmHash":"710d619ac7121c5adf1629f9fe7074d333ce6b21313c6e16596b118218e6fbcd","gasEstimates":{"creation":{"codeDepositCost":"2797600","executionCost":"23266","totalCost":"2820866"},"external":{"APP_ADDR_NAMESPACE()":"236","ETH()":"820","EVMSCRIPT_REGISTRY_APP()":"786","EVMSCRIPT_REGISTRY_APP_ID()":"544","PLUGIN_MANAGER_ROLE()":"infinite","addDelegate(string,string,uint64,address)":"infinite","addGiver(address,string,string,uint64,address)":"infinite","addGiver(string,string,uint64,address)":"infinite","addProject(string,string,address,uint64,uint64,address)":"infinite","addValidPluginContract(bytes32)":"infinite","addValidPluginContracts(bytes32[])":"infinite","addValidPluginInstance(address)":"infinite","allowRecoverability(address)":"743","appId()":"898","canPerform(address,bytes32,uint256[])":"infinite","getCodeHash(address)":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"964","getPledge(uint64)":"infinite","getPledgeAdmin(uint64)":"infinite","getPledgeDelegate(uint64,uint64)":"infinite","getRecoveryVault()":"infinite","initialize(address)":"infinite","isProjectCanceled(uint64)":"infinite","isValidPlugin(address)":"infinite","kernel()":"1293","normalizePledge(uint64)":"infinite","numberOfPledgeAdmins()":"731","numberOfPledges()":"534","removeValidPluginContract(bytes32)":"infinite","removeValidPluginInstance(address)":"infinite","transferToVault(address)":"infinite","updateDelegate(uint64,address,string,string,uint64)":"infinite","updateGiver(uint64,address,string,string,uint64)":"infinite","updateProject(uint64,address,string,string,uint64)":"infinite","useWhitelist(bool)":"infinite","vault()":"1414","whitelistDisabled()":"470"},"internal":{"_appendDelegate(uint64,uint256,uint64)":"infinite","_callPlugin(bool,uint64,uint64,uint64,uint64,address,uint256)":"infinite","_callPlugins(bool,uint64,uint64,uint256)":"infinite","_callPluginsPledge(bool,uint64,uint64,uint64,uint256)":"infinite","_checkAdminOwner(uint64)":"infinite","_doTransfer(uint64,uint64,uint256)":"infinite","_getOldestPledgeNotCanceled(uint64)":"infinite","_getTime()":"14","_maxCommitTime(struct LiquidPledgingStorage.Pledge memory)":"infinite","_proposeAssignProject(uint64,uint256,uint64)":"infinite","_transfer(uint64,uint64,uint256,uint64)":"infinite","_transferOwnershipToGiver(uint64,uint256,uint64)":"infinite","_transferOwnershipToProject(uint64,uint256,uint64)":"infinite","_undelegate(uint64,uint256,uint256)":"infinite"}},"functionHashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","PLUGIN_MANAGER_ROLE()":"24fea3b0","addDelegate(string,string,uint64,address)":"52dc7dcc","addGiver(address,string,string,uint64,address)":"6e802c6a","addGiver(string,string,uint64,address)":"7f61fa93","addProject(string,string,address,uint64,uint64,address)":"72116e92","addValidPluginContract(bytes32)":"c8ae070f","addValidPluginContracts(bytes32[])":"32ce8ebc","addValidPluginInstance(address)":"79f4542e","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","getCodeHash(address)":"81ea4408","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getPledge(uint64)":"3f657a46","getPledgeAdmin(uint64)":"eba8ba06","getPledgeDelegate(uint64,uint64)":"2f6b64ca","getRecoveryVault()":"32f0a3b5","initialize(address)":"c4d66de8","isProjectCanceled(uint64)":"2101a6ad","isValidPlugin(address)":"4eafbcd5","kernel()":"d4aae0c4","normalizePledge(uint64)":"50f8a803","numberOfPledgeAdmins()":"5503d9ba","numberOfPledges()":"2a8ec8cc","removeValidPluginContract(bytes32)":"b12b5f76","removeValidPluginInstance(address)":"6293c702","transferToVault(address)":"9d4941d8","updateDelegate(uint64,address,string,string,uint64)":"cc19ecf7","updateGiver(uint64,address,string,string,uint64)":"db7c2314","updateProject(uint64,address,string,string,uint64)":"f6b24b1c","useWhitelist(bool)":"38740291","vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"projectId","type":"uint64"}],"name":"isProjectCanceled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PLUGIN_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"numberOfPledges","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"idxDelegate","type":"uint64"}],"name":"getPledgeDelegate","outputs":[{"name":"idDelegate","type":"uint64"},{"name":"addr","type":"address"},{"name":"name","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"contractHashes","type":"bytes32[]"}],"name":"addValidPluginContracts","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"useWhitelist","type":"bool"}],"name":"useWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"getPledge","outputs":[{"name":"amount","type":"uint256"},{"name":"owner","type":"uint64"},{"name":"nDelegates","type":"uint64"},{"name":"intendedProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"oldPledge","type":"uint64"},{"name":"token","type":"address"},{"name":"pledgeState","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isValidPlugin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"normalizePledge","outputs":[{"name":"","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addDelegate","outputs":[{"name":"idDelegate","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"numberOfPledgeAdmins","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"removeValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"projectAdmin","type":"address"},{"name":"parentProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addProject","outputs":[{"name":"idProject","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"addValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getCodeHash","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"removeValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_vault","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"addValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idDelegate","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateDelegate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateGiver","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"idAdmin","type":"uint64"}],"name":"getPledgeAdmin","outputs":[{"name":"adminType","type":"uint8"},{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"parentProject","type":"uint64"},{"name":"canceled","type":"bool"},{"name":"plugin","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"uint256"},{"indexed":true,"name":"to","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint256"}],"name":"CancelProject","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectUpdated","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/LiquidPledgingBase.sol","originalFilename":"contracts/LiquidPledgingBase.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/LiquidPledgingBase.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"60606040526069805460ff19169055341561001957600080fd5b6136a4806100286000396000f3006060604052600436106101be5763ffffffff60e060020a600035041663178e607981146101c35780631c8e8568146101e85780632101a6ad1461020f57806324fea3b01461022e5780632a8ec8cc146102415780632f6b64ca1461025457806332ce8ebc1461031057806332f0a3b514610330578063387402911461035f5780633f657a46146103775780634eafbcd51461040557806350f8a8031461042457806352dc7dcc1461045f5780635503d9ba146104a157806360b1e057146104b45780636293c702146104c75780636e802c6a146104e657806372116e92146105a057806379f4542e146105f15780637e7db6e1146106105780637f61fa931461062f57806380afdea81461067157806381ea4408146106845780638322fff2146106a35780638b3dd749146106b65780639b3fdf4c146106c95780639d4941d8146106dc578063a1658fad146106fb578063b12b5f761461075e578063c4d66de814610774578063c8ae070f14610793578063cc19ecf7146107a9578063d4aae0c4146107f5578063db7c231414610808578063eba8ba0614610854578063f6b24b1c146109aa578063f92a79ff146109f6578063fbfa77cf14610a47575b600080fd5b34156101ce57600080fd5b6101d6610a5a565b60405190815260200160405180910390f35b34156101f357600080fd5b6101fb610a7e565b604051901515815260200160405180910390f35b341561021a57600080fd5b6101fb6001604060020a0360043516610a87565b341561023957600080fd5b6101d6610b2e565b341561024c57600080fd5b6101d6610b50565b341561025f57600080fd5b6102796001604060020a0360043581169060243516610b5b565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156102d35780820151838201526020016102bb565b50505050905090810190601f1680156103005780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b341561031b57600080fd5b61032e6004803560248101910135610c89565b005b341561033b57600080fd5b610343610d23565b604051600160a060020a03909116815260200160405180910390f35b341561036a57600080fd5b61032e6004351515610da3565b341561038257600080fd5b6103966001604060020a0360043516610e09565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156103ea57fe5b60ff1681526020019850505050505050505060405180910390f35b341561041057600080fd5b6101fb600160a060020a0360043516610fa9565b341561042f57600080fd5b6104436001604060020a0360043516611020565b6040516001604060020a03909116815260200160405180910390f35b341561046a57600080fd5b61044360246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a036064351661123d565b34156104ac57600080fd5b6101d66114cf565b34156104bf57600080fd5b6101d66114d9565b34156104d257600080fd5b61032e600160a060020a03600435166114fd565b34156104f157600080fd5b61044360048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a0316925061155e915050565b34156105ab57600080fd5b6104436024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a435166117d0565b34156105fc57600080fd5b61032e600160a060020a0360043516611c87565b341561061b57600080fd5b6101fb600160a060020a0360043516611cff565b341561063a57600080fd5b61044360246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516611d05565b341561067c57600080fd5b6101d6611d81565b341561068f57600080fd5b6101d6600160a060020a0360043516611d87565b34156106ae57600080fd5b610343611e09565b34156106c157600080fd5b6101d6611e0e565b34156106d457600080fd5b6101d6611e14565b34156106e757600080fd5b61032e600160a060020a0360043516611e38565b341561070657600080fd5b6101fb60048035600160a060020a0316906024803591906064906044359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650611fb095505050505050565b341561076957600080fd5b61032e6004356120ee565b341561077f57600080fd5b61032e600160a060020a0360043516612146565b341561079e57600080fd5b61032e6004356121af565b34156107b457600080fd5b61032e600480356001604060020a039081169160248035600160a060020a03169260443580830193908101359260643590810192910135906084351661221e565b341561080057600080fd5b610343612327565b341561081357600080fd5b61032e600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612336565b341561085f57600080fd5b6108736001604060020a036004351661243f565b6040518089600281111561088357fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b838110156109045780820151838201526020016108ec565b50505050905090810190601f1680156109315780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561096757808201518382015260200161094f565b50505050905090810190601f1680156109945780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b34156109b557600080fd5b61032e600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612613565b3415610a0157600080fd5b61034360046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061271c95505050505050565b3415610a5257600080fd5b6103436127f8565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610a938361280c565b90506000815460ff166002811115610aa757fe5b1415610ab65760009150610b28565b6002815460ff166002811115610ac857fe5b14610acf57fe5b600181015468010000000000000000900460ff1615610af15760019150610b28565b60018101546001604060020a03161515610b0e5760009150610b28565b6001810154610b25906001604060020a0316610a87565b91505b50919050565b6040516000805160206136398339815191528152601301604051809103902081565b606554600019015b90565b600080610b66613284565b600080610b7287612852565b915081600101600187036001604060020a0316815481101515610b9157fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450610bc58561280c565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c795780601f10610c4e57610100808354040283529160200191610c79565b820191906000526020600020905b815481529060010190602001808311610c5c57829003601f168201915b5050505050925050509250925092565b600060405160008051602061363983398151915281526013016040518091039020610cd433826000604051805910610cbe5750595b9080825280602002602001820160405250611fb0565b1515610cdf57600080fd5b600091505b60ff821683901015610d1d57610d12848460ff8516818110610d0257fe5b90506020020135600019166121af565b600190910190610ce4565b50505050565b60008054600160a060020a03161515610d3b57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610d8457600080fd5b6102c65a03f11515610d9557600080fd5b505050604051805191505090565b60405160008051602061363983398151915281526013016040518091039020610deb33826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b1515610df657600080fd5b506069805460ff19169115919091179055565b600080600080600080600080610e1d613296565b610e268a612852565b61010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015610ebe57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610e7b5790505b50505091835250506002828101546001604060020a0380821660208501526801000000000000000082048116604085015270010000000000000000000000000000000082048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019174010000000000000000000000000000000000000000900460ff1690811115610f5757fe5b6002811115610f6257fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b606954600090819060ff1680610fc65750600160a060020a038316155b15610fd45760019150610b28565b600160a060020a03831660009081526068602052604090205460ff1615610ffe5760019150610b28565b61100783611d87565b60009081526067602052604090205460ff169392505050565b60008060008061102f85612852565b92506000600384015474010000000000000000000000000000000000000000900460ff16600281111561105e57fe5b1461106b57849350611235565b60028301546000680100000000000000009091046001604060020a03161180156110bc5750600283015470010000000000000000000000000000000090046001604060020a03166110ba612883565b115b15611204576002830154600184018054611188926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561115457602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116111115790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682612887565b60028401549092506111e4906801000000000000000090046001604060020a031660006040518059106111b85750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682612887565b90506111f585828560000154612bba565b80945061120185612852565b92505b61120d85612c98565b90506001604060020a03808216908616146112315761123185828560000154612bba565b8093505b505050919050565b600061124882610fa9565b151561125357600080fd5b506064805490816001810161126883826132e2565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561135957fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161144f92916020019061330e565b5060e08201518160030190805161146a92916020019061330e565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206136398339815191528152601301604051809103902061152582612d60565b611530338383611fb0565b151561153b57600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b600061156982610fa9565b151561157457600080fd5b506064805490816001810161158983826132e2565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff1916600183600281111561160657fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c0820151816002019080516116fc92916020019061330e565b5060e08201518160030190805161171792916020019061330e565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b8381101561178d578082015183820152602001611775565b50505050905090810190601f1680156117ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b6000806117dc83610fa9565b15156117e757600080fd5b6001604060020a03851615611a09576117ff8561280c565b905060146119f6826101006040519081016040528154909190829060ff16600281111561182857fe5b600281111561183357fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a03908116604080870191909152600180880154928316606088015268010000000000000000830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156119465780601f1061191b57610100808354040283529160200191611946565b820191906000526020600020905b81548152906001019060200180831161192957829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119e85780601f106119bd576101008083540402835291602001916119e8565b820191906000526020600020905b8154815290600101906020018083116119cb57829003601f168201915b505050505081525050612d80565b6001604060020a031610611a0957600080fd5b6064805492508260018101611a1e83826132e2565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b0e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0492916020019061330e565b5060e082015181600301908051611c1f92916020019061330e565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60405160008051602061363983398151915281526013016040518091039020611ccf33826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b1515611cda57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b6000611d763388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050868661155e565b979650505050505050565b60015481565b6000611d91613284565b823b604051915080825280600060208401863c50806040518082805190602001908083835b60208310611dd55780518252601f199092019160209182019101611db6565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080611e4483611cff565b1515611e4f57600080fd5b611e57610d23565b9150611e6282612df4565b1515611e6d57600080fd5b600160a060020a0383161515611ebf5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515611eba57600080fd5b611fab565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515611f1657600080fd5b6102c65a03f11515611f2757600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515611f8f57600080fd5b6102c65a03f11515611fa057600080fd5b505050604051805150505b505050565b6000611fba613284565b60008084511115611fd357835160200290508391508082525b600054600160a060020a031615806120e4575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561207a578082015183820152602001612062565b50505050905090810190601f1680156120a75780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156120c857600080fd5b6102c65a03f115156120d957600080fd5b505050604051805190505b9695505050505050565b6040516000805160206136398339815191528152601301604051809103902061211682612e1a565b612121338383611fb0565b151561212c57600080fd5b50506000908152606760205260409020805460ff19169055565b6003541561215357600080fd5b600160a060020a038116151561216857600080fd5b612170612e2b565b6069805461010060a860020a031916610100600160a060020a03841602179055600161219d6064826132e2565b5060016121ab606582613388565b5050565b604051600080516020613639833981519152815260130160405180910390206121f733826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b151561220257600080fd5b506000908152606760205260409020805460ff19166001179055565b60006122298861280c565b805490915033600160a060020a03908116610100909204161461224b57600080fd5b6001815460ff16600281111561225d57fe5b1461226757600080fd5b805461010060a860020a031916610100600160a060020a038916021781556122936002820187876133b4565b506122a26003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600054600160a060020a031681565b60006123418861280c565b805490915033600160a060020a03908116610100909204161461236357600080fd5b6000815460ff16600281111561237557fe5b1461237f57600080fd5b805461010060a860020a031916610100600160a060020a038916021781556123ab6002820187876133b4565b506123ba6003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60008061244a613284565b612452613284565b60008060008060006124638a61280c565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f820181900481020160405190810160405280929190818152602001828054600181600116156101000203166002900480156125185780601f106124ed57610100808354040283529160200191612518565b820191906000526020600020905b8154815290600101906020018083116124fb57829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156125b75780601f1061258c576101008083540402835291602001916125b7565b820191906000526020600020905b81548152906001019060200180831161259a57829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a5083169850505068010000000000000000810460ff16955069010000000000000000009004600160a060020a03169350915050565b600061261e8861280c565b805490915033600160a060020a03908116610100909204161461264057600080fd5b6002815460ff16600281111561265257fe5b1461265c57600080fd5b805461010060a860020a031916610100600160a060020a038916021781556126886002820187876133b4565b506126976003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000612726612e45565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561278d578082015183820152602001612775565b50505050905090810190601f1680156127ba5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156127d857600080fd5b6102c65a03f115156127e957600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061282657600080fd5b606480546001604060020a03841690811061283d57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061286c57600080fd5b606580546001604060020a03841690811061283d57fe5b4290565b6000806000888a898989898960405180888051906020019060200280838360005b838110156128c05780820151838201526020016128a8565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561292a57fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a03909116915081111561299457809250612bad565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016129d48382613388565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a03168152602001886002811115612a5557fe5b905291905081518155602082015181600101908051612a78929160200190613422565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191674010000000000000000000000000000000000000000836002811115612ba157fe5b02179055505050508092505b5050979650505050505050565b6000806000612bcc6001878787612edc565b9250846001604060020a0316866001604060020a03161415612bed57612c90565b821515612bf957612c90565b612c0286612852565b9150612c0d85612852565b825490915083901015612c1f57600080fd5b815483900382558054830180825583901015612c3a57600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a3612c8e6000878786612edc565b505b505050505050565b600080806001604060020a0384161515612cb55760009250612d59565b612cbe84612852565b6002810154909250612cd8906001604060020a031661280c565b90506000815460ff166002811115612cec57fe5b1415612cfa57839250612d59565b6002815460ff166002811115612d0c57fe5b14612d1357fe5b6002820154612d2a906001604060020a0316610a87565b1515612d3857839250612d59565b6002820154612d569060c060020a90046001604060020a0316612c98565b92505b5050919050565b612d68613284565b612d7a82600160a060020a0316612f02565b92915050565b600080600283516002811115612d9257fe5b14612d9957fe5b82606001516001604060020a03161515612db65760019150610b28565b612dc3836060015161280c565b9050612dea816101006040519081016040528154909190829060ff16600281111561182857fe5b6001019392505050565b600080600160a060020a0383161515612e105760009150610b28565b50506000903b1190565b612e22613284565b612d7a82612f02565b60035415612e3857600080fd5b612e40612f49565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515612eb857600080fd5b6102c65a03f11515612ec957600080fd5b50505060405180519250829150505b5090565b80612eea8585808685612f4d565b9050612ef98584868685612f4d565b95945050505050565b612f0a613284565b6001604051805910612f195750595b908082528060200260200182016040525090508181600081518110612f3a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a031614612f7457610100612f77565b60005b61ffff169250849350612f8988612852565b60028101546003820154919350612fbb918b916001604060020a0316908a908a908890600160a060020a03168a6130bf565b9350600090505b60018201546001604060020a038216101561304e576130448983600101836001604060020a0316815481101515612ff557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a6130bf565b9350600101612fc2565b60028201546000680100000000000000009091046001604060020a031611156130b357600282015460038301546130b0918b91680100000000000000009091046001604060020a0316908a908a9060ff890190600160a060020a03168a6130bf565b93505b50505095945050505050565b806000806130cc8961280c565b600181015490915069010000000000000000009004600160a060020a0316158015906130f85750600083115b15612bad5789156131d057600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b151561319f57600080fd5b6102c65a03f115156131b057600080fd5b5050506040518051925050828211156131c857600080fd5b819250612bad565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b151561326357600080fd5b6102c65a03f1151561327457600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b61010060405190810160405280600081526020016132b2613284565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611fab57600402816004028360005260206000209182019101611fab91906134d6565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061334f57805160ff191683800117855561337c565b8280016001018555821561337c579182015b8281111561337c578251825591602001919060010190613361565b50612ed892915061353d565b815481835581811511611fab57600402816004028360005260206000209182019101611fab9190613557565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106133f55782800160ff1982351617855561337c565b8280016001018555821561337c579182015b8281111561337c578235825591602001919060010190613407565b828054828255906000526020600020906003016004900481019282156134ca5791602002820160005b8382111561349557835183826101000a8154816001604060020a0302191690836001604060020a03160217905550926020019260080160208160070104928301926001030261344b565b80156134c85782816101000a8154906001604060020a030219169055600801602081600701049283019260010302613495565b505b50612ed89291506135a7565b610b5891905b80821115612ed85780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061352660028301826135cc565b6135346003830160006135cc565b506004016134dc565b610b5891905b80821115612ed85760008155600101613543565b610b5891905b80821115612ed85760008082556135776001830182613613565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff1916905560040161355d565b610b5891905b80821115612ed857805467ffffffffffffffff191681556001016135ad565b50805460018160011615610100020316600290046000825580601f106135f25750613610565b601f016020900490600052602060002090810190613610919061353d565b50565b508054600082556003016004900490600052602060002090810190613610919061353d5600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820710d619ac7121c5adf1629f9fe7074d333ce6b21313c6e16596b118218e6fbcd0029","runtime_bytecode":"6060604052600436106101be5763ffffffff60e060020a600035041663178e607981146101c35780631c8e8568146101e85780632101a6ad1461020f57806324fea3b01461022e5780632a8ec8cc146102415780632f6b64ca1461025457806332ce8ebc1461031057806332f0a3b514610330578063387402911461035f5780633f657a46146103775780634eafbcd51461040557806350f8a8031461042457806352dc7dcc1461045f5780635503d9ba146104a157806360b1e057146104b45780636293c702146104c75780636e802c6a146104e657806372116e92146105a057806379f4542e146105f15780637e7db6e1146106105780637f61fa931461062f57806380afdea81461067157806381ea4408146106845780638322fff2146106a35780638b3dd749146106b65780639b3fdf4c146106c95780639d4941d8146106dc578063a1658fad146106fb578063b12b5f761461075e578063c4d66de814610774578063c8ae070f14610793578063cc19ecf7146107a9578063d4aae0c4146107f5578063db7c231414610808578063eba8ba0614610854578063f6b24b1c146109aa578063f92a79ff146109f6578063fbfa77cf14610a47575b600080fd5b34156101ce57600080fd5b6101d6610a5a565b60405190815260200160405180910390f35b34156101f357600080fd5b6101fb610a7e565b604051901515815260200160405180910390f35b341561021a57600080fd5b6101fb6001604060020a0360043516610a87565b341561023957600080fd5b6101d6610b2e565b341561024c57600080fd5b6101d6610b50565b341561025f57600080fd5b6102796001604060020a0360043581169060243516610b5b565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156102d35780820151838201526020016102bb565b50505050905090810190601f1680156103005780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b341561031b57600080fd5b61032e6004803560248101910135610c89565b005b341561033b57600080fd5b610343610d23565b604051600160a060020a03909116815260200160405180910390f35b341561036a57600080fd5b61032e6004351515610da3565b341561038257600080fd5b6103966001604060020a0360043516610e09565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156103ea57fe5b60ff1681526020019850505050505050505060405180910390f35b341561041057600080fd5b6101fb600160a060020a0360043516610fa9565b341561042f57600080fd5b6104436001604060020a0360043516611020565b6040516001604060020a03909116815260200160405180910390f35b341561046a57600080fd5b61044360246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a036064351661123d565b34156104ac57600080fd5b6101d66114cf565b34156104bf57600080fd5b6101d66114d9565b34156104d257600080fd5b61032e600160a060020a03600435166114fd565b34156104f157600080fd5b61044360048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a0316925061155e915050565b34156105ab57600080fd5b6104436024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a435166117d0565b34156105fc57600080fd5b61032e600160a060020a0360043516611c87565b341561061b57600080fd5b6101fb600160a060020a0360043516611cff565b341561063a57600080fd5b61044360246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516611d05565b341561067c57600080fd5b6101d6611d81565b341561068f57600080fd5b6101d6600160a060020a0360043516611d87565b34156106ae57600080fd5b610343611e09565b34156106c157600080fd5b6101d6611e0e565b34156106d457600080fd5b6101d6611e14565b34156106e757600080fd5b61032e600160a060020a0360043516611e38565b341561070657600080fd5b6101fb60048035600160a060020a0316906024803591906064906044359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650611fb095505050505050565b341561076957600080fd5b61032e6004356120ee565b341561077f57600080fd5b61032e600160a060020a0360043516612146565b341561079e57600080fd5b61032e6004356121af565b34156107b457600080fd5b61032e600480356001604060020a039081169160248035600160a060020a03169260443580830193908101359260643590810192910135906084351661221e565b341561080057600080fd5b610343612327565b341561081357600080fd5b61032e600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612336565b341561085f57600080fd5b6108736001604060020a036004351661243f565b6040518089600281111561088357fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b838110156109045780820151838201526020016108ec565b50505050905090810190601f1680156109315780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561096757808201518382015260200161094f565b50505050905090810190601f1680156109945780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b34156109b557600080fd5b61032e600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612613565b3415610a0157600080fd5b61034360046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061271c95505050505050565b3415610a5257600080fd5b6103436127f8565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610a938361280c565b90506000815460ff166002811115610aa757fe5b1415610ab65760009150610b28565b6002815460ff166002811115610ac857fe5b14610acf57fe5b600181015468010000000000000000900460ff1615610af15760019150610b28565b60018101546001604060020a03161515610b0e5760009150610b28565b6001810154610b25906001604060020a0316610a87565b91505b50919050565b6040516000805160206136398339815191528152601301604051809103902081565b606554600019015b90565b600080610b66613284565b600080610b7287612852565b915081600101600187036001604060020a0316815481101515610b9157fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450610bc58561280c565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c795780601f10610c4e57610100808354040283529160200191610c79565b820191906000526020600020905b815481529060010190602001808311610c5c57829003601f168201915b5050505050925050509250925092565b600060405160008051602061363983398151915281526013016040518091039020610cd433826000604051805910610cbe5750595b9080825280602002602001820160405250611fb0565b1515610cdf57600080fd5b600091505b60ff821683901015610d1d57610d12848460ff8516818110610d0257fe5b90506020020135600019166121af565b600190910190610ce4565b50505050565b60008054600160a060020a03161515610d3b57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610d8457600080fd5b6102c65a03f11515610d9557600080fd5b505050604051805191505090565b60405160008051602061363983398151915281526013016040518091039020610deb33826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b1515610df657600080fd5b506069805460ff19169115919091179055565b600080600080600080600080610e1d613296565b610e268a612852565b61010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015610ebe57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610e7b5790505b50505091835250506002828101546001604060020a0380821660208501526801000000000000000082048116604085015270010000000000000000000000000000000082048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019174010000000000000000000000000000000000000000900460ff1690811115610f5757fe5b6002811115610f6257fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b606954600090819060ff1680610fc65750600160a060020a038316155b15610fd45760019150610b28565b600160a060020a03831660009081526068602052604090205460ff1615610ffe5760019150610b28565b61100783611d87565b60009081526067602052604090205460ff169392505050565b60008060008061102f85612852565b92506000600384015474010000000000000000000000000000000000000000900460ff16600281111561105e57fe5b1461106b57849350611235565b60028301546000680100000000000000009091046001604060020a03161180156110bc5750600283015470010000000000000000000000000000000090046001604060020a03166110ba612883565b115b15611204576002830154600184018054611188926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561115457602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116111115790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682612887565b60028401549092506111e4906801000000000000000090046001604060020a031660006040518059106111b85750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682612887565b90506111f585828560000154612bba565b80945061120185612852565b92505b61120d85612c98565b90506001604060020a03808216908616146112315761123185828560000154612bba565b8093505b505050919050565b600061124882610fa9565b151561125357600080fd5b506064805490816001810161126883826132e2565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561135957fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161144f92916020019061330e565b5060e08201518160030190805161146a92916020019061330e565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206136398339815191528152601301604051809103902061152582612d60565b611530338383611fb0565b151561153b57600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b600061156982610fa9565b151561157457600080fd5b506064805490816001810161158983826132e2565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff1916600183600281111561160657fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c0820151816002019080516116fc92916020019061330e565b5060e08201518160030190805161171792916020019061330e565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b8381101561178d578082015183820152602001611775565b50505050905090810190601f1680156117ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b6000806117dc83610fa9565b15156117e757600080fd5b6001604060020a03851615611a09576117ff8561280c565b905060146119f6826101006040519081016040528154909190829060ff16600281111561182857fe5b600281111561183357fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a03908116604080870191909152600180880154928316606088015268010000000000000000830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156119465780601f1061191b57610100808354040283529160200191611946565b820191906000526020600020905b81548152906001019060200180831161192957829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119e85780601f106119bd576101008083540402835291602001916119e8565b820191906000526020600020905b8154815290600101906020018083116119cb57829003601f168201915b505050505081525050612d80565b6001604060020a031610611a0957600080fd5b6064805492508260018101611a1e83826132e2565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b0e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0492916020019061330e565b5060e082015181600301908051611c1f92916020019061330e565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60405160008051602061363983398151915281526013016040518091039020611ccf33826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b1515611cda57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b6000611d763388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050868661155e565b979650505050505050565b60015481565b6000611d91613284565b823b604051915080825280600060208401863c50806040518082805190602001908083835b60208310611dd55780518252601f199092019160209182019101611db6565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080611e4483611cff565b1515611e4f57600080fd5b611e57610d23565b9150611e6282612df4565b1515611e6d57600080fd5b600160a060020a0383161515611ebf5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515611eba57600080fd5b611fab565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515611f1657600080fd5b6102c65a03f11515611f2757600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515611f8f57600080fd5b6102c65a03f11515611fa057600080fd5b505050604051805150505b505050565b6000611fba613284565b60008084511115611fd357835160200290508391508082525b600054600160a060020a031615806120e4575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561207a578082015183820152602001612062565b50505050905090810190601f1680156120a75780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156120c857600080fd5b6102c65a03f115156120d957600080fd5b505050604051805190505b9695505050505050565b6040516000805160206136398339815191528152601301604051809103902061211682612e1a565b612121338383611fb0565b151561212c57600080fd5b50506000908152606760205260409020805460ff19169055565b6003541561215357600080fd5b600160a060020a038116151561216857600080fd5b612170612e2b565b6069805461010060a860020a031916610100600160a060020a03841602179055600161219d6064826132e2565b5060016121ab606582613388565b5050565b604051600080516020613639833981519152815260130160405180910390206121f733826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b151561220257600080fd5b506000908152606760205260409020805460ff19166001179055565b60006122298861280c565b805490915033600160a060020a03908116610100909204161461224b57600080fd5b6001815460ff16600281111561225d57fe5b1461226757600080fd5b805461010060a860020a031916610100600160a060020a038916021781556122936002820187876133b4565b506122a26003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600054600160a060020a031681565b60006123418861280c565b805490915033600160a060020a03908116610100909204161461236357600080fd5b6000815460ff16600281111561237557fe5b1461237f57600080fd5b805461010060a860020a031916610100600160a060020a038916021781556123ab6002820187876133b4565b506123ba6003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60008061244a613284565b612452613284565b60008060008060006124638a61280c565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f820181900481020160405190810160405280929190818152602001828054600181600116156101000203166002900480156125185780601f106124ed57610100808354040283529160200191612518565b820191906000526020600020905b8154815290600101906020018083116124fb57829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156125b75780601f1061258c576101008083540402835291602001916125b7565b820191906000526020600020905b81548152906001019060200180831161259a57829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a5083169850505068010000000000000000810460ff16955069010000000000000000009004600160a060020a03169350915050565b600061261e8861280c565b805490915033600160a060020a03908116610100909204161461264057600080fd5b6002815460ff16600281111561265257fe5b1461265c57600080fd5b805461010060a860020a031916610100600160a060020a038916021781556126886002820187876133b4565b506126976003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000612726612e45565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561278d578082015183820152602001612775565b50505050905090810190601f1680156127ba5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156127d857600080fd5b6102c65a03f115156127e957600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061282657600080fd5b606480546001604060020a03841690811061283d57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061286c57600080fd5b606580546001604060020a03841690811061283d57fe5b4290565b6000806000888a898989898960405180888051906020019060200280838360005b838110156128c05780820151838201526020016128a8565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561292a57fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a03909116915081111561299457809250612bad565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016129d48382613388565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a03168152602001886002811115612a5557fe5b905291905081518155602082015181600101908051612a78929160200190613422565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191674010000000000000000000000000000000000000000836002811115612ba157fe5b02179055505050508092505b5050979650505050505050565b6000806000612bcc6001878787612edc565b9250846001604060020a0316866001604060020a03161415612bed57612c90565b821515612bf957612c90565b612c0286612852565b9150612c0d85612852565b825490915083901015612c1f57600080fd5b815483900382558054830180825583901015612c3a57600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a3612c8e6000878786612edc565b505b505050505050565b600080806001604060020a0384161515612cb55760009250612d59565b612cbe84612852565b6002810154909250612cd8906001604060020a031661280c565b90506000815460ff166002811115612cec57fe5b1415612cfa57839250612d59565b6002815460ff166002811115612d0c57fe5b14612d1357fe5b6002820154612d2a906001604060020a0316610a87565b1515612d3857839250612d59565b6002820154612d569060c060020a90046001604060020a0316612c98565b92505b5050919050565b612d68613284565b612d7a82600160a060020a0316612f02565b92915050565b600080600283516002811115612d9257fe5b14612d9957fe5b82606001516001604060020a03161515612db65760019150610b28565b612dc3836060015161280c565b9050612dea816101006040519081016040528154909190829060ff16600281111561182857fe5b6001019392505050565b600080600160a060020a0383161515612e105760009150610b28565b50506000903b1190565b612e22613284565b612d7a82612f02565b60035415612e3857600080fd5b612e40612f49565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515612eb857600080fd5b6102c65a03f11515612ec957600080fd5b50505060405180519250829150505b5090565b80612eea8585808685612f4d565b9050612ef98584868685612f4d565b95945050505050565b612f0a613284565b6001604051805910612f195750595b908082528060200260200182016040525090508181600081518110612f3a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a031614612f7457610100612f77565b60005b61ffff169250849350612f8988612852565b60028101546003820154919350612fbb918b916001604060020a0316908a908a908890600160a060020a03168a6130bf565b9350600090505b60018201546001604060020a038216101561304e576130448983600101836001604060020a0316815481101515612ff557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a6130bf565b9350600101612fc2565b60028201546000680100000000000000009091046001604060020a031611156130b357600282015460038301546130b0918b91680100000000000000009091046001604060020a0316908a908a9060ff890190600160a060020a03168a6130bf565b93505b50505095945050505050565b806000806130cc8961280c565b600181015490915069010000000000000000009004600160a060020a0316158015906130f85750600083115b15612bad5789156131d057600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b151561319f57600080fd5b6102c65a03f115156131b057600080fd5b5050506040518051925050828211156131c857600080fd5b819250612bad565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b151561326357600080fd5b6102c65a03f1151561327457600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b61010060405190810160405280600081526020016132b2613284565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611fab57600402816004028360005260206000209182019101611fab91906134d6565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061334f57805160ff191683800117855561337c565b8280016001018555821561337c579182015b8281111561337c578251825591602001919060010190613361565b50612ed892915061353d565b815481835581811511611fab57600402816004028360005260206000209182019101611fab9190613557565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106133f55782800160ff1982351617855561337c565b8280016001018555821561337c579182015b8281111561337c578235825591602001919060010190613407565b828054828255906000526020600020906003016004900481019282156134ca5791602002820160005b8382111561349557835183826101000a8154816001604060020a0302191690836001604060020a03160217905550926020019260080160208160070104928301926001030261344b565b80156134c85782816101000a8154906001604060020a030219169055600801602081600701049283019260010302613495565b505b50612ed89291506135a7565b610b5891905b80821115612ed85780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061352660028301826135cc565b6135346003830160006135cc565b506004016134dc565b610b5891905b80821115612ed85760008155600101613543565b610b5891905b80821115612ed85760008082556135776001830182613613565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff1916905560040161355d565b610b5891905b80821115612ed857805467ffffffffffffffff191681556001016135ad565b50805460018160011615610100020316600290046000825580601f106135f25750613610565b601f016020900490600052602060002090810190613610919061353d565b50565b508054600082556003016004900490600052602060002090810190613610919061353d5600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820710d619ac7121c5adf1629f9fe7074d333ce6b21313c6e16596b118218e6fbcd0029","real_runtime_bytecode":"6060604052600436106101be5763ffffffff60e060020a600035041663178e607981146101c35780631c8e8568146101e85780632101a6ad1461020f57806324fea3b01461022e5780632a8ec8cc146102415780632f6b64ca1461025457806332ce8ebc1461031057806332f0a3b514610330578063387402911461035f5780633f657a46146103775780634eafbcd51461040557806350f8a8031461042457806352dc7dcc1461045f5780635503d9ba146104a157806360b1e057146104b45780636293c702146104c75780636e802c6a146104e657806372116e92146105a057806379f4542e146105f15780637e7db6e1146106105780637f61fa931461062f57806380afdea81461067157806381ea4408146106845780638322fff2146106a35780638b3dd749146106b65780639b3fdf4c146106c95780639d4941d8146106dc578063a1658fad146106fb578063b12b5f761461075e578063c4d66de814610774578063c8ae070f14610793578063cc19ecf7146107a9578063d4aae0c4146107f5578063db7c231414610808578063eba8ba0614610854578063f6b24b1c146109aa578063f92a79ff146109f6578063fbfa77cf14610a47575b600080fd5b34156101ce57600080fd5b6101d6610a5a565b60405190815260200160405180910390f35b34156101f357600080fd5b6101fb610a7e565b604051901515815260200160405180910390f35b341561021a57600080fd5b6101fb6001604060020a0360043516610a87565b341561023957600080fd5b6101d6610b2e565b341561024c57600080fd5b6101d6610b50565b341561025f57600080fd5b6102796001604060020a0360043581169060243516610b5b565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156102d35780820151838201526020016102bb565b50505050905090810190601f1680156103005780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b341561031b57600080fd5b61032e6004803560248101910135610c89565b005b341561033b57600080fd5b610343610d23565b604051600160a060020a03909116815260200160405180910390f35b341561036a57600080fd5b61032e6004351515610da3565b341561038257600080fd5b6103966001604060020a0360043516610e09565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156103ea57fe5b60ff1681526020019850505050505050505060405180910390f35b341561041057600080fd5b6101fb600160a060020a0360043516610fa9565b341561042f57600080fd5b6104436001604060020a0360043516611020565b6040516001604060020a03909116815260200160405180910390f35b341561046a57600080fd5b61044360246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a036064351661123d565b34156104ac57600080fd5b6101d66114cf565b34156104bf57600080fd5b6101d66114d9565b34156104d257600080fd5b61032e600160a060020a03600435166114fd565b34156104f157600080fd5b61044360048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a0316925061155e915050565b34156105ab57600080fd5b6104436024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a435166117d0565b34156105fc57600080fd5b61032e600160a060020a0360043516611c87565b341561061b57600080fd5b6101fb600160a060020a0360043516611cff565b341561063a57600080fd5b61044360246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516611d05565b341561067c57600080fd5b6101d6611d81565b341561068f57600080fd5b6101d6600160a060020a0360043516611d87565b34156106ae57600080fd5b610343611e09565b34156106c157600080fd5b6101d6611e0e565b34156106d457600080fd5b6101d6611e14565b34156106e757600080fd5b61032e600160a060020a0360043516611e38565b341561070657600080fd5b6101fb60048035600160a060020a0316906024803591906064906044359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650611fb095505050505050565b341561076957600080fd5b61032e6004356120ee565b341561077f57600080fd5b61032e600160a060020a0360043516612146565b341561079e57600080fd5b61032e6004356121af565b34156107b457600080fd5b61032e600480356001604060020a039081169160248035600160a060020a03169260443580830193908101359260643590810192910135906084351661221e565b341561080057600080fd5b610343612327565b341561081357600080fd5b61032e600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612336565b341561085f57600080fd5b6108736001604060020a036004351661243f565b6040518089600281111561088357fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b838110156109045780820151838201526020016108ec565b50505050905090810190601f1680156109315780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561096757808201518382015260200161094f565b50505050905090810190601f1680156109945780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b34156109b557600080fd5b61032e600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612613565b3415610a0157600080fd5b61034360046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061271c95505050505050565b3415610a5257600080fd5b6103436127f8565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610a938361280c565b90506000815460ff166002811115610aa757fe5b1415610ab65760009150610b28565b6002815460ff166002811115610ac857fe5b14610acf57fe5b600181015468010000000000000000900460ff1615610af15760019150610b28565b60018101546001604060020a03161515610b0e5760009150610b28565b6001810154610b25906001604060020a0316610a87565b91505b50919050565b6040516000805160206136398339815191528152601301604051809103902081565b606554600019015b90565b600080610b66613284565b600080610b7287612852565b915081600101600187036001604060020a0316815481101515610b9157fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a03169450610bc58561280c565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c795780601f10610c4e57610100808354040283529160200191610c79565b820191906000526020600020905b815481529060010190602001808311610c5c57829003601f168201915b5050505050925050509250925092565b600060405160008051602061363983398151915281526013016040518091039020610cd433826000604051805910610cbe5750595b9080825280602002602001820160405250611fb0565b1515610cdf57600080fd5b600091505b60ff821683901015610d1d57610d12848460ff8516818110610d0257fe5b90506020020135600019166121af565b600190910190610ce4565b50505050565b60008054600160a060020a03161515610d3b57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610d8457600080fd5b6102c65a03f11515610d9557600080fd5b505050604051805191505090565b60405160008051602061363983398151915281526013016040518091039020610deb33826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b1515610df657600080fd5b506069805460ff19169115919091179055565b600080600080600080600080610e1d613296565b610e268a612852565b61010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015610ebe57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610e7b5790505b50505091835250506002828101546001604060020a0380821660208501526801000000000000000082048116604085015270010000000000000000000000000000000082048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019174010000000000000000000000000000000000000000900460ff1690811115610f5757fe5b6002811115610f6257fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b606954600090819060ff1680610fc65750600160a060020a038316155b15610fd45760019150610b28565b600160a060020a03831660009081526068602052604090205460ff1615610ffe5760019150610b28565b61100783611d87565b60009081526067602052604090205460ff169392505050565b60008060008061102f85612852565b92506000600384015474010000000000000000000000000000000000000000900460ff16600281111561105e57fe5b1461106b57849350611235565b60028301546000680100000000000000009091046001604060020a03161180156110bc5750600283015470010000000000000000000000000000000090046001604060020a03166110ba612883565b115b15611204576002830154600184018054611188926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561115457602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116111115790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682612887565b60028401549092506111e4906801000000000000000090046001604060020a031660006040518059106111b85750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682612887565b90506111f585828560000154612bba565b80945061120185612852565b92505b61120d85612c98565b90506001604060020a03808216908616146112315761123185828560000154612bba565b8093505b505050919050565b600061124882610fa9565b151561125357600080fd5b506064805490816001810161126883826132e2565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561135957fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161144f92916020019061330e565b5060e08201518160030190805161146a92916020019061330e565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206136398339815191528152601301604051809103902061152582612d60565b611530338383611fb0565b151561153b57600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b600061156982610fa9565b151561157457600080fd5b506064805490816001810161158983826132e2565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff1916600183600281111561160657fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c0820151816002019080516116fc92916020019061330e565b5060e08201518160030190805161171792916020019061330e565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b8381101561178d578082015183820152602001611775565b50505050905090810190601f1680156117ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b6000806117dc83610fa9565b15156117e757600080fd5b6001604060020a03851615611a09576117ff8561280c565b905060146119f6826101006040519081016040528154909190829060ff16600281111561182857fe5b600281111561183357fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a03908116604080870191909152600180880154928316606088015268010000000000000000830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156119465780601f1061191b57610100808354040283529160200191611946565b820191906000526020600020905b81548152906001019060200180831161192957829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119e85780601f106119bd576101008083540402835291602001916119e8565b820191906000526020600020905b8154815290600101906020018083116119cb57829003601f168201915b505050505081525050612d80565b6001604060020a031610611a0957600080fd5b6064805492508260018101611a1e83826132e2565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b0e57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020613659833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c0492916020019061330e565b5060e082015181600301908051611c1f92916020019061330e565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60405160008051602061363983398151915281526013016040518091039020611ccf33826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b1515611cda57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b6000611d763388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050868661155e565b979650505050505050565b60015481565b6000611d91613284565b823b604051915080825280600060208401863c50806040518082805190602001908083835b60208310611dd55780518252601f199092019160209182019101611db6565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080611e4483611cff565b1515611e4f57600080fd5b611e57610d23565b9150611e6282612df4565b1515611e6d57600080fd5b600160a060020a0383161515611ebf5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515611eba57600080fd5b611fab565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515611f1657600080fd5b6102c65a03f11515611f2757600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515611f8f57600080fd5b6102c65a03f11515611fa057600080fd5b505050604051805150505b505050565b6000611fba613284565b60008084511115611fd357835160200290508391508082525b600054600160a060020a031615806120e4575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b8381101561207a578082015183820152602001612062565b50505050905090810190601f1680156120a75780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156120c857600080fd5b6102c65a03f115156120d957600080fd5b505050604051805190505b9695505050505050565b6040516000805160206136398339815191528152601301604051809103902061211682612e1a565b612121338383611fb0565b151561212c57600080fd5b50506000908152606760205260409020805460ff19169055565b6003541561215357600080fd5b600160a060020a038116151561216857600080fd5b612170612e2b565b6069805461010060a860020a031916610100600160a060020a03841602179055600161219d6064826132e2565b5060016121ab606582613388565b5050565b604051600080516020613639833981519152815260130160405180910390206121f733826000604051805910610cbe5750599080825280602002602001820160405250611fb0565b151561220257600080fd5b506000908152606760205260409020805460ff19166001179055565b60006122298861280c565b805490915033600160a060020a03908116610100909204161461224b57600080fd5b6001815460ff16600281111561225d57fe5b1461226757600080fd5b805461010060a860020a031916610100600160a060020a038916021781556122936002820187876133b4565b506122a26003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600054600160a060020a031681565b60006123418861280c565b805490915033600160a060020a03908116610100909204161461236357600080fd5b6000815460ff16600281111561237557fe5b1461237f57600080fd5b805461010060a860020a031916610100600160a060020a038916021781556123ab6002820187876133b4565b506123ba6003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60008061244a613284565b612452613284565b60008060008060006124638a61280c565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f820181900481020160405190810160405280929190818152602001828054600181600116156101000203166002900480156125185780601f106124ed57610100808354040283529160200191612518565b820191906000526020600020905b8154815290600101906020018083116124fb57829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156125b75780601f1061258c576101008083540402835291602001916125b7565b820191906000526020600020905b81548152906001019060200180831161259a57829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a5083169850505068010000000000000000810460ff16955069010000000000000000009004600160a060020a03169350915050565b600061261e8861280c565b805490915033600160a060020a03908116610100909204161461264057600080fd5b6002815460ff16600281111561265257fe5b1461265c57600080fd5b805461010060a860020a031916610100600160a060020a038916021781556126886002820187876133b4565b506126976003820185856133b4565b5080546001604060020a0380841660a860020a0260008051602061365983398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000612726612e45565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561278d578082015183820152602001612775565b50505050905090810190601f1680156127ba5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156127d857600080fd5b6102c65a03f115156127e957600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061282657600080fd5b606480546001604060020a03841690811061283d57fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061286c57600080fd5b606580546001604060020a03841690811061283d57fe5b4290565b6000806000888a898989898960405180888051906020019060200280838360005b838110156128c05780820151838201526020016128a8565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561292a57fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a03909116915081111561299457809250612bad565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016129d48382613388565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a03168152602001886002811115612a5557fe5b905291905081518155602082015181600101908051612a78929160200190613422565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191674010000000000000000000000000000000000000000836002811115612ba157fe5b02179055505050508092505b5050979650505050505050565b6000806000612bcc6001878787612edc565b9250846001604060020a0316866001604060020a03161415612bed57612c90565b821515612bf957612c90565b612c0286612852565b9150612c0d85612852565b825490915083901015612c1f57600080fd5b815483900382558054830180825583901015612c3a57600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a3612c8e6000878786612edc565b505b505050505050565b600080806001604060020a0384161515612cb55760009250612d59565b612cbe84612852565b6002810154909250612cd8906001604060020a031661280c565b90506000815460ff166002811115612cec57fe5b1415612cfa57839250612d59565b6002815460ff166002811115612d0c57fe5b14612d1357fe5b6002820154612d2a906001604060020a0316610a87565b1515612d3857839250612d59565b6002820154612d569060c060020a90046001604060020a0316612c98565b92505b5050919050565b612d68613284565b612d7a82600160a060020a0316612f02565b92915050565b600080600283516002811115612d9257fe5b14612d9957fe5b82606001516001604060020a03161515612db65760019150610b28565b612dc3836060015161280c565b9050612dea816101006040519081016040528154909190829060ff16600281111561182857fe5b6001019392505050565b600080600160a060020a0383161515612e105760009150610b28565b50506000903b1190565b612e22613284565b612d7a82612f02565b60035415612e3857600080fd5b612e40612f49565b600355565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515612eb857600080fd5b6102c65a03f11515612ec957600080fd5b50505060405180519250829150505b5090565b80612eea8585808685612f4d565b9050612ef98584868685612f4d565b95945050505050565b612f0a613284565b6001604051805910612f195750595b908082528060200260200182016040525090508181600081518110612f3a57fe5b60209081029091010152919050565b4390565b600080600080866001604060020a0316886001604060020a031614612f7457610100612f77565b60005b61ffff169250849350612f8988612852565b60028101546003820154919350612fbb918b916001604060020a0316908a908a908890600160a060020a03168a6130bf565b9350600090505b60018201546001604060020a038216101561304e576130448983600101836001604060020a0316815481101515612ff557fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a6130bf565b9350600101612fc2565b60028201546000680100000000000000009091046001604060020a031611156130b357600282015460038301546130b0918b91680100000000000000009091046001604060020a0316908a908a9060ff890190600160a060020a03168a6130bf565b93505b50505095945050505050565b806000806130cc8961280c565b600181015490915069010000000000000000009004600160a060020a0316158015906130f85750600083115b15612bad5789156131d057600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b151561319f57600080fd5b6102c65a03f115156131b057600080fd5b5050506040518051925050828211156131c857600080fd5b819250612bad565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b151561326357600080fd5b6102c65a03f1151561327457600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b61010060405190810160405280600081526020016132b2613284565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611fab57600402816004028360005260206000209182019101611fab91906134d6565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061334f57805160ff191683800117855561337c565b8280016001018555821561337c579182015b8281111561337c578251825591602001919060010190613361565b50612ed892915061353d565b815481835581811511611fab57600402816004028360005260206000209182019101611fab9190613557565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106133f55782800160ff1982351617855561337c565b8280016001018555821561337c579182015b8281111561337c578235825591602001919060010190613407565b828054828255906000526020600020906003016004900481019282156134ca5791602002820160005b8382111561349557835183826101000a8154816001604060020a0302191690836001604060020a03160217905550926020019260080160208160070104928301926001030261344b565b80156134c85782816101000a8154906001604060020a030219169055600801602081600701049283019260010302613495565b505b50612ed89291506135a7565b610b5891905b80821115612ed85780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061352660028301826135cc565b6135346003830160006135cc565b506004016134dc565b610b5891905b80821115612ed85760008155600101613543565b610b5891905b80821115612ed85760008082556135776001830182613613565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff1916905560040161355d565b610b5891905b80821115612ed857805467ffffffffffffffff191681556001016135ad565b50805460018160011615610100020316600290046000825580601f106135f25750613610565b601f016020900490600052602060002090810190613610919061353d565b50565b508054600082556003016004900490600052602060002090810190613610919061353d5600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820","swarm_hash":"710d619ac7121c5adf1629f9fe7074d333ce6b21313c6e16596b118218e6fbcd","gas_estimates":{"creation":{"codeDepositCost":"2797600","executionCost":"23266","totalCost":"2820866"},"external":{"APP_ADDR_NAMESPACE()":"236","ETH()":"820","EVMSCRIPT_REGISTRY_APP()":"786","EVMSCRIPT_REGISTRY_APP_ID()":"544","PLUGIN_MANAGER_ROLE()":"infinite","addDelegate(string,string,uint64,address)":"infinite","addGiver(address,string,string,uint64,address)":"infinite","addGiver(string,string,uint64,address)":"infinite","addProject(string,string,address,uint64,uint64,address)":"infinite","addValidPluginContract(bytes32)":"infinite","addValidPluginContracts(bytes32[])":"infinite","addValidPluginInstance(address)":"infinite","allowRecoverability(address)":"743","appId()":"898","canPerform(address,bytes32,uint256[])":"infinite","getCodeHash(address)":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"964","getPledge(uint64)":"infinite","getPledgeAdmin(uint64)":"infinite","getPledgeDelegate(uint64,uint64)":"infinite","getRecoveryVault()":"infinite","initialize(address)":"infinite","isProjectCanceled(uint64)":"infinite","isValidPlugin(address)":"infinite","kernel()":"1293","normalizePledge(uint64)":"infinite","numberOfPledgeAdmins()":"731","numberOfPledges()":"534","removeValidPluginContract(bytes32)":"infinite","removeValidPluginInstance(address)":"infinite","transferToVault(address)":"infinite","updateDelegate(uint64,address,string,string,uint64)":"infinite","updateGiver(uint64,address,string,string,uint64)":"infinite","updateProject(uint64,address,string,string,uint64)":"infinite","useWhitelist(bool)":"infinite","vault()":"1414","whitelistDisabled()":"470"},"internal":{"_appendDelegate(uint64,uint256,uint64)":"infinite","_callPlugin(bool,uint64,uint64,uint64,uint64,address,uint256)":"infinite","_callPlugins(bool,uint64,uint64,uint256)":"infinite","_callPluginsPledge(bool,uint64,uint64,uint64,uint256)":"infinite","_checkAdminOwner(uint64)":"infinite","_doTransfer(uint64,uint64,uint256)":"infinite","_getOldestPledgeNotCanceled(uint64)":"infinite","_getTime()":"14","_maxCommitTime(struct LiquidPledgingStorage.Pledge memory)":"infinite","_proposeAssignProject(uint64,uint256,uint64)":"infinite","_transfer(uint64,uint64,uint256,uint64)":"infinite","_transferOwnershipToGiver(uint64,uint256,uint64)":"infinite","_transferOwnershipToProject(uint64,uint256,uint64)":"infinite","_undelegate(uint64,uint256,uint256)":"infinite"}},"function_hashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","PLUGIN_MANAGER_ROLE()":"24fea3b0","addDelegate(string,string,uint64,address)":"52dc7dcc","addGiver(address,string,string,uint64,address)":"6e802c6a","addGiver(string,string,uint64,address)":"7f61fa93","addProject(string,string,address,uint64,uint64,address)":"72116e92","addValidPluginContract(bytes32)":"c8ae070f","addValidPluginContracts(bytes32[])":"32ce8ebc","addValidPluginInstance(address)":"79f4542e","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","getCodeHash(address)":"81ea4408","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getPledge(uint64)":"3f657a46","getPledgeAdmin(uint64)":"eba8ba06","getPledgeDelegate(uint64,uint64)":"2f6b64ca","getRecoveryVault()":"32f0a3b5","initialize(address)":"c4d66de8","isProjectCanceled(uint64)":"2101a6ad","isValidPlugin(address)":"4eafbcd5","kernel()":"d4aae0c4","normalizePledge(uint64)":"50f8a803","numberOfPledgeAdmins()":"5503d9ba","numberOfPledges()":"2a8ec8cc","removeValidPluginContract(bytes32)":"b12b5f76","removeValidPluginInstance(address)":"6293c702","transferToVault(address)":"9d4941d8","updateDelegate(uint64,address,string,string,uint64)":"cc19ecf7","updateGiver(uint64,address,string,string,uint64)":"db7c2314","updateProject(uint64,address,string,string,uint64)":"f6b24b1c","useWhitelist(bool)":"38740291","vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568"},"abi":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"projectId","type":"uint64"}],"name":"isProjectCanceled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PLUGIN_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"numberOfPledges","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"idxDelegate","type":"uint64"}],"name":"getPledgeDelegate","outputs":[{"name":"idDelegate","type":"uint64"},{"name":"addr","type":"address"},{"name":"name","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"contractHashes","type":"bytes32[]"}],"name":"addValidPluginContracts","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"useWhitelist","type":"bool"}],"name":"useWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"getPledge","outputs":[{"name":"amount","type":"uint256"},{"name":"owner","type":"uint64"},{"name":"nDelegates","type":"uint64"},{"name":"intendedProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"oldPledge","type":"uint64"},{"name":"token","type":"address"},{"name":"pledgeState","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isValidPlugin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"normalizePledge","outputs":[{"name":"","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addDelegate","outputs":[{"name":"idDelegate","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"numberOfPledgeAdmins","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"removeValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"projectAdmin","type":"address"},{"name":"parentProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addProject","outputs":[{"name":"idProject","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"addValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getCodeHash","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"removeValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_vault","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"addValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idDelegate","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateDelegate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateGiver","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"idAdmin","type":"uint64"}],"name":"getPledgeAdmin","outputs":[{"name":"adminType","type":"uint8"},{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"parentProject","type":"uint64"},{"name":"canceled","type":"bool"},{"name":"plugin","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"uint256"},{"indexed":true,"name":"to","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint256"}],"name":"CancelProject","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectUpdated","type":"event"}]}; +let LiquidPledgingBase = new EmbarkJS.Blockchain.Contract(LiquidPledgingBaseJSONConfig); +export default LiquidPledgingBase; diff --git a/abi/contracts/LiquidPledgingMock.js b/abi/contracts/LiquidPledgingMock.js new file mode 100644 index 0000000..308b3bd --- /dev/null +++ b/abi/contracts/LiquidPledgingMock.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let LiquidPledgingMockJSONConfig = {"contract_name":{"className":"LiquidPledgingMock","args":[],"code":"60606040526069805460ff19169055341561001957600080fd5b615281806100286000396000f3006060604052600436106102575763ffffffff60e060020a6000350416627611c6811461025c578063178e6079146102925780631c8e8568146102b75780632101a6ad146102de57806324fea3b0146102fd5780632a8ec8cc146103105780632ee88808146103235780632f6b64ca1461034557806332ce8ebc1461040157806332f0a3b51461041f578063387402911461044e5780633f657a461461046657806343387983146104f457806347c5ef43146105165780634c4316c7146105455780634eafbcd51461057957806350f8a8031461059857806352dc7dcc146105d35780635503d9ba1461061557806357adafb61461062857806360b1e057146106775780636293c7021461068a5780636ba3cc87146106a95780636e802c6a146106d757806372116e9214610791578063796d5654146107e257806379f4542e146108015780637e7db6e1146108205780637f61fa931461083f57806380afdea81461088157806381ea4408146108945780638322fff2146108b35780638b3dd749146108c65780639b3fdf4c146108d95780639d4941d8146108ec5780639da47a6b1461090b578063a1658fad1461091e578063ab8be23114610981578063af9f456314610997578063b12b5f76146109b9578063c4d66de8146109cf578063c8ae070f146109ee578063cc19ecf714610a04578063ce17273c14610a50578063d4aae0c414610a9f578063d639cd7314610ab2578063db7c231414610b1a578063e9c211e214610b66578063eba8ba0614610b88578063f6b24b1c14610cde578063f92a79ff14610d2a578063fbfa77cf14610d7b575b600080fd5b341561026757600080fd5b6102906001604060020a0360043516600160a060020a0360243581169060443516606435610d8e565b005b341561029d57600080fd5b6102a5610de9565b60405190815260200160405180910390f35b34156102c257600080fd5b6102ca610e0d565b604051901515815260200160405180910390f35b34156102e957600080fd5b6102ca6001604060020a0360043516610e16565b341561030857600080fd5b6102a5610eb8565b341561031b57600080fd5b6102a5610eda565b341561032e57600080fd5b6102906001604060020a0360043516602435610ee5565b341561035057600080fd5b61036a6001604060020a0360043581169060243516611019565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103c45780820151838201526020016103ac565b50505050905090810190601f1680156103f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b341561040c57600080fd5b6102906004803560248101910135611147565b341561042a57600080fd5b6104326111db565b604051600160a060020a03909116815260200160405180910390f35b341561045957600080fd5b610290600435151561125b565b341561047157600080fd5b6104856001604060020a03600435166112c1565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104d957fe5b60ff1681526020019850505050505050505060405180910390f35b34156104ff57600080fd5b6102906001604060020a036004351660243561143e565b341561052157600080fd5b6102906001604060020a036004358116906024358116906044359060643516611625565b341561055057600080fd5b6102906001604060020a0360043581169060243516600160a060020a036044351660643561163a565b341561058457600080fd5b6102ca600160a060020a03600435166117d1565b34156105a357600080fd5b6105b76001604060020a0360043516611848565b6040516001604060020a03909116815260200160405180910390f35b34156105de57600080fd5b6105b760246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516611a3d565b341561062057600080fd5b6102a5611cca565b341561063357600080fd5b6102906004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611cd495505050505050565b341561068257600080fd5b6102a5611d3f565b341561069557600080fd5b610290600160a060020a0360043516611d63565b34156106b457600080fd5b6102906001604060020a0360043516600160a060020a0360243516604435611dc4565b34156106e257600080fd5b6105b760048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611dd5915050565b341561079c57600080fd5b6105b76024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612042565b34156107ed57600080fd5b6102906001604060020a03600435166124ef565b341561080c57600080fd5b610290600160a060020a0360043516612559565b341561082b57600080fd5b6102ca600160a060020a03600435166125d1565b341561084a57600080fd5b6105b760246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166125d7565b341561088c57600080fd5b6102a5612653565b341561089f57600080fd5b6102a5600160a060020a0360043516612659565b34156108be57600080fd5b6104326126db565b34156108d157600080fd5b6102a56126e0565b34156108e457600080fd5b6102a56126e6565b34156108f757600080fd5b610290600160a060020a036004351661270a565b341561091657600080fd5b6102a5612881565b341561092957600080fd5b6102ca60048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061288795505050505050565b341561098c57600080fd5b6102906004356129c5565b34156109a257600080fd5b6102906001604060020a03600435166024356129ca565b34156109c457600080fd5b610290600435612a5f565b34156109da57600080fd5b610290600160a060020a0360043516612ab7565b34156109f957600080fd5b610290600435612ad4565b3415610a0f57600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b43565b3415610a5b57600080fd5b6102906004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4c95505050505050565b3415610aaa57600080fd5b610432612c83565b3415610abd57600080fd5b610290600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c92915050565b3415610b2557600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d07565b3415610b7157600080fd5b6102906001604060020a0360043516602435612e10565b3415610b9357600080fd5b610ba76001604060020a0360043516612f38565b60405180896002811115610bb757fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610c38578082015183820152602001610c20565b50505050905090810190601f168015610c655780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c9b578082015183820152602001610c83565b50505050905090810190601f168015610cc85780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610ce957600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613107565b3415610d3557600080fd5b61043260046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061321095505050505050565b3415610d8657600080fd5b6104326132ec565b6000600160a060020a0384161515610da557600080fd5b610dd4846020604051908101604052806000815250602060405190810160405260008082526203f48090611dd5565b9050610de28186858561163a565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610e2283613300565b90506000815460ff166002811115610e3657fe5b1415610e455760009150610eb2565b6002815460ff166002811115610e5757fe5b14610e5e57fe5b6001810154604060020a900460ff1615610e7b5760019150610eb2565b60018101546001604060020a03161515610e985760009150610eb2565b6001810154610eaf906001604060020a0316610e16565b91505b50919050565b6040516000805160206152168339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610f0a57600080fd5b610f1384613346565b91506001600383015460a060020a900460ff166002811115610f3157fe5b14610f3b57600080fd5b6002820154600183018054611006926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610fce57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f8b5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613377565b9050611013848285613699565b50505050565b600080611024614e61565b60008061103087613346565b915081600101600187036001604060020a031681548110151561104f57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a0316945061108385613300565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111375780601f1061110c57610100808354040283529160200191611137565b820191906000526020600020905b81548152906001019060200180831161111a57829003601f168201915b5050505050925050509250925092565b6000604051600080516020615216833981519152815260130160405180910390206111923382600060405180591061117c5750595b9080825280602002602001820160405250612887565b151561119d57600080fd5b600091505b60ff821683901015611013576111d0848460ff85168181106111c057fe5b9050602002013560001916612ad4565b6001909101906111a2565b60008054600160a060020a031615156111f357600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561123c57600080fd5b6102c65a03f1151561124d57600080fd5b505050604051805191505090565b604051600080516020615216833981519152815260130160405180910390206112a33382600060405180591061117c5750599080825280602002602001820160405250612887565b15156112ae57600080fd5b506069805460ff19169115919091179055565b6000806000806000806000806112d5614e73565b6112de8a613346565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561137657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116113335790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ec57fe5b60028111156113f757fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061144c85611848565b945061145785613346565b92506000600384015460a060020a900460ff16600281111561147557fe5b1461147f57600080fd5b6002830154611496906001604060020a031661376d565b600283015460018401805461155e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561152957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114e65790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613377565b915061156b858386613699565b6002830154611582906001604060020a0316613300565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b151561160a57600080fd5b6102c65a03f1151561161b57600080fd5b5050505050505050565b61162e8461376d565b611013848484846137c4565b600080806001604060020a03871681901161165457600080fd5b6000841161166157600080fd5b600160a060020a038516151561167657600080fd5b61167f87613300565b92506000835460ff16600281111561169357fe5b1461169d57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b151561171357600080fd5b6102c65a03f1151561172457600080fd5b50505060405180519050151561173957600080fd5b61176a87600060405180591061174c5750595b908082528060200260200182016040525060008060008a6000613377565b915061177582613346565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a36117c8878386896137c4565b50505050505050565b606954600090819060ff16806117ee5750600160a060020a038316155b156117fc5760019150610eb2565b600160a060020a03831660009081526068602052604090205460ff16156118265760019150610eb2565b61182f83612659565b60009081526067602052604090205460ff169392505050565b60008060008061185785613346565b92506000600384015460a060020a900460ff16600281111561187557fe5b1461188257849350611a35565b60028301546000604060020a9091046001604060020a03161180156118c157506002830154608060020a90046001604060020a03166118bf613e1b565b115b15611a0457600283015460018401805461198d926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561195957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116119165790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b60028401549092506119e490604060020a90046001604060020a031660006040518059106119b85750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613377565b90506119f585828560000154613699565b809450611a0185613346565b92505b611a0d85613e21565b90506001604060020a0380821690861614611a3157611a3185828560000154613699565b8093505b505050919050565b6000611a48826117d1565b1515611a5357600080fd5b5060648054908160018101611a688382614ebf565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b5957fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c4a929160200190614eeb565b5060e082015181600301908051611c65929160200190614eeb565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015611013576001604060020a03848481518110611cf657fe5b90602001906020020151169150604060020a848481518110611d1457fe5b90602001906020020151811515611d2757fe5b049050611d34828261143e565b600190920191611cd9565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b60405160008051602061521683398151915281526013016040518091039020611d8b82613ee9565b611d96338383612887565b1515611da157600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611dd083338484610d8e565b505050565b6000611de0826117d1565b1515611deb57600080fd5b5060648054908160018101611e008382614ebf565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e7d57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f6e929160200190614eeb565b5060e082015181600301908051611f89929160200190614eeb565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fff578082015183820152602001611fe7565b50505050905090810190601f16801561202c5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061204e836117d1565b151561205957600080fd5b6001604060020a038516156122765761207185613300565b90506014612263826101006040519081016040528154909190829060ff16600281111561209a57fe5b60028111156120a557fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121b35780601f10612188576101008083540402835291602001916121b3565b820191906000526020600020905b81548152906001019060200180831161219657829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122555780601f1061222a57610100808354040283529160200191612255565b820191906000526020600020905b81548152906001019060200180831161223857829003601f168201915b505050505081525050613f09565b6001604060020a03161061227657600080fd5b606480549250826001810161228b8382614ebf565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561237b57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161246c929160200190614eeb565b5060e082015181600301908051612487929160200190614eeb565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124fa82613300565b90506125058261376d565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b604051600080516020615216833981519152815260130160405180910390206125a13382600060405180591061117c5750599080825280602002602001820160405250612887565b15156125ac57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126483388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611dd5565b979650505050505050565b60015481565b6000612663614e61565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126a75780518252601f199092019160209182019101612688565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080612716836125d1565b151561272157600080fd5b6127296111db565b915061273482613f7d565b151561273f57600080fd5b600160a060020a03831615156127915781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561278c57600080fd5b611dd0565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127e857600080fd5b6102c65a03f115156127f957600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561286157600080fd5b6102c65a03f1151561287257600080fd5b50505060405180515050505050565b609c5481565b6000612891614e61565b600080845111156128aa57835160200290508391508082525b600054600160a060020a031615806129bb575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015612951578082015183820152602001612939565b50505050905090810190601f16801561297e5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561299f57600080fd5b6102c65a03f115156129b057600080fd5b505050604051805190505b9695505050505050565b609c55565b6000806129d684611848565b93506129e184613346565b600281015490925060c060020a90046001604060020a03161515612a0457600080fd5b6000600383015460a060020a900460ff166002811115612a2057fe5b14612a2a57600080fd5b6002820154612a41906001604060020a031661376d565b60028201546110069060c060020a90046001604060020a0316613e21565b60405160008051602061521683398151915281526013016040518091039020612a8782613fa3565b612a92338383612887565b1515612a9d57600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612ac457600080fd5b612acd81613fb4565b5042609c55565b60405160008051602061521683398151915281526013016040518091039020612b1c3382600060405180591061117c5750599080825280602002602001820160405250612887565b1515612b2757600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b4e88613300565b805490915033600160a060020a039081166101009092041614612b7057600080fd5b6001815460ff166002811115612b8257fe5b14612b8c57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bb8600282018787614f65565b50612bc7600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612c7f57612c76828281518110612c6757fe5b90602001906020020151611848565b50600101612c4f565b5050565b600054600160a060020a031681565b600080805b8451831015612cff576001604060020a03858481518110612cb457fe5b90602001906020020151169150604060020a858481518110612cd257fe5b90602001906020020151811515612ce557fe5b049050612cf486838387611625565b600190920191612c97565b505050505050565b6000612d1288613300565b805490915033600160a060020a039081166101009092041614612d3457600080fd5b6000815460ff166002811115612d4657fe5b14612d5057600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7c600282018787614f65565b50612d8b600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3557600080fd5b612e3e84613346565b91506001600383015460a060020a900460ff166002811115612e5c57fe5b14612e6657600080fd5b6002820154600183018054612f2d926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb65790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b905061100681611848565b600080612f43614e61565b612f4b614e61565b6000806000806000612f5c8a613300565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f820181900481020160405190810160405280929190818152602001828054600181600116156101000203166002900480156130115780601f10612fe657610100808354040283529160200191613011565b820191906000526020600020905b815481529060010190602001808311612ff457829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130b05780601f10613085576101008083540402835291602001916130b0565b820191906000526020600020905b81548152906001019060200180831161309357829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b600061311288613300565b805490915033600160a060020a03908116610100909204161461313457600080fd5b6002815460ff16600281111561314657fe5b1461315057600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317c600282018787614f65565b5061318b600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600061321a614019565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613281578082015183820152602001613269565b50505050905090810190601f1680156132ae5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132cc57600080fd5b6102c65a03f115156132dd57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331a57600080fd5b606480546001604060020a03841690811061333157fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061336057600080fd5b606580546001604060020a03841690811061333157fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133b0578082015183820152602001613398565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341a57fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134845780925061368c565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c48382614fd3565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354557fe5b905291905081518155602082015181600101908051613568929160200190614fff565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561368057fe5b02179055505050508092505b5050979650505050505050565b60008060006136ab60018787876140b0565b9250846001604060020a0316866001604060020a031614156136cc57612cff565b8215156136d857612cff565b6136e186613346565b91506136ec85613346565b8254909150839010156136fe57600080fd5b81548390038255805483018082558390101561371957600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117c860008787866140b0565b600061377882613300565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b95750805433600160a060020a0390811661010090920416145b1515612c7f57600080fd5b600080808080806001604060020a0387168190116137e157600080fd5b6137ea89611848565b98506137f589613346565b955061380087613300565b94506000600387015460a060020a900460ff16600281111561381e57fe5b1461382857600080fd5b60028601546001604060020a038b811691161415613b23576000855460ff16600281111561385257fe5b1415613868576138638989896140d6565b613e0f565b6002855460ff16600281111561387a57fe5b141561388b57613863898989614130565b6001855460ff16600281111561389d57fe5b1415613b21576139c9866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fc5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b557fe5b60028111156139c057fe5b9052508861436e565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fc57506001604060020a038414155b15613b0257600186015460001901841415613ae5576002860154600187018054613ad8926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa457602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a615790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b925061386389848a613699565b613afc89896001848a6001018054905003036143d4565b50613e0f565b613b14898988600101805490506143d4565b98506138638989896144de565bfe5b613c498661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbf57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3557fe5b6002811115613c4057fe5b9052508b61436e565b6001604060020a0390811692508214613b21576000855460ff166002811115613c6e57fe5b1415613c9f5760028601546001604060020a03888116911614613c8d57fe5b613afc898988600101805490506143d4565b6001855460ff166002811115613cb157fe5b1415613dd357613d9e866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393f57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fc575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b557fe5b6001604060020a039081169150811480613db757508181115b15613ae557613b1489896001858a6001018054905003036143d4565b6002855460ff166002811115613de557fe5b1415613b2157613e0289896001858a6001018054905003036143d4565b985061386389898961460e565b50505050505050505050565b609c5490565b600080806001604060020a0384161515613e3e5760009250613ee2565b613e4784613346565b6002810154909250613e61906001604060020a0316613300565b90506000815460ff166002811115613e7557fe5b1415613e8357839250613ee2565b6002815460ff166002811115613e9557fe5b14613e9c57fe5b6002820154613eb3906001604060020a0316610e16565b1515613ec157839250613ee2565b6002820154613edf9060c060020a90046001604060020a0316613e21565b92505b5050919050565b613ef1614e61565b613f0382600160a060020a0316614921565b92915050565b600080600283516002811115613f1b57fe5b14613f2257fe5b82606001516001604060020a03161515613f3f5760019150610eb2565b613f4c8360600151613300565b9050613f73816101006040519081016040528154909190829060ff16600281111561209a57fe5b6001019392505050565b600080600160a060020a0383161515613f995760009150610eb2565b50506000903b1190565b613fab614e61565b613f0382614921565b60035415613fc157600080fd5b600160a060020a0381161515613fd657600080fd5b613fde614968565b6069805461010060a860020a031916610100600160a060020a03841602179055600161400b606482614ebf565b506001612c7f606582614fd3565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561408c57600080fd5b6102c65a03f1151561409d57600080fd5b50505060405180519250829150505b5090565b806140be8585808685614982565b90506140cd8584868685614982565b95945050505050565b6000806140e285613346565b91506141238360006040518059106140f75750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613377565b9050610de2858286613699565b600080600061413e86613346565b9250601461426784610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161419b5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b600281111561425f57fe5b905250614aea565b1061427157600080fd5b61427a84610e16565b1561428457600080fd5b6002830154600184018054614321926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561195957600091825260209182902080546001604060020a031684529082028301929091600891018084116119165750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613377565b91506143618460006040518059106119b85750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613377565b9050612cff868287613699565b6000805b8360200151518110156143c257826001604060020a03168460200151828151811061439957fe5b906020019060200201516001604060020a031614156143ba578091506143cd565b600101614372565b6001604060020a0391505b5092915050565b6000806143df614e61565b60006143ea87613346565b60018101549093508590036040518059106144025750595b90808252806020026020018201604052509150600090505b600183015485900381101561448d576001830180548290811061443957fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061446e57fe5b6001604060020a0390921660209283029091019091015260010161441a565b600283015460038401546144c7916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613377565b93506144d4878588613699565b5050509392505050565b60006144e8614e61565b6000806144f487613346565b6001810154909450600a901061450957600080fd5b6001808501540160405180591061451d5750595b90808252806020026020018201604052509250600091505b60018401548210156145a8576001840180548390811061455157fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061458657fe5b6001604060020a03909216602092830290910190910152600190910190614535565b600184015485908490815181106145bb57fe5b6001604060020a03928316602091820290920101526002850154600386015461460192828116928792600092839260c060020a90041690600160a060020a031682613377565b90506117c8878288613699565b60008061461a85613346565b9150601461470583610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57600091825260209182902080546001604060020a0316845290820283019290916008910180841161419b575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b1061470f57600080fd5b61471883610e16565b1561472257600080fd5b6002820154600183018054614123926001604060020a031691906020808202016040519081016040528092919081815260200182805480156147b557602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147725790505b5050505050856148e0866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561485757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116148145790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156148cd57fe5b60028111156148d857fe5b905250614c00565b6001604060020a03166148f1613e1b565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613377565b614929614e61565b60016040518059106149385750595b90808252806020026020018201604052509050818160008151811061495957fe5b60209081029091010152919050565b6003541561497557600080fd5b61497d614c98565b600355565b600080600080866001604060020a0316886001604060020a0316146149a9576101006149ac565b60005b61ffff1692508493506149be88613346565b600281015460038201549193506149f0918b916001604060020a0316908a908a908890600160a060020a03168a614c9c565b9350600090505b60018201546001604060020a0382161015614a8357614a798983600101836001604060020a0316815481101515614a2a57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c9c565b93506001016149f7565b60028201546000604060020a9091046001604060020a03161115614ade5760028201546003830154614adb918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c9c565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614b0a5760009150610eb2565b614b178360a00151613346565b9050613f7381610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57600091825260209182902080546001604060020a0316845290820283019290916008910180841161419b575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b6000806000614c128460400151613300565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ee257614c5c84602001518281518110614c4d57fe5b90602001906020020151613300565b80549092506001604060020a0380851660a860020a909204161115614c9057815460a860020a90046001604060020a031692505b600101614c2d565b4390565b80600080614ca989613300565b600181015490915069010000000000000000009004600160a060020a031615801590614cd55750600083115b1561368c578915614dad57600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d7c57600080fd5b6102c65a03f11515614d8d57600080fd5b505050604051805192505082821115614da557600080fd5b81925061368c565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614e4057600080fd5b6102c65a03f11515614e5157600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e8f614e61565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611dd057600402816004028360005260206000209182019101611dd091906150b3565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f2c57805160ff1916838001178555614f59565b82800160010185558215614f59579182015b82811115614f59578251825591602001919060010190614f3e565b506140ac92915061511a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614fa65782800160ff19823516178555614f59565b82800160010185558215614f59579182015b82811115614f59578235825591602001919060010190614fb8565b815481835581811511611dd057600402816004028360005260206000209182019101611dd09190615134565b828054828255906000526020600020906003016004900481019282156150a75791602002820160005b8382111561507257835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302615028565b80156150a55782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615072565b505b506140ac929150615184565b610ee291905b808211156140ac5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061510360028301826151a9565b6151116003830160006151a9565b506004016150b9565b610ee291905b808211156140ac5760008155600101615120565b610ee291905b808211156140ac57600080825561515460018301826151f0565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff1916905560040161513a565b610ee291905b808211156140ac57805467ffffffffffffffff1916815560010161518a565b50805460018160011615610100020316600290046000825580601f106151cf57506151ed565b601f0160209004906000526020600020908101906151ed919061511a565b50565b5080546000825560030160049004906000526020600020908101906151ed919061511a5600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a723058200d102251d9d6cb4d5ef35a97fd17ca31b10eff7630ddb6c6bd29dff4d2a62eaa0029","runtimeBytecode":"6060604052600436106102575763ffffffff60e060020a6000350416627611c6811461025c578063178e6079146102925780631c8e8568146102b75780632101a6ad146102de57806324fea3b0146102fd5780632a8ec8cc146103105780632ee88808146103235780632f6b64ca1461034557806332ce8ebc1461040157806332f0a3b51461041f578063387402911461044e5780633f657a461461046657806343387983146104f457806347c5ef43146105165780634c4316c7146105455780634eafbcd51461057957806350f8a8031461059857806352dc7dcc146105d35780635503d9ba1461061557806357adafb61461062857806360b1e057146106775780636293c7021461068a5780636ba3cc87146106a95780636e802c6a146106d757806372116e9214610791578063796d5654146107e257806379f4542e146108015780637e7db6e1146108205780637f61fa931461083f57806380afdea81461088157806381ea4408146108945780638322fff2146108b35780638b3dd749146108c65780639b3fdf4c146108d95780639d4941d8146108ec5780639da47a6b1461090b578063a1658fad1461091e578063ab8be23114610981578063af9f456314610997578063b12b5f76146109b9578063c4d66de8146109cf578063c8ae070f146109ee578063cc19ecf714610a04578063ce17273c14610a50578063d4aae0c414610a9f578063d639cd7314610ab2578063db7c231414610b1a578063e9c211e214610b66578063eba8ba0614610b88578063f6b24b1c14610cde578063f92a79ff14610d2a578063fbfa77cf14610d7b575b600080fd5b341561026757600080fd5b6102906001604060020a0360043516600160a060020a0360243581169060443516606435610d8e565b005b341561029d57600080fd5b6102a5610de9565b60405190815260200160405180910390f35b34156102c257600080fd5b6102ca610e0d565b604051901515815260200160405180910390f35b34156102e957600080fd5b6102ca6001604060020a0360043516610e16565b341561030857600080fd5b6102a5610eb8565b341561031b57600080fd5b6102a5610eda565b341561032e57600080fd5b6102906001604060020a0360043516602435610ee5565b341561035057600080fd5b61036a6001604060020a0360043581169060243516611019565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103c45780820151838201526020016103ac565b50505050905090810190601f1680156103f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b341561040c57600080fd5b6102906004803560248101910135611147565b341561042a57600080fd5b6104326111db565b604051600160a060020a03909116815260200160405180910390f35b341561045957600080fd5b610290600435151561125b565b341561047157600080fd5b6104856001604060020a03600435166112c1565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104d957fe5b60ff1681526020019850505050505050505060405180910390f35b34156104ff57600080fd5b6102906001604060020a036004351660243561143e565b341561052157600080fd5b6102906001604060020a036004358116906024358116906044359060643516611625565b341561055057600080fd5b6102906001604060020a0360043581169060243516600160a060020a036044351660643561163a565b341561058457600080fd5b6102ca600160a060020a03600435166117d1565b34156105a357600080fd5b6105b76001604060020a0360043516611848565b6040516001604060020a03909116815260200160405180910390f35b34156105de57600080fd5b6105b760246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516611a3d565b341561062057600080fd5b6102a5611cca565b341561063357600080fd5b6102906004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611cd495505050505050565b341561068257600080fd5b6102a5611d3f565b341561069557600080fd5b610290600160a060020a0360043516611d63565b34156106b457600080fd5b6102906001604060020a0360043516600160a060020a0360243516604435611dc4565b34156106e257600080fd5b6105b760048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611dd5915050565b341561079c57600080fd5b6105b76024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612042565b34156107ed57600080fd5b6102906001604060020a03600435166124ef565b341561080c57600080fd5b610290600160a060020a0360043516612559565b341561082b57600080fd5b6102ca600160a060020a03600435166125d1565b341561084a57600080fd5b6105b760246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166125d7565b341561088c57600080fd5b6102a5612653565b341561089f57600080fd5b6102a5600160a060020a0360043516612659565b34156108be57600080fd5b6104326126db565b34156108d157600080fd5b6102a56126e0565b34156108e457600080fd5b6102a56126e6565b34156108f757600080fd5b610290600160a060020a036004351661270a565b341561091657600080fd5b6102a5612881565b341561092957600080fd5b6102ca60048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061288795505050505050565b341561098c57600080fd5b6102906004356129c5565b34156109a257600080fd5b6102906001604060020a03600435166024356129ca565b34156109c457600080fd5b610290600435612a5f565b34156109da57600080fd5b610290600160a060020a0360043516612ab7565b34156109f957600080fd5b610290600435612ad4565b3415610a0f57600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b43565b3415610a5b57600080fd5b6102906004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4c95505050505050565b3415610aaa57600080fd5b610432612c83565b3415610abd57600080fd5b610290600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c92915050565b3415610b2557600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d07565b3415610b7157600080fd5b6102906001604060020a0360043516602435612e10565b3415610b9357600080fd5b610ba76001604060020a0360043516612f38565b60405180896002811115610bb757fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610c38578082015183820152602001610c20565b50505050905090810190601f168015610c655780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c9b578082015183820152602001610c83565b50505050905090810190601f168015610cc85780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610ce957600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613107565b3415610d3557600080fd5b61043260046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061321095505050505050565b3415610d8657600080fd5b6104326132ec565b6000600160a060020a0384161515610da557600080fd5b610dd4846020604051908101604052806000815250602060405190810160405260008082526203f48090611dd5565b9050610de28186858561163a565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610e2283613300565b90506000815460ff166002811115610e3657fe5b1415610e455760009150610eb2565b6002815460ff166002811115610e5757fe5b14610e5e57fe5b6001810154604060020a900460ff1615610e7b5760019150610eb2565b60018101546001604060020a03161515610e985760009150610eb2565b6001810154610eaf906001604060020a0316610e16565b91505b50919050565b6040516000805160206152168339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610f0a57600080fd5b610f1384613346565b91506001600383015460a060020a900460ff166002811115610f3157fe5b14610f3b57600080fd5b6002820154600183018054611006926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610fce57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f8b5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613377565b9050611013848285613699565b50505050565b600080611024614e61565b60008061103087613346565b915081600101600187036001604060020a031681548110151561104f57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a0316945061108385613300565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111375780601f1061110c57610100808354040283529160200191611137565b820191906000526020600020905b81548152906001019060200180831161111a57829003601f168201915b5050505050925050509250925092565b6000604051600080516020615216833981519152815260130160405180910390206111923382600060405180591061117c5750595b9080825280602002602001820160405250612887565b151561119d57600080fd5b600091505b60ff821683901015611013576111d0848460ff85168181106111c057fe5b9050602002013560001916612ad4565b6001909101906111a2565b60008054600160a060020a031615156111f357600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561123c57600080fd5b6102c65a03f1151561124d57600080fd5b505050604051805191505090565b604051600080516020615216833981519152815260130160405180910390206112a33382600060405180591061117c5750599080825280602002602001820160405250612887565b15156112ae57600080fd5b506069805460ff19169115919091179055565b6000806000806000806000806112d5614e73565b6112de8a613346565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561137657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116113335790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ec57fe5b60028111156113f757fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061144c85611848565b945061145785613346565b92506000600384015460a060020a900460ff16600281111561147557fe5b1461147f57600080fd5b6002830154611496906001604060020a031661376d565b600283015460018401805461155e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561152957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114e65790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613377565b915061156b858386613699565b6002830154611582906001604060020a0316613300565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b151561160a57600080fd5b6102c65a03f1151561161b57600080fd5b5050505050505050565b61162e8461376d565b611013848484846137c4565b600080806001604060020a03871681901161165457600080fd5b6000841161166157600080fd5b600160a060020a038516151561167657600080fd5b61167f87613300565b92506000835460ff16600281111561169357fe5b1461169d57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b151561171357600080fd5b6102c65a03f1151561172457600080fd5b50505060405180519050151561173957600080fd5b61176a87600060405180591061174c5750595b908082528060200260200182016040525060008060008a6000613377565b915061177582613346565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a36117c8878386896137c4565b50505050505050565b606954600090819060ff16806117ee5750600160a060020a038316155b156117fc5760019150610eb2565b600160a060020a03831660009081526068602052604090205460ff16156118265760019150610eb2565b61182f83612659565b60009081526067602052604090205460ff169392505050565b60008060008061185785613346565b92506000600384015460a060020a900460ff16600281111561187557fe5b1461188257849350611a35565b60028301546000604060020a9091046001604060020a03161180156118c157506002830154608060020a90046001604060020a03166118bf613e1b565b115b15611a0457600283015460018401805461198d926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561195957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116119165790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b60028401549092506119e490604060020a90046001604060020a031660006040518059106119b85750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613377565b90506119f585828560000154613699565b809450611a0185613346565b92505b611a0d85613e21565b90506001604060020a0380821690861614611a3157611a3185828560000154613699565b8093505b505050919050565b6000611a48826117d1565b1515611a5357600080fd5b5060648054908160018101611a688382614ebf565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b5957fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c4a929160200190614eeb565b5060e082015181600301908051611c65929160200190614eeb565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015611013576001604060020a03848481518110611cf657fe5b90602001906020020151169150604060020a848481518110611d1457fe5b90602001906020020151811515611d2757fe5b049050611d34828261143e565b600190920191611cd9565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b60405160008051602061521683398151915281526013016040518091039020611d8b82613ee9565b611d96338383612887565b1515611da157600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611dd083338484610d8e565b505050565b6000611de0826117d1565b1515611deb57600080fd5b5060648054908160018101611e008382614ebf565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e7d57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f6e929160200190614eeb565b5060e082015181600301908051611f89929160200190614eeb565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fff578082015183820152602001611fe7565b50505050905090810190601f16801561202c5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061204e836117d1565b151561205957600080fd5b6001604060020a038516156122765761207185613300565b90506014612263826101006040519081016040528154909190829060ff16600281111561209a57fe5b60028111156120a557fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121b35780601f10612188576101008083540402835291602001916121b3565b820191906000526020600020905b81548152906001019060200180831161219657829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122555780601f1061222a57610100808354040283529160200191612255565b820191906000526020600020905b81548152906001019060200180831161223857829003601f168201915b505050505081525050613f09565b6001604060020a03161061227657600080fd5b606480549250826001810161228b8382614ebf565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561237b57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161246c929160200190614eeb565b5060e082015181600301908051612487929160200190614eeb565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124fa82613300565b90506125058261376d565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b604051600080516020615216833981519152815260130160405180910390206125a13382600060405180591061117c5750599080825280602002602001820160405250612887565b15156125ac57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126483388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611dd5565b979650505050505050565b60015481565b6000612663614e61565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126a75780518252601f199092019160209182019101612688565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080612716836125d1565b151561272157600080fd5b6127296111db565b915061273482613f7d565b151561273f57600080fd5b600160a060020a03831615156127915781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561278c57600080fd5b611dd0565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127e857600080fd5b6102c65a03f115156127f957600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561286157600080fd5b6102c65a03f1151561287257600080fd5b50505060405180515050505050565b609c5481565b6000612891614e61565b600080845111156128aa57835160200290508391508082525b600054600160a060020a031615806129bb575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015612951578082015183820152602001612939565b50505050905090810190601f16801561297e5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561299f57600080fd5b6102c65a03f115156129b057600080fd5b505050604051805190505b9695505050505050565b609c55565b6000806129d684611848565b93506129e184613346565b600281015490925060c060020a90046001604060020a03161515612a0457600080fd5b6000600383015460a060020a900460ff166002811115612a2057fe5b14612a2a57600080fd5b6002820154612a41906001604060020a031661376d565b60028201546110069060c060020a90046001604060020a0316613e21565b60405160008051602061521683398151915281526013016040518091039020612a8782613fa3565b612a92338383612887565b1515612a9d57600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612ac457600080fd5b612acd81613fb4565b5042609c55565b60405160008051602061521683398151915281526013016040518091039020612b1c3382600060405180591061117c5750599080825280602002602001820160405250612887565b1515612b2757600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b4e88613300565b805490915033600160a060020a039081166101009092041614612b7057600080fd5b6001815460ff166002811115612b8257fe5b14612b8c57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bb8600282018787614f65565b50612bc7600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612c7f57612c76828281518110612c6757fe5b90602001906020020151611848565b50600101612c4f565b5050565b600054600160a060020a031681565b600080805b8451831015612cff576001604060020a03858481518110612cb457fe5b90602001906020020151169150604060020a858481518110612cd257fe5b90602001906020020151811515612ce557fe5b049050612cf486838387611625565b600190920191612c97565b505050505050565b6000612d1288613300565b805490915033600160a060020a039081166101009092041614612d3457600080fd5b6000815460ff166002811115612d4657fe5b14612d5057600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7c600282018787614f65565b50612d8b600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3557600080fd5b612e3e84613346565b91506001600383015460a060020a900460ff166002811115612e5c57fe5b14612e6657600080fd5b6002820154600183018054612f2d926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb65790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b905061100681611848565b600080612f43614e61565b612f4b614e61565b6000806000806000612f5c8a613300565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f820181900481020160405190810160405280929190818152602001828054600181600116156101000203166002900480156130115780601f10612fe657610100808354040283529160200191613011565b820191906000526020600020905b815481529060010190602001808311612ff457829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130b05780601f10613085576101008083540402835291602001916130b0565b820191906000526020600020905b81548152906001019060200180831161309357829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b600061311288613300565b805490915033600160a060020a03908116610100909204161461313457600080fd5b6002815460ff16600281111561314657fe5b1461315057600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317c600282018787614f65565b5061318b600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600061321a614019565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613281578082015183820152602001613269565b50505050905090810190601f1680156132ae5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132cc57600080fd5b6102c65a03f115156132dd57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331a57600080fd5b606480546001604060020a03841690811061333157fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061336057600080fd5b606580546001604060020a03841690811061333157fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133b0578082015183820152602001613398565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341a57fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134845780925061368c565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c48382614fd3565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354557fe5b905291905081518155602082015181600101908051613568929160200190614fff565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561368057fe5b02179055505050508092505b5050979650505050505050565b60008060006136ab60018787876140b0565b9250846001604060020a0316866001604060020a031614156136cc57612cff565b8215156136d857612cff565b6136e186613346565b91506136ec85613346565b8254909150839010156136fe57600080fd5b81548390038255805483018082558390101561371957600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117c860008787866140b0565b600061377882613300565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b95750805433600160a060020a0390811661010090920416145b1515612c7f57600080fd5b600080808080806001604060020a0387168190116137e157600080fd5b6137ea89611848565b98506137f589613346565b955061380087613300565b94506000600387015460a060020a900460ff16600281111561381e57fe5b1461382857600080fd5b60028601546001604060020a038b811691161415613b23576000855460ff16600281111561385257fe5b1415613868576138638989896140d6565b613e0f565b6002855460ff16600281111561387a57fe5b141561388b57613863898989614130565b6001855460ff16600281111561389d57fe5b1415613b21576139c9866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fc5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b557fe5b60028111156139c057fe5b9052508861436e565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fc57506001604060020a038414155b15613b0257600186015460001901841415613ae5576002860154600187018054613ad8926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa457602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a615790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b925061386389848a613699565b613afc89896001848a6001018054905003036143d4565b50613e0f565b613b14898988600101805490506143d4565b98506138638989896144de565bfe5b613c498661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbf57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3557fe5b6002811115613c4057fe5b9052508b61436e565b6001604060020a0390811692508214613b21576000855460ff166002811115613c6e57fe5b1415613c9f5760028601546001604060020a03888116911614613c8d57fe5b613afc898988600101805490506143d4565b6001855460ff166002811115613cb157fe5b1415613dd357613d9e866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393f57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fc575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b557fe5b6001604060020a039081169150811480613db757508181115b15613ae557613b1489896001858a6001018054905003036143d4565b6002855460ff166002811115613de557fe5b1415613b2157613e0289896001858a6001018054905003036143d4565b985061386389898961460e565b50505050505050505050565b609c5490565b600080806001604060020a0384161515613e3e5760009250613ee2565b613e4784613346565b6002810154909250613e61906001604060020a0316613300565b90506000815460ff166002811115613e7557fe5b1415613e8357839250613ee2565b6002815460ff166002811115613e9557fe5b14613e9c57fe5b6002820154613eb3906001604060020a0316610e16565b1515613ec157839250613ee2565b6002820154613edf9060c060020a90046001604060020a0316613e21565b92505b5050919050565b613ef1614e61565b613f0382600160a060020a0316614921565b92915050565b600080600283516002811115613f1b57fe5b14613f2257fe5b82606001516001604060020a03161515613f3f5760019150610eb2565b613f4c8360600151613300565b9050613f73816101006040519081016040528154909190829060ff16600281111561209a57fe5b6001019392505050565b600080600160a060020a0383161515613f995760009150610eb2565b50506000903b1190565b613fab614e61565b613f0382614921565b60035415613fc157600080fd5b600160a060020a0381161515613fd657600080fd5b613fde614968565b6069805461010060a860020a031916610100600160a060020a03841602179055600161400b606482614ebf565b506001612c7f606582614fd3565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561408c57600080fd5b6102c65a03f1151561409d57600080fd5b50505060405180519250829150505b5090565b806140be8585808685614982565b90506140cd8584868685614982565b95945050505050565b6000806140e285613346565b91506141238360006040518059106140f75750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613377565b9050610de2858286613699565b600080600061413e86613346565b9250601461426784610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161419b5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b600281111561425f57fe5b905250614aea565b1061427157600080fd5b61427a84610e16565b1561428457600080fd5b6002830154600184018054614321926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561195957600091825260209182902080546001604060020a031684529082028301929091600891018084116119165750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613377565b91506143618460006040518059106119b85750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613377565b9050612cff868287613699565b6000805b8360200151518110156143c257826001604060020a03168460200151828151811061439957fe5b906020019060200201516001604060020a031614156143ba578091506143cd565b600101614372565b6001604060020a0391505b5092915050565b6000806143df614e61565b60006143ea87613346565b60018101549093508590036040518059106144025750595b90808252806020026020018201604052509150600090505b600183015485900381101561448d576001830180548290811061443957fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061446e57fe5b6001604060020a0390921660209283029091019091015260010161441a565b600283015460038401546144c7916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613377565b93506144d4878588613699565b5050509392505050565b60006144e8614e61565b6000806144f487613346565b6001810154909450600a901061450957600080fd5b6001808501540160405180591061451d5750595b90808252806020026020018201604052509250600091505b60018401548210156145a8576001840180548390811061455157fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061458657fe5b6001604060020a03909216602092830290910190910152600190910190614535565b600184015485908490815181106145bb57fe5b6001604060020a03928316602091820290920101526002850154600386015461460192828116928792600092839260c060020a90041690600160a060020a031682613377565b90506117c8878288613699565b60008061461a85613346565b9150601461470583610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57600091825260209182902080546001604060020a0316845290820283019290916008910180841161419b575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b1061470f57600080fd5b61471883610e16565b1561472257600080fd5b6002820154600183018054614123926001604060020a031691906020808202016040519081016040528092919081815260200182805480156147b557602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147725790505b5050505050856148e0866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561485757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116148145790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156148cd57fe5b60028111156148d857fe5b905250614c00565b6001604060020a03166148f1613e1b565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613377565b614929614e61565b60016040518059106149385750595b90808252806020026020018201604052509050818160008151811061495957fe5b60209081029091010152919050565b6003541561497557600080fd5b61497d614c98565b600355565b600080600080866001604060020a0316886001604060020a0316146149a9576101006149ac565b60005b61ffff1692508493506149be88613346565b600281015460038201549193506149f0918b916001604060020a0316908a908a908890600160a060020a03168a614c9c565b9350600090505b60018201546001604060020a0382161015614a8357614a798983600101836001604060020a0316815481101515614a2a57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c9c565b93506001016149f7565b60028201546000604060020a9091046001604060020a03161115614ade5760028201546003830154614adb918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c9c565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614b0a5760009150610eb2565b614b178360a00151613346565b9050613f7381610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57600091825260209182902080546001604060020a0316845290820283019290916008910180841161419b575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b6000806000614c128460400151613300565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ee257614c5c84602001518281518110614c4d57fe5b90602001906020020151613300565b80549092506001604060020a0380851660a860020a909204161115614c9057815460a860020a90046001604060020a031692505b600101614c2d565b4390565b80600080614ca989613300565b600181015490915069010000000000000000009004600160a060020a031615801590614cd55750600083115b1561368c578915614dad57600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d7c57600080fd5b6102c65a03f11515614d8d57600080fd5b505050604051805192505082821115614da557600080fd5b81925061368c565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614e4057600080fd5b6102c65a03f11515614e5157600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e8f614e61565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611dd057600402816004028360005260206000209182019101611dd091906150b3565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f2c57805160ff1916838001178555614f59565b82800160010185558215614f59579182015b82811115614f59578251825591602001919060010190614f3e565b506140ac92915061511a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614fa65782800160ff19823516178555614f59565b82800160010185558215614f59579182015b82811115614f59578235825591602001919060010190614fb8565b815481835581811511611dd057600402816004028360005260206000209182019101611dd09190615134565b828054828255906000526020600020906003016004900481019282156150a75791602002820160005b8382111561507257835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302615028565b80156150a55782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615072565b505b506140ac929150615184565b610ee291905b808211156140ac5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061510360028301826151a9565b6151116003830160006151a9565b506004016150b9565b610ee291905b808211156140ac5760008155600101615120565b610ee291905b808211156140ac57600080825561515460018301826151f0565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff1916905560040161513a565b610ee291905b808211156140ac57805467ffffffffffffffff1916815560010161518a565b50805460018160011615610100020316600290046000825580601f106151cf57506151ed565b601f0160209004906000526020600020908101906151ed919061511a565b50565b5080546000825560030160049004906000526020600020908101906151ed919061511a5600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a723058200d102251d9d6cb4d5ef35a97fd17ca31b10eff7630ddb6c6bd29dff4d2a62eaa0029","realRuntimeBytecode":"6060604052600436106102575763ffffffff60e060020a6000350416627611c6811461025c578063178e6079146102925780631c8e8568146102b75780632101a6ad146102de57806324fea3b0146102fd5780632a8ec8cc146103105780632ee88808146103235780632f6b64ca1461034557806332ce8ebc1461040157806332f0a3b51461041f578063387402911461044e5780633f657a461461046657806343387983146104f457806347c5ef43146105165780634c4316c7146105455780634eafbcd51461057957806350f8a8031461059857806352dc7dcc146105d35780635503d9ba1461061557806357adafb61461062857806360b1e057146106775780636293c7021461068a5780636ba3cc87146106a95780636e802c6a146106d757806372116e9214610791578063796d5654146107e257806379f4542e146108015780637e7db6e1146108205780637f61fa931461083f57806380afdea81461088157806381ea4408146108945780638322fff2146108b35780638b3dd749146108c65780639b3fdf4c146108d95780639d4941d8146108ec5780639da47a6b1461090b578063a1658fad1461091e578063ab8be23114610981578063af9f456314610997578063b12b5f76146109b9578063c4d66de8146109cf578063c8ae070f146109ee578063cc19ecf714610a04578063ce17273c14610a50578063d4aae0c414610a9f578063d639cd7314610ab2578063db7c231414610b1a578063e9c211e214610b66578063eba8ba0614610b88578063f6b24b1c14610cde578063f92a79ff14610d2a578063fbfa77cf14610d7b575b600080fd5b341561026757600080fd5b6102906001604060020a0360043516600160a060020a0360243581169060443516606435610d8e565b005b341561029d57600080fd5b6102a5610de9565b60405190815260200160405180910390f35b34156102c257600080fd5b6102ca610e0d565b604051901515815260200160405180910390f35b34156102e957600080fd5b6102ca6001604060020a0360043516610e16565b341561030857600080fd5b6102a5610eb8565b341561031b57600080fd5b6102a5610eda565b341561032e57600080fd5b6102906001604060020a0360043516602435610ee5565b341561035057600080fd5b61036a6001604060020a0360043581169060243516611019565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103c45780820151838201526020016103ac565b50505050905090810190601f1680156103f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b341561040c57600080fd5b6102906004803560248101910135611147565b341561042a57600080fd5b6104326111db565b604051600160a060020a03909116815260200160405180910390f35b341561045957600080fd5b610290600435151561125b565b341561047157600080fd5b6104856001604060020a03600435166112c1565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104d957fe5b60ff1681526020019850505050505050505060405180910390f35b34156104ff57600080fd5b6102906001604060020a036004351660243561143e565b341561052157600080fd5b6102906001604060020a036004358116906024358116906044359060643516611625565b341561055057600080fd5b6102906001604060020a0360043581169060243516600160a060020a036044351660643561163a565b341561058457600080fd5b6102ca600160a060020a03600435166117d1565b34156105a357600080fd5b6105b76001604060020a0360043516611848565b6040516001604060020a03909116815260200160405180910390f35b34156105de57600080fd5b6105b760246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516611a3d565b341561062057600080fd5b6102a5611cca565b341561063357600080fd5b6102906004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611cd495505050505050565b341561068257600080fd5b6102a5611d3f565b341561069557600080fd5b610290600160a060020a0360043516611d63565b34156106b457600080fd5b6102906001604060020a0360043516600160a060020a0360243516604435611dc4565b34156106e257600080fd5b6105b760048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611dd5915050565b341561079c57600080fd5b6105b76024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612042565b34156107ed57600080fd5b6102906001604060020a03600435166124ef565b341561080c57600080fd5b610290600160a060020a0360043516612559565b341561082b57600080fd5b6102ca600160a060020a03600435166125d1565b341561084a57600080fd5b6105b760246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166125d7565b341561088c57600080fd5b6102a5612653565b341561089f57600080fd5b6102a5600160a060020a0360043516612659565b34156108be57600080fd5b6104326126db565b34156108d157600080fd5b6102a56126e0565b34156108e457600080fd5b6102a56126e6565b34156108f757600080fd5b610290600160a060020a036004351661270a565b341561091657600080fd5b6102a5612881565b341561092957600080fd5b6102ca60048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061288795505050505050565b341561098c57600080fd5b6102906004356129c5565b34156109a257600080fd5b6102906001604060020a03600435166024356129ca565b34156109c457600080fd5b610290600435612a5f565b34156109da57600080fd5b610290600160a060020a0360043516612ab7565b34156109f957600080fd5b610290600435612ad4565b3415610a0f57600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b43565b3415610a5b57600080fd5b6102906004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4c95505050505050565b3415610aaa57600080fd5b610432612c83565b3415610abd57600080fd5b610290600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c92915050565b3415610b2557600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d07565b3415610b7157600080fd5b6102906001604060020a0360043516602435612e10565b3415610b9357600080fd5b610ba76001604060020a0360043516612f38565b60405180896002811115610bb757fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610c38578082015183820152602001610c20565b50505050905090810190601f168015610c655780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c9b578082015183820152602001610c83565b50505050905090810190601f168015610cc85780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610ce957600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613107565b3415610d3557600080fd5b61043260046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061321095505050505050565b3415610d8657600080fd5b6104326132ec565b6000600160a060020a0384161515610da557600080fd5b610dd4846020604051908101604052806000815250602060405190810160405260008082526203f48090611dd5565b9050610de28186858561163a565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610e2283613300565b90506000815460ff166002811115610e3657fe5b1415610e455760009150610eb2565b6002815460ff166002811115610e5757fe5b14610e5e57fe5b6001810154604060020a900460ff1615610e7b5760019150610eb2565b60018101546001604060020a03161515610e985760009150610eb2565b6001810154610eaf906001604060020a0316610e16565b91505b50919050565b6040516000805160206152168339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610f0a57600080fd5b610f1384613346565b91506001600383015460a060020a900460ff166002811115610f3157fe5b14610f3b57600080fd5b6002820154600183018054611006926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610fce57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f8b5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613377565b9050611013848285613699565b50505050565b600080611024614e61565b60008061103087613346565b915081600101600187036001604060020a031681548110151561104f57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a0316945061108385613300565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111375780601f1061110c57610100808354040283529160200191611137565b820191906000526020600020905b81548152906001019060200180831161111a57829003601f168201915b5050505050925050509250925092565b6000604051600080516020615216833981519152815260130160405180910390206111923382600060405180591061117c5750595b9080825280602002602001820160405250612887565b151561119d57600080fd5b600091505b60ff821683901015611013576111d0848460ff85168181106111c057fe5b9050602002013560001916612ad4565b6001909101906111a2565b60008054600160a060020a031615156111f357600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561123c57600080fd5b6102c65a03f1151561124d57600080fd5b505050604051805191505090565b604051600080516020615216833981519152815260130160405180910390206112a33382600060405180591061117c5750599080825280602002602001820160405250612887565b15156112ae57600080fd5b506069805460ff19169115919091179055565b6000806000806000806000806112d5614e73565b6112de8a613346565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561137657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116113335790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ec57fe5b60028111156113f757fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061144c85611848565b945061145785613346565b92506000600384015460a060020a900460ff16600281111561147557fe5b1461147f57600080fd5b6002830154611496906001604060020a031661376d565b600283015460018401805461155e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561152957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114e65790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613377565b915061156b858386613699565b6002830154611582906001604060020a0316613300565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b151561160a57600080fd5b6102c65a03f1151561161b57600080fd5b5050505050505050565b61162e8461376d565b611013848484846137c4565b600080806001604060020a03871681901161165457600080fd5b6000841161166157600080fd5b600160a060020a038516151561167657600080fd5b61167f87613300565b92506000835460ff16600281111561169357fe5b1461169d57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b151561171357600080fd5b6102c65a03f1151561172457600080fd5b50505060405180519050151561173957600080fd5b61176a87600060405180591061174c5750595b908082528060200260200182016040525060008060008a6000613377565b915061177582613346565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a36117c8878386896137c4565b50505050505050565b606954600090819060ff16806117ee5750600160a060020a038316155b156117fc5760019150610eb2565b600160a060020a03831660009081526068602052604090205460ff16156118265760019150610eb2565b61182f83612659565b60009081526067602052604090205460ff169392505050565b60008060008061185785613346565b92506000600384015460a060020a900460ff16600281111561187557fe5b1461188257849350611a35565b60028301546000604060020a9091046001604060020a03161180156118c157506002830154608060020a90046001604060020a03166118bf613e1b565b115b15611a0457600283015460018401805461198d926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561195957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116119165790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b60028401549092506119e490604060020a90046001604060020a031660006040518059106119b85750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613377565b90506119f585828560000154613699565b809450611a0185613346565b92505b611a0d85613e21565b90506001604060020a0380821690861614611a3157611a3185828560000154613699565b8093505b505050919050565b6000611a48826117d1565b1515611a5357600080fd5b5060648054908160018101611a688382614ebf565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b5957fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c4a929160200190614eeb565b5060e082015181600301908051611c65929160200190614eeb565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015611013576001604060020a03848481518110611cf657fe5b90602001906020020151169150604060020a848481518110611d1457fe5b90602001906020020151811515611d2757fe5b049050611d34828261143e565b600190920191611cd9565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b60405160008051602061521683398151915281526013016040518091039020611d8b82613ee9565b611d96338383612887565b1515611da157600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611dd083338484610d8e565b505050565b6000611de0826117d1565b1515611deb57600080fd5b5060648054908160018101611e008382614ebf565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e7d57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f6e929160200190614eeb565b5060e082015181600301908051611f89929160200190614eeb565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fff578082015183820152602001611fe7565b50505050905090810190601f16801561202c5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061204e836117d1565b151561205957600080fd5b6001604060020a038516156122765761207185613300565b90506014612263826101006040519081016040528154909190829060ff16600281111561209a57fe5b60028111156120a557fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121b35780601f10612188576101008083540402835291602001916121b3565b820191906000526020600020905b81548152906001019060200180831161219657829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122555780601f1061222a57610100808354040283529160200191612255565b820191906000526020600020905b81548152906001019060200180831161223857829003601f168201915b505050505081525050613f09565b6001604060020a03161061227657600080fd5b606480549250826001810161228b8382614ebf565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561237b57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161246c929160200190614eeb565b5060e082015181600301908051612487929160200190614eeb565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124fa82613300565b90506125058261376d565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b604051600080516020615216833981519152815260130160405180910390206125a13382600060405180591061117c5750599080825280602002602001820160405250612887565b15156125ac57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126483388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611dd5565b979650505050505050565b60015481565b6000612663614e61565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126a75780518252601f199092019160209182019101612688565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080612716836125d1565b151561272157600080fd5b6127296111db565b915061273482613f7d565b151561273f57600080fd5b600160a060020a03831615156127915781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561278c57600080fd5b611dd0565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127e857600080fd5b6102c65a03f115156127f957600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561286157600080fd5b6102c65a03f1151561287257600080fd5b50505060405180515050505050565b609c5481565b6000612891614e61565b600080845111156128aa57835160200290508391508082525b600054600160a060020a031615806129bb575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015612951578082015183820152602001612939565b50505050905090810190601f16801561297e5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561299f57600080fd5b6102c65a03f115156129b057600080fd5b505050604051805190505b9695505050505050565b609c55565b6000806129d684611848565b93506129e184613346565b600281015490925060c060020a90046001604060020a03161515612a0457600080fd5b6000600383015460a060020a900460ff166002811115612a2057fe5b14612a2a57600080fd5b6002820154612a41906001604060020a031661376d565b60028201546110069060c060020a90046001604060020a0316613e21565b60405160008051602061521683398151915281526013016040518091039020612a8782613fa3565b612a92338383612887565b1515612a9d57600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612ac457600080fd5b612acd81613fb4565b5042609c55565b60405160008051602061521683398151915281526013016040518091039020612b1c3382600060405180591061117c5750599080825280602002602001820160405250612887565b1515612b2757600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b4e88613300565b805490915033600160a060020a039081166101009092041614612b7057600080fd5b6001815460ff166002811115612b8257fe5b14612b8c57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bb8600282018787614f65565b50612bc7600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612c7f57612c76828281518110612c6757fe5b90602001906020020151611848565b50600101612c4f565b5050565b600054600160a060020a031681565b600080805b8451831015612cff576001604060020a03858481518110612cb457fe5b90602001906020020151169150604060020a858481518110612cd257fe5b90602001906020020151811515612ce557fe5b049050612cf486838387611625565b600190920191612c97565b505050505050565b6000612d1288613300565b805490915033600160a060020a039081166101009092041614612d3457600080fd5b6000815460ff166002811115612d4657fe5b14612d5057600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7c600282018787614f65565b50612d8b600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3557600080fd5b612e3e84613346565b91506001600383015460a060020a900460ff166002811115612e5c57fe5b14612e6657600080fd5b6002820154600183018054612f2d926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb65790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b905061100681611848565b600080612f43614e61565b612f4b614e61565b6000806000806000612f5c8a613300565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f820181900481020160405190810160405280929190818152602001828054600181600116156101000203166002900480156130115780601f10612fe657610100808354040283529160200191613011565b820191906000526020600020905b815481529060010190602001808311612ff457829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130b05780601f10613085576101008083540402835291602001916130b0565b820191906000526020600020905b81548152906001019060200180831161309357829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b600061311288613300565b805490915033600160a060020a03908116610100909204161461313457600080fd5b6002815460ff16600281111561314657fe5b1461315057600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317c600282018787614f65565b5061318b600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600061321a614019565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613281578082015183820152602001613269565b50505050905090810190601f1680156132ae5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132cc57600080fd5b6102c65a03f115156132dd57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331a57600080fd5b606480546001604060020a03841690811061333157fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061336057600080fd5b606580546001604060020a03841690811061333157fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133b0578082015183820152602001613398565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341a57fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134845780925061368c565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c48382614fd3565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354557fe5b905291905081518155602082015181600101908051613568929160200190614fff565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561368057fe5b02179055505050508092505b5050979650505050505050565b60008060006136ab60018787876140b0565b9250846001604060020a0316866001604060020a031614156136cc57612cff565b8215156136d857612cff565b6136e186613346565b91506136ec85613346565b8254909150839010156136fe57600080fd5b81548390038255805483018082558390101561371957600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117c860008787866140b0565b600061377882613300565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b95750805433600160a060020a0390811661010090920416145b1515612c7f57600080fd5b600080808080806001604060020a0387168190116137e157600080fd5b6137ea89611848565b98506137f589613346565b955061380087613300565b94506000600387015460a060020a900460ff16600281111561381e57fe5b1461382857600080fd5b60028601546001604060020a038b811691161415613b23576000855460ff16600281111561385257fe5b1415613868576138638989896140d6565b613e0f565b6002855460ff16600281111561387a57fe5b141561388b57613863898989614130565b6001855460ff16600281111561389d57fe5b1415613b21576139c9866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fc5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b557fe5b60028111156139c057fe5b9052508861436e565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fc57506001604060020a038414155b15613b0257600186015460001901841415613ae5576002860154600187018054613ad8926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa457602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a615790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b925061386389848a613699565b613afc89896001848a6001018054905003036143d4565b50613e0f565b613b14898988600101805490506143d4565b98506138638989896144de565bfe5b613c498661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbf57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3557fe5b6002811115613c4057fe5b9052508b61436e565b6001604060020a0390811692508214613b21576000855460ff166002811115613c6e57fe5b1415613c9f5760028601546001604060020a03888116911614613c8d57fe5b613afc898988600101805490506143d4565b6001855460ff166002811115613cb157fe5b1415613dd357613d9e866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393f57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fc575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b557fe5b6001604060020a039081169150811480613db757508181115b15613ae557613b1489896001858a6001018054905003036143d4565b6002855460ff166002811115613de557fe5b1415613b2157613e0289896001858a6001018054905003036143d4565b985061386389898961460e565b50505050505050505050565b609c5490565b600080806001604060020a0384161515613e3e5760009250613ee2565b613e4784613346565b6002810154909250613e61906001604060020a0316613300565b90506000815460ff166002811115613e7557fe5b1415613e8357839250613ee2565b6002815460ff166002811115613e9557fe5b14613e9c57fe5b6002820154613eb3906001604060020a0316610e16565b1515613ec157839250613ee2565b6002820154613edf9060c060020a90046001604060020a0316613e21565b92505b5050919050565b613ef1614e61565b613f0382600160a060020a0316614921565b92915050565b600080600283516002811115613f1b57fe5b14613f2257fe5b82606001516001604060020a03161515613f3f5760019150610eb2565b613f4c8360600151613300565b9050613f73816101006040519081016040528154909190829060ff16600281111561209a57fe5b6001019392505050565b600080600160a060020a0383161515613f995760009150610eb2565b50506000903b1190565b613fab614e61565b613f0382614921565b60035415613fc157600080fd5b600160a060020a0381161515613fd657600080fd5b613fde614968565b6069805461010060a860020a031916610100600160a060020a03841602179055600161400b606482614ebf565b506001612c7f606582614fd3565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561408c57600080fd5b6102c65a03f1151561409d57600080fd5b50505060405180519250829150505b5090565b806140be8585808685614982565b90506140cd8584868685614982565b95945050505050565b6000806140e285613346565b91506141238360006040518059106140f75750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613377565b9050610de2858286613699565b600080600061413e86613346565b9250601461426784610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161419b5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b600281111561425f57fe5b905250614aea565b1061427157600080fd5b61427a84610e16565b1561428457600080fd5b6002830154600184018054614321926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561195957600091825260209182902080546001604060020a031684529082028301929091600891018084116119165750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613377565b91506143618460006040518059106119b85750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613377565b9050612cff868287613699565b6000805b8360200151518110156143c257826001604060020a03168460200151828151811061439957fe5b906020019060200201516001604060020a031614156143ba578091506143cd565b600101614372565b6001604060020a0391505b5092915050565b6000806143df614e61565b60006143ea87613346565b60018101549093508590036040518059106144025750595b90808252806020026020018201604052509150600090505b600183015485900381101561448d576001830180548290811061443957fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061446e57fe5b6001604060020a0390921660209283029091019091015260010161441a565b600283015460038401546144c7916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613377565b93506144d4878588613699565b5050509392505050565b60006144e8614e61565b6000806144f487613346565b6001810154909450600a901061450957600080fd5b6001808501540160405180591061451d5750595b90808252806020026020018201604052509250600091505b60018401548210156145a8576001840180548390811061455157fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061458657fe5b6001604060020a03909216602092830290910190910152600190910190614535565b600184015485908490815181106145bb57fe5b6001604060020a03928316602091820290920101526002850154600386015461460192828116928792600092839260c060020a90041690600160a060020a031682613377565b90506117c8878288613699565b60008061461a85613346565b9150601461470583610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57600091825260209182902080546001604060020a0316845290820283019290916008910180841161419b575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b1061470f57600080fd5b61471883610e16565b1561472257600080fd5b6002820154600183018054614123926001604060020a031691906020808202016040519081016040528092919081815260200182805480156147b557602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147725790505b5050505050856148e0866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561485757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116148145790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156148cd57fe5b60028111156148d857fe5b905250614c00565b6001604060020a03166148f1613e1b565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613377565b614929614e61565b60016040518059106149385750595b90808252806020026020018201604052509050818160008151811061495957fe5b60209081029091010152919050565b6003541561497557600080fd5b61497d614c98565b600355565b600080600080866001604060020a0316886001604060020a0316146149a9576101006149ac565b60005b61ffff1692508493506149be88613346565b600281015460038201549193506149f0918b916001604060020a0316908a908a908890600160a060020a03168a614c9c565b9350600090505b60018201546001604060020a0382161015614a8357614a798983600101836001604060020a0316815481101515614a2a57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c9c565b93506001016149f7565b60028201546000604060020a9091046001604060020a03161115614ade5760028201546003830154614adb918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c9c565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614b0a5760009150610eb2565b614b178360a00151613346565b9050613f7381610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57600091825260209182902080546001604060020a0316845290820283019290916008910180841161419b575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b6000806000614c128460400151613300565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ee257614c5c84602001518281518110614c4d57fe5b90602001906020020151613300565b80549092506001604060020a0380851660a860020a909204161115614c9057815460a860020a90046001604060020a031692505b600101614c2d565b4390565b80600080614ca989613300565b600181015490915069010000000000000000009004600160a060020a031615801590614cd55750600083115b1561368c578915614dad57600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d7c57600080fd5b6102c65a03f11515614d8d57600080fd5b505050604051805192505082821115614da557600080fd5b81925061368c565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614e4057600080fd5b6102c65a03f11515614e5157600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e8f614e61565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611dd057600402816004028360005260206000209182019101611dd091906150b3565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f2c57805160ff1916838001178555614f59565b82800160010185558215614f59579182015b82811115614f59578251825591602001919060010190614f3e565b506140ac92915061511a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614fa65782800160ff19823516178555614f59565b82800160010185558215614f59579182015b82811115614f59578235825591602001919060010190614fb8565b815481835581811511611dd057600402816004028360005260206000209182019101611dd09190615134565b828054828255906000526020600020906003016004900481019282156150a75791602002820160005b8382111561507257835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302615028565b80156150a55782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615072565b505b506140ac929150615184565b610ee291905b808211156140ac5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061510360028301826151a9565b6151116003830160006151a9565b506004016150b9565b610ee291905b808211156140ac5760008155600101615120565b610ee291905b808211156140ac57600080825561515460018301826151f0565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff1916905560040161513a565b610ee291905b808211156140ac57805467ffffffffffffffff1916815560010161518a565b50805460018160011615610100020316600290046000825580601f106151cf57506151ed565b601f0160209004906000526020600020908101906151ed919061511a565b50565b5080546000825560030160049004906000526020600020908101906151ed919061511a5600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820","linkReferences":{},"swarmHash":"0d102251d9d6cb4d5ef35a97fd17ca31b10eff7630ddb6c6bd29dff4d2a62eaa","gasEstimates":{"creation":{"codeDepositCost":"4224200","executionCost":"25083","totalCost":"4249283"},"external":{"APP_ADDR_NAMESPACE()":"258","ETH()":"996","EVMSCRIPT_REGISTRY_APP()":"962","EVMSCRIPT_REGISTRY_APP_ID()":"676","PLUGIN_MANAGER_ROLE()":"infinite","addDelegate(string,string,uint64,address)":"infinite","addGiver(address,string,string,uint64,address)":"infinite","addGiver(string,string,uint64,address)":"infinite","addGiverAndDonate(uint64,address,address,uint256)":"infinite","addGiverAndDonate(uint64,address,uint256)":"infinite","addProject(string,string,address,uint64,uint64,address)":"infinite","addValidPluginContract(bytes32)":"infinite","addValidPluginContracts(bytes32[])":"infinite","addValidPluginInstance(address)":"infinite","allowRecoverability(address)":"919","appId()":"1074","canPerform(address,bytes32,uint256[])":"infinite","cancelPayment(uint64,uint256)":"infinite","cancelPledge(uint64,uint256)":"infinite","cancelProject(uint64)":"infinite","confirmPayment(uint64,uint256)":"infinite","donate(uint64,uint64,address,uint256)":"infinite","getCodeHash(address)":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"1140","getPledge(uint64)":"infinite","getPledgeAdmin(uint64)":"infinite","getPledgeDelegate(uint64,uint64)":"infinite","getRecoveryVault()":"infinite","initialize(address)":"infinite","isProjectCanceled(uint64)":"infinite","isValidPlugin(address)":"infinite","kernel()":"1557","mNormalizePledge(uint64[])":"infinite","mTransfer(uint64,uint256[],uint64)":"infinite","mWithdraw(uint256[])":"infinite","mock_time()":"1206","normalizePledge(uint64)":"infinite","numberOfPledgeAdmins()":"841","numberOfPledges()":"556","removeValidPluginContract(bytes32)":"infinite","removeValidPluginInstance(address)":"infinite","setMockedTime(uint256)":"21011","transfer(uint64,uint64,uint256,uint64)":"infinite","transferToVault(address)":"infinite","updateDelegate(uint64,address,string,string,uint64)":"infinite","updateGiver(uint64,address,string,string,uint64)":"infinite","updateProject(uint64,address,string,string,uint64)":"infinite","useWhitelist(bool)":"infinite","vault()":"1722","whitelistDisabled()":"492","withdraw(uint64,uint256)":"infinite"},"internal":{"_getTime()":"215"}},"functionHashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","PLUGIN_MANAGER_ROLE()":"24fea3b0","addDelegate(string,string,uint64,address)":"52dc7dcc","addGiver(address,string,string,uint64,address)":"6e802c6a","addGiver(string,string,uint64,address)":"7f61fa93","addGiverAndDonate(uint64,address,address,uint256)":"007611c6","addGiverAndDonate(uint64,address,uint256)":"6ba3cc87","addProject(string,string,address,uint64,uint64,address)":"72116e92","addValidPluginContract(bytes32)":"c8ae070f","addValidPluginContracts(bytes32[])":"32ce8ebc","addValidPluginInstance(address)":"79f4542e","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","cancelPayment(uint64,uint256)":"e9c211e2","cancelPledge(uint64,uint256)":"af9f4563","cancelProject(uint64)":"796d5654","confirmPayment(uint64,uint256)":"2ee88808","donate(uint64,uint64,address,uint256)":"4c4316c7","getCodeHash(address)":"81ea4408","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getPledge(uint64)":"3f657a46","getPledgeAdmin(uint64)":"eba8ba06","getPledgeDelegate(uint64,uint64)":"2f6b64ca","getRecoveryVault()":"32f0a3b5","initialize(address)":"c4d66de8","isProjectCanceled(uint64)":"2101a6ad","isValidPlugin(address)":"4eafbcd5","kernel()":"d4aae0c4","mNormalizePledge(uint64[])":"ce17273c","mTransfer(uint64,uint256[],uint64)":"d639cd73","mWithdraw(uint256[])":"57adafb6","mock_time()":"9da47a6b","normalizePledge(uint64)":"50f8a803","numberOfPledgeAdmins()":"5503d9ba","numberOfPledges()":"2a8ec8cc","removeValidPluginContract(bytes32)":"b12b5f76","removeValidPluginInstance(address)":"6293c702","setMockedTime(uint256)":"ab8be231","transfer(uint64,uint64,uint256,uint64)":"47c5ef43","transferToVault(address)":"9d4941d8","updateDelegate(uint64,address,string,string,uint64)":"cc19ecf7","updateGiver(uint64,address,string,string,uint64)":"db7c2314","updateProject(uint64,address,string,string,uint64)":"f6b24b1c","useWhitelist(bool)":"38740291","vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568","withdraw(uint64,uint256)":"43387983"},"abiDefinition":[{"constant":false,"inputs":[{"name":"idReceiver","type":"uint64"},{"name":"donorAddress","type":"address"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"addGiverAndDonate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"projectId","type":"uint64"}],"name":"isProjectCanceled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PLUGIN_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"numberOfPledges","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"confirmPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"idxDelegate","type":"uint64"}],"name":"getPledgeDelegate","outputs":[{"name":"idDelegate","type":"uint64"},{"name":"addr","type":"address"},{"name":"name","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"contractHashes","type":"bytes32[]"}],"name":"addValidPluginContracts","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"useWhitelist","type":"bool"}],"name":"useWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"getPledge","outputs":[{"name":"amount","type":"uint256"},{"name":"owner","type":"uint64"},{"name":"nDelegates","type":"uint64"},{"name":"intendedProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"oldPledge","type":"uint64"},{"name":"token","type":"address"},{"name":"pledgeState","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idSender","type":"uint64"},{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"},{"name":"idReceiver","type":"uint64"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"idReceiver","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"donate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isValidPlugin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"normalizePledge","outputs":[{"name":"","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addDelegate","outputs":[{"name":"idDelegate","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"numberOfPledgeAdmins","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"pledgesAmounts","type":"uint256[]"}],"name":"mWithdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"removeValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idReceiver","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"addGiverAndDonate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"projectAdmin","type":"address"},{"name":"parentProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addProject","outputs":[{"name":"idProject","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"}],"name":"cancelProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"addValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getCodeHash","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"mock_time","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_t","type":"uint256"}],"name":"setMockedTime","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"cancelPledge","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"removeValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_vault","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"addValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idDelegate","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateDelegate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"pledges","type":"uint64[]"}],"name":"mNormalizePledge","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idSender","type":"uint64"},{"name":"pledgesAmounts","type":"uint256[]"},{"name":"idReceiver","type":"uint64"}],"name":"mTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateGiver","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"cancelPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"idAdmin","type":"uint64"}],"name":"getPledgeAdmin","outputs":[{"name":"adminType","type":"uint8"},{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"parentProject","type":"uint64"},{"name":"canceled","type":"bool"},{"name":"plugin","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"uint256"},{"indexed":true,"name":"to","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint256"}],"name":"CancelProject","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectUpdated","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/LiquidPledgingMock.sol","originalFilename":"contracts/LiquidPledgingMock.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/LiquidPledgingMock.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"60606040526069805460ff19169055341561001957600080fd5b615281806100286000396000f3006060604052600436106102575763ffffffff60e060020a6000350416627611c6811461025c578063178e6079146102925780631c8e8568146102b75780632101a6ad146102de57806324fea3b0146102fd5780632a8ec8cc146103105780632ee88808146103235780632f6b64ca1461034557806332ce8ebc1461040157806332f0a3b51461041f578063387402911461044e5780633f657a461461046657806343387983146104f457806347c5ef43146105165780634c4316c7146105455780634eafbcd51461057957806350f8a8031461059857806352dc7dcc146105d35780635503d9ba1461061557806357adafb61461062857806360b1e057146106775780636293c7021461068a5780636ba3cc87146106a95780636e802c6a146106d757806372116e9214610791578063796d5654146107e257806379f4542e146108015780637e7db6e1146108205780637f61fa931461083f57806380afdea81461088157806381ea4408146108945780638322fff2146108b35780638b3dd749146108c65780639b3fdf4c146108d95780639d4941d8146108ec5780639da47a6b1461090b578063a1658fad1461091e578063ab8be23114610981578063af9f456314610997578063b12b5f76146109b9578063c4d66de8146109cf578063c8ae070f146109ee578063cc19ecf714610a04578063ce17273c14610a50578063d4aae0c414610a9f578063d639cd7314610ab2578063db7c231414610b1a578063e9c211e214610b66578063eba8ba0614610b88578063f6b24b1c14610cde578063f92a79ff14610d2a578063fbfa77cf14610d7b575b600080fd5b341561026757600080fd5b6102906001604060020a0360043516600160a060020a0360243581169060443516606435610d8e565b005b341561029d57600080fd5b6102a5610de9565b60405190815260200160405180910390f35b34156102c257600080fd5b6102ca610e0d565b604051901515815260200160405180910390f35b34156102e957600080fd5b6102ca6001604060020a0360043516610e16565b341561030857600080fd5b6102a5610eb8565b341561031b57600080fd5b6102a5610eda565b341561032e57600080fd5b6102906001604060020a0360043516602435610ee5565b341561035057600080fd5b61036a6001604060020a0360043581169060243516611019565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103c45780820151838201526020016103ac565b50505050905090810190601f1680156103f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b341561040c57600080fd5b6102906004803560248101910135611147565b341561042a57600080fd5b6104326111db565b604051600160a060020a03909116815260200160405180910390f35b341561045957600080fd5b610290600435151561125b565b341561047157600080fd5b6104856001604060020a03600435166112c1565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104d957fe5b60ff1681526020019850505050505050505060405180910390f35b34156104ff57600080fd5b6102906001604060020a036004351660243561143e565b341561052157600080fd5b6102906001604060020a036004358116906024358116906044359060643516611625565b341561055057600080fd5b6102906001604060020a0360043581169060243516600160a060020a036044351660643561163a565b341561058457600080fd5b6102ca600160a060020a03600435166117d1565b34156105a357600080fd5b6105b76001604060020a0360043516611848565b6040516001604060020a03909116815260200160405180910390f35b34156105de57600080fd5b6105b760246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516611a3d565b341561062057600080fd5b6102a5611cca565b341561063357600080fd5b6102906004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611cd495505050505050565b341561068257600080fd5b6102a5611d3f565b341561069557600080fd5b610290600160a060020a0360043516611d63565b34156106b457600080fd5b6102906001604060020a0360043516600160a060020a0360243516604435611dc4565b34156106e257600080fd5b6105b760048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611dd5915050565b341561079c57600080fd5b6105b76024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612042565b34156107ed57600080fd5b6102906001604060020a03600435166124ef565b341561080c57600080fd5b610290600160a060020a0360043516612559565b341561082b57600080fd5b6102ca600160a060020a03600435166125d1565b341561084a57600080fd5b6105b760246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166125d7565b341561088c57600080fd5b6102a5612653565b341561089f57600080fd5b6102a5600160a060020a0360043516612659565b34156108be57600080fd5b6104326126db565b34156108d157600080fd5b6102a56126e0565b34156108e457600080fd5b6102a56126e6565b34156108f757600080fd5b610290600160a060020a036004351661270a565b341561091657600080fd5b6102a5612881565b341561092957600080fd5b6102ca60048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061288795505050505050565b341561098c57600080fd5b6102906004356129c5565b34156109a257600080fd5b6102906001604060020a03600435166024356129ca565b34156109c457600080fd5b610290600435612a5f565b34156109da57600080fd5b610290600160a060020a0360043516612ab7565b34156109f957600080fd5b610290600435612ad4565b3415610a0f57600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b43565b3415610a5b57600080fd5b6102906004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4c95505050505050565b3415610aaa57600080fd5b610432612c83565b3415610abd57600080fd5b610290600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c92915050565b3415610b2557600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d07565b3415610b7157600080fd5b6102906001604060020a0360043516602435612e10565b3415610b9357600080fd5b610ba76001604060020a0360043516612f38565b60405180896002811115610bb757fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610c38578082015183820152602001610c20565b50505050905090810190601f168015610c655780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c9b578082015183820152602001610c83565b50505050905090810190601f168015610cc85780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610ce957600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613107565b3415610d3557600080fd5b61043260046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061321095505050505050565b3415610d8657600080fd5b6104326132ec565b6000600160a060020a0384161515610da557600080fd5b610dd4846020604051908101604052806000815250602060405190810160405260008082526203f48090611dd5565b9050610de28186858561163a565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610e2283613300565b90506000815460ff166002811115610e3657fe5b1415610e455760009150610eb2565b6002815460ff166002811115610e5757fe5b14610e5e57fe5b6001810154604060020a900460ff1615610e7b5760019150610eb2565b60018101546001604060020a03161515610e985760009150610eb2565b6001810154610eaf906001604060020a0316610e16565b91505b50919050565b6040516000805160206152168339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610f0a57600080fd5b610f1384613346565b91506001600383015460a060020a900460ff166002811115610f3157fe5b14610f3b57600080fd5b6002820154600183018054611006926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610fce57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f8b5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613377565b9050611013848285613699565b50505050565b600080611024614e61565b60008061103087613346565b915081600101600187036001604060020a031681548110151561104f57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a0316945061108385613300565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111375780601f1061110c57610100808354040283529160200191611137565b820191906000526020600020905b81548152906001019060200180831161111a57829003601f168201915b5050505050925050509250925092565b6000604051600080516020615216833981519152815260130160405180910390206111923382600060405180591061117c5750595b9080825280602002602001820160405250612887565b151561119d57600080fd5b600091505b60ff821683901015611013576111d0848460ff85168181106111c057fe5b9050602002013560001916612ad4565b6001909101906111a2565b60008054600160a060020a031615156111f357600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561123c57600080fd5b6102c65a03f1151561124d57600080fd5b505050604051805191505090565b604051600080516020615216833981519152815260130160405180910390206112a33382600060405180591061117c5750599080825280602002602001820160405250612887565b15156112ae57600080fd5b506069805460ff19169115919091179055565b6000806000806000806000806112d5614e73565b6112de8a613346565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561137657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116113335790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ec57fe5b60028111156113f757fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061144c85611848565b945061145785613346565b92506000600384015460a060020a900460ff16600281111561147557fe5b1461147f57600080fd5b6002830154611496906001604060020a031661376d565b600283015460018401805461155e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561152957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114e65790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613377565b915061156b858386613699565b6002830154611582906001604060020a0316613300565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b151561160a57600080fd5b6102c65a03f1151561161b57600080fd5b5050505050505050565b61162e8461376d565b611013848484846137c4565b600080806001604060020a03871681901161165457600080fd5b6000841161166157600080fd5b600160a060020a038516151561167657600080fd5b61167f87613300565b92506000835460ff16600281111561169357fe5b1461169d57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b151561171357600080fd5b6102c65a03f1151561172457600080fd5b50505060405180519050151561173957600080fd5b61176a87600060405180591061174c5750595b908082528060200260200182016040525060008060008a6000613377565b915061177582613346565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a36117c8878386896137c4565b50505050505050565b606954600090819060ff16806117ee5750600160a060020a038316155b156117fc5760019150610eb2565b600160a060020a03831660009081526068602052604090205460ff16156118265760019150610eb2565b61182f83612659565b60009081526067602052604090205460ff169392505050565b60008060008061185785613346565b92506000600384015460a060020a900460ff16600281111561187557fe5b1461188257849350611a35565b60028301546000604060020a9091046001604060020a03161180156118c157506002830154608060020a90046001604060020a03166118bf613e1b565b115b15611a0457600283015460018401805461198d926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561195957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116119165790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b60028401549092506119e490604060020a90046001604060020a031660006040518059106119b85750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613377565b90506119f585828560000154613699565b809450611a0185613346565b92505b611a0d85613e21565b90506001604060020a0380821690861614611a3157611a3185828560000154613699565b8093505b505050919050565b6000611a48826117d1565b1515611a5357600080fd5b5060648054908160018101611a688382614ebf565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b5957fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c4a929160200190614eeb565b5060e082015181600301908051611c65929160200190614eeb565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015611013576001604060020a03848481518110611cf657fe5b90602001906020020151169150604060020a848481518110611d1457fe5b90602001906020020151811515611d2757fe5b049050611d34828261143e565b600190920191611cd9565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b60405160008051602061521683398151915281526013016040518091039020611d8b82613ee9565b611d96338383612887565b1515611da157600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611dd083338484610d8e565b505050565b6000611de0826117d1565b1515611deb57600080fd5b5060648054908160018101611e008382614ebf565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e7d57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f6e929160200190614eeb565b5060e082015181600301908051611f89929160200190614eeb565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fff578082015183820152602001611fe7565b50505050905090810190601f16801561202c5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061204e836117d1565b151561205957600080fd5b6001604060020a038516156122765761207185613300565b90506014612263826101006040519081016040528154909190829060ff16600281111561209a57fe5b60028111156120a557fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121b35780601f10612188576101008083540402835291602001916121b3565b820191906000526020600020905b81548152906001019060200180831161219657829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122555780601f1061222a57610100808354040283529160200191612255565b820191906000526020600020905b81548152906001019060200180831161223857829003601f168201915b505050505081525050613f09565b6001604060020a03161061227657600080fd5b606480549250826001810161228b8382614ebf565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561237b57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161246c929160200190614eeb565b5060e082015181600301908051612487929160200190614eeb565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124fa82613300565b90506125058261376d565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b604051600080516020615216833981519152815260130160405180910390206125a13382600060405180591061117c5750599080825280602002602001820160405250612887565b15156125ac57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126483388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611dd5565b979650505050505050565b60015481565b6000612663614e61565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126a75780518252601f199092019160209182019101612688565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080612716836125d1565b151561272157600080fd5b6127296111db565b915061273482613f7d565b151561273f57600080fd5b600160a060020a03831615156127915781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561278c57600080fd5b611dd0565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127e857600080fd5b6102c65a03f115156127f957600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561286157600080fd5b6102c65a03f1151561287257600080fd5b50505060405180515050505050565b609c5481565b6000612891614e61565b600080845111156128aa57835160200290508391508082525b600054600160a060020a031615806129bb575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015612951578082015183820152602001612939565b50505050905090810190601f16801561297e5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561299f57600080fd5b6102c65a03f115156129b057600080fd5b505050604051805190505b9695505050505050565b609c55565b6000806129d684611848565b93506129e184613346565b600281015490925060c060020a90046001604060020a03161515612a0457600080fd5b6000600383015460a060020a900460ff166002811115612a2057fe5b14612a2a57600080fd5b6002820154612a41906001604060020a031661376d565b60028201546110069060c060020a90046001604060020a0316613e21565b60405160008051602061521683398151915281526013016040518091039020612a8782613fa3565b612a92338383612887565b1515612a9d57600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612ac457600080fd5b612acd81613fb4565b5042609c55565b60405160008051602061521683398151915281526013016040518091039020612b1c3382600060405180591061117c5750599080825280602002602001820160405250612887565b1515612b2757600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b4e88613300565b805490915033600160a060020a039081166101009092041614612b7057600080fd5b6001815460ff166002811115612b8257fe5b14612b8c57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bb8600282018787614f65565b50612bc7600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612c7f57612c76828281518110612c6757fe5b90602001906020020151611848565b50600101612c4f565b5050565b600054600160a060020a031681565b600080805b8451831015612cff576001604060020a03858481518110612cb457fe5b90602001906020020151169150604060020a858481518110612cd257fe5b90602001906020020151811515612ce557fe5b049050612cf486838387611625565b600190920191612c97565b505050505050565b6000612d1288613300565b805490915033600160a060020a039081166101009092041614612d3457600080fd5b6000815460ff166002811115612d4657fe5b14612d5057600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7c600282018787614f65565b50612d8b600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3557600080fd5b612e3e84613346565b91506001600383015460a060020a900460ff166002811115612e5c57fe5b14612e6657600080fd5b6002820154600183018054612f2d926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb65790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b905061100681611848565b600080612f43614e61565b612f4b614e61565b6000806000806000612f5c8a613300565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f820181900481020160405190810160405280929190818152602001828054600181600116156101000203166002900480156130115780601f10612fe657610100808354040283529160200191613011565b820191906000526020600020905b815481529060010190602001808311612ff457829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130b05780601f10613085576101008083540402835291602001916130b0565b820191906000526020600020905b81548152906001019060200180831161309357829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b600061311288613300565b805490915033600160a060020a03908116610100909204161461313457600080fd5b6002815460ff16600281111561314657fe5b1461315057600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317c600282018787614f65565b5061318b600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600061321a614019565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613281578082015183820152602001613269565b50505050905090810190601f1680156132ae5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132cc57600080fd5b6102c65a03f115156132dd57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331a57600080fd5b606480546001604060020a03841690811061333157fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061336057600080fd5b606580546001604060020a03841690811061333157fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133b0578082015183820152602001613398565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341a57fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134845780925061368c565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c48382614fd3565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354557fe5b905291905081518155602082015181600101908051613568929160200190614fff565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561368057fe5b02179055505050508092505b5050979650505050505050565b60008060006136ab60018787876140b0565b9250846001604060020a0316866001604060020a031614156136cc57612cff565b8215156136d857612cff565b6136e186613346565b91506136ec85613346565b8254909150839010156136fe57600080fd5b81548390038255805483018082558390101561371957600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117c860008787866140b0565b600061377882613300565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b95750805433600160a060020a0390811661010090920416145b1515612c7f57600080fd5b600080808080806001604060020a0387168190116137e157600080fd5b6137ea89611848565b98506137f589613346565b955061380087613300565b94506000600387015460a060020a900460ff16600281111561381e57fe5b1461382857600080fd5b60028601546001604060020a038b811691161415613b23576000855460ff16600281111561385257fe5b1415613868576138638989896140d6565b613e0f565b6002855460ff16600281111561387a57fe5b141561388b57613863898989614130565b6001855460ff16600281111561389d57fe5b1415613b21576139c9866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fc5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b557fe5b60028111156139c057fe5b9052508861436e565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fc57506001604060020a038414155b15613b0257600186015460001901841415613ae5576002860154600187018054613ad8926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa457602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a615790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b925061386389848a613699565b613afc89896001848a6001018054905003036143d4565b50613e0f565b613b14898988600101805490506143d4565b98506138638989896144de565bfe5b613c498661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbf57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3557fe5b6002811115613c4057fe5b9052508b61436e565b6001604060020a0390811692508214613b21576000855460ff166002811115613c6e57fe5b1415613c9f5760028601546001604060020a03888116911614613c8d57fe5b613afc898988600101805490506143d4565b6001855460ff166002811115613cb157fe5b1415613dd357613d9e866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393f57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fc575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b557fe5b6001604060020a039081169150811480613db757508181115b15613ae557613b1489896001858a6001018054905003036143d4565b6002855460ff166002811115613de557fe5b1415613b2157613e0289896001858a6001018054905003036143d4565b985061386389898961460e565b50505050505050505050565b609c5490565b600080806001604060020a0384161515613e3e5760009250613ee2565b613e4784613346565b6002810154909250613e61906001604060020a0316613300565b90506000815460ff166002811115613e7557fe5b1415613e8357839250613ee2565b6002815460ff166002811115613e9557fe5b14613e9c57fe5b6002820154613eb3906001604060020a0316610e16565b1515613ec157839250613ee2565b6002820154613edf9060c060020a90046001604060020a0316613e21565b92505b5050919050565b613ef1614e61565b613f0382600160a060020a0316614921565b92915050565b600080600283516002811115613f1b57fe5b14613f2257fe5b82606001516001604060020a03161515613f3f5760019150610eb2565b613f4c8360600151613300565b9050613f73816101006040519081016040528154909190829060ff16600281111561209a57fe5b6001019392505050565b600080600160a060020a0383161515613f995760009150610eb2565b50506000903b1190565b613fab614e61565b613f0382614921565b60035415613fc157600080fd5b600160a060020a0381161515613fd657600080fd5b613fde614968565b6069805461010060a860020a031916610100600160a060020a03841602179055600161400b606482614ebf565b506001612c7f606582614fd3565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561408c57600080fd5b6102c65a03f1151561409d57600080fd5b50505060405180519250829150505b5090565b806140be8585808685614982565b90506140cd8584868685614982565b95945050505050565b6000806140e285613346565b91506141238360006040518059106140f75750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613377565b9050610de2858286613699565b600080600061413e86613346565b9250601461426784610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161419b5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b600281111561425f57fe5b905250614aea565b1061427157600080fd5b61427a84610e16565b1561428457600080fd5b6002830154600184018054614321926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561195957600091825260209182902080546001604060020a031684529082028301929091600891018084116119165750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613377565b91506143618460006040518059106119b85750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613377565b9050612cff868287613699565b6000805b8360200151518110156143c257826001604060020a03168460200151828151811061439957fe5b906020019060200201516001604060020a031614156143ba578091506143cd565b600101614372565b6001604060020a0391505b5092915050565b6000806143df614e61565b60006143ea87613346565b60018101549093508590036040518059106144025750595b90808252806020026020018201604052509150600090505b600183015485900381101561448d576001830180548290811061443957fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061446e57fe5b6001604060020a0390921660209283029091019091015260010161441a565b600283015460038401546144c7916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613377565b93506144d4878588613699565b5050509392505050565b60006144e8614e61565b6000806144f487613346565b6001810154909450600a901061450957600080fd5b6001808501540160405180591061451d5750595b90808252806020026020018201604052509250600091505b60018401548210156145a8576001840180548390811061455157fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061458657fe5b6001604060020a03909216602092830290910190910152600190910190614535565b600184015485908490815181106145bb57fe5b6001604060020a03928316602091820290920101526002850154600386015461460192828116928792600092839260c060020a90041690600160a060020a031682613377565b90506117c8878288613699565b60008061461a85613346565b9150601461470583610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57600091825260209182902080546001604060020a0316845290820283019290916008910180841161419b575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b1061470f57600080fd5b61471883610e16565b1561472257600080fd5b6002820154600183018054614123926001604060020a031691906020808202016040519081016040528092919081815260200182805480156147b557602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147725790505b5050505050856148e0866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561485757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116148145790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156148cd57fe5b60028111156148d857fe5b905250614c00565b6001604060020a03166148f1613e1b565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613377565b614929614e61565b60016040518059106149385750595b90808252806020026020018201604052509050818160008151811061495957fe5b60209081029091010152919050565b6003541561497557600080fd5b61497d614c98565b600355565b600080600080866001604060020a0316886001604060020a0316146149a9576101006149ac565b60005b61ffff1692508493506149be88613346565b600281015460038201549193506149f0918b916001604060020a0316908a908a908890600160a060020a03168a614c9c565b9350600090505b60018201546001604060020a0382161015614a8357614a798983600101836001604060020a0316815481101515614a2a57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c9c565b93506001016149f7565b60028201546000604060020a9091046001604060020a03161115614ade5760028201546003830154614adb918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c9c565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614b0a5760009150610eb2565b614b178360a00151613346565b9050613f7381610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57600091825260209182902080546001604060020a0316845290820283019290916008910180841161419b575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b6000806000614c128460400151613300565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ee257614c5c84602001518281518110614c4d57fe5b90602001906020020151613300565b80549092506001604060020a0380851660a860020a909204161115614c9057815460a860020a90046001604060020a031692505b600101614c2d565b4390565b80600080614ca989613300565b600181015490915069010000000000000000009004600160a060020a031615801590614cd55750600083115b1561368c578915614dad57600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d7c57600080fd5b6102c65a03f11515614d8d57600080fd5b505050604051805192505082821115614da557600080fd5b81925061368c565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614e4057600080fd5b6102c65a03f11515614e5157600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e8f614e61565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611dd057600402816004028360005260206000209182019101611dd091906150b3565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f2c57805160ff1916838001178555614f59565b82800160010185558215614f59579182015b82811115614f59578251825591602001919060010190614f3e565b506140ac92915061511a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614fa65782800160ff19823516178555614f59565b82800160010185558215614f59579182015b82811115614f59578235825591602001919060010190614fb8565b815481835581811511611dd057600402816004028360005260206000209182019101611dd09190615134565b828054828255906000526020600020906003016004900481019282156150a75791602002820160005b8382111561507257835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302615028565b80156150a55782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615072565b505b506140ac929150615184565b610ee291905b808211156140ac5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061510360028301826151a9565b6151116003830160006151a9565b506004016150b9565b610ee291905b808211156140ac5760008155600101615120565b610ee291905b808211156140ac57600080825561515460018301826151f0565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff1916905560040161513a565b610ee291905b808211156140ac57805467ffffffffffffffff1916815560010161518a565b50805460018160011615610100020316600290046000825580601f106151cf57506151ed565b601f0160209004906000526020600020908101906151ed919061511a565b50565b5080546000825560030160049004906000526020600020908101906151ed919061511a5600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a723058200d102251d9d6cb4d5ef35a97fd17ca31b10eff7630ddb6c6bd29dff4d2a62eaa0029","runtime_bytecode":"6060604052600436106102575763ffffffff60e060020a6000350416627611c6811461025c578063178e6079146102925780631c8e8568146102b75780632101a6ad146102de57806324fea3b0146102fd5780632a8ec8cc146103105780632ee88808146103235780632f6b64ca1461034557806332ce8ebc1461040157806332f0a3b51461041f578063387402911461044e5780633f657a461461046657806343387983146104f457806347c5ef43146105165780634c4316c7146105455780634eafbcd51461057957806350f8a8031461059857806352dc7dcc146105d35780635503d9ba1461061557806357adafb61461062857806360b1e057146106775780636293c7021461068a5780636ba3cc87146106a95780636e802c6a146106d757806372116e9214610791578063796d5654146107e257806379f4542e146108015780637e7db6e1146108205780637f61fa931461083f57806380afdea81461088157806381ea4408146108945780638322fff2146108b35780638b3dd749146108c65780639b3fdf4c146108d95780639d4941d8146108ec5780639da47a6b1461090b578063a1658fad1461091e578063ab8be23114610981578063af9f456314610997578063b12b5f76146109b9578063c4d66de8146109cf578063c8ae070f146109ee578063cc19ecf714610a04578063ce17273c14610a50578063d4aae0c414610a9f578063d639cd7314610ab2578063db7c231414610b1a578063e9c211e214610b66578063eba8ba0614610b88578063f6b24b1c14610cde578063f92a79ff14610d2a578063fbfa77cf14610d7b575b600080fd5b341561026757600080fd5b6102906001604060020a0360043516600160a060020a0360243581169060443516606435610d8e565b005b341561029d57600080fd5b6102a5610de9565b60405190815260200160405180910390f35b34156102c257600080fd5b6102ca610e0d565b604051901515815260200160405180910390f35b34156102e957600080fd5b6102ca6001604060020a0360043516610e16565b341561030857600080fd5b6102a5610eb8565b341561031b57600080fd5b6102a5610eda565b341561032e57600080fd5b6102906001604060020a0360043516602435610ee5565b341561035057600080fd5b61036a6001604060020a0360043581169060243516611019565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103c45780820151838201526020016103ac565b50505050905090810190601f1680156103f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b341561040c57600080fd5b6102906004803560248101910135611147565b341561042a57600080fd5b6104326111db565b604051600160a060020a03909116815260200160405180910390f35b341561045957600080fd5b610290600435151561125b565b341561047157600080fd5b6104856001604060020a03600435166112c1565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104d957fe5b60ff1681526020019850505050505050505060405180910390f35b34156104ff57600080fd5b6102906001604060020a036004351660243561143e565b341561052157600080fd5b6102906001604060020a036004358116906024358116906044359060643516611625565b341561055057600080fd5b6102906001604060020a0360043581169060243516600160a060020a036044351660643561163a565b341561058457600080fd5b6102ca600160a060020a03600435166117d1565b34156105a357600080fd5b6105b76001604060020a0360043516611848565b6040516001604060020a03909116815260200160405180910390f35b34156105de57600080fd5b6105b760246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516611a3d565b341561062057600080fd5b6102a5611cca565b341561063357600080fd5b6102906004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611cd495505050505050565b341561068257600080fd5b6102a5611d3f565b341561069557600080fd5b610290600160a060020a0360043516611d63565b34156106b457600080fd5b6102906001604060020a0360043516600160a060020a0360243516604435611dc4565b34156106e257600080fd5b6105b760048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611dd5915050565b341561079c57600080fd5b6105b76024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612042565b34156107ed57600080fd5b6102906001604060020a03600435166124ef565b341561080c57600080fd5b610290600160a060020a0360043516612559565b341561082b57600080fd5b6102ca600160a060020a03600435166125d1565b341561084a57600080fd5b6105b760246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166125d7565b341561088c57600080fd5b6102a5612653565b341561089f57600080fd5b6102a5600160a060020a0360043516612659565b34156108be57600080fd5b6104326126db565b34156108d157600080fd5b6102a56126e0565b34156108e457600080fd5b6102a56126e6565b34156108f757600080fd5b610290600160a060020a036004351661270a565b341561091657600080fd5b6102a5612881565b341561092957600080fd5b6102ca60048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061288795505050505050565b341561098c57600080fd5b6102906004356129c5565b34156109a257600080fd5b6102906001604060020a03600435166024356129ca565b34156109c457600080fd5b610290600435612a5f565b34156109da57600080fd5b610290600160a060020a0360043516612ab7565b34156109f957600080fd5b610290600435612ad4565b3415610a0f57600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b43565b3415610a5b57600080fd5b6102906004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4c95505050505050565b3415610aaa57600080fd5b610432612c83565b3415610abd57600080fd5b610290600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c92915050565b3415610b2557600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d07565b3415610b7157600080fd5b6102906001604060020a0360043516602435612e10565b3415610b9357600080fd5b610ba76001604060020a0360043516612f38565b60405180896002811115610bb757fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610c38578082015183820152602001610c20565b50505050905090810190601f168015610c655780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c9b578082015183820152602001610c83565b50505050905090810190601f168015610cc85780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610ce957600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613107565b3415610d3557600080fd5b61043260046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061321095505050505050565b3415610d8657600080fd5b6104326132ec565b6000600160a060020a0384161515610da557600080fd5b610dd4846020604051908101604052806000815250602060405190810160405260008082526203f48090611dd5565b9050610de28186858561163a565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610e2283613300565b90506000815460ff166002811115610e3657fe5b1415610e455760009150610eb2565b6002815460ff166002811115610e5757fe5b14610e5e57fe5b6001810154604060020a900460ff1615610e7b5760019150610eb2565b60018101546001604060020a03161515610e985760009150610eb2565b6001810154610eaf906001604060020a0316610e16565b91505b50919050565b6040516000805160206152168339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610f0a57600080fd5b610f1384613346565b91506001600383015460a060020a900460ff166002811115610f3157fe5b14610f3b57600080fd5b6002820154600183018054611006926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610fce57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f8b5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613377565b9050611013848285613699565b50505050565b600080611024614e61565b60008061103087613346565b915081600101600187036001604060020a031681548110151561104f57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a0316945061108385613300565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111375780601f1061110c57610100808354040283529160200191611137565b820191906000526020600020905b81548152906001019060200180831161111a57829003601f168201915b5050505050925050509250925092565b6000604051600080516020615216833981519152815260130160405180910390206111923382600060405180591061117c5750595b9080825280602002602001820160405250612887565b151561119d57600080fd5b600091505b60ff821683901015611013576111d0848460ff85168181106111c057fe5b9050602002013560001916612ad4565b6001909101906111a2565b60008054600160a060020a031615156111f357600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561123c57600080fd5b6102c65a03f1151561124d57600080fd5b505050604051805191505090565b604051600080516020615216833981519152815260130160405180910390206112a33382600060405180591061117c5750599080825280602002602001820160405250612887565b15156112ae57600080fd5b506069805460ff19169115919091179055565b6000806000806000806000806112d5614e73565b6112de8a613346565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561137657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116113335790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ec57fe5b60028111156113f757fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061144c85611848565b945061145785613346565b92506000600384015460a060020a900460ff16600281111561147557fe5b1461147f57600080fd5b6002830154611496906001604060020a031661376d565b600283015460018401805461155e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561152957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114e65790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613377565b915061156b858386613699565b6002830154611582906001604060020a0316613300565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b151561160a57600080fd5b6102c65a03f1151561161b57600080fd5b5050505050505050565b61162e8461376d565b611013848484846137c4565b600080806001604060020a03871681901161165457600080fd5b6000841161166157600080fd5b600160a060020a038516151561167657600080fd5b61167f87613300565b92506000835460ff16600281111561169357fe5b1461169d57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b151561171357600080fd5b6102c65a03f1151561172457600080fd5b50505060405180519050151561173957600080fd5b61176a87600060405180591061174c5750595b908082528060200260200182016040525060008060008a6000613377565b915061177582613346565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a36117c8878386896137c4565b50505050505050565b606954600090819060ff16806117ee5750600160a060020a038316155b156117fc5760019150610eb2565b600160a060020a03831660009081526068602052604090205460ff16156118265760019150610eb2565b61182f83612659565b60009081526067602052604090205460ff169392505050565b60008060008061185785613346565b92506000600384015460a060020a900460ff16600281111561187557fe5b1461188257849350611a35565b60028301546000604060020a9091046001604060020a03161180156118c157506002830154608060020a90046001604060020a03166118bf613e1b565b115b15611a0457600283015460018401805461198d926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561195957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116119165790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b60028401549092506119e490604060020a90046001604060020a031660006040518059106119b85750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613377565b90506119f585828560000154613699565b809450611a0185613346565b92505b611a0d85613e21565b90506001604060020a0380821690861614611a3157611a3185828560000154613699565b8093505b505050919050565b6000611a48826117d1565b1515611a5357600080fd5b5060648054908160018101611a688382614ebf565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b5957fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c4a929160200190614eeb565b5060e082015181600301908051611c65929160200190614eeb565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015611013576001604060020a03848481518110611cf657fe5b90602001906020020151169150604060020a848481518110611d1457fe5b90602001906020020151811515611d2757fe5b049050611d34828261143e565b600190920191611cd9565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b60405160008051602061521683398151915281526013016040518091039020611d8b82613ee9565b611d96338383612887565b1515611da157600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611dd083338484610d8e565b505050565b6000611de0826117d1565b1515611deb57600080fd5b5060648054908160018101611e008382614ebf565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e7d57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f6e929160200190614eeb565b5060e082015181600301908051611f89929160200190614eeb565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fff578082015183820152602001611fe7565b50505050905090810190601f16801561202c5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061204e836117d1565b151561205957600080fd5b6001604060020a038516156122765761207185613300565b90506014612263826101006040519081016040528154909190829060ff16600281111561209a57fe5b60028111156120a557fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121b35780601f10612188576101008083540402835291602001916121b3565b820191906000526020600020905b81548152906001019060200180831161219657829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122555780601f1061222a57610100808354040283529160200191612255565b820191906000526020600020905b81548152906001019060200180831161223857829003601f168201915b505050505081525050613f09565b6001604060020a03161061227657600080fd5b606480549250826001810161228b8382614ebf565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561237b57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161246c929160200190614eeb565b5060e082015181600301908051612487929160200190614eeb565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124fa82613300565b90506125058261376d565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b604051600080516020615216833981519152815260130160405180910390206125a13382600060405180591061117c5750599080825280602002602001820160405250612887565b15156125ac57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126483388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611dd5565b979650505050505050565b60015481565b6000612663614e61565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126a75780518252601f199092019160209182019101612688565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080612716836125d1565b151561272157600080fd5b6127296111db565b915061273482613f7d565b151561273f57600080fd5b600160a060020a03831615156127915781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561278c57600080fd5b611dd0565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127e857600080fd5b6102c65a03f115156127f957600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561286157600080fd5b6102c65a03f1151561287257600080fd5b50505060405180515050505050565b609c5481565b6000612891614e61565b600080845111156128aa57835160200290508391508082525b600054600160a060020a031615806129bb575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015612951578082015183820152602001612939565b50505050905090810190601f16801561297e5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561299f57600080fd5b6102c65a03f115156129b057600080fd5b505050604051805190505b9695505050505050565b609c55565b6000806129d684611848565b93506129e184613346565b600281015490925060c060020a90046001604060020a03161515612a0457600080fd5b6000600383015460a060020a900460ff166002811115612a2057fe5b14612a2a57600080fd5b6002820154612a41906001604060020a031661376d565b60028201546110069060c060020a90046001604060020a0316613e21565b60405160008051602061521683398151915281526013016040518091039020612a8782613fa3565b612a92338383612887565b1515612a9d57600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612ac457600080fd5b612acd81613fb4565b5042609c55565b60405160008051602061521683398151915281526013016040518091039020612b1c3382600060405180591061117c5750599080825280602002602001820160405250612887565b1515612b2757600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b4e88613300565b805490915033600160a060020a039081166101009092041614612b7057600080fd5b6001815460ff166002811115612b8257fe5b14612b8c57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bb8600282018787614f65565b50612bc7600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612c7f57612c76828281518110612c6757fe5b90602001906020020151611848565b50600101612c4f565b5050565b600054600160a060020a031681565b600080805b8451831015612cff576001604060020a03858481518110612cb457fe5b90602001906020020151169150604060020a858481518110612cd257fe5b90602001906020020151811515612ce557fe5b049050612cf486838387611625565b600190920191612c97565b505050505050565b6000612d1288613300565b805490915033600160a060020a039081166101009092041614612d3457600080fd5b6000815460ff166002811115612d4657fe5b14612d5057600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7c600282018787614f65565b50612d8b600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3557600080fd5b612e3e84613346565b91506001600383015460a060020a900460ff166002811115612e5c57fe5b14612e6657600080fd5b6002820154600183018054612f2d926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb65790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b905061100681611848565b600080612f43614e61565b612f4b614e61565b6000806000806000612f5c8a613300565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f820181900481020160405190810160405280929190818152602001828054600181600116156101000203166002900480156130115780601f10612fe657610100808354040283529160200191613011565b820191906000526020600020905b815481529060010190602001808311612ff457829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130b05780601f10613085576101008083540402835291602001916130b0565b820191906000526020600020905b81548152906001019060200180831161309357829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b600061311288613300565b805490915033600160a060020a03908116610100909204161461313457600080fd5b6002815460ff16600281111561314657fe5b1461315057600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317c600282018787614f65565b5061318b600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600061321a614019565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613281578082015183820152602001613269565b50505050905090810190601f1680156132ae5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132cc57600080fd5b6102c65a03f115156132dd57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331a57600080fd5b606480546001604060020a03841690811061333157fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061336057600080fd5b606580546001604060020a03841690811061333157fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133b0578082015183820152602001613398565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341a57fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134845780925061368c565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c48382614fd3565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354557fe5b905291905081518155602082015181600101908051613568929160200190614fff565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561368057fe5b02179055505050508092505b5050979650505050505050565b60008060006136ab60018787876140b0565b9250846001604060020a0316866001604060020a031614156136cc57612cff565b8215156136d857612cff565b6136e186613346565b91506136ec85613346565b8254909150839010156136fe57600080fd5b81548390038255805483018082558390101561371957600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117c860008787866140b0565b600061377882613300565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b95750805433600160a060020a0390811661010090920416145b1515612c7f57600080fd5b600080808080806001604060020a0387168190116137e157600080fd5b6137ea89611848565b98506137f589613346565b955061380087613300565b94506000600387015460a060020a900460ff16600281111561381e57fe5b1461382857600080fd5b60028601546001604060020a038b811691161415613b23576000855460ff16600281111561385257fe5b1415613868576138638989896140d6565b613e0f565b6002855460ff16600281111561387a57fe5b141561388b57613863898989614130565b6001855460ff16600281111561389d57fe5b1415613b21576139c9866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fc5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b557fe5b60028111156139c057fe5b9052508861436e565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fc57506001604060020a038414155b15613b0257600186015460001901841415613ae5576002860154600187018054613ad8926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa457602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a615790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b925061386389848a613699565b613afc89896001848a6001018054905003036143d4565b50613e0f565b613b14898988600101805490506143d4565b98506138638989896144de565bfe5b613c498661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbf57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3557fe5b6002811115613c4057fe5b9052508b61436e565b6001604060020a0390811692508214613b21576000855460ff166002811115613c6e57fe5b1415613c9f5760028601546001604060020a03888116911614613c8d57fe5b613afc898988600101805490506143d4565b6001855460ff166002811115613cb157fe5b1415613dd357613d9e866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393f57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fc575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b557fe5b6001604060020a039081169150811480613db757508181115b15613ae557613b1489896001858a6001018054905003036143d4565b6002855460ff166002811115613de557fe5b1415613b2157613e0289896001858a6001018054905003036143d4565b985061386389898961460e565b50505050505050505050565b609c5490565b600080806001604060020a0384161515613e3e5760009250613ee2565b613e4784613346565b6002810154909250613e61906001604060020a0316613300565b90506000815460ff166002811115613e7557fe5b1415613e8357839250613ee2565b6002815460ff166002811115613e9557fe5b14613e9c57fe5b6002820154613eb3906001604060020a0316610e16565b1515613ec157839250613ee2565b6002820154613edf9060c060020a90046001604060020a0316613e21565b92505b5050919050565b613ef1614e61565b613f0382600160a060020a0316614921565b92915050565b600080600283516002811115613f1b57fe5b14613f2257fe5b82606001516001604060020a03161515613f3f5760019150610eb2565b613f4c8360600151613300565b9050613f73816101006040519081016040528154909190829060ff16600281111561209a57fe5b6001019392505050565b600080600160a060020a0383161515613f995760009150610eb2565b50506000903b1190565b613fab614e61565b613f0382614921565b60035415613fc157600080fd5b600160a060020a0381161515613fd657600080fd5b613fde614968565b6069805461010060a860020a031916610100600160a060020a03841602179055600161400b606482614ebf565b506001612c7f606582614fd3565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561408c57600080fd5b6102c65a03f1151561409d57600080fd5b50505060405180519250829150505b5090565b806140be8585808685614982565b90506140cd8584868685614982565b95945050505050565b6000806140e285613346565b91506141238360006040518059106140f75750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613377565b9050610de2858286613699565b600080600061413e86613346565b9250601461426784610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161419b5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b600281111561425f57fe5b905250614aea565b1061427157600080fd5b61427a84610e16565b1561428457600080fd5b6002830154600184018054614321926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561195957600091825260209182902080546001604060020a031684529082028301929091600891018084116119165750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613377565b91506143618460006040518059106119b85750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613377565b9050612cff868287613699565b6000805b8360200151518110156143c257826001604060020a03168460200151828151811061439957fe5b906020019060200201516001604060020a031614156143ba578091506143cd565b600101614372565b6001604060020a0391505b5092915050565b6000806143df614e61565b60006143ea87613346565b60018101549093508590036040518059106144025750595b90808252806020026020018201604052509150600090505b600183015485900381101561448d576001830180548290811061443957fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061446e57fe5b6001604060020a0390921660209283029091019091015260010161441a565b600283015460038401546144c7916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613377565b93506144d4878588613699565b5050509392505050565b60006144e8614e61565b6000806144f487613346565b6001810154909450600a901061450957600080fd5b6001808501540160405180591061451d5750595b90808252806020026020018201604052509250600091505b60018401548210156145a8576001840180548390811061455157fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061458657fe5b6001604060020a03909216602092830290910190910152600190910190614535565b600184015485908490815181106145bb57fe5b6001604060020a03928316602091820290920101526002850154600386015461460192828116928792600092839260c060020a90041690600160a060020a031682613377565b90506117c8878288613699565b60008061461a85613346565b9150601461470583610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57600091825260209182902080546001604060020a0316845290820283019290916008910180841161419b575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b1061470f57600080fd5b61471883610e16565b1561472257600080fd5b6002820154600183018054614123926001604060020a031691906020808202016040519081016040528092919081815260200182805480156147b557602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147725790505b5050505050856148e0866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561485757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116148145790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156148cd57fe5b60028111156148d857fe5b905250614c00565b6001604060020a03166148f1613e1b565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613377565b614929614e61565b60016040518059106149385750595b90808252806020026020018201604052509050818160008151811061495957fe5b60209081029091010152919050565b6003541561497557600080fd5b61497d614c98565b600355565b600080600080866001604060020a0316886001604060020a0316146149a9576101006149ac565b60005b61ffff1692508493506149be88613346565b600281015460038201549193506149f0918b916001604060020a0316908a908a908890600160a060020a03168a614c9c565b9350600090505b60018201546001604060020a0382161015614a8357614a798983600101836001604060020a0316815481101515614a2a57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c9c565b93506001016149f7565b60028201546000604060020a9091046001604060020a03161115614ade5760028201546003830154614adb918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c9c565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614b0a5760009150610eb2565b614b178360a00151613346565b9050613f7381610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57600091825260209182902080546001604060020a0316845290820283019290916008910180841161419b575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b6000806000614c128460400151613300565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ee257614c5c84602001518281518110614c4d57fe5b90602001906020020151613300565b80549092506001604060020a0380851660a860020a909204161115614c9057815460a860020a90046001604060020a031692505b600101614c2d565b4390565b80600080614ca989613300565b600181015490915069010000000000000000009004600160a060020a031615801590614cd55750600083115b1561368c578915614dad57600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d7c57600080fd5b6102c65a03f11515614d8d57600080fd5b505050604051805192505082821115614da557600080fd5b81925061368c565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614e4057600080fd5b6102c65a03f11515614e5157600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e8f614e61565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611dd057600402816004028360005260206000209182019101611dd091906150b3565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f2c57805160ff1916838001178555614f59565b82800160010185558215614f59579182015b82811115614f59578251825591602001919060010190614f3e565b506140ac92915061511a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614fa65782800160ff19823516178555614f59565b82800160010185558215614f59579182015b82811115614f59578235825591602001919060010190614fb8565b815481835581811511611dd057600402816004028360005260206000209182019101611dd09190615134565b828054828255906000526020600020906003016004900481019282156150a75791602002820160005b8382111561507257835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302615028565b80156150a55782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615072565b505b506140ac929150615184565b610ee291905b808211156140ac5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061510360028301826151a9565b6151116003830160006151a9565b506004016150b9565b610ee291905b808211156140ac5760008155600101615120565b610ee291905b808211156140ac57600080825561515460018301826151f0565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff1916905560040161513a565b610ee291905b808211156140ac57805467ffffffffffffffff1916815560010161518a565b50805460018160011615610100020316600290046000825580601f106151cf57506151ed565b601f0160209004906000526020600020908101906151ed919061511a565b50565b5080546000825560030160049004906000526020600020908101906151ed919061511a5600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a723058200d102251d9d6cb4d5ef35a97fd17ca31b10eff7630ddb6c6bd29dff4d2a62eaa0029","real_runtime_bytecode":"6060604052600436106102575763ffffffff60e060020a6000350416627611c6811461025c578063178e6079146102925780631c8e8568146102b75780632101a6ad146102de57806324fea3b0146102fd5780632a8ec8cc146103105780632ee88808146103235780632f6b64ca1461034557806332ce8ebc1461040157806332f0a3b51461041f578063387402911461044e5780633f657a461461046657806343387983146104f457806347c5ef43146105165780634c4316c7146105455780634eafbcd51461057957806350f8a8031461059857806352dc7dcc146105d35780635503d9ba1461061557806357adafb61461062857806360b1e057146106775780636293c7021461068a5780636ba3cc87146106a95780636e802c6a146106d757806372116e9214610791578063796d5654146107e257806379f4542e146108015780637e7db6e1146108205780637f61fa931461083f57806380afdea81461088157806381ea4408146108945780638322fff2146108b35780638b3dd749146108c65780639b3fdf4c146108d95780639d4941d8146108ec5780639da47a6b1461090b578063a1658fad1461091e578063ab8be23114610981578063af9f456314610997578063b12b5f76146109b9578063c4d66de8146109cf578063c8ae070f146109ee578063cc19ecf714610a04578063ce17273c14610a50578063d4aae0c414610a9f578063d639cd7314610ab2578063db7c231414610b1a578063e9c211e214610b66578063eba8ba0614610b88578063f6b24b1c14610cde578063f92a79ff14610d2a578063fbfa77cf14610d7b575b600080fd5b341561026757600080fd5b6102906001604060020a0360043516600160a060020a0360243581169060443516606435610d8e565b005b341561029d57600080fd5b6102a5610de9565b60405190815260200160405180910390f35b34156102c257600080fd5b6102ca610e0d565b604051901515815260200160405180910390f35b34156102e957600080fd5b6102ca6001604060020a0360043516610e16565b341561030857600080fd5b6102a5610eb8565b341561031b57600080fd5b6102a5610eda565b341561032e57600080fd5b6102906001604060020a0360043516602435610ee5565b341561035057600080fd5b61036a6001604060020a0360043581169060243516611019565b6040516001604060020a0384168152600160a060020a038316602082015260606040820181815290820183818151815260200191508051906020019080838360005b838110156103c45780820151838201526020016103ac565b50505050905090810190601f1680156103f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b341561040c57600080fd5b6102906004803560248101910135611147565b341561042a57600080fd5b6104326111db565b604051600160a060020a03909116815260200160405180910390f35b341561045957600080fd5b610290600435151561125b565b341561047157600080fd5b6104856001604060020a03600435166112c1565b6040518881526001604060020a038089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156104d957fe5b60ff1681526020019850505050505050505060405180910390f35b34156104ff57600080fd5b6102906001604060020a036004351660243561143e565b341561052157600080fd5b6102906001604060020a036004358116906024358116906044359060643516611625565b341561055057600080fd5b6102906001604060020a0360043581169060243516600160a060020a036044351660643561163a565b341561058457600080fd5b6102ca600160a060020a03600435166117d1565b34156105a357600080fd5b6105b76001604060020a0360043516611848565b6040516001604060020a03909116815260200160405180910390f35b34156105de57600080fd5b6105b760246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a0360643516611a3d565b341561062057600080fd5b6102a5611cca565b341561063357600080fd5b6102906004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650611cd495505050505050565b341561068257600080fd5b6102a5611d3f565b341561069557600080fd5b610290600160a060020a0360043516611d63565b34156106b457600080fd5b6102906001604060020a0360043516600160a060020a0360243516604435611dc4565b34156106e257600080fd5b6105b760048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650505083356001604060020a03169360200135600160a060020a03169250611dd5915050565b341561079c57600080fd5b6105b76024600480358281019290820135918135918201910135600160a060020a036044358116906001604060020a036064358116916084359091169060a43516612042565b34156107ed57600080fd5b6102906001604060020a03600435166124ef565b341561080c57600080fd5b610290600160a060020a0360043516612559565b341561082b57600080fd5b6102ca600160a060020a03600435166125d1565b341561084a57600080fd5b6105b760246004803582810192908201359181359182019101356001604060020a0360443516600160a060020a03606435166125d7565b341561088c57600080fd5b6102a5612653565b341561089f57600080fd5b6102a5600160a060020a0360043516612659565b34156108be57600080fd5b6104326126db565b34156108d157600080fd5b6102a56126e0565b34156108e457600080fd5b6102a56126e6565b34156108f757600080fd5b610290600160a060020a036004351661270a565b341561091657600080fd5b6102a5612881565b341561092957600080fd5b6102ca60048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061288795505050505050565b341561098c57600080fd5b6102906004356129c5565b34156109a257600080fd5b6102906001604060020a03600435166024356129ca565b34156109c457600080fd5b610290600435612a5f565b34156109da57600080fd5b610290600160a060020a0360043516612ab7565b34156109f957600080fd5b610290600435612ad4565b3415610a0f57600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612b43565b3415610a5b57600080fd5b6102906004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650612c4c95505050505050565b3415610aaa57600080fd5b610432612c83565b3415610abd57600080fd5b610290600480356001604060020a0316906044602480359081019083013580602080820201604051908101604052809392919081815260200183836020028082843750949650505092356001604060020a03169250612c92915050565b3415610b2557600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516612d07565b3415610b7157600080fd5b6102906001604060020a0360043516602435612e10565b3415610b9357600080fd5b610ba76001604060020a0360043516612f38565b60405180896002811115610bb757fe5b60ff168152600160a060020a0389811660208301526001604060020a038781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b83811015610c38578082015183820152602001610c20565b50505050905090810190601f168015610c655780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b83811015610c9b578082015183820152602001610c83565b50505050905090810190601f168015610cc85780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b3415610ce957600080fd5b610290600480356001604060020a039081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516613107565b3415610d3557600080fd5b61043260046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061321095505050505050565b3415610d8657600080fd5b6104326132ec565b6000600160a060020a0384161515610da557600080fd5b610dd4846020604051908101604052806000815250602060405190810160405260008082526203f48090611dd5565b9050610de28186858561163a565b5050505050565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b600080610e2283613300565b90506000815460ff166002811115610e3657fe5b1415610e455760009150610eb2565b6002815460ff166002811115610e5757fe5b14610e5e57fe5b6001810154604060020a900460ff1615610e7b5760019150610eb2565b60018101546001604060020a03161515610e985760009150610eb2565b6001810154610eaf906001604060020a0316610e16565b91505b50919050565b6040516000805160206152168339815191528152601301604051809103902081565b606554600019015b90565b606954600090819033600160a060020a039081166101009092041614610f0a57600080fd5b610f1384613346565b91506001600383015460a060020a900460ff166002811115610f3157fe5b14610f3b57600080fd5b6002820154600183018054611006926001604060020a03169190602080820201604051908101604052809291908181526020018280548015610fce57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411610f8b5790505b50505050600286810154600388015460009350839260c060020a9092046001604060020a031691600160a060020a0390911690613377565b9050611013848285613699565b50505050565b600080611024614e61565b60008061103087613346565b915081600101600187036001604060020a031681548110151561104f57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a0316945061108385613300565b90508060000160019054906101000a9004600160a060020a03169350806002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111375780601f1061110c57610100808354040283529160200191611137565b820191906000526020600020905b81548152906001019060200180831161111a57829003601f168201915b5050505050925050509250925092565b6000604051600080516020615216833981519152815260130160405180910390206111923382600060405180591061117c5750595b9080825280602002602001820160405250612887565b151561119d57600080fd5b600091505b60ff821683901015611013576111d0848460ff85168181106111c057fe5b9050602002013560001916612ad4565b6001909101906111a2565b60008054600160a060020a031615156111f357600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561123c57600080fd5b6102c65a03f1151561124d57600080fd5b505050604051805191505090565b604051600080516020615216833981519152815260130160405180910390206112a33382600060405180591061117c5750599080825280602002602001820160405250612887565b15156112ae57600080fd5b506069805460ff19169115919091179055565b6000806000806000806000806112d5614e73565b6112de8a613346565b6101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561137657602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116113335790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156113ec57fe5b60028111156113f757fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b600080600061144c85611848565b945061145785613346565b92506000600384015460a060020a900460ff16600281111561147557fe5b1461147f57600080fd5b6002830154611496906001604060020a031661376d565b600283015460018401805461155e926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561152957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116114e65790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a03166001613377565b915061156b858386613699565b6002830154611582906001604060020a0316613300565b60695481546003860154929350600160a060020a036101009283900481169363a5426df1936001604060020a0388169304821691168860405160e060020a63ffffffff87160281526004810194909452600160a060020a039283166024850152911660448301526064820152608401600060405180830381600087803b151561160a57600080fd5b6102c65a03f1151561161b57600080fd5b5050505050505050565b61162e8461376d565b611013848484846137c4565b600080806001604060020a03871681901161165457600080fd5b6000841161166157600080fd5b600160a060020a038516151561167657600080fd5b61167f87613300565b92506000835460ff16600281111561169357fe5b1461169d57600080fd5b606954600160a060020a03808716916323b872dd9133916101009004168760006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b151561171357600080fd5b6102c65a03f1151561172457600080fd5b50505060405180519050151561173957600080fd5b61176a87600060405180591061174c5750595b908082528060200260200182016040525060008060008a6000613377565b915061177582613346565b80548501815590506001604060020a03821660007faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68660405190815260200160405180910390a36117c8878386896137c4565b50505050505050565b606954600090819060ff16806117ee5750600160a060020a038316155b156117fc5760019150610eb2565b600160a060020a03831660009081526068602052604090205460ff16156118265760019150610eb2565b61182f83612659565b60009081526067602052604090205460ff169392505050565b60008060008061185785613346565b92506000600384015460a060020a900460ff16600281111561187557fe5b1461188257849350611a35565b60028301546000604060020a9091046001604060020a03161180156118c157506002830154608060020a90046001604060020a03166118bf613e1b565b115b15611a0457600283015460018401805461198d926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561195957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116119165790505b505050506002870154600388015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b60028401549092506119e490604060020a90046001604060020a031660006040518059106119b85750595b9080825280602002602001820160405250600386015460009081908790600160a060020a031682613377565b90506119f585828560000154613699565b809450611a0185613346565b92505b611a0d85613e21565b90506001604060020a0380821690861614611a3157611a3185828560000154613699565b8093505b505050919050565b6000611a48826117d1565b1515611a5357600080fd5b5060648054908160018101611a688382614ebf565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a03168152602001876001604060020a0316815260200160006001604060020a0316815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115611b5957fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611c4a929160200190614eeb565b5060e082015181600301908051611c65929160200190614eeb565b50505050806001604060020a03167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b600080805b8351831015611013576001604060020a03848481518110611cf657fe5b90602001906020020151169150604060020a848481518110611d1457fe5b90602001906020020151811515611d2757fe5b049050611d34828261143e565b600190920191611cd9565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b60405160008051602061521683398151915281526013016040518091039020611d8b82613ee9565b611d96338383612887565b1515611da157600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b611dd083338484610d8e565b505050565b6000611de0826117d1565b1515611deb57600080fd5b5060648054908160018101611e008382614ebf565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c1660208301526001604060020a03891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115611e7d57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051611f6e929160200190614eeb565b5060e082015181600301908051611f89929160200190614eeb565b5050505085600160a060020a0316816001604060020a03167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b83811015611fff578082015183820152602001611fe7565b50505050905090810190601f16801561202c5780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061204e836117d1565b151561205957600080fd5b6001604060020a038516156122765761207185613300565b90506014612263826101006040519081016040528154909190829060ff16600281111561209a57fe5b60028111156120a557fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a9093046001604060020a039081166040808701919091526001808801549283166060880152604060020a830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156121b35780601f10612188576101008083540402835291602001916121b3565b820191906000526020600020905b81548152906001019060200180831161219657829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122555780601f1061222a57610100808354040283529160200191612255565b820191906000526020600020905b81548152906001019060200180831161223857829003601f168201915b505050505081525050613f09565b6001604060020a03161061227657600080fd5b606480549250826001810161228b8382614ebf565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a03168152602001886001604060020a03168152602001896001604060020a0316815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561237b57fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a0319909116178155604082015181546001604060020a039190911660a860020a02600080516020615236833981519152909116178155606082015160018201805467ffffffffffffffff19166001604060020a03929092169190911790556080820151600182018054911515604060020a0268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161246c929160200190614eeb565b5060e082015181600301908051612487929160200190614eeb565b50505050816001604060020a03167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b60006124fa82613300565b90506125058261376d565b60018101805468ff00000000000000001916604060020a1790556001604060020a0382167f74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d34660405160405180910390a25050565b604051600080516020615216833981519152815260130160405180910390206125a13382600060405180591061117c5750599080825280602002602001820160405250612887565b15156125ac57600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006126483388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686611dd5565b979650505050505050565b60015481565b6000612663614e61565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106126a75780518252601f199092019160209182019101612688565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080612716836125d1565b151561272157600080fd5b6127296111db565b915061273482613f7d565b151561273f57600080fd5b600160a060020a03831615156127915781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561278c57600080fd5b611dd0565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156127e857600080fd5b6102c65a03f115156127f957600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561286157600080fd5b6102c65a03f1151561287257600080fd5b50505060405180515050505050565b609c5481565b6000612891614e61565b600080845111156128aa57835160200290508391508082525b600054600160a060020a031615806129bb575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015612951578082015183820152602001612939565b50505050905090810190601f16801561297e5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b151561299f57600080fd5b6102c65a03f115156129b057600080fd5b505050604051805190505b9695505050505050565b609c55565b6000806129d684611848565b93506129e184613346565b600281015490925060c060020a90046001604060020a03161515612a0457600080fd5b6000600383015460a060020a900460ff166002811115612a2057fe5b14612a2a57600080fd5b6002820154612a41906001604060020a031661376d565b60028201546110069060c060020a90046001604060020a0316613e21565b60405160008051602061521683398151915281526013016040518091039020612a8782613fa3565b612a92338383612887565b1515612a9d57600080fd5b50506000908152606760205260409020805460ff19169055565b60035415612ac457600080fd5b612acd81613fb4565b5042609c55565b60405160008051602061521683398151915281526013016040518091039020612b1c3382600060405180591061117c5750599080825280602002602001820160405250612887565b1515612b2757600080fd5b506000908152606760205260409020805460ff19166001179055565b6000612b4e88613300565b805490915033600160a060020a039081166101009092041614612b7057600080fd5b6001815460ff166002811115612b8257fe5b14612b8c57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612bb8600282018787614f65565b50612bc7600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b60005b8151811015612c7f57612c76828281518110612c6757fe5b90602001906020020151611848565b50600101612c4f565b5050565b600054600160a060020a031681565b600080805b8451831015612cff576001604060020a03858481518110612cb457fe5b90602001906020020151169150604060020a858481518110612cd257fe5b90602001906020020151811515612ce557fe5b049050612cf486838387611625565b600190920191612c97565b505050505050565b6000612d1288613300565b805490915033600160a060020a039081166101009092041614612d3457600080fd5b6000815460ff166002811115612d4657fe5b14612d5057600080fd5b805461010060a860020a031916610100600160a060020a03891602178155612d7c600282018787614f65565b50612d8b600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b606954600090819033600160a060020a039081166101009092041614612e3557600080fd5b612e3e84613346565b91506001600383015460a060020a900460ff166002811115612e5c57fe5b14612e6657600080fd5b6002820154600183018054612f2d926001604060020a03169190602080820201604051908101604052809291908181526020018280548015612ef957602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411612eb65790505b505050506002860154600387015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b905061100681611848565b600080612f43614e61565b612f4b614e61565b6000806000806000612f5c8a613300565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f820181900481020160405190810160405280929190818152602001828054600181600116156101000203166002900480156130115780601f10612fe657610100808354040283529160200191613011565b820191906000526020600020905b815481529060010190602001808311612ff457829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130b05780601f10613085576101008083540402835291602001916130b0565b820191906000526020600020905b81548152906001019060200180831161309357829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a9094046001604060020a039081169a50831698505050604060020a810460ff16955069010000000000000000009004600160a060020a03169350915050565b600061311288613300565b805490915033600160a060020a03908116610100909204161461313457600080fd5b6002815460ff16600281111561314657fe5b1461315057600080fd5b805461010060a860020a031916610100600160a060020a0389160217815561317c600282018787614f65565b5061318b600382018585614f65565b5080546001604060020a0380841660a860020a0260008051602061523683398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600061321a614019565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613281578082015183820152602001613269565b50505050905090810190601f1680156132ae5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156132cc57600080fd5b6102c65a03f115156132dd57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b6064546000906001604060020a0383161061331a57600080fd5b606480546001604060020a03841690811061333157fe5b90600052602060002090600402019050919050565b6065546000906001604060020a0383161061336057600080fd5b606580546001604060020a03841690811061333157fe5b6000806000888a898989898960405180888051906020019060200280838360005b838110156133b0578082015183820152602001613398565b50505060c060020a6001604060020a03808d168202959093019485528a83168102600886015289831681026010860152918816909102601884015250506c01000000000000000000000000600160a060020a03851602602082015260340182600281111561341a57fe5b60ff167f01000000000000000000000000000000000000000000000000000000000000000281526001019750505050505050506040519081900390206000818152606660205260408120549193506001604060020a0390911691508111156134845780925061368c565b50606580546000838152606660205260409020805467ffffffffffffffff19166001604060020a0383161790558154909190600181016134c48382614fd3565b9160005260206000209060040201600061010060405190810160405280600081526020018d81526020018e6001604060020a031681526020018c6001604060020a031681526020018b6001604060020a031681526020018a6001604060020a0316815260200189600160a060020a0316815260200188600281111561354557fe5b905291905081518155602082015181600101908051613568929160200190614fff565b50604082015160028201805467ffffffffffffffff19166001604060020a039290921691909117905560608201518160020160086101000a8154816001604060020a0302191690836001604060020a0316021790555060808201518160020160106101000a8154816001604060020a0302191690836001604060020a0316021790555060a08201518160020160186101000a8154816001604060020a0302191690836001604060020a0316021790555060c082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560e082015160038201805474ff0000000000000000000000000000000000000000191660a060020a83600281111561368057fe5b02179055505050508092505b5050979650505050505050565b60008060006136ab60018787876140b0565b9250846001604060020a0316866001604060020a031614156136cc57612cff565b8215156136d857612cff565b6136e186613346565b91506136ec85613346565b8254909150839010156136fe57600080fd5b81548390038255805483018082558390101561371957600080fd5b846001604060020a0316866001604060020a03167faf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f68560405190815260200160405180910390a36117c860008787866140b0565b600061377882613300565b600181015490915033600160a060020a0390811669010000000000000000009092041614806137b95750805433600160a060020a0390811661010090920416145b1515612c7f57600080fd5b600080808080806001604060020a0387168190116137e157600080fd5b6137ea89611848565b98506137f589613346565b955061380087613300565b94506000600387015460a060020a900460ff16600281111561381e57fe5b1461382857600080fd5b60028601546001604060020a038b811691161415613b23576000855460ff16600281111561385257fe5b1415613868576138638989896140d6565b613e0f565b6002855460ff16600281111561387a57fe5b141561388b57613863898989614130565b6001855460ff16600281111561389d57fe5b1415613b21576139c9866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393f57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116138fc5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b557fe5b60028111156139c057fe5b9052508861436e565b60028701546001604060020a0391821695506000604060020a9091049091161180156139fc57506001604060020a038414155b15613b0257600186015460001901841415613ae5576002860154600187018054613ad8926001604060020a03169190602080820201604051908101604052809291908181526020018280548015613aa457602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613a615790505b5050505060028a015460038b015460009250829160c060020a90046001604060020a031690600160a060020a031682613377565b925061386389848a613699565b613afc89896001848a6001018054905003036143d4565b50613e0f565b613b14898988600101805490506143d4565b98506138638989896144de565bfe5b613c498661010060405190810160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020018280548015613bbf57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a031681526020019060080190602082600701049283019260010382029150808411613b7c5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff1690811115613c3557fe5b6002811115613c4057fe5b9052508b61436e565b6001604060020a0390811692508214613b21576000855460ff166002811115613c6e57fe5b1415613c9f5760028601546001604060020a03888116911614613c8d57fe5b613afc898988600101805490506143d4565b6001855460ff166002811115613cb157fe5b1415613dd357613d9e866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561393f57600091825260209182902080546001604060020a031684529082028301929091600891018084116138fc575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156139b557fe5b6001604060020a039081169150811480613db757508181115b15613ae557613b1489896001858a6001018054905003036143d4565b6002855460ff166002811115613de557fe5b1415613b2157613e0289896001858a6001018054905003036143d4565b985061386389898961460e565b50505050505050505050565b609c5490565b600080806001604060020a0384161515613e3e5760009250613ee2565b613e4784613346565b6002810154909250613e61906001604060020a0316613300565b90506000815460ff166002811115613e7557fe5b1415613e8357839250613ee2565b6002815460ff166002811115613e9557fe5b14613e9c57fe5b6002820154613eb3906001604060020a0316610e16565b1515613ec157839250613ee2565b6002820154613edf9060c060020a90046001604060020a0316613e21565b92505b5050919050565b613ef1614e61565b613f0382600160a060020a0316614921565b92915050565b600080600283516002811115613f1b57fe5b14613f2257fe5b82606001516001604060020a03161515613f3f5760019150610eb2565b613f4c8360600151613300565b9050613f73816101006040519081016040528154909190829060ff16600281111561209a57fe5b6001019392505050565b600080600160a060020a0383161515613f995760009150610eb2565b50506000903b1190565b613fab614e61565b613f0382614921565b60035415613fc157600080fd5b600160a060020a0381161515613fd657600080fd5b613fde614968565b6069805461010060a860020a031916610100600160a060020a03841602179055600161400b606482614ebf565b506001612c7f606582614fd3565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561408c57600080fd5b6102c65a03f1151561409d57600080fd5b50505060405180519250829150505b5090565b806140be8585808685614982565b90506140cd8584868685614982565b95945050505050565b6000806140e285613346565b91506141238360006040518059106140f75750595b9080825280602002602001820160405250600385015460009081908190600160a060020a031681613377565b9050610de2858286613699565b600080600061413e86613346565b9250601461426784610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a03168152602001906008019060208260070104928301926001038202915080841161419b5790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b600281111561425f57fe5b905250614aea565b1061427157600080fd5b61427a84610e16565b1561428457600080fd5b6002830154600184018054614321926001604060020a0316919060208082020160405190810160405280929190818152602001828054801561195957600091825260209182902080546001604060020a031684529082028301929091600891018084116119165750505050600288015460038901546000935083925060c060020a9091046001604060020a031690600160a060020a031682613377565b91506143618460006040518059106119b85750599080825280602002602001820160405250600386015460009081908790600160a060020a031682613377565b9050612cff868287613699565b6000805b8360200151518110156143c257826001604060020a03168460200151828151811061439957fe5b906020019060200201516001604060020a031614156143ba578091506143cd565b600101614372565b6001604060020a0391505b5092915050565b6000806143df614e61565b60006143ea87613346565b60018101549093508590036040518059106144025750595b90808252806020026020018201604052509150600090505b600183015485900381101561448d576001830180548290811061443957fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031682828151811061446e57fe5b6001604060020a0390921660209283029091019091015260010161441a565b600283015460038401546144c7916001604060020a03808216928692600092839260c060020a9092041690600160a060020a031682613377565b93506144d4878588613699565b5050509392505050565b60006144e8614e61565b6000806144f487613346565b6001810154909450600a901061450957600080fd5b6001808501540160405180591061451d5750595b90808252806020026020018201604052509250600091505b60018401548210156145a8576001840180548390811061455157fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031683838151811061458657fe5b6001604060020a03909216602092830290910190910152600190910190614535565b600184015485908490815181106145bb57fe5b6001604060020a03928316602091820290920101526002850154600386015461460192828116928792600092839260c060020a90041690600160a060020a031682613377565b90506117c8878288613699565b60008061461a85613346565b9150601461470583610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57600091825260209182902080546001604060020a0316845290820283019290916008910180841161419b575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b1061470f57600080fd5b61471883610e16565b1561472257600080fd5b6002820154600183018054614123926001604060020a031691906020808202016040519081016040528092919081815260200182805480156147b557602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116147725790505b5050505050856148e0866101006040519081016040529081600082015481526020016001820180548060200260200160405190810160405280929190818152602001828054801561485757602002820191906000526020600020906000905b82829054906101000a90046001604060020a03166001604060020a0316815260200190600801906020826007010492830192600103820291508084116148145790505b50505091835250506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff16908111156148cd57fe5b60028111156148d857fe5b905250614c00565b6001604060020a03166148f1613e1b565b60028801546003890154919092019160c060020a90046001604060020a031690600160a060020a03166000613377565b614929614e61565b60016040518059106149385750595b90808252806020026020018201604052509050818160008151811061495957fe5b60209081029091010152919050565b6003541561497557600080fd5b61497d614c98565b600355565b600080600080866001604060020a0316886001604060020a0316146149a9576101006149ac565b60005b61ffff1692508493506149be88613346565b600281015460038201549193506149f0918b916001604060020a0316908a908a908890600160a060020a03168a614c9c565b9350600090505b60018201546001604060020a0382161015614a8357614a798983600101836001604060020a0316815481101515614a2a57fe5b90600052602060002090600491828204019190066008029054906101000a90046001604060020a031689898588016001018760030160009054906101000a9004600160a060020a03168a614c9c565b93506001016149f7565b60028201546000604060020a9091046001604060020a03161115614ade5760028201546003830154614adb918b91604060020a9091046001604060020a0316908a908a9060ff890190600160a060020a03168a614c9c565b93505b50505095945050505050565b6000808260a001516001604060020a03161515614b0a5760009150610eb2565b614b178360a00151613346565b9050613f7381610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156141de57600091825260209182902080546001604060020a0316845290820283019290916008910180841161419b575050509284525050506002828101546001604060020a038082166020850152604060020a820481166040850152608060020a82048116606085015260c060020a9091041660808301526003830154600160a060020a03811660a084015260c09092019160a060020a900460ff169081111561425457fe5b6000806000614c128460400151613300565b805460a860020a90046001604060020a031693509150600090505b836020015151811015613ee257614c5c84602001518281518110614c4d57fe5b90602001906020020151613300565b80549092506001604060020a0380851660a860020a909204161115614c9057815460a860020a90046001604060020a031692505b600101614c2d565b4390565b80600080614ca989613300565b600181015490915069010000000000000000009004600160a060020a031615801590614cd55750600083115b1561368c578915614dad57600181015469010000000000000000009004600160a060020a03166331c51a008a8a8a8a8a8a60006040516020015260405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401602060405180830381600087803b1515614d7c57600080fd5b6102c65a03f11515614d8d57600080fd5b505050604051805192505082821115614da557600080fd5b81925061368c565b600181015469010000000000000000009004600160a060020a0316630da5e18c8a8a8a8a8a8a60405160e060020a63ffffffff89160281526001604060020a0396871660048201529486166024860152928516604485015293166064830152600160a060020a03909216608482015260a481019190915260c401600060405180830381600087803b1515614e4057600080fd5b6102c65a03f11515614e5157600080fd5b5050505050979650505050505050565b60206040519081016040526000815290565b6101006040519081016040528060008152602001614e8f614e61565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b815481835581811511611dd057600402816004028360005260206000209182019101611dd091906150b3565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614f2c57805160ff1916838001178555614f59565b82800160010185558215614f59579182015b82811115614f59578251825591602001919060010190614f3e565b506140ac92915061511a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10614fa65782800160ff19823516178555614f59565b82800160010185558215614f59579182015b82811115614f59578235825591602001919060010190614fb8565b815481835581811511611dd057600402816004028360005260206000209182019101611dd09190615134565b828054828255906000526020600020906003016004900481019282156150a75791602002820160005b8382111561507257835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302615028565b80156150a55782816101000a8154906001604060020a030219169055600801602081600701049283019260010302615072565b505b506140ac929150615184565b610ee291905b808211156140ac5780547fffffff000000000000000000000000000000000000000000000000000000000090811682556001820180549091169055600061510360028301826151a9565b6151116003830160006151a9565b506004016150b9565b610ee291905b808211156140ac5760008155600101615120565b610ee291905b808211156140ac57600080825561515460018301826151f0565b506000600282015560038101805474ffffffffffffffffffffffffffffffffffffffffff1916905560040161513a565b610ee291905b808211156140ac57805467ffffffffffffffff1916815560010161518a565b50805460018160011615610100020316600290046000825580601f106151cf57506151ed565b601f0160209004906000526020600020908101906151ed919061511a565b50565b5080546000825560030160049004906000526020600020908101906151ed919061511a5600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820","swarm_hash":"0d102251d9d6cb4d5ef35a97fd17ca31b10eff7630ddb6c6bd29dff4d2a62eaa","gas_estimates":{"creation":{"codeDepositCost":"4224200","executionCost":"25083","totalCost":"4249283"},"external":{"APP_ADDR_NAMESPACE()":"258","ETH()":"996","EVMSCRIPT_REGISTRY_APP()":"962","EVMSCRIPT_REGISTRY_APP_ID()":"676","PLUGIN_MANAGER_ROLE()":"infinite","addDelegate(string,string,uint64,address)":"infinite","addGiver(address,string,string,uint64,address)":"infinite","addGiver(string,string,uint64,address)":"infinite","addGiverAndDonate(uint64,address,address,uint256)":"infinite","addGiverAndDonate(uint64,address,uint256)":"infinite","addProject(string,string,address,uint64,uint64,address)":"infinite","addValidPluginContract(bytes32)":"infinite","addValidPluginContracts(bytes32[])":"infinite","addValidPluginInstance(address)":"infinite","allowRecoverability(address)":"919","appId()":"1074","canPerform(address,bytes32,uint256[])":"infinite","cancelPayment(uint64,uint256)":"infinite","cancelPledge(uint64,uint256)":"infinite","cancelProject(uint64)":"infinite","confirmPayment(uint64,uint256)":"infinite","donate(uint64,uint64,address,uint256)":"infinite","getCodeHash(address)":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"1140","getPledge(uint64)":"infinite","getPledgeAdmin(uint64)":"infinite","getPledgeDelegate(uint64,uint64)":"infinite","getRecoveryVault()":"infinite","initialize(address)":"infinite","isProjectCanceled(uint64)":"infinite","isValidPlugin(address)":"infinite","kernel()":"1557","mNormalizePledge(uint64[])":"infinite","mTransfer(uint64,uint256[],uint64)":"infinite","mWithdraw(uint256[])":"infinite","mock_time()":"1206","normalizePledge(uint64)":"infinite","numberOfPledgeAdmins()":"841","numberOfPledges()":"556","removeValidPluginContract(bytes32)":"infinite","removeValidPluginInstance(address)":"infinite","setMockedTime(uint256)":"21011","transfer(uint64,uint64,uint256,uint64)":"infinite","transferToVault(address)":"infinite","updateDelegate(uint64,address,string,string,uint64)":"infinite","updateGiver(uint64,address,string,string,uint64)":"infinite","updateProject(uint64,address,string,string,uint64)":"infinite","useWhitelist(bool)":"infinite","vault()":"1722","whitelistDisabled()":"492","withdraw(uint64,uint256)":"infinite"},"internal":{"_getTime()":"215"}},"function_hashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","PLUGIN_MANAGER_ROLE()":"24fea3b0","addDelegate(string,string,uint64,address)":"52dc7dcc","addGiver(address,string,string,uint64,address)":"6e802c6a","addGiver(string,string,uint64,address)":"7f61fa93","addGiverAndDonate(uint64,address,address,uint256)":"007611c6","addGiverAndDonate(uint64,address,uint256)":"6ba3cc87","addProject(string,string,address,uint64,uint64,address)":"72116e92","addValidPluginContract(bytes32)":"c8ae070f","addValidPluginContracts(bytes32[])":"32ce8ebc","addValidPluginInstance(address)":"79f4542e","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","cancelPayment(uint64,uint256)":"e9c211e2","cancelPledge(uint64,uint256)":"af9f4563","cancelProject(uint64)":"796d5654","confirmPayment(uint64,uint256)":"2ee88808","donate(uint64,uint64,address,uint256)":"4c4316c7","getCodeHash(address)":"81ea4408","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getPledge(uint64)":"3f657a46","getPledgeAdmin(uint64)":"eba8ba06","getPledgeDelegate(uint64,uint64)":"2f6b64ca","getRecoveryVault()":"32f0a3b5","initialize(address)":"c4d66de8","isProjectCanceled(uint64)":"2101a6ad","isValidPlugin(address)":"4eafbcd5","kernel()":"d4aae0c4","mNormalizePledge(uint64[])":"ce17273c","mTransfer(uint64,uint256[],uint64)":"d639cd73","mWithdraw(uint256[])":"57adafb6","mock_time()":"9da47a6b","normalizePledge(uint64)":"50f8a803","numberOfPledgeAdmins()":"5503d9ba","numberOfPledges()":"2a8ec8cc","removeValidPluginContract(bytes32)":"b12b5f76","removeValidPluginInstance(address)":"6293c702","setMockedTime(uint256)":"ab8be231","transfer(uint64,uint64,uint256,uint64)":"47c5ef43","transferToVault(address)":"9d4941d8","updateDelegate(uint64,address,string,string,uint64)":"cc19ecf7","updateGiver(uint64,address,string,string,uint64)":"db7c2314","updateProject(uint64,address,string,string,uint64)":"f6b24b1c","useWhitelist(bool)":"38740291","vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568","withdraw(uint64,uint256)":"43387983"},"abi":[{"constant":false,"inputs":[{"name":"idReceiver","type":"uint64"},{"name":"donorAddress","type":"address"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"addGiverAndDonate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"projectId","type":"uint64"}],"name":"isProjectCanceled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PLUGIN_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"numberOfPledges","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"confirmPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"idxDelegate","type":"uint64"}],"name":"getPledgeDelegate","outputs":[{"name":"idDelegate","type":"uint64"},{"name":"addr","type":"address"},{"name":"name","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"contractHashes","type":"bytes32[]"}],"name":"addValidPluginContracts","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"useWhitelist","type":"bool"}],"name":"useWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"getPledge","outputs":[{"name":"amount","type":"uint256"},{"name":"owner","type":"uint64"},{"name":"nDelegates","type":"uint64"},{"name":"intendedProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"oldPledge","type":"uint64"},{"name":"token","type":"address"},{"name":"pledgeState","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idSender","type":"uint64"},{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"},{"name":"idReceiver","type":"uint64"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"idReceiver","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"donate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isValidPlugin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"normalizePledge","outputs":[{"name":"","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addDelegate","outputs":[{"name":"idDelegate","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"numberOfPledgeAdmins","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"pledgesAmounts","type":"uint256[]"}],"name":"mWithdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"removeValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idReceiver","type":"uint64"},{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"addGiverAndDonate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"projectAdmin","type":"address"},{"name":"parentProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addProject","outputs":[{"name":"idProject","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"}],"name":"cancelProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"addValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getCodeHash","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"mock_time","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_t","type":"uint256"}],"name":"setMockedTime","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"cancelPledge","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"removeValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_vault","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"addValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idDelegate","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateDelegate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"pledges","type":"uint64[]"}],"name":"mNormalizePledge","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idSender","type":"uint64"},{"name":"pledgesAmounts","type":"uint256[]"},{"name":"idReceiver","type":"uint64"}],"name":"mTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateGiver","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idPledge","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"cancelPayment","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"idAdmin","type":"uint64"}],"name":"getPledgeAdmin","outputs":[{"name":"adminType","type":"uint8"},{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"parentProject","type":"uint64"},{"name":"canceled","type":"bool"},{"name":"plugin","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"uint256"},{"indexed":true,"name":"to","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint256"}],"name":"CancelProject","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectUpdated","type":"event"}]}; +let LiquidPledgingMock = new EmbarkJS.Blockchain.Contract(LiquidPledgingMockJSONConfig); +export default LiquidPledgingMock; diff --git a/abi/contracts/LiquidPledgingPlugins.js b/abi/contracts/LiquidPledgingPlugins.js new file mode 100644 index 0000000..26e11fe --- /dev/null +++ b/abi/contracts/LiquidPledgingPlugins.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let LiquidPledgingPluginsJSONConfig = {"contract_name":{"className":"LiquidPledgingPlugins","args":[],"code":"60606040526069805460ff19169055341561001957600080fd5b610df2806100286000396000f3006060604052600436106101195763ffffffff60e060020a600035041663178e6079811461011e5780631c8e85681461014357806324fea3b01461016a57806332ce8ebc1461017d57806332f0a3b51461019d57806338740291146101cc5780634eafbcd5146101e457806360b1e057146102035780636293c7021461021657806379f4542e146102355780637e7db6e11461025457806380afdea81461027357806381ea4408146102865780638322fff2146102a55780638b3dd749146102b85780639b3fdf4c146102cb5780639d4941d8146102de578063a1658fad146102fd578063b12b5f7614610360578063c8ae070f14610376578063d4aae0c41461038c578063f92a79ff1461039f578063fbfa77cf146103f0575b600080fd5b341561012957600080fd5b610131610403565b60405190815260200160405180910390f35b341561014e57600080fd5b610156610427565b604051901515815260200160405180910390f35b341561017557600080fd5b610131610430565b341561018857600080fd5b61019b6004803560248101910135610452565b005b34156101a857600080fd5b6101b06104ec565b604051600160a060020a03909116815260200160405180910390f35b34156101d757600080fd5b61019b600435151561056c565b34156101ef57600080fd5b610156600160a060020a03600435166105d2565b341561020e57600080fd5b61013161064d565b341561022157600080fd5b61019b600160a060020a0360043516610671565b341561024057600080fd5b61019b600160a060020a03600435166106d2565b341561025f57600080fd5b610156600160a060020a036004351661074a565b341561027e57600080fd5b610131610750565b341561029157600080fd5b610131600160a060020a0360043516610756565b34156102b057600080fd5b6101b06107d8565b34156102c357600080fd5b6101316107dd565b34156102d657600080fd5b6101316107e3565b34156102e957600080fd5b61019b600160a060020a0360043516610807565b341561030857600080fd5b61015660048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061097f95505050505050565b341561036b57600080fd5b61019b600435610abd565b341561038157600080fd5b61019b600435610b15565b341561039757600080fd5b6101b0610b84565b34156103aa57600080fd5b6101b060046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610b9395505050505050565b34156103fb57600080fd5b6101b0610c6f565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b604051600080516020610da78339815191528152601301604051809103902081565b6000604051600080516020610da78339815191528152601301604051809103902061049d338260006040518059106104875750595b908082528060200260200182016040525061097f565b15156104a857600080fd5b600091505b60ff8216839010156104e6576104db848460ff85168181106104cb57fe5b9050602002013560001916610b15565b6001909101906104ad565b50505050565b60008054600160a060020a0316151561050457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561054d57600080fd5b6102c65a03f1151561055e57600080fd5b505050604051805191505090565b604051600080516020610da7833981519152815260130160405180910390206105b433826000604051805910610487575059908082528060200260200182016040525061097f565b15156105bf57600080fd5b506069805460ff19169115919091179055565b606954600090819060ff16806105ef5750600160a060020a038316155b156105fd5760019150610647565b600160a060020a03831660009081526068602052604090205460ff16156106275760019150610647565b61063083610756565b60008181526067602052604090205460ff16925090505b50919050565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b604051600080516020610da78339815191528152601301604051809103902061069982610c83565b6106a433838361097f565b15156106af57600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b604051600080516020610da78339815191528152601301604051809103902061071a33826000604051805910610487575059908082528060200260200182016040525061097f565b151561072557600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60015481565b6000610760610d94565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106107a45780518252601f199092019160209182019101610785565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806108138361074a565b151561081e57600080fd5b6108266104ec565b915061083182610ca3565b151561083c57600080fd5b600160a060020a038316151561088e5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561088957600080fd5b61097a565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156108e557600080fd5b6102c65a03f115156108f657600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561095e57600080fd5b6102c65a03f1151561096f57600080fd5b505050604051805150505b505050565b6000610989610d94565b600080845111156109a257835160200290508391508082525b600054600160a060020a03161580610ab3575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610a49578082015183820152602001610a31565b50505050905090810190601f168015610a765780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610a9757600080fd5b6102c65a03f11515610aa857600080fd5b505050604051805190505b9695505050505050565b604051600080516020610da783398151915281526013016040518091039020610ae582610cc9565b610af033838361097f565b1515610afb57600080fd5b50506000908152606760205260409020805460ff19169055565b604051600080516020610da783398151915281526013016040518091039020610b5d33826000604051805910610487575059908082528060200260200182016040525061097f565b1515610b6857600080fd5b506000908152606760205260409020805460ff19166001179055565b600054600160a060020a031681565b6000610b9d610cda565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610c04578082015183820152602001610bec565b50505050905090810190601f168015610c315780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610c4f57600080fd5b6102c65a03f11515610c6057600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b610c8b610d94565b610c9d82600160a060020a0316610d4d565b92915050565b600080600160a060020a0383161515610cbf5760009150610647565b50506000903b1190565b610cd1610d94565b610c9d82610d4d565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610c4f57600080fd5b610d55610d94565b6001604051805910610d645750595b908082528060200260200182016040525090508181600081518110610d8557fe5b60209081029091010152919050565b602060405190810160405260008152905600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000a165627a7a72305820f3c719e78b012a0bee8f5388bc47f34edad3da48fc5ec33d196837daacced6800029","runtimeBytecode":"6060604052600436106101195763ffffffff60e060020a600035041663178e6079811461011e5780631c8e85681461014357806324fea3b01461016a57806332ce8ebc1461017d57806332f0a3b51461019d57806338740291146101cc5780634eafbcd5146101e457806360b1e057146102035780636293c7021461021657806379f4542e146102355780637e7db6e11461025457806380afdea81461027357806381ea4408146102865780638322fff2146102a55780638b3dd749146102b85780639b3fdf4c146102cb5780639d4941d8146102de578063a1658fad146102fd578063b12b5f7614610360578063c8ae070f14610376578063d4aae0c41461038c578063f92a79ff1461039f578063fbfa77cf146103f0575b600080fd5b341561012957600080fd5b610131610403565b60405190815260200160405180910390f35b341561014e57600080fd5b610156610427565b604051901515815260200160405180910390f35b341561017557600080fd5b610131610430565b341561018857600080fd5b61019b6004803560248101910135610452565b005b34156101a857600080fd5b6101b06104ec565b604051600160a060020a03909116815260200160405180910390f35b34156101d757600080fd5b61019b600435151561056c565b34156101ef57600080fd5b610156600160a060020a03600435166105d2565b341561020e57600080fd5b61013161064d565b341561022157600080fd5b61019b600160a060020a0360043516610671565b341561024057600080fd5b61019b600160a060020a03600435166106d2565b341561025f57600080fd5b610156600160a060020a036004351661074a565b341561027e57600080fd5b610131610750565b341561029157600080fd5b610131600160a060020a0360043516610756565b34156102b057600080fd5b6101b06107d8565b34156102c357600080fd5b6101316107dd565b34156102d657600080fd5b6101316107e3565b34156102e957600080fd5b61019b600160a060020a0360043516610807565b341561030857600080fd5b61015660048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061097f95505050505050565b341561036b57600080fd5b61019b600435610abd565b341561038157600080fd5b61019b600435610b15565b341561039757600080fd5b6101b0610b84565b34156103aa57600080fd5b6101b060046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610b9395505050505050565b34156103fb57600080fd5b6101b0610c6f565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b604051600080516020610da78339815191528152601301604051809103902081565b6000604051600080516020610da78339815191528152601301604051809103902061049d338260006040518059106104875750595b908082528060200260200182016040525061097f565b15156104a857600080fd5b600091505b60ff8216839010156104e6576104db848460ff85168181106104cb57fe5b9050602002013560001916610b15565b6001909101906104ad565b50505050565b60008054600160a060020a0316151561050457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561054d57600080fd5b6102c65a03f1151561055e57600080fd5b505050604051805191505090565b604051600080516020610da7833981519152815260130160405180910390206105b433826000604051805910610487575059908082528060200260200182016040525061097f565b15156105bf57600080fd5b506069805460ff19169115919091179055565b606954600090819060ff16806105ef5750600160a060020a038316155b156105fd5760019150610647565b600160a060020a03831660009081526068602052604090205460ff16156106275760019150610647565b61063083610756565b60008181526067602052604090205460ff16925090505b50919050565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b604051600080516020610da78339815191528152601301604051809103902061069982610c83565b6106a433838361097f565b15156106af57600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b604051600080516020610da78339815191528152601301604051809103902061071a33826000604051805910610487575059908082528060200260200182016040525061097f565b151561072557600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60015481565b6000610760610d94565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106107a45780518252601f199092019160209182019101610785565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806108138361074a565b151561081e57600080fd5b6108266104ec565b915061083182610ca3565b151561083c57600080fd5b600160a060020a038316151561088e5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561088957600080fd5b61097a565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156108e557600080fd5b6102c65a03f115156108f657600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561095e57600080fd5b6102c65a03f1151561096f57600080fd5b505050604051805150505b505050565b6000610989610d94565b600080845111156109a257835160200290508391508082525b600054600160a060020a03161580610ab3575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610a49578082015183820152602001610a31565b50505050905090810190601f168015610a765780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610a9757600080fd5b6102c65a03f11515610aa857600080fd5b505050604051805190505b9695505050505050565b604051600080516020610da783398151915281526013016040518091039020610ae582610cc9565b610af033838361097f565b1515610afb57600080fd5b50506000908152606760205260409020805460ff19169055565b604051600080516020610da783398151915281526013016040518091039020610b5d33826000604051805910610487575059908082528060200260200182016040525061097f565b1515610b6857600080fd5b506000908152606760205260409020805460ff19166001179055565b600054600160a060020a031681565b6000610b9d610cda565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610c04578082015183820152602001610bec565b50505050905090810190601f168015610c315780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610c4f57600080fd5b6102c65a03f11515610c6057600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b610c8b610d94565b610c9d82600160a060020a0316610d4d565b92915050565b600080600160a060020a0383161515610cbf5760009150610647565b50506000903b1190565b610cd1610d94565b610c9d82610d4d565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610c4f57600080fd5b610d55610d94565b6001604051805910610d645750595b908082528060200260200182016040525090508181600081518110610d8557fe5b60209081029091010152919050565b602060405190810160405260008152905600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000a165627a7a72305820f3c719e78b012a0bee8f5388bc47f34edad3da48fc5ec33d196837daacced6800029","realRuntimeBytecode":"6060604052600436106101195763ffffffff60e060020a600035041663178e6079811461011e5780631c8e85681461014357806324fea3b01461016a57806332ce8ebc1461017d57806332f0a3b51461019d57806338740291146101cc5780634eafbcd5146101e457806360b1e057146102035780636293c7021461021657806379f4542e146102355780637e7db6e11461025457806380afdea81461027357806381ea4408146102865780638322fff2146102a55780638b3dd749146102b85780639b3fdf4c146102cb5780639d4941d8146102de578063a1658fad146102fd578063b12b5f7614610360578063c8ae070f14610376578063d4aae0c41461038c578063f92a79ff1461039f578063fbfa77cf146103f0575b600080fd5b341561012957600080fd5b610131610403565b60405190815260200160405180910390f35b341561014e57600080fd5b610156610427565b604051901515815260200160405180910390f35b341561017557600080fd5b610131610430565b341561018857600080fd5b61019b6004803560248101910135610452565b005b34156101a857600080fd5b6101b06104ec565b604051600160a060020a03909116815260200160405180910390f35b34156101d757600080fd5b61019b600435151561056c565b34156101ef57600080fd5b610156600160a060020a03600435166105d2565b341561020e57600080fd5b61013161064d565b341561022157600080fd5b61019b600160a060020a0360043516610671565b341561024057600080fd5b61019b600160a060020a03600435166106d2565b341561025f57600080fd5b610156600160a060020a036004351661074a565b341561027e57600080fd5b610131610750565b341561029157600080fd5b610131600160a060020a0360043516610756565b34156102b057600080fd5b6101b06107d8565b34156102c357600080fd5b6101316107dd565b34156102d657600080fd5b6101316107e3565b34156102e957600080fd5b61019b600160a060020a0360043516610807565b341561030857600080fd5b61015660048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061097f95505050505050565b341561036b57600080fd5b61019b600435610abd565b341561038157600080fd5b61019b600435610b15565b341561039757600080fd5b6101b0610b84565b34156103aa57600080fd5b6101b060046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610b9395505050505050565b34156103fb57600080fd5b6101b0610c6f565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b604051600080516020610da78339815191528152601301604051809103902081565b6000604051600080516020610da78339815191528152601301604051809103902061049d338260006040518059106104875750595b908082528060200260200182016040525061097f565b15156104a857600080fd5b600091505b60ff8216839010156104e6576104db848460ff85168181106104cb57fe5b9050602002013560001916610b15565b6001909101906104ad565b50505050565b60008054600160a060020a0316151561050457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561054d57600080fd5b6102c65a03f1151561055e57600080fd5b505050604051805191505090565b604051600080516020610da7833981519152815260130160405180910390206105b433826000604051805910610487575059908082528060200260200182016040525061097f565b15156105bf57600080fd5b506069805460ff19169115919091179055565b606954600090819060ff16806105ef5750600160a060020a038316155b156105fd5760019150610647565b600160a060020a03831660009081526068602052604090205460ff16156106275760019150610647565b61063083610756565b60008181526067602052604090205460ff16925090505b50919050565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b604051600080516020610da78339815191528152601301604051809103902061069982610c83565b6106a433838361097f565b15156106af57600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b604051600080516020610da78339815191528152601301604051809103902061071a33826000604051805910610487575059908082528060200260200182016040525061097f565b151561072557600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60015481565b6000610760610d94565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106107a45780518252601f199092019160209182019101610785565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806108138361074a565b151561081e57600080fd5b6108266104ec565b915061083182610ca3565b151561083c57600080fd5b600160a060020a038316151561088e5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561088957600080fd5b61097a565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156108e557600080fd5b6102c65a03f115156108f657600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561095e57600080fd5b6102c65a03f1151561096f57600080fd5b505050604051805150505b505050565b6000610989610d94565b600080845111156109a257835160200290508391508082525b600054600160a060020a03161580610ab3575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610a49578082015183820152602001610a31565b50505050905090810190601f168015610a765780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610a9757600080fd5b6102c65a03f11515610aa857600080fd5b505050604051805190505b9695505050505050565b604051600080516020610da783398151915281526013016040518091039020610ae582610cc9565b610af033838361097f565b1515610afb57600080fd5b50506000908152606760205260409020805460ff19169055565b604051600080516020610da783398151915281526013016040518091039020610b5d33826000604051805910610487575059908082528060200260200182016040525061097f565b1515610b6857600080fd5b506000908152606760205260409020805460ff19166001179055565b600054600160a060020a031681565b6000610b9d610cda565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610c04578082015183820152602001610bec565b50505050905090810190601f168015610c315780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610c4f57600080fd5b6102c65a03f11515610c6057600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b610c8b610d94565b610c9d82600160a060020a0316610d4d565b92915050565b600080600160a060020a0383161515610cbf5760009150610647565b50506000903b1190565b610cd1610d94565b610c9d82610d4d565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610c4f57600080fd5b610d55610d94565b6001604051805910610d645750595b908082528060200260200182016040525090508181600081518110610d8557fe5b60209081029091010152919050565b602060405190810160405260008152905600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000a165627a7a72305820","linkReferences":{},"swarmHash":"f3c719e78b012a0bee8f5388bc47f34edad3da48fc5ec33d196837daacced680","gasEstimates":{"creation":{"codeDepositCost":"714000","executionCost":"20960","totalCost":"734960"},"external":{"APP_ADDR_NAMESPACE()":"236","ETH()":"600","EVMSCRIPT_REGISTRY_APP()":"566","EVMSCRIPT_REGISTRY_APP_ID()":"390","PLUGIN_MANAGER_ROLE()":"infinite","addValidPluginContract(bytes32)":"infinite","addValidPluginContracts(bytes32[])":"infinite","addValidPluginInstance(address)":"infinite","allowRecoverability(address)":"545","appId()":"678","canPerform(address,bytes32,uint256[])":"infinite","getCodeHash(address)":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"744","getRecoveryVault()":"infinite","isValidPlugin(address)":"infinite","kernel()":"1029","removeValidPluginContract(bytes32)":"infinite","removeValidPluginInstance(address)":"infinite","transferToVault(address)":"infinite","useWhitelist(bool)":"infinite","vault()":"1084","whitelistDisabled()":"470"}},"functionHashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","PLUGIN_MANAGER_ROLE()":"24fea3b0","addValidPluginContract(bytes32)":"c8ae070f","addValidPluginContracts(bytes32[])":"32ce8ebc","addValidPluginInstance(address)":"79f4542e","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","getCodeHash(address)":"81ea4408","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getRecoveryVault()":"32f0a3b5","isValidPlugin(address)":"4eafbcd5","kernel()":"d4aae0c4","removeValidPluginContract(bytes32)":"b12b5f76","removeValidPluginInstance(address)":"6293c702","transferToVault(address)":"9d4941d8","useWhitelist(bool)":"38740291","vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PLUGIN_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"contractHashes","type":"bytes32[]"}],"name":"addValidPluginContracts","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"useWhitelist","type":"bool"}],"name":"useWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isValidPlugin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"removeValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"addValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getCodeHash","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"removeValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"addValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/LiquidPledgingPlugins.sol","originalFilename":"contracts/LiquidPledgingPlugins.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/LiquidPledgingPlugins.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"60606040526069805460ff19169055341561001957600080fd5b610df2806100286000396000f3006060604052600436106101195763ffffffff60e060020a600035041663178e6079811461011e5780631c8e85681461014357806324fea3b01461016a57806332ce8ebc1461017d57806332f0a3b51461019d57806338740291146101cc5780634eafbcd5146101e457806360b1e057146102035780636293c7021461021657806379f4542e146102355780637e7db6e11461025457806380afdea81461027357806381ea4408146102865780638322fff2146102a55780638b3dd749146102b85780639b3fdf4c146102cb5780639d4941d8146102de578063a1658fad146102fd578063b12b5f7614610360578063c8ae070f14610376578063d4aae0c41461038c578063f92a79ff1461039f578063fbfa77cf146103f0575b600080fd5b341561012957600080fd5b610131610403565b60405190815260200160405180910390f35b341561014e57600080fd5b610156610427565b604051901515815260200160405180910390f35b341561017557600080fd5b610131610430565b341561018857600080fd5b61019b6004803560248101910135610452565b005b34156101a857600080fd5b6101b06104ec565b604051600160a060020a03909116815260200160405180910390f35b34156101d757600080fd5b61019b600435151561056c565b34156101ef57600080fd5b610156600160a060020a03600435166105d2565b341561020e57600080fd5b61013161064d565b341561022157600080fd5b61019b600160a060020a0360043516610671565b341561024057600080fd5b61019b600160a060020a03600435166106d2565b341561025f57600080fd5b610156600160a060020a036004351661074a565b341561027e57600080fd5b610131610750565b341561029157600080fd5b610131600160a060020a0360043516610756565b34156102b057600080fd5b6101b06107d8565b34156102c357600080fd5b6101316107dd565b34156102d657600080fd5b6101316107e3565b34156102e957600080fd5b61019b600160a060020a0360043516610807565b341561030857600080fd5b61015660048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061097f95505050505050565b341561036b57600080fd5b61019b600435610abd565b341561038157600080fd5b61019b600435610b15565b341561039757600080fd5b6101b0610b84565b34156103aa57600080fd5b6101b060046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610b9395505050505050565b34156103fb57600080fd5b6101b0610c6f565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b604051600080516020610da78339815191528152601301604051809103902081565b6000604051600080516020610da78339815191528152601301604051809103902061049d338260006040518059106104875750595b908082528060200260200182016040525061097f565b15156104a857600080fd5b600091505b60ff8216839010156104e6576104db848460ff85168181106104cb57fe5b9050602002013560001916610b15565b6001909101906104ad565b50505050565b60008054600160a060020a0316151561050457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561054d57600080fd5b6102c65a03f1151561055e57600080fd5b505050604051805191505090565b604051600080516020610da7833981519152815260130160405180910390206105b433826000604051805910610487575059908082528060200260200182016040525061097f565b15156105bf57600080fd5b506069805460ff19169115919091179055565b606954600090819060ff16806105ef5750600160a060020a038316155b156105fd5760019150610647565b600160a060020a03831660009081526068602052604090205460ff16156106275760019150610647565b61063083610756565b60008181526067602052604090205460ff16925090505b50919050565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b604051600080516020610da78339815191528152601301604051809103902061069982610c83565b6106a433838361097f565b15156106af57600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b604051600080516020610da78339815191528152601301604051809103902061071a33826000604051805910610487575059908082528060200260200182016040525061097f565b151561072557600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60015481565b6000610760610d94565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106107a45780518252601f199092019160209182019101610785565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806108138361074a565b151561081e57600080fd5b6108266104ec565b915061083182610ca3565b151561083c57600080fd5b600160a060020a038316151561088e5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561088957600080fd5b61097a565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156108e557600080fd5b6102c65a03f115156108f657600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561095e57600080fd5b6102c65a03f1151561096f57600080fd5b505050604051805150505b505050565b6000610989610d94565b600080845111156109a257835160200290508391508082525b600054600160a060020a03161580610ab3575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610a49578082015183820152602001610a31565b50505050905090810190601f168015610a765780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610a9757600080fd5b6102c65a03f11515610aa857600080fd5b505050604051805190505b9695505050505050565b604051600080516020610da783398151915281526013016040518091039020610ae582610cc9565b610af033838361097f565b1515610afb57600080fd5b50506000908152606760205260409020805460ff19169055565b604051600080516020610da783398151915281526013016040518091039020610b5d33826000604051805910610487575059908082528060200260200182016040525061097f565b1515610b6857600080fd5b506000908152606760205260409020805460ff19166001179055565b600054600160a060020a031681565b6000610b9d610cda565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610c04578082015183820152602001610bec565b50505050905090810190601f168015610c315780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610c4f57600080fd5b6102c65a03f11515610c6057600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b610c8b610d94565b610c9d82600160a060020a0316610d4d565b92915050565b600080600160a060020a0383161515610cbf5760009150610647565b50506000903b1190565b610cd1610d94565b610c9d82610d4d565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610c4f57600080fd5b610d55610d94565b6001604051805910610d645750595b908082528060200260200182016040525090508181600081518110610d8557fe5b60209081029091010152919050565b602060405190810160405260008152905600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000a165627a7a72305820f3c719e78b012a0bee8f5388bc47f34edad3da48fc5ec33d196837daacced6800029","runtime_bytecode":"6060604052600436106101195763ffffffff60e060020a600035041663178e6079811461011e5780631c8e85681461014357806324fea3b01461016a57806332ce8ebc1461017d57806332f0a3b51461019d57806338740291146101cc5780634eafbcd5146101e457806360b1e057146102035780636293c7021461021657806379f4542e146102355780637e7db6e11461025457806380afdea81461027357806381ea4408146102865780638322fff2146102a55780638b3dd749146102b85780639b3fdf4c146102cb5780639d4941d8146102de578063a1658fad146102fd578063b12b5f7614610360578063c8ae070f14610376578063d4aae0c41461038c578063f92a79ff1461039f578063fbfa77cf146103f0575b600080fd5b341561012957600080fd5b610131610403565b60405190815260200160405180910390f35b341561014e57600080fd5b610156610427565b604051901515815260200160405180910390f35b341561017557600080fd5b610131610430565b341561018857600080fd5b61019b6004803560248101910135610452565b005b34156101a857600080fd5b6101b06104ec565b604051600160a060020a03909116815260200160405180910390f35b34156101d757600080fd5b61019b600435151561056c565b34156101ef57600080fd5b610156600160a060020a03600435166105d2565b341561020e57600080fd5b61013161064d565b341561022157600080fd5b61019b600160a060020a0360043516610671565b341561024057600080fd5b61019b600160a060020a03600435166106d2565b341561025f57600080fd5b610156600160a060020a036004351661074a565b341561027e57600080fd5b610131610750565b341561029157600080fd5b610131600160a060020a0360043516610756565b34156102b057600080fd5b6101b06107d8565b34156102c357600080fd5b6101316107dd565b34156102d657600080fd5b6101316107e3565b34156102e957600080fd5b61019b600160a060020a0360043516610807565b341561030857600080fd5b61015660048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061097f95505050505050565b341561036b57600080fd5b61019b600435610abd565b341561038157600080fd5b61019b600435610b15565b341561039757600080fd5b6101b0610b84565b34156103aa57600080fd5b6101b060046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610b9395505050505050565b34156103fb57600080fd5b6101b0610c6f565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b604051600080516020610da78339815191528152601301604051809103902081565b6000604051600080516020610da78339815191528152601301604051809103902061049d338260006040518059106104875750595b908082528060200260200182016040525061097f565b15156104a857600080fd5b600091505b60ff8216839010156104e6576104db848460ff85168181106104cb57fe5b9050602002013560001916610b15565b6001909101906104ad565b50505050565b60008054600160a060020a0316151561050457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561054d57600080fd5b6102c65a03f1151561055e57600080fd5b505050604051805191505090565b604051600080516020610da7833981519152815260130160405180910390206105b433826000604051805910610487575059908082528060200260200182016040525061097f565b15156105bf57600080fd5b506069805460ff19169115919091179055565b606954600090819060ff16806105ef5750600160a060020a038316155b156105fd5760019150610647565b600160a060020a03831660009081526068602052604090205460ff16156106275760019150610647565b61063083610756565b60008181526067602052604090205460ff16925090505b50919050565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b604051600080516020610da78339815191528152601301604051809103902061069982610c83565b6106a433838361097f565b15156106af57600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b604051600080516020610da78339815191528152601301604051809103902061071a33826000604051805910610487575059908082528060200260200182016040525061097f565b151561072557600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60015481565b6000610760610d94565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106107a45780518252601f199092019160209182019101610785565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806108138361074a565b151561081e57600080fd5b6108266104ec565b915061083182610ca3565b151561083c57600080fd5b600160a060020a038316151561088e5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561088957600080fd5b61097a565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156108e557600080fd5b6102c65a03f115156108f657600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561095e57600080fd5b6102c65a03f1151561096f57600080fd5b505050604051805150505b505050565b6000610989610d94565b600080845111156109a257835160200290508391508082525b600054600160a060020a03161580610ab3575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610a49578082015183820152602001610a31565b50505050905090810190601f168015610a765780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610a9757600080fd5b6102c65a03f11515610aa857600080fd5b505050604051805190505b9695505050505050565b604051600080516020610da783398151915281526013016040518091039020610ae582610cc9565b610af033838361097f565b1515610afb57600080fd5b50506000908152606760205260409020805460ff19169055565b604051600080516020610da783398151915281526013016040518091039020610b5d33826000604051805910610487575059908082528060200260200182016040525061097f565b1515610b6857600080fd5b506000908152606760205260409020805460ff19166001179055565b600054600160a060020a031681565b6000610b9d610cda565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610c04578082015183820152602001610bec565b50505050905090810190601f168015610c315780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610c4f57600080fd5b6102c65a03f11515610c6057600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b610c8b610d94565b610c9d82600160a060020a0316610d4d565b92915050565b600080600160a060020a0383161515610cbf5760009150610647565b50506000903b1190565b610cd1610d94565b610c9d82610d4d565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610c4f57600080fd5b610d55610d94565b6001604051805910610d645750595b908082528060200260200182016040525090508181600081518110610d8557fe5b60209081029091010152919050565b602060405190810160405260008152905600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000a165627a7a72305820f3c719e78b012a0bee8f5388bc47f34edad3da48fc5ec33d196837daacced6800029","real_runtime_bytecode":"6060604052600436106101195763ffffffff60e060020a600035041663178e6079811461011e5780631c8e85681461014357806324fea3b01461016a57806332ce8ebc1461017d57806332f0a3b51461019d57806338740291146101cc5780634eafbcd5146101e457806360b1e057146102035780636293c7021461021657806379f4542e146102355780637e7db6e11461025457806380afdea81461027357806381ea4408146102865780638322fff2146102a55780638b3dd749146102b85780639b3fdf4c146102cb5780639d4941d8146102de578063a1658fad146102fd578063b12b5f7614610360578063c8ae070f14610376578063d4aae0c41461038c578063f92a79ff1461039f578063fbfa77cf146103f0575b600080fd5b341561012957600080fd5b610131610403565b60405190815260200160405180910390f35b341561014e57600080fd5b610156610427565b604051901515815260200160405180910390f35b341561017557600080fd5b610131610430565b341561018857600080fd5b61019b6004803560248101910135610452565b005b34156101a857600080fd5b6101b06104ec565b604051600160a060020a03909116815260200160405180910390f35b34156101d757600080fd5b61019b600435151561056c565b34156101ef57600080fd5b610156600160a060020a03600435166105d2565b341561020e57600080fd5b61013161064d565b341561022157600080fd5b61019b600160a060020a0360043516610671565b341561024057600080fd5b61019b600160a060020a03600435166106d2565b341561025f57600080fd5b610156600160a060020a036004351661074a565b341561027e57600080fd5b610131610750565b341561029157600080fd5b610131600160a060020a0360043516610756565b34156102b057600080fd5b6101b06107d8565b34156102c357600080fd5b6101316107dd565b34156102d657600080fd5b6101316107e3565b34156102e957600080fd5b61019b600160a060020a0360043516610807565b341561030857600080fd5b61015660048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061097f95505050505050565b341561036b57600080fd5b61019b600435610abd565b341561038157600080fd5b61019b600435610b15565b341561039757600080fd5b6101b0610b84565b34156103aa57600080fd5b6101b060046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610b9395505050505050565b34156103fb57600080fd5b6101b0610c6f565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b604051600080516020610da78339815191528152601301604051809103902081565b6000604051600080516020610da78339815191528152601301604051809103902061049d338260006040518059106104875750595b908082528060200260200182016040525061097f565b15156104a857600080fd5b600091505b60ff8216839010156104e6576104db848460ff85168181106104cb57fe5b9050602002013560001916610b15565b6001909101906104ad565b50505050565b60008054600160a060020a0316151561050457600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561054d57600080fd5b6102c65a03f1151561055e57600080fd5b505050604051805191505090565b604051600080516020610da7833981519152815260130160405180910390206105b433826000604051805910610487575059908082528060200260200182016040525061097f565b15156105bf57600080fd5b506069805460ff19169115919091179055565b606954600090819060ff16806105ef5750600160a060020a038316155b156105fd5760019150610647565b600160a060020a03831660009081526068602052604090205460ff16156106275760019150610647565b61063083610756565b60008181526067602052604090205460ff16925090505b50919050565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b604051600080516020610da78339815191528152601301604051809103902061069982610c83565b6106a433838361097f565b15156106af57600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b604051600080516020610da78339815191528152601301604051809103902061071a33826000604051805910610487575059908082528060200260200182016040525061097f565b151561072557600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60015481565b6000610760610d94565b823b604051915080825280600060208401863c50806040518082805190602001908083835b602083106107a45780518252601f199092019160209182019101610785565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b6000806108138361074a565b151561081e57600080fd5b6108266104ec565b915061083182610ca3565b151561083c57600080fd5b600160a060020a038316151561088e5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561088957600080fd5b61097a565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156108e557600080fd5b6102c65a03f115156108f657600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561095e57600080fd5b6102c65a03f1151561096f57600080fd5b505050604051805150505b505050565b6000610989610d94565b600080845111156109a257835160200290508391508082525b600054600160a060020a03161580610ab3575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610a49578082015183820152602001610a31565b50505050905090810190601f168015610a765780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515610a9757600080fd5b6102c65a03f11515610aa857600080fd5b505050604051805190505b9695505050505050565b604051600080516020610da783398151915281526013016040518091039020610ae582610cc9565b610af033838361097f565b1515610afb57600080fd5b50506000908152606760205260409020805460ff19169055565b604051600080516020610da783398151915281526013016040518091039020610b5d33826000604051805910610487575059908082528060200260200182016040525061097f565b1515610b6857600080fd5b506000908152606760205260409020805460ff19166001179055565b600054600160a060020a031681565b6000610b9d610cda565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610c04578082015183820152602001610bec565b50505050905090810190601f168015610c315780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1515610c4f57600080fd5b6102c65a03f11515610c6057600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b610c8b610d94565b610c9d82600160a060020a0316610d4d565b92915050565b600080600160a060020a0383161515610cbf5760009150610647565b50506000903b1190565b610cd1610d94565b610c9d82610d4d565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610c4f57600080fd5b610d55610d94565b6001604051805910610d645750595b908082528060200260200182016040525090508181600081518110610d8557fe5b60209081029091010152919050565b602060405190810160405260008152905600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000a165627a7a72305820","swarm_hash":"f3c719e78b012a0bee8f5388bc47f34edad3da48fc5ec33d196837daacced680","gas_estimates":{"creation":{"codeDepositCost":"714000","executionCost":"20960","totalCost":"734960"},"external":{"APP_ADDR_NAMESPACE()":"236","ETH()":"600","EVMSCRIPT_REGISTRY_APP()":"566","EVMSCRIPT_REGISTRY_APP_ID()":"390","PLUGIN_MANAGER_ROLE()":"infinite","addValidPluginContract(bytes32)":"infinite","addValidPluginContracts(bytes32[])":"infinite","addValidPluginInstance(address)":"infinite","allowRecoverability(address)":"545","appId()":"678","canPerform(address,bytes32,uint256[])":"infinite","getCodeHash(address)":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"744","getRecoveryVault()":"infinite","isValidPlugin(address)":"infinite","kernel()":"1029","removeValidPluginContract(bytes32)":"infinite","removeValidPluginInstance(address)":"infinite","transferToVault(address)":"infinite","useWhitelist(bool)":"infinite","vault()":"1084","whitelistDisabled()":"470"}},"function_hashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","PLUGIN_MANAGER_ROLE()":"24fea3b0","addValidPluginContract(bytes32)":"c8ae070f","addValidPluginContracts(bytes32[])":"32ce8ebc","addValidPluginInstance(address)":"79f4542e","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","getCodeHash(address)":"81ea4408","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getRecoveryVault()":"32f0a3b5","isValidPlugin(address)":"4eafbcd5","kernel()":"d4aae0c4","removeValidPluginContract(bytes32)":"b12b5f76","removeValidPluginInstance(address)":"6293c702","transferToVault(address)":"9d4941d8","useWhitelist(bool)":"38740291","vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568"},"abi":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PLUGIN_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"contractHashes","type":"bytes32[]"}],"name":"addValidPluginContracts","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"useWhitelist","type":"bool"}],"name":"useWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isValidPlugin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"removeValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"addValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getCodeHash","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"removeValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"addValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let LiquidPledgingPlugins = new EmbarkJS.Blockchain.Contract(LiquidPledgingPluginsJSONConfig); +export default LiquidPledgingPlugins; diff --git a/abi/contracts/LiquidPledgingStorage.js b/abi/contracts/LiquidPledgingStorage.js new file mode 100644 index 0000000..a636225 --- /dev/null +++ b/abi/contracts/LiquidPledgingStorage.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let LiquidPledgingStorageJSONConfig = {"contract_name":{"className":"LiquidPledgingStorage","args":[],"code":"60606040526005805460ff19169055341561001957600080fd5b610100806100286000396000f30060606040526004361060485763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631c8e85688114604d578063fbfa77cf146071575b600080fd5b3415605757600080fd5b605d60aa565b604051901515815260200160405180910390f35b3415607b57600080fd5b608160b3565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60055460ff1681565b600554610100900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a72305820ced560428a0cee10c77194aa64b67077250a4e9e7d9948c504b5d9af3b2f73750029","runtimeBytecode":"60606040526004361060485763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631c8e85688114604d578063fbfa77cf146071575b600080fd5b3415605757600080fd5b605d60aa565b604051901515815260200160405180910390f35b3415607b57600080fd5b608160b3565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60055460ff1681565b600554610100900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a72305820ced560428a0cee10c77194aa64b67077250a4e9e7d9948c504b5d9af3b2f73750029","realRuntimeBytecode":"60606040526004361060485763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631c8e85688114604d578063fbfa77cf146071575b600080fd5b3415605757600080fd5b605d60aa565b604051901515815260200160405180910390f35b3415607b57600080fd5b608160b3565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60055460ff1681565b600554610100900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a72305820","linkReferences":{},"swarmHash":"ced560428a0cee10c77194aa64b67077250a4e9e7d9948c504b5d9af3b2f7375","gasEstimates":{"creation":{"codeDepositCost":"51200","executionCost":"20312","totalCost":"71512"},"external":{"vault()":"421","whitelistDisabled()":"385"}},"functionHashes":{"vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568"},"abiDefinition":[{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/LiquidPledgingStorage.sol","originalFilename":"contracts/LiquidPledgingStorage.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/LiquidPledgingStorage.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"60606040526005805460ff19169055341561001957600080fd5b610100806100286000396000f30060606040526004361060485763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631c8e85688114604d578063fbfa77cf146071575b600080fd5b3415605757600080fd5b605d60aa565b604051901515815260200160405180910390f35b3415607b57600080fd5b608160b3565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60055460ff1681565b600554610100900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a72305820ced560428a0cee10c77194aa64b67077250a4e9e7d9948c504b5d9af3b2f73750029","runtime_bytecode":"60606040526004361060485763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631c8e85688114604d578063fbfa77cf146071575b600080fd5b3415605757600080fd5b605d60aa565b604051901515815260200160405180910390f35b3415607b57600080fd5b608160b3565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60055460ff1681565b600554610100900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a72305820ced560428a0cee10c77194aa64b67077250a4e9e7d9948c504b5d9af3b2f73750029","real_runtime_bytecode":"60606040526004361060485763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631c8e85688114604d578063fbfa77cf146071575b600080fd5b3415605757600080fd5b605d60aa565b604051901515815260200160405180910390f35b3415607b57600080fd5b608160b3565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60055460ff1681565b600554610100900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a72305820","swarm_hash":"ced560428a0cee10c77194aa64b67077250a4e9e7d9948c504b5d9af3b2f7375","gas_estimates":{"creation":{"codeDepositCost":"51200","executionCost":"20312","totalCost":"71512"},"external":{"vault()":"421","whitelistDisabled()":"385"}},"function_hashes":{"vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568"},"abi":[{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let LiquidPledgingStorage = new EmbarkJS.Blockchain.Contract(LiquidPledgingStorageJSONConfig); +export default LiquidPledgingStorage; diff --git a/abi/contracts/PledgeAdmins.js b/abi/contracts/PledgeAdmins.js new file mode 100644 index 0000000..8d0dc2c --- /dev/null +++ b/abi/contracts/PledgeAdmins.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let PledgeAdminsJSONConfig = {"contract_name":{"className":"PledgeAdmins","args":[],"code":"60606040526069805460ff19169055341561001957600080fd5b61254a806100286000396000f3006060604052600436106101875763ffffffff60e060020a600035041663178e6079811461018c5780631c8e8568146101b15780632101a6ad146101d857806324fea3b0146101f857806332ce8ebc1461020b57806332f0a3b51461022b578063387402911461025a5780634eafbcd51461027257806352dc7dcc146102915780635503d9ba146102f157806360b1e057146103045780636293c702146103175780636e802c6a1461033657806372116e92146103f157806379f4542e146104435780637e7db6e1146104625780637f61fa931461048157806380afdea8146104c457806381ea4408146104d75780638322fff2146104f65780638b3dd749146105095780639b3fdf4c1461051c5780639d4941d81461052f578063a1658fad1461054e578063b12b5f76146105b1578063c8ae070f146105c7578063cc19ecf7146105dd578063d4aae0c41461062a578063db7c23141461063d578063eba8ba061461068a578063f6b24b1c146107e2578063f92a79ff1461082f578063fbfa77cf14610880575b600080fd5b341561019757600080fd5b61019f610893565b60405190815260200160405180910390f35b34156101bc57600080fd5b6101c46108b7565b604051901515815260200160405180910390f35b34156101e357600080fd5b6101c467ffffffffffffffff600435166108c0565b341561020357600080fd5b61019f610969565b341561021657600080fd5b610229600480356024810191013561098b565b005b341561023657600080fd5b61023e610a25565b604051600160a060020a03909116815260200160405180910390f35b341561026557600080fd5b6102296004351515610aa6565b341561027d57600080fd5b6101c4600160a060020a0360043516610b0c565b341561029c57600080fd5b6102d4602460048035828101929082013591813591820191013567ffffffffffffffff60443516600160a060020a0360643516610b83565b60405167ffffffffffffffff909116815260200160405180910390f35b34156102fc57600080fd5b61019f610e1a565b341561030f57600080fd5b61019f610e24565b341561032257600080fd5b610229600160a060020a0360043516610e48565b341561034157600080fd5b6102d460048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050833567ffffffffffffffff169360200135600160a060020a03169250610ea9915050565b34156103fc57600080fd5b6102d46024600480358281019290820135918135918201910135600160a060020a0360443581169067ffffffffffffffff6064358116916084359091169060a4351661111f565b341561044e57600080fd5b610229600160a060020a03600435166115de565b341561046d57600080fd5b6101c4600160a060020a0360043516611656565b341561048c57600080fd5b6102d4602460048035828101929082013591813591820191013567ffffffffffffffff60443516600160a060020a036064351661165c565b34156104cf57600080fd5b61019f6116d8565b34156104e257600080fd5b61019f600160a060020a03600435166116de565b341561050157600080fd5b61023e611760565b341561051457600080fd5b61019f611765565b341561052757600080fd5b61019f61176b565b341561053a57600080fd5b610229600160a060020a036004351661178f565b341561055957600080fd5b6101c460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061190795505050505050565b34156105bc57600080fd5b610229600435611a45565b34156105d257600080fd5b610229600435611a9d565b34156105e857600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611b0c565b341561063557600080fd5b61023e611c16565b341561064857600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611c25565b341561069557600080fd5b6106aa67ffffffffffffffff60043516611d2f565b604051808960028111156106ba57fe5b60ff168152600160a060020a03898116602083015267ffffffffffffffff8781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b8381101561073c578082015183820152602001610724565b50505050905090810190601f1680156107695780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561079f578082015183820152602001610787565b50505050905090810190601f1680156107cc5780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b34156107ed57600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611f04565b341561083a57600080fd5b61023e60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061200e95505050505050565b341561088b57600080fd5b61023e6120ea565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b6000806108cc836120fe565b90506000815460ff1660028111156108e057fe5b14156108ef5760009150610963565b6002815460ff16600281111561090157fe5b1461090857fe5b600181015468010000000000000000900460ff161561092a5760019150610963565b600181015467ffffffffffffffff1615156109485760009150610963565b60018101546109609067ffffffffffffffff166108c0565b91505b50919050565b6040516000805160206124df8339815191528152601301604051809103902081565b60006040516000805160206124df833981519152815260130160405180910390206109d6338260006040518059106109c05750595b9080825280602002602001820160405250611907565b15156109e157600080fd5b600091505b60ff821683901015610a1f57610a14848460ff8516818110610a0457fe5b9050602002013560001916611a9d565b6001909101906109e6565b50505050565b60008054600160a060020a03161515610a3d57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610a8657600080fd5b6102c65a03f11515610a9757600080fd5b50505060405180519150505b90565b6040516000805160206124df83398151915281526013016040518091039020610aee338260006040518059106109c05750599080825280602002602001820160405250611907565b1515610af957600080fd5b506069805460ff19169115919091179055565b606954600090819060ff1680610b295750600160a060020a038316155b15610b375760019150610963565b600160a060020a03831660009081526068602052604090205460ff1615610b615760019150610963565b610b6a836116de565b60009081526067602052604090205460ff169392505050565b6000610b8e82610b0c565b1515610b9957600080fd5b5060648054908160018101610bae83826122f0565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a031681526020018767ffffffffffffffff168152602001600067ffffffffffffffff16815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115610ca157fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051610d9992916020019061231c565b5060e082015181600301908051610db492916020019061231c565b505050508067ffffffffffffffff167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206124df83398151915281526013016040518091039020610e7082612146565b610e7b338383611907565b1515610e8657600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b6000610eb482610b0c565b1515610ebf57600080fd5b5060648054908160018101610ed483826122f0565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c16602083015267ffffffffffffffff891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115610f5257fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161104a92916020019061231c565b5060e08201518160030190805161106592916020019061231c565b5050505085600160a060020a03168167ffffffffffffffff167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b838110156110dc5780820151838201526020016110c4565b50505050905090810190601f1680156111095780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061112b83610b0c565b151561113657600080fd5b67ffffffffffffffff85161561135b5761114f856120fe565b90506014611347826101006040519081016040528154909190829060ff16600281111561117857fe5b600281111561118357fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a90930467ffffffffffffffff908116604080870191909152600180880154928316606088015268010000000000000000830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156112975780601f1061126c57610100808354040283529160200191611297565b820191906000526020600020905b81548152906001019060200180831161127a57829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113395780601f1061130e57610100808354040283529160200191611339565b820191906000526020600020905b81548152906001019060200180831161131c57829003601f168201915b505050505081525050612166565b67ffffffffffffffff161061135b57600080fd5b606480549250826001810161137083826122f0565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a031681526020018867ffffffffffffffff1681526020018967ffffffffffffffff16815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561146257fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161155a92916020019061231c565b5060e08201518160030190805161157592916020019061231c565b505050508167ffffffffffffffff167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b6040516000805160206124df83398151915281526013016040518091039020611626338260006040518059106109c05750599080825280602002602001820160405250611907565b151561163157600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006116cd3388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686610ea9565b979650505050505050565b60015481565b60006116e8612396565b823b604051915080825280600060208401863c50806040518082805190602001908083835b6020831061172c5780518252601f19909201916020918201910161170d565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60008061179b83611656565b15156117a657600080fd5b6117ae610a25565b91506117b9826121db565b15156117c457600080fd5b600160a060020a03831615156118165781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561181157600080fd5b611902565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561186d57600080fd5b6102c65a03f1151561187e57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156118e657600080fd5b6102c65a03f115156118f757600080fd5b505050604051805150505b505050565b6000611911612396565b6000808451111561192a57835160200290508391508082525b600054600160a060020a03161580611a3b575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156119d15780820151838201526020016119b9565b50505050905090810190601f1680156119fe5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515611a1f57600080fd5b6102c65a03f11515611a3057600080fd5b505050604051805190505b9695505050505050565b6040516000805160206124df83398151915281526013016040518091039020611a6d82612201565b611a78338383611907565b1515611a8357600080fd5b50506000908152606760205260409020805460ff19169055565b6040516000805160206124df83398151915281526013016040518091039020611ae5338260006040518059106109c05750599080825280602002602001820160405250611907565b1515611af057600080fd5b506000908152606760205260409020805460ff19166001179055565b6000611b17886120fe565b805490915033600160a060020a039081166101009092041614611b3957600080fd5b6001815460ff166002811115611b4b57fe5b14611b5557600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611b816002820187876123a8565b50611b906003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600054600160a060020a031681565b6000611c30886120fe565b805490915033600160a060020a039081166101009092041614611c5257600080fd5b6000815460ff166002811115611c6457fe5b14611c6e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611c9a6002820187876123a8565b50611ca96003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600080611d3a612396565b611d42612396565b6000806000806000611d538a6120fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f82018190048102016040519081016040528092919081815260200182805460018160011615610100020316600290048015611e085780601f10611ddd57610100808354040283529160200191611e08565b820191906000526020600020905b815481529060010190602001808311611deb57829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611ea75780601f10611e7c57610100808354040283529160200191611ea7565b820191906000526020600020905b815481529060010190602001808311611e8a57829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a90940467ffffffffffffffff9081169a5083169850505068010000000000000000810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000611f0f886120fe565b805490915033600160a060020a039081166101009092041614611f3157600080fd5b6002815460ff166002811115611f4357fe5b14611f4d57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611f796002820187876123a8565b50611f886003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000612018612212565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561207f578082015183820152602001612067565b50505050905090810190601f1680156120ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156120ca57600080fd5b6102c65a03f115156120db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b60645460009067ffffffffffffffff83161061211957600080fd5b6064805467ffffffffffffffff841690811061213157fe5b90600052602060002090600402019050919050565b61214e612396565b61216082600160a060020a03166122a9565b92915050565b60008060028351600281111561217857fe5b1461217f57fe5b826060015167ffffffffffffffff16151561219d5760019150610963565b6121aa83606001516120fe565b90506121d1816101006040519081016040528154909190829060ff16600281111561117857fe5b6001019392505050565b600080600160a060020a03831615156121f75760009150610963565b50506000903b1190565b612209612396565b612160826122a9565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561228557600080fd5b6102c65a03f1151561229657600080fd5b50505060405180519250829150505b5090565b6122b1612396565b60016040518059106122c05750595b9080825280602002602001820160405250905081816000815181106122e157fe5b60209081029091010152919050565b815481835581811511611902576004028160040283600052602060002091820191016119029190612416565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061235d57805160ff191683800117855561238a565b8280016001018555821561238a579182015b8281111561238a57825182559160200191906001019061236f565b506122a592915061247d565b60206040519081016040526000815290565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106123e95782800160ff1982351617855561238a565b8280016001018555821561238a579182015b8281111561238a5782358255916020019190600101906123fb565b610aa391905b808211156122a55780547fffffff00000000000000000000000000000000000000000000000000000000009081168255600182018054909116905560006124666002830182612497565b612474600383016000612497565b5060040161241c565b610aa391905b808211156122a55760008155600101612483565b50805460018160011615610100020316600290046000825580601f106124bd57506124db565b601f0160209004906000526020600020908101906124db919061247d565b505600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a7230582069602a3d3a9011586d85fb981a621e3c700a924d5ce4cc587e492027326e4a140029","runtimeBytecode":"6060604052600436106101875763ffffffff60e060020a600035041663178e6079811461018c5780631c8e8568146101b15780632101a6ad146101d857806324fea3b0146101f857806332ce8ebc1461020b57806332f0a3b51461022b578063387402911461025a5780634eafbcd51461027257806352dc7dcc146102915780635503d9ba146102f157806360b1e057146103045780636293c702146103175780636e802c6a1461033657806372116e92146103f157806379f4542e146104435780637e7db6e1146104625780637f61fa931461048157806380afdea8146104c457806381ea4408146104d75780638322fff2146104f65780638b3dd749146105095780639b3fdf4c1461051c5780639d4941d81461052f578063a1658fad1461054e578063b12b5f76146105b1578063c8ae070f146105c7578063cc19ecf7146105dd578063d4aae0c41461062a578063db7c23141461063d578063eba8ba061461068a578063f6b24b1c146107e2578063f92a79ff1461082f578063fbfa77cf14610880575b600080fd5b341561019757600080fd5b61019f610893565b60405190815260200160405180910390f35b34156101bc57600080fd5b6101c46108b7565b604051901515815260200160405180910390f35b34156101e357600080fd5b6101c467ffffffffffffffff600435166108c0565b341561020357600080fd5b61019f610969565b341561021657600080fd5b610229600480356024810191013561098b565b005b341561023657600080fd5b61023e610a25565b604051600160a060020a03909116815260200160405180910390f35b341561026557600080fd5b6102296004351515610aa6565b341561027d57600080fd5b6101c4600160a060020a0360043516610b0c565b341561029c57600080fd5b6102d4602460048035828101929082013591813591820191013567ffffffffffffffff60443516600160a060020a0360643516610b83565b60405167ffffffffffffffff909116815260200160405180910390f35b34156102fc57600080fd5b61019f610e1a565b341561030f57600080fd5b61019f610e24565b341561032257600080fd5b610229600160a060020a0360043516610e48565b341561034157600080fd5b6102d460048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050833567ffffffffffffffff169360200135600160a060020a03169250610ea9915050565b34156103fc57600080fd5b6102d46024600480358281019290820135918135918201910135600160a060020a0360443581169067ffffffffffffffff6064358116916084359091169060a4351661111f565b341561044e57600080fd5b610229600160a060020a03600435166115de565b341561046d57600080fd5b6101c4600160a060020a0360043516611656565b341561048c57600080fd5b6102d4602460048035828101929082013591813591820191013567ffffffffffffffff60443516600160a060020a036064351661165c565b34156104cf57600080fd5b61019f6116d8565b34156104e257600080fd5b61019f600160a060020a03600435166116de565b341561050157600080fd5b61023e611760565b341561051457600080fd5b61019f611765565b341561052757600080fd5b61019f61176b565b341561053a57600080fd5b610229600160a060020a036004351661178f565b341561055957600080fd5b6101c460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061190795505050505050565b34156105bc57600080fd5b610229600435611a45565b34156105d257600080fd5b610229600435611a9d565b34156105e857600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611b0c565b341561063557600080fd5b61023e611c16565b341561064857600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611c25565b341561069557600080fd5b6106aa67ffffffffffffffff60043516611d2f565b604051808960028111156106ba57fe5b60ff168152600160a060020a03898116602083015267ffffffffffffffff8781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b8381101561073c578082015183820152602001610724565b50505050905090810190601f1680156107695780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561079f578082015183820152602001610787565b50505050905090810190601f1680156107cc5780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b34156107ed57600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611f04565b341561083a57600080fd5b61023e60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061200e95505050505050565b341561088b57600080fd5b61023e6120ea565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b6000806108cc836120fe565b90506000815460ff1660028111156108e057fe5b14156108ef5760009150610963565b6002815460ff16600281111561090157fe5b1461090857fe5b600181015468010000000000000000900460ff161561092a5760019150610963565b600181015467ffffffffffffffff1615156109485760009150610963565b60018101546109609067ffffffffffffffff166108c0565b91505b50919050565b6040516000805160206124df8339815191528152601301604051809103902081565b60006040516000805160206124df833981519152815260130160405180910390206109d6338260006040518059106109c05750595b9080825280602002602001820160405250611907565b15156109e157600080fd5b600091505b60ff821683901015610a1f57610a14848460ff8516818110610a0457fe5b9050602002013560001916611a9d565b6001909101906109e6565b50505050565b60008054600160a060020a03161515610a3d57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610a8657600080fd5b6102c65a03f11515610a9757600080fd5b50505060405180519150505b90565b6040516000805160206124df83398151915281526013016040518091039020610aee338260006040518059106109c05750599080825280602002602001820160405250611907565b1515610af957600080fd5b506069805460ff19169115919091179055565b606954600090819060ff1680610b295750600160a060020a038316155b15610b375760019150610963565b600160a060020a03831660009081526068602052604090205460ff1615610b615760019150610963565b610b6a836116de565b60009081526067602052604090205460ff169392505050565b6000610b8e82610b0c565b1515610b9957600080fd5b5060648054908160018101610bae83826122f0565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a031681526020018767ffffffffffffffff168152602001600067ffffffffffffffff16815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115610ca157fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051610d9992916020019061231c565b5060e082015181600301908051610db492916020019061231c565b505050508067ffffffffffffffff167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206124df83398151915281526013016040518091039020610e7082612146565b610e7b338383611907565b1515610e8657600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b6000610eb482610b0c565b1515610ebf57600080fd5b5060648054908160018101610ed483826122f0565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c16602083015267ffffffffffffffff891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115610f5257fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161104a92916020019061231c565b5060e08201518160030190805161106592916020019061231c565b5050505085600160a060020a03168167ffffffffffffffff167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b838110156110dc5780820151838201526020016110c4565b50505050905090810190601f1680156111095780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061112b83610b0c565b151561113657600080fd5b67ffffffffffffffff85161561135b5761114f856120fe565b90506014611347826101006040519081016040528154909190829060ff16600281111561117857fe5b600281111561118357fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a90930467ffffffffffffffff908116604080870191909152600180880154928316606088015268010000000000000000830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156112975780601f1061126c57610100808354040283529160200191611297565b820191906000526020600020905b81548152906001019060200180831161127a57829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113395780601f1061130e57610100808354040283529160200191611339565b820191906000526020600020905b81548152906001019060200180831161131c57829003601f168201915b505050505081525050612166565b67ffffffffffffffff161061135b57600080fd5b606480549250826001810161137083826122f0565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a031681526020018867ffffffffffffffff1681526020018967ffffffffffffffff16815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561146257fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161155a92916020019061231c565b5060e08201518160030190805161157592916020019061231c565b505050508167ffffffffffffffff167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b6040516000805160206124df83398151915281526013016040518091039020611626338260006040518059106109c05750599080825280602002602001820160405250611907565b151561163157600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006116cd3388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686610ea9565b979650505050505050565b60015481565b60006116e8612396565b823b604051915080825280600060208401863c50806040518082805190602001908083835b6020831061172c5780518252601f19909201916020918201910161170d565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60008061179b83611656565b15156117a657600080fd5b6117ae610a25565b91506117b9826121db565b15156117c457600080fd5b600160a060020a03831615156118165781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561181157600080fd5b611902565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561186d57600080fd5b6102c65a03f1151561187e57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156118e657600080fd5b6102c65a03f115156118f757600080fd5b505050604051805150505b505050565b6000611911612396565b6000808451111561192a57835160200290508391508082525b600054600160a060020a03161580611a3b575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156119d15780820151838201526020016119b9565b50505050905090810190601f1680156119fe5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515611a1f57600080fd5b6102c65a03f11515611a3057600080fd5b505050604051805190505b9695505050505050565b6040516000805160206124df83398151915281526013016040518091039020611a6d82612201565b611a78338383611907565b1515611a8357600080fd5b50506000908152606760205260409020805460ff19169055565b6040516000805160206124df83398151915281526013016040518091039020611ae5338260006040518059106109c05750599080825280602002602001820160405250611907565b1515611af057600080fd5b506000908152606760205260409020805460ff19166001179055565b6000611b17886120fe565b805490915033600160a060020a039081166101009092041614611b3957600080fd5b6001815460ff166002811115611b4b57fe5b14611b5557600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611b816002820187876123a8565b50611b906003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600054600160a060020a031681565b6000611c30886120fe565b805490915033600160a060020a039081166101009092041614611c5257600080fd5b6000815460ff166002811115611c6457fe5b14611c6e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611c9a6002820187876123a8565b50611ca96003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600080611d3a612396565b611d42612396565b6000806000806000611d538a6120fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f82018190048102016040519081016040528092919081815260200182805460018160011615610100020316600290048015611e085780601f10611ddd57610100808354040283529160200191611e08565b820191906000526020600020905b815481529060010190602001808311611deb57829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611ea75780601f10611e7c57610100808354040283529160200191611ea7565b820191906000526020600020905b815481529060010190602001808311611e8a57829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a90940467ffffffffffffffff9081169a5083169850505068010000000000000000810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000611f0f886120fe565b805490915033600160a060020a039081166101009092041614611f3157600080fd5b6002815460ff166002811115611f4357fe5b14611f4d57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611f796002820187876123a8565b50611f886003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000612018612212565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561207f578082015183820152602001612067565b50505050905090810190601f1680156120ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156120ca57600080fd5b6102c65a03f115156120db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b60645460009067ffffffffffffffff83161061211957600080fd5b6064805467ffffffffffffffff841690811061213157fe5b90600052602060002090600402019050919050565b61214e612396565b61216082600160a060020a03166122a9565b92915050565b60008060028351600281111561217857fe5b1461217f57fe5b826060015167ffffffffffffffff16151561219d5760019150610963565b6121aa83606001516120fe565b90506121d1816101006040519081016040528154909190829060ff16600281111561117857fe5b6001019392505050565b600080600160a060020a03831615156121f75760009150610963565b50506000903b1190565b612209612396565b612160826122a9565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561228557600080fd5b6102c65a03f1151561229657600080fd5b50505060405180519250829150505b5090565b6122b1612396565b60016040518059106122c05750595b9080825280602002602001820160405250905081816000815181106122e157fe5b60209081029091010152919050565b815481835581811511611902576004028160040283600052602060002091820191016119029190612416565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061235d57805160ff191683800117855561238a565b8280016001018555821561238a579182015b8281111561238a57825182559160200191906001019061236f565b506122a592915061247d565b60206040519081016040526000815290565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106123e95782800160ff1982351617855561238a565b8280016001018555821561238a579182015b8281111561238a5782358255916020019190600101906123fb565b610aa391905b808211156122a55780547fffffff00000000000000000000000000000000000000000000000000000000009081168255600182018054909116905560006124666002830182612497565b612474600383016000612497565b5060040161241c565b610aa391905b808211156122a55760008155600101612483565b50805460018160011615610100020316600290046000825580601f106124bd57506124db565b601f0160209004906000526020600020908101906124db919061247d565b505600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a7230582069602a3d3a9011586d85fb981a621e3c700a924d5ce4cc587e492027326e4a140029","realRuntimeBytecode":"6060604052600436106101875763ffffffff60e060020a600035041663178e6079811461018c5780631c8e8568146101b15780632101a6ad146101d857806324fea3b0146101f857806332ce8ebc1461020b57806332f0a3b51461022b578063387402911461025a5780634eafbcd51461027257806352dc7dcc146102915780635503d9ba146102f157806360b1e057146103045780636293c702146103175780636e802c6a1461033657806372116e92146103f157806379f4542e146104435780637e7db6e1146104625780637f61fa931461048157806380afdea8146104c457806381ea4408146104d75780638322fff2146104f65780638b3dd749146105095780639b3fdf4c1461051c5780639d4941d81461052f578063a1658fad1461054e578063b12b5f76146105b1578063c8ae070f146105c7578063cc19ecf7146105dd578063d4aae0c41461062a578063db7c23141461063d578063eba8ba061461068a578063f6b24b1c146107e2578063f92a79ff1461082f578063fbfa77cf14610880575b600080fd5b341561019757600080fd5b61019f610893565b60405190815260200160405180910390f35b34156101bc57600080fd5b6101c46108b7565b604051901515815260200160405180910390f35b34156101e357600080fd5b6101c467ffffffffffffffff600435166108c0565b341561020357600080fd5b61019f610969565b341561021657600080fd5b610229600480356024810191013561098b565b005b341561023657600080fd5b61023e610a25565b604051600160a060020a03909116815260200160405180910390f35b341561026557600080fd5b6102296004351515610aa6565b341561027d57600080fd5b6101c4600160a060020a0360043516610b0c565b341561029c57600080fd5b6102d4602460048035828101929082013591813591820191013567ffffffffffffffff60443516600160a060020a0360643516610b83565b60405167ffffffffffffffff909116815260200160405180910390f35b34156102fc57600080fd5b61019f610e1a565b341561030f57600080fd5b61019f610e24565b341561032257600080fd5b610229600160a060020a0360043516610e48565b341561034157600080fd5b6102d460048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050833567ffffffffffffffff169360200135600160a060020a03169250610ea9915050565b34156103fc57600080fd5b6102d46024600480358281019290820135918135918201910135600160a060020a0360443581169067ffffffffffffffff6064358116916084359091169060a4351661111f565b341561044e57600080fd5b610229600160a060020a03600435166115de565b341561046d57600080fd5b6101c4600160a060020a0360043516611656565b341561048c57600080fd5b6102d4602460048035828101929082013591813591820191013567ffffffffffffffff60443516600160a060020a036064351661165c565b34156104cf57600080fd5b61019f6116d8565b34156104e257600080fd5b61019f600160a060020a03600435166116de565b341561050157600080fd5b61023e611760565b341561051457600080fd5b61019f611765565b341561052757600080fd5b61019f61176b565b341561053a57600080fd5b610229600160a060020a036004351661178f565b341561055957600080fd5b6101c460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061190795505050505050565b34156105bc57600080fd5b610229600435611a45565b34156105d257600080fd5b610229600435611a9d565b34156105e857600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611b0c565b341561063557600080fd5b61023e611c16565b341561064857600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611c25565b341561069557600080fd5b6106aa67ffffffffffffffff60043516611d2f565b604051808960028111156106ba57fe5b60ff168152600160a060020a03898116602083015267ffffffffffffffff8781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b8381101561073c578082015183820152602001610724565b50505050905090810190601f1680156107695780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561079f578082015183820152602001610787565b50505050905090810190601f1680156107cc5780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b34156107ed57600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611f04565b341561083a57600080fd5b61023e60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061200e95505050505050565b341561088b57600080fd5b61023e6120ea565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b6000806108cc836120fe565b90506000815460ff1660028111156108e057fe5b14156108ef5760009150610963565b6002815460ff16600281111561090157fe5b1461090857fe5b600181015468010000000000000000900460ff161561092a5760019150610963565b600181015467ffffffffffffffff1615156109485760009150610963565b60018101546109609067ffffffffffffffff166108c0565b91505b50919050565b6040516000805160206124df8339815191528152601301604051809103902081565b60006040516000805160206124df833981519152815260130160405180910390206109d6338260006040518059106109c05750595b9080825280602002602001820160405250611907565b15156109e157600080fd5b600091505b60ff821683901015610a1f57610a14848460ff8516818110610a0457fe5b9050602002013560001916611a9d565b6001909101906109e6565b50505050565b60008054600160a060020a03161515610a3d57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610a8657600080fd5b6102c65a03f11515610a9757600080fd5b50505060405180519150505b90565b6040516000805160206124df83398151915281526013016040518091039020610aee338260006040518059106109c05750599080825280602002602001820160405250611907565b1515610af957600080fd5b506069805460ff19169115919091179055565b606954600090819060ff1680610b295750600160a060020a038316155b15610b375760019150610963565b600160a060020a03831660009081526068602052604090205460ff1615610b615760019150610963565b610b6a836116de565b60009081526067602052604090205460ff169392505050565b6000610b8e82610b0c565b1515610b9957600080fd5b5060648054908160018101610bae83826122f0565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a031681526020018767ffffffffffffffff168152602001600067ffffffffffffffff16815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115610ca157fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051610d9992916020019061231c565b5060e082015181600301908051610db492916020019061231c565b505050508067ffffffffffffffff167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206124df83398151915281526013016040518091039020610e7082612146565b610e7b338383611907565b1515610e8657600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b6000610eb482610b0c565b1515610ebf57600080fd5b5060648054908160018101610ed483826122f0565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c16602083015267ffffffffffffffff891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115610f5257fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161104a92916020019061231c565b5060e08201518160030190805161106592916020019061231c565b5050505085600160a060020a03168167ffffffffffffffff167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b838110156110dc5780820151838201526020016110c4565b50505050905090810190601f1680156111095780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061112b83610b0c565b151561113657600080fd5b67ffffffffffffffff85161561135b5761114f856120fe565b90506014611347826101006040519081016040528154909190829060ff16600281111561117857fe5b600281111561118357fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a90930467ffffffffffffffff908116604080870191909152600180880154928316606088015268010000000000000000830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156112975780601f1061126c57610100808354040283529160200191611297565b820191906000526020600020905b81548152906001019060200180831161127a57829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113395780601f1061130e57610100808354040283529160200191611339565b820191906000526020600020905b81548152906001019060200180831161131c57829003601f168201915b505050505081525050612166565b67ffffffffffffffff161061135b57600080fd5b606480549250826001810161137083826122f0565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a031681526020018867ffffffffffffffff1681526020018967ffffffffffffffff16815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561146257fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161155a92916020019061231c565b5060e08201518160030190805161157592916020019061231c565b505050508167ffffffffffffffff167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b6040516000805160206124df83398151915281526013016040518091039020611626338260006040518059106109c05750599080825280602002602001820160405250611907565b151561163157600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006116cd3388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686610ea9565b979650505050505050565b60015481565b60006116e8612396565b823b604051915080825280600060208401863c50806040518082805190602001908083835b6020831061172c5780518252601f19909201916020918201910161170d565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60008061179b83611656565b15156117a657600080fd5b6117ae610a25565b91506117b9826121db565b15156117c457600080fd5b600160a060020a03831615156118165781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561181157600080fd5b611902565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561186d57600080fd5b6102c65a03f1151561187e57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156118e657600080fd5b6102c65a03f115156118f757600080fd5b505050604051805150505b505050565b6000611911612396565b6000808451111561192a57835160200290508391508082525b600054600160a060020a03161580611a3b575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156119d15780820151838201526020016119b9565b50505050905090810190601f1680156119fe5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515611a1f57600080fd5b6102c65a03f11515611a3057600080fd5b505050604051805190505b9695505050505050565b6040516000805160206124df83398151915281526013016040518091039020611a6d82612201565b611a78338383611907565b1515611a8357600080fd5b50506000908152606760205260409020805460ff19169055565b6040516000805160206124df83398151915281526013016040518091039020611ae5338260006040518059106109c05750599080825280602002602001820160405250611907565b1515611af057600080fd5b506000908152606760205260409020805460ff19166001179055565b6000611b17886120fe565b805490915033600160a060020a039081166101009092041614611b3957600080fd5b6001815460ff166002811115611b4b57fe5b14611b5557600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611b816002820187876123a8565b50611b906003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600054600160a060020a031681565b6000611c30886120fe565b805490915033600160a060020a039081166101009092041614611c5257600080fd5b6000815460ff166002811115611c6457fe5b14611c6e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611c9a6002820187876123a8565b50611ca96003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600080611d3a612396565b611d42612396565b6000806000806000611d538a6120fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f82018190048102016040519081016040528092919081815260200182805460018160011615610100020316600290048015611e085780601f10611ddd57610100808354040283529160200191611e08565b820191906000526020600020905b815481529060010190602001808311611deb57829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611ea75780601f10611e7c57610100808354040283529160200191611ea7565b820191906000526020600020905b815481529060010190602001808311611e8a57829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a90940467ffffffffffffffff9081169a5083169850505068010000000000000000810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000611f0f886120fe565b805490915033600160a060020a039081166101009092041614611f3157600080fd5b6002815460ff166002811115611f4357fe5b14611f4d57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611f796002820187876123a8565b50611f886003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000612018612212565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561207f578082015183820152602001612067565b50505050905090810190601f1680156120ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156120ca57600080fd5b6102c65a03f115156120db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b60645460009067ffffffffffffffff83161061211957600080fd5b6064805467ffffffffffffffff841690811061213157fe5b90600052602060002090600402019050919050565b61214e612396565b61216082600160a060020a03166122a9565b92915050565b60008060028351600281111561217857fe5b1461217f57fe5b826060015167ffffffffffffffff16151561219d5760019150610963565b6121aa83606001516120fe565b90506121d1816101006040519081016040528154909190829060ff16600281111561117857fe5b6001019392505050565b600080600160a060020a03831615156121f75760009150610963565b50506000903b1190565b612209612396565b612160826122a9565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561228557600080fd5b6102c65a03f1151561229657600080fd5b50505060405180519250829150505b5090565b6122b1612396565b60016040518059106122c05750595b9080825280602002602001820160405250905081816000815181106122e157fe5b60209081029091010152919050565b815481835581811511611902576004028160040283600052602060002091820191016119029190612416565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061235d57805160ff191683800117855561238a565b8280016001018555821561238a579182015b8281111561238a57825182559160200191906001019061236f565b506122a592915061247d565b60206040519081016040526000815290565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106123e95782800160ff1982351617855561238a565b8280016001018555821561238a579182015b8281111561238a5782358255916020019190600101906123fb565b610aa391905b808211156122a55780547fffffff00000000000000000000000000000000000000000000000000000000009081168255600182018054909116905560006124666002830182612497565b612474600383016000612497565b5060040161241c565b610aa391905b808211156122a55760008155600101612483565b50805460018160011615610100020316600290046000825580601f106124bd57506124db565b601f0160209004906000526020600020908101906124db919061247d565b505600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820","linkReferences":{},"swarmHash":"69602a3d3a9011586d85fb981a621e3c700a924d5ce4cc587e492027326e4a14","gasEstimates":{"creation":{"codeDepositCost":"1909200","executionCost":"22232","totalCost":"1931432"},"external":{"APP_ADDR_NAMESPACE()":"236","ETH()":"732","EVMSCRIPT_REGISTRY_APP()":"698","EVMSCRIPT_REGISTRY_APP_ID()":"456","PLUGIN_MANAGER_ROLE()":"infinite","addDelegate(string,string,uint64,address)":"infinite","addGiver(address,string,string,uint64,address)":"infinite","addGiver(string,string,uint64,address)":"infinite","addProject(string,string,address,uint64,uint64,address)":"infinite","addValidPluginContract(bytes32)":"infinite","addValidPluginContracts(bytes32[])":"infinite","addValidPluginInstance(address)":"infinite","allowRecoverability(address)":"655","appId()":"810","canPerform(address,bytes32,uint256[])":"infinite","getCodeHash(address)":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"876","getPledgeAdmin(uint64)":"infinite","getRecoveryVault()":"infinite","isProjectCanceled(uint64)":"infinite","isValidPlugin(address)":"infinite","kernel()":"1183","numberOfPledgeAdmins()":"643","removeValidPluginContract(bytes32)":"infinite","removeValidPluginInstance(address)":"infinite","transferToVault(address)":"infinite","updateDelegate(uint64,address,string,string,uint64)":"infinite","updateGiver(uint64,address,string,string,uint64)":"infinite","updateProject(uint64,address,string,string,uint64)":"infinite","useWhitelist(bool)":"infinite","vault()":"1304","whitelistDisabled()":"470"},"internal":{"_findAdmin(uint64)":"563","_getProjectLevel(struct LiquidPledgingStorage.PledgeAdmin memory)":"infinite"}},"functionHashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","PLUGIN_MANAGER_ROLE()":"24fea3b0","addDelegate(string,string,uint64,address)":"52dc7dcc","addGiver(address,string,string,uint64,address)":"6e802c6a","addGiver(string,string,uint64,address)":"7f61fa93","addProject(string,string,address,uint64,uint64,address)":"72116e92","addValidPluginContract(bytes32)":"c8ae070f","addValidPluginContracts(bytes32[])":"32ce8ebc","addValidPluginInstance(address)":"79f4542e","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","getCodeHash(address)":"81ea4408","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getPledgeAdmin(uint64)":"eba8ba06","getRecoveryVault()":"32f0a3b5","isProjectCanceled(uint64)":"2101a6ad","isValidPlugin(address)":"4eafbcd5","kernel()":"d4aae0c4","numberOfPledgeAdmins()":"5503d9ba","removeValidPluginContract(bytes32)":"b12b5f76","removeValidPluginInstance(address)":"6293c702","transferToVault(address)":"9d4941d8","updateDelegate(uint64,address,string,string,uint64)":"cc19ecf7","updateGiver(uint64,address,string,string,uint64)":"db7c2314","updateProject(uint64,address,string,string,uint64)":"f6b24b1c","useWhitelist(bool)":"38740291","vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"projectId","type":"uint64"}],"name":"isProjectCanceled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PLUGIN_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"contractHashes","type":"bytes32[]"}],"name":"addValidPluginContracts","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"useWhitelist","type":"bool"}],"name":"useWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isValidPlugin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addDelegate","outputs":[{"name":"idDelegate","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"numberOfPledgeAdmins","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"removeValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"projectAdmin","type":"address"},{"name":"parentProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addProject","outputs":[{"name":"idProject","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"addValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getCodeHash","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"removeValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"addValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idDelegate","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateDelegate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateGiver","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"idAdmin","type":"uint64"}],"name":"getPledgeAdmin","outputs":[{"name":"adminType","type":"uint8"},{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"parentProject","type":"uint64"},{"name":"canceled","type":"bool"},{"name":"plugin","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectUpdated","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/PledgeAdmins.sol","originalFilename":"contracts/PledgeAdmins.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/PledgeAdmins.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"60606040526069805460ff19169055341561001957600080fd5b61254a806100286000396000f3006060604052600436106101875763ffffffff60e060020a600035041663178e6079811461018c5780631c8e8568146101b15780632101a6ad146101d857806324fea3b0146101f857806332ce8ebc1461020b57806332f0a3b51461022b578063387402911461025a5780634eafbcd51461027257806352dc7dcc146102915780635503d9ba146102f157806360b1e057146103045780636293c702146103175780636e802c6a1461033657806372116e92146103f157806379f4542e146104435780637e7db6e1146104625780637f61fa931461048157806380afdea8146104c457806381ea4408146104d75780638322fff2146104f65780638b3dd749146105095780639b3fdf4c1461051c5780639d4941d81461052f578063a1658fad1461054e578063b12b5f76146105b1578063c8ae070f146105c7578063cc19ecf7146105dd578063d4aae0c41461062a578063db7c23141461063d578063eba8ba061461068a578063f6b24b1c146107e2578063f92a79ff1461082f578063fbfa77cf14610880575b600080fd5b341561019757600080fd5b61019f610893565b60405190815260200160405180910390f35b34156101bc57600080fd5b6101c46108b7565b604051901515815260200160405180910390f35b34156101e357600080fd5b6101c467ffffffffffffffff600435166108c0565b341561020357600080fd5b61019f610969565b341561021657600080fd5b610229600480356024810191013561098b565b005b341561023657600080fd5b61023e610a25565b604051600160a060020a03909116815260200160405180910390f35b341561026557600080fd5b6102296004351515610aa6565b341561027d57600080fd5b6101c4600160a060020a0360043516610b0c565b341561029c57600080fd5b6102d4602460048035828101929082013591813591820191013567ffffffffffffffff60443516600160a060020a0360643516610b83565b60405167ffffffffffffffff909116815260200160405180910390f35b34156102fc57600080fd5b61019f610e1a565b341561030f57600080fd5b61019f610e24565b341561032257600080fd5b610229600160a060020a0360043516610e48565b341561034157600080fd5b6102d460048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050833567ffffffffffffffff169360200135600160a060020a03169250610ea9915050565b34156103fc57600080fd5b6102d46024600480358281019290820135918135918201910135600160a060020a0360443581169067ffffffffffffffff6064358116916084359091169060a4351661111f565b341561044e57600080fd5b610229600160a060020a03600435166115de565b341561046d57600080fd5b6101c4600160a060020a0360043516611656565b341561048c57600080fd5b6102d4602460048035828101929082013591813591820191013567ffffffffffffffff60443516600160a060020a036064351661165c565b34156104cf57600080fd5b61019f6116d8565b34156104e257600080fd5b61019f600160a060020a03600435166116de565b341561050157600080fd5b61023e611760565b341561051457600080fd5b61019f611765565b341561052757600080fd5b61019f61176b565b341561053a57600080fd5b610229600160a060020a036004351661178f565b341561055957600080fd5b6101c460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061190795505050505050565b34156105bc57600080fd5b610229600435611a45565b34156105d257600080fd5b610229600435611a9d565b34156105e857600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611b0c565b341561063557600080fd5b61023e611c16565b341561064857600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611c25565b341561069557600080fd5b6106aa67ffffffffffffffff60043516611d2f565b604051808960028111156106ba57fe5b60ff168152600160a060020a03898116602083015267ffffffffffffffff8781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b8381101561073c578082015183820152602001610724565b50505050905090810190601f1680156107695780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561079f578082015183820152602001610787565b50505050905090810190601f1680156107cc5780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b34156107ed57600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611f04565b341561083a57600080fd5b61023e60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061200e95505050505050565b341561088b57600080fd5b61023e6120ea565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b6000806108cc836120fe565b90506000815460ff1660028111156108e057fe5b14156108ef5760009150610963565b6002815460ff16600281111561090157fe5b1461090857fe5b600181015468010000000000000000900460ff161561092a5760019150610963565b600181015467ffffffffffffffff1615156109485760009150610963565b60018101546109609067ffffffffffffffff166108c0565b91505b50919050565b6040516000805160206124df8339815191528152601301604051809103902081565b60006040516000805160206124df833981519152815260130160405180910390206109d6338260006040518059106109c05750595b9080825280602002602001820160405250611907565b15156109e157600080fd5b600091505b60ff821683901015610a1f57610a14848460ff8516818110610a0457fe5b9050602002013560001916611a9d565b6001909101906109e6565b50505050565b60008054600160a060020a03161515610a3d57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610a8657600080fd5b6102c65a03f11515610a9757600080fd5b50505060405180519150505b90565b6040516000805160206124df83398151915281526013016040518091039020610aee338260006040518059106109c05750599080825280602002602001820160405250611907565b1515610af957600080fd5b506069805460ff19169115919091179055565b606954600090819060ff1680610b295750600160a060020a038316155b15610b375760019150610963565b600160a060020a03831660009081526068602052604090205460ff1615610b615760019150610963565b610b6a836116de565b60009081526067602052604090205460ff169392505050565b6000610b8e82610b0c565b1515610b9957600080fd5b5060648054908160018101610bae83826122f0565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a031681526020018767ffffffffffffffff168152602001600067ffffffffffffffff16815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115610ca157fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051610d9992916020019061231c565b5060e082015181600301908051610db492916020019061231c565b505050508067ffffffffffffffff167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206124df83398151915281526013016040518091039020610e7082612146565b610e7b338383611907565b1515610e8657600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b6000610eb482610b0c565b1515610ebf57600080fd5b5060648054908160018101610ed483826122f0565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c16602083015267ffffffffffffffff891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115610f5257fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161104a92916020019061231c565b5060e08201518160030190805161106592916020019061231c565b5050505085600160a060020a03168167ffffffffffffffff167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b838110156110dc5780820151838201526020016110c4565b50505050905090810190601f1680156111095780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061112b83610b0c565b151561113657600080fd5b67ffffffffffffffff85161561135b5761114f856120fe565b90506014611347826101006040519081016040528154909190829060ff16600281111561117857fe5b600281111561118357fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a90930467ffffffffffffffff908116604080870191909152600180880154928316606088015268010000000000000000830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156112975780601f1061126c57610100808354040283529160200191611297565b820191906000526020600020905b81548152906001019060200180831161127a57829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113395780601f1061130e57610100808354040283529160200191611339565b820191906000526020600020905b81548152906001019060200180831161131c57829003601f168201915b505050505081525050612166565b67ffffffffffffffff161061135b57600080fd5b606480549250826001810161137083826122f0565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a031681526020018867ffffffffffffffff1681526020018967ffffffffffffffff16815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561146257fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161155a92916020019061231c565b5060e08201518160030190805161157592916020019061231c565b505050508167ffffffffffffffff167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b6040516000805160206124df83398151915281526013016040518091039020611626338260006040518059106109c05750599080825280602002602001820160405250611907565b151561163157600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006116cd3388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686610ea9565b979650505050505050565b60015481565b60006116e8612396565b823b604051915080825280600060208401863c50806040518082805190602001908083835b6020831061172c5780518252601f19909201916020918201910161170d565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60008061179b83611656565b15156117a657600080fd5b6117ae610a25565b91506117b9826121db565b15156117c457600080fd5b600160a060020a03831615156118165781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561181157600080fd5b611902565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561186d57600080fd5b6102c65a03f1151561187e57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156118e657600080fd5b6102c65a03f115156118f757600080fd5b505050604051805150505b505050565b6000611911612396565b6000808451111561192a57835160200290508391508082525b600054600160a060020a03161580611a3b575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156119d15780820151838201526020016119b9565b50505050905090810190601f1680156119fe5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515611a1f57600080fd5b6102c65a03f11515611a3057600080fd5b505050604051805190505b9695505050505050565b6040516000805160206124df83398151915281526013016040518091039020611a6d82612201565b611a78338383611907565b1515611a8357600080fd5b50506000908152606760205260409020805460ff19169055565b6040516000805160206124df83398151915281526013016040518091039020611ae5338260006040518059106109c05750599080825280602002602001820160405250611907565b1515611af057600080fd5b506000908152606760205260409020805460ff19166001179055565b6000611b17886120fe565b805490915033600160a060020a039081166101009092041614611b3957600080fd5b6001815460ff166002811115611b4b57fe5b14611b5557600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611b816002820187876123a8565b50611b906003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600054600160a060020a031681565b6000611c30886120fe565b805490915033600160a060020a039081166101009092041614611c5257600080fd5b6000815460ff166002811115611c6457fe5b14611c6e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611c9a6002820187876123a8565b50611ca96003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600080611d3a612396565b611d42612396565b6000806000806000611d538a6120fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f82018190048102016040519081016040528092919081815260200182805460018160011615610100020316600290048015611e085780601f10611ddd57610100808354040283529160200191611e08565b820191906000526020600020905b815481529060010190602001808311611deb57829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611ea75780601f10611e7c57610100808354040283529160200191611ea7565b820191906000526020600020905b815481529060010190602001808311611e8a57829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a90940467ffffffffffffffff9081169a5083169850505068010000000000000000810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000611f0f886120fe565b805490915033600160a060020a039081166101009092041614611f3157600080fd5b6002815460ff166002811115611f4357fe5b14611f4d57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611f796002820187876123a8565b50611f886003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000612018612212565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561207f578082015183820152602001612067565b50505050905090810190601f1680156120ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156120ca57600080fd5b6102c65a03f115156120db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b60645460009067ffffffffffffffff83161061211957600080fd5b6064805467ffffffffffffffff841690811061213157fe5b90600052602060002090600402019050919050565b61214e612396565b61216082600160a060020a03166122a9565b92915050565b60008060028351600281111561217857fe5b1461217f57fe5b826060015167ffffffffffffffff16151561219d5760019150610963565b6121aa83606001516120fe565b90506121d1816101006040519081016040528154909190829060ff16600281111561117857fe5b6001019392505050565b600080600160a060020a03831615156121f75760009150610963565b50506000903b1190565b612209612396565b612160826122a9565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561228557600080fd5b6102c65a03f1151561229657600080fd5b50505060405180519250829150505b5090565b6122b1612396565b60016040518059106122c05750595b9080825280602002602001820160405250905081816000815181106122e157fe5b60209081029091010152919050565b815481835581811511611902576004028160040283600052602060002091820191016119029190612416565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061235d57805160ff191683800117855561238a565b8280016001018555821561238a579182015b8281111561238a57825182559160200191906001019061236f565b506122a592915061247d565b60206040519081016040526000815290565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106123e95782800160ff1982351617855561238a565b8280016001018555821561238a579182015b8281111561238a5782358255916020019190600101906123fb565b610aa391905b808211156122a55780547fffffff00000000000000000000000000000000000000000000000000000000009081168255600182018054909116905560006124666002830182612497565b612474600383016000612497565b5060040161241c565b610aa391905b808211156122a55760008155600101612483565b50805460018160011615610100020316600290046000825580601f106124bd57506124db565b601f0160209004906000526020600020908101906124db919061247d565b505600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a7230582069602a3d3a9011586d85fb981a621e3c700a924d5ce4cc587e492027326e4a140029","runtime_bytecode":"6060604052600436106101875763ffffffff60e060020a600035041663178e6079811461018c5780631c8e8568146101b15780632101a6ad146101d857806324fea3b0146101f857806332ce8ebc1461020b57806332f0a3b51461022b578063387402911461025a5780634eafbcd51461027257806352dc7dcc146102915780635503d9ba146102f157806360b1e057146103045780636293c702146103175780636e802c6a1461033657806372116e92146103f157806379f4542e146104435780637e7db6e1146104625780637f61fa931461048157806380afdea8146104c457806381ea4408146104d75780638322fff2146104f65780638b3dd749146105095780639b3fdf4c1461051c5780639d4941d81461052f578063a1658fad1461054e578063b12b5f76146105b1578063c8ae070f146105c7578063cc19ecf7146105dd578063d4aae0c41461062a578063db7c23141461063d578063eba8ba061461068a578063f6b24b1c146107e2578063f92a79ff1461082f578063fbfa77cf14610880575b600080fd5b341561019757600080fd5b61019f610893565b60405190815260200160405180910390f35b34156101bc57600080fd5b6101c46108b7565b604051901515815260200160405180910390f35b34156101e357600080fd5b6101c467ffffffffffffffff600435166108c0565b341561020357600080fd5b61019f610969565b341561021657600080fd5b610229600480356024810191013561098b565b005b341561023657600080fd5b61023e610a25565b604051600160a060020a03909116815260200160405180910390f35b341561026557600080fd5b6102296004351515610aa6565b341561027d57600080fd5b6101c4600160a060020a0360043516610b0c565b341561029c57600080fd5b6102d4602460048035828101929082013591813591820191013567ffffffffffffffff60443516600160a060020a0360643516610b83565b60405167ffffffffffffffff909116815260200160405180910390f35b34156102fc57600080fd5b61019f610e1a565b341561030f57600080fd5b61019f610e24565b341561032257600080fd5b610229600160a060020a0360043516610e48565b341561034157600080fd5b6102d460048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050833567ffffffffffffffff169360200135600160a060020a03169250610ea9915050565b34156103fc57600080fd5b6102d46024600480358281019290820135918135918201910135600160a060020a0360443581169067ffffffffffffffff6064358116916084359091169060a4351661111f565b341561044e57600080fd5b610229600160a060020a03600435166115de565b341561046d57600080fd5b6101c4600160a060020a0360043516611656565b341561048c57600080fd5b6102d4602460048035828101929082013591813591820191013567ffffffffffffffff60443516600160a060020a036064351661165c565b34156104cf57600080fd5b61019f6116d8565b34156104e257600080fd5b61019f600160a060020a03600435166116de565b341561050157600080fd5b61023e611760565b341561051457600080fd5b61019f611765565b341561052757600080fd5b61019f61176b565b341561053a57600080fd5b610229600160a060020a036004351661178f565b341561055957600080fd5b6101c460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061190795505050505050565b34156105bc57600080fd5b610229600435611a45565b34156105d257600080fd5b610229600435611a9d565b34156105e857600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611b0c565b341561063557600080fd5b61023e611c16565b341561064857600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611c25565b341561069557600080fd5b6106aa67ffffffffffffffff60043516611d2f565b604051808960028111156106ba57fe5b60ff168152600160a060020a03898116602083015267ffffffffffffffff8781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b8381101561073c578082015183820152602001610724565b50505050905090810190601f1680156107695780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561079f578082015183820152602001610787565b50505050905090810190601f1680156107cc5780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b34156107ed57600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611f04565b341561083a57600080fd5b61023e60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061200e95505050505050565b341561088b57600080fd5b61023e6120ea565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b6000806108cc836120fe565b90506000815460ff1660028111156108e057fe5b14156108ef5760009150610963565b6002815460ff16600281111561090157fe5b1461090857fe5b600181015468010000000000000000900460ff161561092a5760019150610963565b600181015467ffffffffffffffff1615156109485760009150610963565b60018101546109609067ffffffffffffffff166108c0565b91505b50919050565b6040516000805160206124df8339815191528152601301604051809103902081565b60006040516000805160206124df833981519152815260130160405180910390206109d6338260006040518059106109c05750595b9080825280602002602001820160405250611907565b15156109e157600080fd5b600091505b60ff821683901015610a1f57610a14848460ff8516818110610a0457fe5b9050602002013560001916611a9d565b6001909101906109e6565b50505050565b60008054600160a060020a03161515610a3d57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610a8657600080fd5b6102c65a03f11515610a9757600080fd5b50505060405180519150505b90565b6040516000805160206124df83398151915281526013016040518091039020610aee338260006040518059106109c05750599080825280602002602001820160405250611907565b1515610af957600080fd5b506069805460ff19169115919091179055565b606954600090819060ff1680610b295750600160a060020a038316155b15610b375760019150610963565b600160a060020a03831660009081526068602052604090205460ff1615610b615760019150610963565b610b6a836116de565b60009081526067602052604090205460ff169392505050565b6000610b8e82610b0c565b1515610b9957600080fd5b5060648054908160018101610bae83826122f0565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a031681526020018767ffffffffffffffff168152602001600067ffffffffffffffff16815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115610ca157fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051610d9992916020019061231c565b5060e082015181600301908051610db492916020019061231c565b505050508067ffffffffffffffff167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206124df83398151915281526013016040518091039020610e7082612146565b610e7b338383611907565b1515610e8657600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b6000610eb482610b0c565b1515610ebf57600080fd5b5060648054908160018101610ed483826122f0565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c16602083015267ffffffffffffffff891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115610f5257fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161104a92916020019061231c565b5060e08201518160030190805161106592916020019061231c565b5050505085600160a060020a03168167ffffffffffffffff167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b838110156110dc5780820151838201526020016110c4565b50505050905090810190601f1680156111095780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061112b83610b0c565b151561113657600080fd5b67ffffffffffffffff85161561135b5761114f856120fe565b90506014611347826101006040519081016040528154909190829060ff16600281111561117857fe5b600281111561118357fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a90930467ffffffffffffffff908116604080870191909152600180880154928316606088015268010000000000000000830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156112975780601f1061126c57610100808354040283529160200191611297565b820191906000526020600020905b81548152906001019060200180831161127a57829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113395780601f1061130e57610100808354040283529160200191611339565b820191906000526020600020905b81548152906001019060200180831161131c57829003601f168201915b505050505081525050612166565b67ffffffffffffffff161061135b57600080fd5b606480549250826001810161137083826122f0565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a031681526020018867ffffffffffffffff1681526020018967ffffffffffffffff16815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561146257fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161155a92916020019061231c565b5060e08201518160030190805161157592916020019061231c565b505050508167ffffffffffffffff167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b6040516000805160206124df83398151915281526013016040518091039020611626338260006040518059106109c05750599080825280602002602001820160405250611907565b151561163157600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006116cd3388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686610ea9565b979650505050505050565b60015481565b60006116e8612396565b823b604051915080825280600060208401863c50806040518082805190602001908083835b6020831061172c5780518252601f19909201916020918201910161170d565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60008061179b83611656565b15156117a657600080fd5b6117ae610a25565b91506117b9826121db565b15156117c457600080fd5b600160a060020a03831615156118165781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561181157600080fd5b611902565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561186d57600080fd5b6102c65a03f1151561187e57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156118e657600080fd5b6102c65a03f115156118f757600080fd5b505050604051805150505b505050565b6000611911612396565b6000808451111561192a57835160200290508391508082525b600054600160a060020a03161580611a3b575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156119d15780820151838201526020016119b9565b50505050905090810190601f1680156119fe5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515611a1f57600080fd5b6102c65a03f11515611a3057600080fd5b505050604051805190505b9695505050505050565b6040516000805160206124df83398151915281526013016040518091039020611a6d82612201565b611a78338383611907565b1515611a8357600080fd5b50506000908152606760205260409020805460ff19169055565b6040516000805160206124df83398151915281526013016040518091039020611ae5338260006040518059106109c05750599080825280602002602001820160405250611907565b1515611af057600080fd5b506000908152606760205260409020805460ff19166001179055565b6000611b17886120fe565b805490915033600160a060020a039081166101009092041614611b3957600080fd5b6001815460ff166002811115611b4b57fe5b14611b5557600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611b816002820187876123a8565b50611b906003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600054600160a060020a031681565b6000611c30886120fe565b805490915033600160a060020a039081166101009092041614611c5257600080fd5b6000815460ff166002811115611c6457fe5b14611c6e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611c9a6002820187876123a8565b50611ca96003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600080611d3a612396565b611d42612396565b6000806000806000611d538a6120fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f82018190048102016040519081016040528092919081815260200182805460018160011615610100020316600290048015611e085780601f10611ddd57610100808354040283529160200191611e08565b820191906000526020600020905b815481529060010190602001808311611deb57829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611ea75780601f10611e7c57610100808354040283529160200191611ea7565b820191906000526020600020905b815481529060010190602001808311611e8a57829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a90940467ffffffffffffffff9081169a5083169850505068010000000000000000810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000611f0f886120fe565b805490915033600160a060020a039081166101009092041614611f3157600080fd5b6002815460ff166002811115611f4357fe5b14611f4d57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611f796002820187876123a8565b50611f886003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000612018612212565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561207f578082015183820152602001612067565b50505050905090810190601f1680156120ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156120ca57600080fd5b6102c65a03f115156120db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b60645460009067ffffffffffffffff83161061211957600080fd5b6064805467ffffffffffffffff841690811061213157fe5b90600052602060002090600402019050919050565b61214e612396565b61216082600160a060020a03166122a9565b92915050565b60008060028351600281111561217857fe5b1461217f57fe5b826060015167ffffffffffffffff16151561219d5760019150610963565b6121aa83606001516120fe565b90506121d1816101006040519081016040528154909190829060ff16600281111561117857fe5b6001019392505050565b600080600160a060020a03831615156121f75760009150610963565b50506000903b1190565b612209612396565b612160826122a9565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561228557600080fd5b6102c65a03f1151561229657600080fd5b50505060405180519250829150505b5090565b6122b1612396565b60016040518059106122c05750595b9080825280602002602001820160405250905081816000815181106122e157fe5b60209081029091010152919050565b815481835581811511611902576004028160040283600052602060002091820191016119029190612416565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061235d57805160ff191683800117855561238a565b8280016001018555821561238a579182015b8281111561238a57825182559160200191906001019061236f565b506122a592915061247d565b60206040519081016040526000815290565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106123e95782800160ff1982351617855561238a565b8280016001018555821561238a579182015b8281111561238a5782358255916020019190600101906123fb565b610aa391905b808211156122a55780547fffffff00000000000000000000000000000000000000000000000000000000009081168255600182018054909116905560006124666002830182612497565b612474600383016000612497565b5060040161241c565b610aa391905b808211156122a55760008155600101612483565b50805460018160011615610100020316600290046000825580601f106124bd57506124db565b601f0160209004906000526020600020908101906124db919061247d565b505600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a7230582069602a3d3a9011586d85fb981a621e3c700a924d5ce4cc587e492027326e4a140029","real_runtime_bytecode":"6060604052600436106101875763ffffffff60e060020a600035041663178e6079811461018c5780631c8e8568146101b15780632101a6ad146101d857806324fea3b0146101f857806332ce8ebc1461020b57806332f0a3b51461022b578063387402911461025a5780634eafbcd51461027257806352dc7dcc146102915780635503d9ba146102f157806360b1e057146103045780636293c702146103175780636e802c6a1461033657806372116e92146103f157806379f4542e146104435780637e7db6e1146104625780637f61fa931461048157806380afdea8146104c457806381ea4408146104d75780638322fff2146104f65780638b3dd749146105095780639b3fdf4c1461051c5780639d4941d81461052f578063a1658fad1461054e578063b12b5f76146105b1578063c8ae070f146105c7578063cc19ecf7146105dd578063d4aae0c41461062a578063db7c23141461063d578063eba8ba061461068a578063f6b24b1c146107e2578063f92a79ff1461082f578063fbfa77cf14610880575b600080fd5b341561019757600080fd5b61019f610893565b60405190815260200160405180910390f35b34156101bc57600080fd5b6101c46108b7565b604051901515815260200160405180910390f35b34156101e357600080fd5b6101c467ffffffffffffffff600435166108c0565b341561020357600080fd5b61019f610969565b341561021657600080fd5b610229600480356024810191013561098b565b005b341561023657600080fd5b61023e610a25565b604051600160a060020a03909116815260200160405180910390f35b341561026557600080fd5b6102296004351515610aa6565b341561027d57600080fd5b6101c4600160a060020a0360043516610b0c565b341561029c57600080fd5b6102d4602460048035828101929082013591813591820191013567ffffffffffffffff60443516600160a060020a0360643516610b83565b60405167ffffffffffffffff909116815260200160405180910390f35b34156102fc57600080fd5b61019f610e1a565b341561030f57600080fd5b61019f610e24565b341561032257600080fd5b610229600160a060020a0360043516610e48565b341561034157600080fd5b6102d460048035600160a060020a03169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050833567ffffffffffffffff169360200135600160a060020a03169250610ea9915050565b34156103fc57600080fd5b6102d46024600480358281019290820135918135918201910135600160a060020a0360443581169067ffffffffffffffff6064358116916084359091169060a4351661111f565b341561044e57600080fd5b610229600160a060020a03600435166115de565b341561046d57600080fd5b6101c4600160a060020a0360043516611656565b341561048c57600080fd5b6102d4602460048035828101929082013591813591820191013567ffffffffffffffff60443516600160a060020a036064351661165c565b34156104cf57600080fd5b61019f6116d8565b34156104e257600080fd5b61019f600160a060020a03600435166116de565b341561050157600080fd5b61023e611760565b341561051457600080fd5b61019f611765565b341561052757600080fd5b61019f61176b565b341561053a57600080fd5b610229600160a060020a036004351661178f565b341561055957600080fd5b6101c460048035600160a060020a031690602480359190606490604435908101908301358060208082020160405190810160405280939291908181526020018383602002808284375094965061190795505050505050565b34156105bc57600080fd5b610229600435611a45565b34156105d257600080fd5b610229600435611a9d565b34156105e857600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611b0c565b341561063557600080fd5b61023e611c16565b341561064857600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611c25565b341561069557600080fd5b6106aa67ffffffffffffffff60043516611d2f565b604051808960028111156106ba57fe5b60ff168152600160a060020a03898116602083015267ffffffffffffffff8781166080840152861660a083015284151560c0830152831660e08201526101008282038101604083019081529160608101910189818151815260200191508051906020019080838360005b8381101561073c578082015183820152602001610724565b50505050905090810190601f1680156107695780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561079f578082015183820152602001610787565b50505050905090810190601f1680156107cc5780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390f35b34156107ed57600080fd5b6102296004803567ffffffffffffffff9081169160248035600160a060020a031692604435808301939081013592606435908101929101359060843516611f04565b341561083a57600080fd5b61023e60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061200e95505050505050565b341561088b57600080fd5b61023e6120ea565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b6000806108cc836120fe565b90506000815460ff1660028111156108e057fe5b14156108ef5760009150610963565b6002815460ff16600281111561090157fe5b1461090857fe5b600181015468010000000000000000900460ff161561092a5760019150610963565b600181015467ffffffffffffffff1615156109485760009150610963565b60018101546109609067ffffffffffffffff166108c0565b91505b50919050565b6040516000805160206124df8339815191528152601301604051809103902081565b60006040516000805160206124df833981519152815260130160405180910390206109d6338260006040518059106109c05750595b9080825280602002602001820160405250611907565b15156109e157600080fd5b600091505b60ff821683901015610a1f57610a14848460ff8516818110610a0457fe5b9050602002013560001916611a9d565b6001909101906109e6565b50505050565b60008054600160a060020a03161515610a3d57600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610a8657600080fd5b6102c65a03f11515610a9757600080fd5b50505060405180519150505b90565b6040516000805160206124df83398151915281526013016040518091039020610aee338260006040518059106109c05750599080825280602002602001820160405250611907565b1515610af957600080fd5b506069805460ff19169115919091179055565b606954600090819060ff1680610b295750600160a060020a038316155b15610b375760019150610963565b600160a060020a03831660009081526068602052604090205460ff1615610b615760019150610963565b610b6a836116de565b60009081526067602052604090205460ff169392505050565b6000610b8e82610b0c565b1515610b9957600080fd5b5060648054908160018101610bae83826122f0565b91600052602060002090600402016000610100604051908101604052806001815260200133600160a060020a031681526020018767ffffffffffffffff168152602001600067ffffffffffffffff16815260200160001515815260200186600160a060020a031681526020018b8b8080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050815260200189898080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff19166001836002811115610ca157fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c082015181600201908051610d9992916020019061231c565b5060e082015181600301908051610db492916020019061231c565b505050508067ffffffffffffffff167fd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be86866040516020808252810182905280604081018484808284378201915050935050505060405180910390a29695505050505050565b6064546000190190565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b6040516000805160206124df83398151915281526013016040518091039020610e7082612146565b610e7b338383611907565b1515610e8657600080fd5b5050600160a060020a03166000908152606860205260409020805460ff19169055565b6000610eb482610b0c565b1515610ebf57600080fd5b5060648054908160018101610ed483826122f0565b916000526020600020906004020160006101006040519081016040528060008152600160a060020a03808c16602083015267ffffffffffffffff891660408301526000606083018190526080830152871660a082015260c081018a905260e00188905291905081518154829060ff19166001836002811115610f5257fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161104a92916020019061231c565b5060e08201518160030190805161106592916020019061231c565b5050505085600160a060020a03168167ffffffffffffffff167ff5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a38660405160208082528190810183818151815260200191508051906020019080838360005b838110156110dc5780820151838201526020016110c4565b50505050905090810190601f1680156111095780820380516001836020036101000a031916815260200191505b509250505060405180910390a395945050505050565b60008061112b83610b0c565b151561113657600080fd5b67ffffffffffffffff85161561135b5761114f856120fe565b90506014611347826101006040519081016040528154909190829060ff16600281111561117857fe5b600281111561118357fe5b81528154610100808204600160a060020a0390811660208086019190915260a860020a90930467ffffffffffffffff908116604080870191909152600180880154928316606088015268010000000000000000830460ff1615156080880152690100000000000000000090920490921660a08601526002808701805460c090970196909592811615909402600019019093169290920491601f8301819004810201905190810160405280929190818152602001828054600181600116156101000203166002900480156112975780601f1061126c57610100808354040283529160200191611297565b820191906000526020600020905b81548152906001019060200180831161127a57829003601f168201915b50505050508152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113395780601f1061130e57610100808354040283529160200191611339565b820191906000526020600020905b81548152906001019060200180831161131c57829003601f168201915b505050505081525050612166565b67ffffffffffffffff161061135b57600080fd5b606480549250826001810161137083826122f0565b9160005260206000209060040201600061010060405190810160405280600281526020018a600160a060020a031681526020018867ffffffffffffffff1681526020018967ffffffffffffffff16815260200160001515815260200187600160a060020a031681526020018e8e8080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505081526020018c8c8080601f016020809104026020016040519081016040528181529291906020840183838082843750505092909352509193925083915050518154829060ff1916600183600281111561146257fe5b021790555060208201518154600160a060020a03919091166101000261010060a860020a03199091161781556040820151815467ffffffffffffffff9190911660a860020a026000805160206124ff833981519152909116178155606082015160018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790556080820151600182018054911515680100000000000000000268ff00000000000000001990921691909117905560a08201518160010160096101000a815481600160a060020a030219169083600160a060020a0316021790555060c08201518160020190805161155a92916020019061231c565b5060e08201518160030190805161157592916020019061231c565b505050508167ffffffffffffffff167f9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d89896040516020808252810182905280604081018484808284378201915050935050505060405180910390a25098975050505050505050565b6040516000805160206124df83398151915281526013016040518091039020611626338260006040518059106109c05750599080825280602002602001820160405250611907565b151561163157600080fd5b50600160a060020a03166000908152606860205260409020805460ff19166001179055565b50600190565b60006116cd3388888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050508686610ea9565b979650505050505050565b60015481565b60006116e8612396565b823b604051915080825280600060208401863c50806040518082805190602001908083835b6020831061172c5780518252601f19909201916020918201910161170d565b6001836020036101000a03801982511681845116179092525050509190910192506040915050518091039020915050919050565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b60008061179b83611656565b15156117a657600080fd5b6117ae610a25565b91506117b9826121db565b15156117c457600080fd5b600160a060020a03831615156118165781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f19350505050151561181157600080fd5b611902565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561186d57600080fd5b6102c65a03f1151561187e57600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156118e657600080fd5b6102c65a03f115156118f757600080fd5b505050604051805150505b505050565b6000611911612396565b6000808451111561192a57835160200290508391508082525b600054600160a060020a03161580611a3b575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b838110156119d15780820151838201526020016119b9565b50505050905090810190601f1680156119fe5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1515611a1f57600080fd5b6102c65a03f11515611a3057600080fd5b505050604051805190505b9695505050505050565b6040516000805160206124df83398151915281526013016040518091039020611a6d82612201565b611a78338383611907565b1515611a8357600080fd5b50506000908152606760205260409020805460ff19169055565b6040516000805160206124df83398151915281526013016040518091039020611ae5338260006040518059106109c05750599080825280602002602001820160405250611907565b1515611af057600080fd5b506000908152606760205260409020805460ff19166001179055565b6000611b17886120fe565b805490915033600160a060020a039081166101009092041614611b3957600080fd5b6001815460ff166002811115611b4b57fe5b14611b5557600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611b816002820187876123a8565b50611b906003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167f6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600054600160a060020a031681565b6000611c30886120fe565b805490915033600160a060020a039081166101009092041614611c5257600080fd5b6000815460ff166002811115611c6457fe5b14611c6e57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611c9a6002820187876123a8565b50611ca96003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167f4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf85856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b600080611d3a612396565b611d42612396565b6000806000806000611d538a6120fe565b80546002808301805460ff84169d5061010093849004600160a060020a03169c5093945092600181161590920260001901909116046020601f82018190048102016040519081016040528092919081815260200182805460018160011615610100020316600290048015611e085780601f10611ddd57610100808354040283529160200191611e08565b820191906000526020600020905b815481529060010190602001808311611deb57829003601f168201915b50505050509650806003018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611ea75780601f10611e7c57610100808354040283529160200191611ea7565b820191906000526020600020905b815481529060010190602001808311611e8a57829003601f168201915b505084546001909501549c9e9b9d50999b929a60a860020a90940467ffffffffffffffff9081169a5083169850505068010000000000000000810460ff16955069010000000000000000009004600160a060020a03169350915050565b6000611f0f886120fe565b805490915033600160a060020a039081166101009092041614611f3157600080fd5b6002815460ff166002811115611f4357fe5b14611f4d57600080fd5b805461010060a860020a031916610100600160a060020a03891602178155611f796002820187876123a8565b50611f886003820185856123a8565b50805467ffffffffffffffff80841660a860020a026000805160206124ff83398151915290921691909117825588167fab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c5870785856040516020808252810182905280604081018484808284378201915050935050505060405180910390a25050505050505050565b6000612018612212565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561207f578082015183820152602001612067565b50505050905090810190601f1680156120ac5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156120ca57600080fd5b6102c65a03f115156120db57600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b60645460009067ffffffffffffffff83161061211957600080fd5b6064805467ffffffffffffffff841690811061213157fe5b90600052602060002090600402019050919050565b61214e612396565b61216082600160a060020a03166122a9565b92915050565b60008060028351600281111561217857fe5b1461217f57fe5b826060015167ffffffffffffffff16151561219d5760019150610963565b6121aa83606001516120fe565b90506121d1816101006040519081016040528154909190829060ff16600281111561117857fe5b6001019392505050565b600080600160a060020a03831615156121f75760009150610963565b50506000903b1190565b612209612396565b612160826122a9565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561228557600080fd5b6102c65a03f1151561229657600080fd5b50505060405180519250829150505b5090565b6122b1612396565b60016040518059106122c05750595b9080825280602002602001820160405250905081816000815181106122e157fe5b60209081029091010152919050565b815481835581811511611902576004028160040283600052602060002091820191016119029190612416565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061235d57805160ff191683800117855561238a565b8280016001018555821561238a579182015b8281111561238a57825182559160200191906001019061236f565b506122a592915061247d565b60206040519081016040526000815290565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106123e95782800160ff1982351617855561238a565b8280016001018555821561238a579182015b8281111561238a5782358255916020019190600101906123fb565b610aa391905b808211156122a55780547fffffff00000000000000000000000000000000000000000000000000000000009081168255600182018054909116905560006124666002830182612497565b612474600383016000612497565b5060040161241c565b610aa391905b808211156122a55760008155600101612483565b50805460018160011615610100020316600290046000825580601f106124bd57506124db565b601f0160209004906000526020600020908101906124db919061247d565b505600504c5547494e5f4d414e414745525f524f4c4500000000000000000000000000ffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffa165627a7a72305820","swarm_hash":"69602a3d3a9011586d85fb981a621e3c700a924d5ce4cc587e492027326e4a14","gas_estimates":{"creation":{"codeDepositCost":"1909200","executionCost":"22232","totalCost":"1931432"},"external":{"APP_ADDR_NAMESPACE()":"236","ETH()":"732","EVMSCRIPT_REGISTRY_APP()":"698","EVMSCRIPT_REGISTRY_APP_ID()":"456","PLUGIN_MANAGER_ROLE()":"infinite","addDelegate(string,string,uint64,address)":"infinite","addGiver(address,string,string,uint64,address)":"infinite","addGiver(string,string,uint64,address)":"infinite","addProject(string,string,address,uint64,uint64,address)":"infinite","addValidPluginContract(bytes32)":"infinite","addValidPluginContracts(bytes32[])":"infinite","addValidPluginInstance(address)":"infinite","allowRecoverability(address)":"655","appId()":"810","canPerform(address,bytes32,uint256[])":"infinite","getCodeHash(address)":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"876","getPledgeAdmin(uint64)":"infinite","getRecoveryVault()":"infinite","isProjectCanceled(uint64)":"infinite","isValidPlugin(address)":"infinite","kernel()":"1183","numberOfPledgeAdmins()":"643","removeValidPluginContract(bytes32)":"infinite","removeValidPluginInstance(address)":"infinite","transferToVault(address)":"infinite","updateDelegate(uint64,address,string,string,uint64)":"infinite","updateGiver(uint64,address,string,string,uint64)":"infinite","updateProject(uint64,address,string,string,uint64)":"infinite","useWhitelist(bool)":"infinite","vault()":"1304","whitelistDisabled()":"470"},"internal":{"_findAdmin(uint64)":"563","_getProjectLevel(struct LiquidPledgingStorage.PledgeAdmin memory)":"infinite"}},"function_hashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","PLUGIN_MANAGER_ROLE()":"24fea3b0","addDelegate(string,string,uint64,address)":"52dc7dcc","addGiver(address,string,string,uint64,address)":"6e802c6a","addGiver(string,string,uint64,address)":"7f61fa93","addProject(string,string,address,uint64,uint64,address)":"72116e92","addValidPluginContract(bytes32)":"c8ae070f","addValidPluginContracts(bytes32[])":"32ce8ebc","addValidPluginInstance(address)":"79f4542e","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","getCodeHash(address)":"81ea4408","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getPledgeAdmin(uint64)":"eba8ba06","getRecoveryVault()":"32f0a3b5","isProjectCanceled(uint64)":"2101a6ad","isValidPlugin(address)":"4eafbcd5","kernel()":"d4aae0c4","numberOfPledgeAdmins()":"5503d9ba","removeValidPluginContract(bytes32)":"b12b5f76","removeValidPluginInstance(address)":"6293c702","transferToVault(address)":"9d4941d8","updateDelegate(uint64,address,string,string,uint64)":"cc19ecf7","updateGiver(uint64,address,string,string,uint64)":"db7c2314","updateProject(uint64,address,string,string,uint64)":"f6b24b1c","useWhitelist(bool)":"38740291","vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568"},"abi":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"projectId","type":"uint64"}],"name":"isProjectCanceled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PLUGIN_MANAGER_ROLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"contractHashes","type":"bytes32[]"}],"name":"addValidPluginContracts","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"useWhitelist","type":"bool"}],"name":"useWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isValidPlugin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addDelegate","outputs":[{"name":"idDelegate","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"numberOfPledgeAdmins","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"removeValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"projectAdmin","type":"address"},{"name":"parentProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addProject","outputs":[{"name":"idProject","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"addValidPluginInstance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"plugin","type":"address"}],"name":"addGiver","outputs":[{"name":"idGiver","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getCodeHash","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"removeValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"contractHash","type":"bytes32"}],"name":"addValidPluginContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"idDelegate","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateDelegate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idGiver","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateGiver","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"idAdmin","type":"uint64"}],"name":"getPledgeAdmin","outputs":[{"name":"adminType","type":"uint8"},{"name":"addr","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"},{"name":"parentProject","type":"uint64"},{"name":"canceled","type":"bool"},{"name":"plugin","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"idProject","type":"uint64"},{"name":"newAddr","type":"address"},{"name":"newName","type":"string"},{"name":"newUrl","type":"string"},{"name":"newCommitTime","type":"uint64"}],"name":"updateProject","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idGiver","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"GiverUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idDelegate","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"DelegateUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idProject","type":"uint64"},{"indexed":false,"name":"url","type":"string"}],"name":"ProjectUpdated","type":"event"}]}; +let PledgeAdmins = new EmbarkJS.Blockchain.Contract(PledgeAdminsJSONConfig); +export default PledgeAdmins; diff --git a/abi/contracts/Pledges.js b/abi/contracts/Pledges.js new file mode 100644 index 0000000..5f6712c --- /dev/null +++ b/abi/contracts/Pledges.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let PledgesJSONConfig = {"contract_name":{"className":"Pledges","args":[],"code":"60606040526069805460ff19169055341561001957600080fd5b610b5d806100286000396000f3006060604052600436106100cc5763ffffffff60e060020a600035041663178e607981146100d15780631c8e8568146100f65780632a8ec8cc1461011d57806332f0a3b5146101305780633f657a461461015f57806360b1e057146101ef5780637e7db6e11461020257806380afdea8146102215780638322fff2146102345780638b3dd749146102475780639b3fdf4c1461025a5780639d4941d81461026d578063a1658fad1461028e578063d4aae0c4146102f1578063f92a79ff14610304578063fbfa77cf14610355575b600080fd5b34156100dc57600080fd5b6100e4610368565b60405190815260200160405180910390f35b341561010157600080fd5b61010961038c565b604051901515815260200160405180910390f35b341561012857600080fd5b6100e4610395565b341561013b57600080fd5b61014361039f565b604051600160a060020a03909116815260200160405180910390f35b341561016a57600080fd5b61017f67ffffffffffffffff6004351661041f565b60405188815267ffffffffffffffff8089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156101d457fe5b60ff1681526020019850505050505050505060405180910390f35b34156101fa57600080fd5b6100e46105d7565b341561020d57600080fd5b610109600160a060020a03600435166105fb565b341561022c57600080fd5b6100e4610601565b341561023f57600080fd5b610143610607565b341561025257600080fd5b6100e461060c565b341561026557600080fd5b6100e4610612565b341561027857600080fd5b61028c600160a060020a0360043516610636565b005b341561029957600080fd5b61010960048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506107ae95505050505050565b34156102fc57600080fd5b6101436108ec565b341561030f57600080fd5b61014360046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506108fb95505050505050565b341561036057600080fd5b6101436109d7565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b6065546000190190565b60008054600160a060020a031615156103b757600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561040057600080fd5b6102c65a03f1151561041157600080fd5b505050604051805191505090565b600080600080600080600080610433610ad3565b61043c8a6109eb565b610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156104d657602002820191906000526020600020906000905b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff16815260200190600801906020826007010492830192600103820291508084116104915790505b505050918352505060028281015467ffffffffffffffff80821660208501526801000000000000000082048116604085015270010000000000000000000000000000000082048116606085015278010000000000000000000000000000000000000000000000009091041660808301526003830154600160a060020a03811660a084015260c09092019174010000000000000000000000000000000000000000900460ff169081111561058557fe5b600281111561059057fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080610642836105fb565b151561064d57600080fd5b61065561039f565b915061066082610a33565b151561066b57600080fd5b600160a060020a03831615156106bd5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156106b857600080fd5b6107a9565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561071457600080fd5b6102c65a03f1151561072557600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561078d57600080fd5b6102c65a03f1151561079e57600080fd5b505050604051805150505b505050565b60006107b8610b1f565b600080845111156107d157835160200290508391508082525b600054600160a060020a031615806108e2575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610878578082015183820152602001610860565b50505050905090810190601f1680156108a55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156108c657600080fd5b6102c65a03f115156108d757600080fd5b505050604051805190505b9695505050505050565b600054600160a060020a031681565b6000610905610a60565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561096c578082015183820152602001610954565b50505050905090810190601f1680156109995780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156109b757600080fd5b6102c65a03f115156109c857600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b60655460009067ffffffffffffffff831610610a0657600080fd5b6065805467ffffffffffffffff8416908110610a1e57fe5b90600052602060002090600402019050919050565b600080600160a060020a0383161515610a4f5760009150610a5a565b823b90506000811191505b50919050565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156109b757600080fd5b6101006040519081016040528060008152602001610aef610b1f565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b602060405190810160405260008152905600a165627a7a723058205bf803419a00df528456e2ab4f57d379936ed570b8cd7394ae74cb3a4c14bf440029","runtimeBytecode":"6060604052600436106100cc5763ffffffff60e060020a600035041663178e607981146100d15780631c8e8568146100f65780632a8ec8cc1461011d57806332f0a3b5146101305780633f657a461461015f57806360b1e057146101ef5780637e7db6e11461020257806380afdea8146102215780638322fff2146102345780638b3dd749146102475780639b3fdf4c1461025a5780639d4941d81461026d578063a1658fad1461028e578063d4aae0c4146102f1578063f92a79ff14610304578063fbfa77cf14610355575b600080fd5b34156100dc57600080fd5b6100e4610368565b60405190815260200160405180910390f35b341561010157600080fd5b61010961038c565b604051901515815260200160405180910390f35b341561012857600080fd5b6100e4610395565b341561013b57600080fd5b61014361039f565b604051600160a060020a03909116815260200160405180910390f35b341561016a57600080fd5b61017f67ffffffffffffffff6004351661041f565b60405188815267ffffffffffffffff8089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156101d457fe5b60ff1681526020019850505050505050505060405180910390f35b34156101fa57600080fd5b6100e46105d7565b341561020d57600080fd5b610109600160a060020a03600435166105fb565b341561022c57600080fd5b6100e4610601565b341561023f57600080fd5b610143610607565b341561025257600080fd5b6100e461060c565b341561026557600080fd5b6100e4610612565b341561027857600080fd5b61028c600160a060020a0360043516610636565b005b341561029957600080fd5b61010960048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506107ae95505050505050565b34156102fc57600080fd5b6101436108ec565b341561030f57600080fd5b61014360046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506108fb95505050505050565b341561036057600080fd5b6101436109d7565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b6065546000190190565b60008054600160a060020a031615156103b757600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561040057600080fd5b6102c65a03f1151561041157600080fd5b505050604051805191505090565b600080600080600080600080610433610ad3565b61043c8a6109eb565b610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156104d657602002820191906000526020600020906000905b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff16815260200190600801906020826007010492830192600103820291508084116104915790505b505050918352505060028281015467ffffffffffffffff80821660208501526801000000000000000082048116604085015270010000000000000000000000000000000082048116606085015278010000000000000000000000000000000000000000000000009091041660808301526003830154600160a060020a03811660a084015260c09092019174010000000000000000000000000000000000000000900460ff169081111561058557fe5b600281111561059057fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080610642836105fb565b151561064d57600080fd5b61065561039f565b915061066082610a33565b151561066b57600080fd5b600160a060020a03831615156106bd5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156106b857600080fd5b6107a9565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561071457600080fd5b6102c65a03f1151561072557600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561078d57600080fd5b6102c65a03f1151561079e57600080fd5b505050604051805150505b505050565b60006107b8610b1f565b600080845111156107d157835160200290508391508082525b600054600160a060020a031615806108e2575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610878578082015183820152602001610860565b50505050905090810190601f1680156108a55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156108c657600080fd5b6102c65a03f115156108d757600080fd5b505050604051805190505b9695505050505050565b600054600160a060020a031681565b6000610905610a60565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561096c578082015183820152602001610954565b50505050905090810190601f1680156109995780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156109b757600080fd5b6102c65a03f115156109c857600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b60655460009067ffffffffffffffff831610610a0657600080fd5b6065805467ffffffffffffffff8416908110610a1e57fe5b90600052602060002090600402019050919050565b600080600160a060020a0383161515610a4f5760009150610a5a565b823b90506000811191505b50919050565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156109b757600080fd5b6101006040519081016040528060008152602001610aef610b1f565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b602060405190810160405260008152905600a165627a7a723058205bf803419a00df528456e2ab4f57d379936ed570b8cd7394ae74cb3a4c14bf440029","realRuntimeBytecode":"6060604052600436106100cc5763ffffffff60e060020a600035041663178e607981146100d15780631c8e8568146100f65780632a8ec8cc1461011d57806332f0a3b5146101305780633f657a461461015f57806360b1e057146101ef5780637e7db6e11461020257806380afdea8146102215780638322fff2146102345780638b3dd749146102475780639b3fdf4c1461025a5780639d4941d81461026d578063a1658fad1461028e578063d4aae0c4146102f1578063f92a79ff14610304578063fbfa77cf14610355575b600080fd5b34156100dc57600080fd5b6100e4610368565b60405190815260200160405180910390f35b341561010157600080fd5b61010961038c565b604051901515815260200160405180910390f35b341561012857600080fd5b6100e4610395565b341561013b57600080fd5b61014361039f565b604051600160a060020a03909116815260200160405180910390f35b341561016a57600080fd5b61017f67ffffffffffffffff6004351661041f565b60405188815267ffffffffffffffff8089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156101d457fe5b60ff1681526020019850505050505050505060405180910390f35b34156101fa57600080fd5b6100e46105d7565b341561020d57600080fd5b610109600160a060020a03600435166105fb565b341561022c57600080fd5b6100e4610601565b341561023f57600080fd5b610143610607565b341561025257600080fd5b6100e461060c565b341561026557600080fd5b6100e4610612565b341561027857600080fd5b61028c600160a060020a0360043516610636565b005b341561029957600080fd5b61010960048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506107ae95505050505050565b34156102fc57600080fd5b6101436108ec565b341561030f57600080fd5b61014360046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506108fb95505050505050565b341561036057600080fd5b6101436109d7565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b6065546000190190565b60008054600160a060020a031615156103b757600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561040057600080fd5b6102c65a03f1151561041157600080fd5b505050604051805191505090565b600080600080600080600080610433610ad3565b61043c8a6109eb565b610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156104d657602002820191906000526020600020906000905b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff16815260200190600801906020826007010492830192600103820291508084116104915790505b505050918352505060028281015467ffffffffffffffff80821660208501526801000000000000000082048116604085015270010000000000000000000000000000000082048116606085015278010000000000000000000000000000000000000000000000009091041660808301526003830154600160a060020a03811660a084015260c09092019174010000000000000000000000000000000000000000900460ff169081111561058557fe5b600281111561059057fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080610642836105fb565b151561064d57600080fd5b61065561039f565b915061066082610a33565b151561066b57600080fd5b600160a060020a03831615156106bd5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156106b857600080fd5b6107a9565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561071457600080fd5b6102c65a03f1151561072557600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561078d57600080fd5b6102c65a03f1151561079e57600080fd5b505050604051805150505b505050565b60006107b8610b1f565b600080845111156107d157835160200290508391508082525b600054600160a060020a031615806108e2575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610878578082015183820152602001610860565b50505050905090810190601f1680156108a55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156108c657600080fd5b6102c65a03f115156108d757600080fd5b505050604051805190505b9695505050505050565b600054600160a060020a031681565b6000610905610a60565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561096c578082015183820152602001610954565b50505050905090810190601f1680156109995780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156109b757600080fd5b6102c65a03f115156109c857600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b60655460009067ffffffffffffffff831610610a0657600080fd5b6065805467ffffffffffffffff8416908110610a1e57fe5b90600052602060002090600402019050919050565b600080600160a060020a0383161515610a4f5760009150610a5a565b823b90506000811191505b50919050565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156109b757600080fd5b6101006040519081016040528060008152602001610aef610b1f565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b602060405190810160405260008152905600a165627a7a72305820","linkReferences":{},"swarmHash":"5bf803419a00df528456e2ab4f57d379936ed570b8cd7394ae74cb3a4c14bf44","gasEstimates":{"creation":{"codeDepositCost":"581800","executionCost":"20826","totalCost":"602626"},"external":{"APP_ADDR_NAMESPACE()":"236","ETH()":"490","EVMSCRIPT_REGISTRY_APP()":"456","EVMSCRIPT_REGISTRY_APP_ID()":"346","allowRecoverability(address)":"457","appId()":"590","canPerform(address,bytes32,uint256[])":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"634","getPledge(uint64)":"infinite","getRecoveryVault()":"infinite","kernel()":"875","numberOfPledges()":"489","transferToVault(address)":"infinite","vault()":"930","whitelistDisabled()":"470"},"internal":{"_findOrCreatePledge(uint64,uint64[] memory,uint64,uint64,uint64,address,enum LiquidPledgingStorage.PledgeState)":"infinite","_findPledge(uint64)":"563","_getDelegateIdx(struct LiquidPledgingStorage.Pledge memory,uint64)":"infinite","_getPledgeLevel(struct LiquidPledgingStorage.Pledge memory)":"infinite"}},"functionHashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getPledge(uint64)":"3f657a46","getRecoveryVault()":"32f0a3b5","kernel()":"d4aae0c4","numberOfPledges()":"2a8ec8cc","transferToVault(address)":"9d4941d8","vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568"},"abiDefinition":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"numberOfPledges","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"getPledge","outputs":[{"name":"amount","type":"uint256"},{"name":"owner","type":"uint64"},{"name":"nDelegates","type":"uint64"},{"name":"intendedProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"oldPledge","type":"uint64"},{"name":"token","type":"address"},{"name":"pledgeState","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/Pledges.sol","originalFilename":"contracts/Pledges.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/Pledges.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"60606040526069805460ff19169055341561001957600080fd5b610b5d806100286000396000f3006060604052600436106100cc5763ffffffff60e060020a600035041663178e607981146100d15780631c8e8568146100f65780632a8ec8cc1461011d57806332f0a3b5146101305780633f657a461461015f57806360b1e057146101ef5780637e7db6e11461020257806380afdea8146102215780638322fff2146102345780638b3dd749146102475780639b3fdf4c1461025a5780639d4941d81461026d578063a1658fad1461028e578063d4aae0c4146102f1578063f92a79ff14610304578063fbfa77cf14610355575b600080fd5b34156100dc57600080fd5b6100e4610368565b60405190815260200160405180910390f35b341561010157600080fd5b61010961038c565b604051901515815260200160405180910390f35b341561012857600080fd5b6100e4610395565b341561013b57600080fd5b61014361039f565b604051600160a060020a03909116815260200160405180910390f35b341561016a57600080fd5b61017f67ffffffffffffffff6004351661041f565b60405188815267ffffffffffffffff8089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156101d457fe5b60ff1681526020019850505050505050505060405180910390f35b34156101fa57600080fd5b6100e46105d7565b341561020d57600080fd5b610109600160a060020a03600435166105fb565b341561022c57600080fd5b6100e4610601565b341561023f57600080fd5b610143610607565b341561025257600080fd5b6100e461060c565b341561026557600080fd5b6100e4610612565b341561027857600080fd5b61028c600160a060020a0360043516610636565b005b341561029957600080fd5b61010960048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506107ae95505050505050565b34156102fc57600080fd5b6101436108ec565b341561030f57600080fd5b61014360046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506108fb95505050505050565b341561036057600080fd5b6101436109d7565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b6065546000190190565b60008054600160a060020a031615156103b757600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561040057600080fd5b6102c65a03f1151561041157600080fd5b505050604051805191505090565b600080600080600080600080610433610ad3565b61043c8a6109eb565b610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156104d657602002820191906000526020600020906000905b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff16815260200190600801906020826007010492830192600103820291508084116104915790505b505050918352505060028281015467ffffffffffffffff80821660208501526801000000000000000082048116604085015270010000000000000000000000000000000082048116606085015278010000000000000000000000000000000000000000000000009091041660808301526003830154600160a060020a03811660a084015260c09092019174010000000000000000000000000000000000000000900460ff169081111561058557fe5b600281111561059057fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080610642836105fb565b151561064d57600080fd5b61065561039f565b915061066082610a33565b151561066b57600080fd5b600160a060020a03831615156106bd5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156106b857600080fd5b6107a9565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561071457600080fd5b6102c65a03f1151561072557600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561078d57600080fd5b6102c65a03f1151561079e57600080fd5b505050604051805150505b505050565b60006107b8610b1f565b600080845111156107d157835160200290508391508082525b600054600160a060020a031615806108e2575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610878578082015183820152602001610860565b50505050905090810190601f1680156108a55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156108c657600080fd5b6102c65a03f115156108d757600080fd5b505050604051805190505b9695505050505050565b600054600160a060020a031681565b6000610905610a60565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561096c578082015183820152602001610954565b50505050905090810190601f1680156109995780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156109b757600080fd5b6102c65a03f115156109c857600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b60655460009067ffffffffffffffff831610610a0657600080fd5b6065805467ffffffffffffffff8416908110610a1e57fe5b90600052602060002090600402019050919050565b600080600160a060020a0383161515610a4f5760009150610a5a565b823b90506000811191505b50919050565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156109b757600080fd5b6101006040519081016040528060008152602001610aef610b1f565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b602060405190810160405260008152905600a165627a7a723058205bf803419a00df528456e2ab4f57d379936ed570b8cd7394ae74cb3a4c14bf440029","runtime_bytecode":"6060604052600436106100cc5763ffffffff60e060020a600035041663178e607981146100d15780631c8e8568146100f65780632a8ec8cc1461011d57806332f0a3b5146101305780633f657a461461015f57806360b1e057146101ef5780637e7db6e11461020257806380afdea8146102215780638322fff2146102345780638b3dd749146102475780639b3fdf4c1461025a5780639d4941d81461026d578063a1658fad1461028e578063d4aae0c4146102f1578063f92a79ff14610304578063fbfa77cf14610355575b600080fd5b34156100dc57600080fd5b6100e4610368565b60405190815260200160405180910390f35b341561010157600080fd5b61010961038c565b604051901515815260200160405180910390f35b341561012857600080fd5b6100e4610395565b341561013b57600080fd5b61014361039f565b604051600160a060020a03909116815260200160405180910390f35b341561016a57600080fd5b61017f67ffffffffffffffff6004351661041f565b60405188815267ffffffffffffffff8089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156101d457fe5b60ff1681526020019850505050505050505060405180910390f35b34156101fa57600080fd5b6100e46105d7565b341561020d57600080fd5b610109600160a060020a03600435166105fb565b341561022c57600080fd5b6100e4610601565b341561023f57600080fd5b610143610607565b341561025257600080fd5b6100e461060c565b341561026557600080fd5b6100e4610612565b341561027857600080fd5b61028c600160a060020a0360043516610636565b005b341561029957600080fd5b61010960048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506107ae95505050505050565b34156102fc57600080fd5b6101436108ec565b341561030f57600080fd5b61014360046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506108fb95505050505050565b341561036057600080fd5b6101436109d7565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b6065546000190190565b60008054600160a060020a031615156103b757600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561040057600080fd5b6102c65a03f1151561041157600080fd5b505050604051805191505090565b600080600080600080600080610433610ad3565b61043c8a6109eb565b610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156104d657602002820191906000526020600020906000905b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff16815260200190600801906020826007010492830192600103820291508084116104915790505b505050918352505060028281015467ffffffffffffffff80821660208501526801000000000000000082048116604085015270010000000000000000000000000000000082048116606085015278010000000000000000000000000000000000000000000000009091041660808301526003830154600160a060020a03811660a084015260c09092019174010000000000000000000000000000000000000000900460ff169081111561058557fe5b600281111561059057fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080610642836105fb565b151561064d57600080fd5b61065561039f565b915061066082610a33565b151561066b57600080fd5b600160a060020a03831615156106bd5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156106b857600080fd5b6107a9565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561071457600080fd5b6102c65a03f1151561072557600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561078d57600080fd5b6102c65a03f1151561079e57600080fd5b505050604051805150505b505050565b60006107b8610b1f565b600080845111156107d157835160200290508391508082525b600054600160a060020a031615806108e2575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610878578082015183820152602001610860565b50505050905090810190601f1680156108a55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156108c657600080fd5b6102c65a03f115156108d757600080fd5b505050604051805190505b9695505050505050565b600054600160a060020a031681565b6000610905610a60565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561096c578082015183820152602001610954565b50505050905090810190601f1680156109995780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156109b757600080fd5b6102c65a03f115156109c857600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b60655460009067ffffffffffffffff831610610a0657600080fd5b6065805467ffffffffffffffff8416908110610a1e57fe5b90600052602060002090600402019050919050565b600080600160a060020a0383161515610a4f5760009150610a5a565b823b90506000811191505b50919050565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156109b757600080fd5b6101006040519081016040528060008152602001610aef610b1f565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b602060405190810160405260008152905600a165627a7a723058205bf803419a00df528456e2ab4f57d379936ed570b8cd7394ae74cb3a4c14bf440029","real_runtime_bytecode":"6060604052600436106100cc5763ffffffff60e060020a600035041663178e607981146100d15780631c8e8568146100f65780632a8ec8cc1461011d57806332f0a3b5146101305780633f657a461461015f57806360b1e057146101ef5780637e7db6e11461020257806380afdea8146102215780638322fff2146102345780638b3dd749146102475780639b3fdf4c1461025a5780639d4941d81461026d578063a1658fad1461028e578063d4aae0c4146102f1578063f92a79ff14610304578063fbfa77cf14610355575b600080fd5b34156100dc57600080fd5b6100e4610368565b60405190815260200160405180910390f35b341561010157600080fd5b61010961038c565b604051901515815260200160405180910390f35b341561012857600080fd5b6100e4610395565b341561013b57600080fd5b61014361039f565b604051600160a060020a03909116815260200160405180910390f35b341561016a57600080fd5b61017f67ffffffffffffffff6004351661041f565b60405188815267ffffffffffffffff8089166020830152878116604083015286811660608301528581166080830152841660a0820152600160a060020a03831660c082015260e081018260028111156101d457fe5b60ff1681526020019850505050505050505060405180910390f35b34156101fa57600080fd5b6100e46105d7565b341561020d57600080fd5b610109600160a060020a03600435166105fb565b341561022c57600080fd5b6100e4610601565b341561023f57600080fd5b610143610607565b341561025257600080fd5b6100e461060c565b341561026557600080fd5b6100e4610612565b341561027857600080fd5b61028c600160a060020a0360043516610636565b005b341561029957600080fd5b61010960048035600160a060020a03169060248035919060649060443590810190830135806020808202016040519081016040528093929190818152602001838360200280828437509496506107ae95505050505050565b34156102fc57600080fd5b6101436108ec565b341561030f57600080fd5b61014360046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506108fb95505050505050565b341561036057600080fd5b6101436109d7565b7fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb81565b60695460ff1681565b6065546000190190565b60008054600160a060020a031615156103b757600080fd5b60008054600160a060020a0316906332f0a3b590604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561040057600080fd5b6102c65a03f1151561041157600080fd5b505050604051805191505090565b600080600080600080600080610433610ad3565b61043c8a6109eb565b610100604051908101604052908160008201548152602001600182018054806020026020016040519081016040528092919081815260200182805480156104d657602002820191906000526020600020906000905b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff16815260200190600801906020826007010492830192600103820291508084116104915790505b505050918352505060028281015467ffffffffffffffff80821660208501526801000000000000000082048116604085015270010000000000000000000000000000000082048116606085015278010000000000000000000000000000000000000000000000009091041660808301526003830154600160a060020a03811660a084015260c09092019174010000000000000000000000000000000000000000900460ff169081111561058557fe5b600281111561059057fe5b90525090508051985080604001519750806020015151965080606001519550806080015194508060a0015193508060c0015192508060e00151915050919395975091939597565b7fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6181565b50600190565b60015481565b600081565b60035490565b7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d38287181565b600080610642836105fb565b151561064d57600080fd5b61065561039f565b915061066082610a33565b151561066b57600080fd5b600160a060020a03831615156106bd5781600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f1935050505015156106b857600080fd5b6107a9565b82600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561071457600080fd5b6102c65a03f1151561072557600080fd5b5050506040518051915050600160a060020a03831663a9059cbb838360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561078d57600080fd5b6102c65a03f1151561079e57600080fd5b505050604051805150505b505050565b60006107b8610b1f565b600080845111156107d157835160200290508391508082525b600054600160a060020a031615806108e2575060008054600160a060020a03169063fdef91069088903090899087906040516020015260405160e060020a63ffffffff8716028152600160a060020a0380861660048301908152908516602483015260448201849052608060648301908152909160840183818151815260200191508051906020019080838360005b83811015610878578082015183820152602001610860565b50505050905090810190601f1680156108a55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15156108c657600080fd5b6102c65a03f115156108d757600080fd5b505050604051805190505b9695505050505050565b600054600160a060020a031681565b6000610905610a60565b600160a060020a03166304bf2a7f836000604051602001526040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561096c578082015183820152602001610954565b50505050905090810190601f1680156109995780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15156109b757600080fd5b6102c65a03f115156109c857600080fd5b50505060405180519392505050565b6069546101009004600160a060020a031681565b60655460009067ffffffffffffffff831610610a0657600080fd5b6065805467ffffffffffffffff8416908110610a1e57fe5b90600052602060002090600402019050919050565b600080600160a060020a0383161515610a4f5760009150610a5a565b823b90506000811191505b50919050565b600080548190600160a060020a03166342c71f1d7f34f01c17e9be6ddbf2c61f37b5b1fb9f1a090a975006581ad19bda1c4d382871836040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156109b757600080fd5b6101006040519081016040528060008152602001610aef610b1f565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b602060405190810160405260008152905600a165627a7a72305820","swarm_hash":"5bf803419a00df528456e2ab4f57d379936ed570b8cd7394ae74cb3a4c14bf44","gas_estimates":{"creation":{"codeDepositCost":"581800","executionCost":"20826","totalCost":"602626"},"external":{"APP_ADDR_NAMESPACE()":"236","ETH()":"490","EVMSCRIPT_REGISTRY_APP()":"456","EVMSCRIPT_REGISTRY_APP_ID()":"346","allowRecoverability(address)":"457","appId()":"590","canPerform(address,bytes32,uint256[])":"infinite","getExecutor(bytes)":"infinite","getInitializationBlock()":"634","getPledge(uint64)":"infinite","getRecoveryVault()":"infinite","kernel()":"875","numberOfPledges()":"489","transferToVault(address)":"infinite","vault()":"930","whitelistDisabled()":"470"},"internal":{"_findOrCreatePledge(uint64,uint64[] memory,uint64,uint64,uint64,address,enum LiquidPledgingStorage.PledgeState)":"infinite","_findPledge(uint64)":"563","_getDelegateIdx(struct LiquidPledgingStorage.Pledge memory,uint64)":"infinite","_getPledgeLevel(struct LiquidPledgingStorage.Pledge memory)":"infinite"}},"function_hashes":{"APP_ADDR_NAMESPACE()":"178e6079","ETH()":"8322fff2","EVMSCRIPT_REGISTRY_APP()":"9b3fdf4c","EVMSCRIPT_REGISTRY_APP_ID()":"60b1e057","allowRecoverability(address)":"7e7db6e1","appId()":"80afdea8","canPerform(address,bytes32,uint256[])":"a1658fad","getExecutor(bytes)":"f92a79ff","getInitializationBlock()":"8b3dd749","getPledge(uint64)":"3f657a46","getRecoveryVault()":"32f0a3b5","kernel()":"d4aae0c4","numberOfPledges()":"2a8ec8cc","transferToVault(address)":"9d4941d8","vault()":"fbfa77cf","whitelistDisabled()":"1c8e8568"},"abi":[{"constant":true,"inputs":[],"name":"APP_ADDR_NAMESPACE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"whitelistDisabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"numberOfPledges","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"idPledge","type":"uint64"}],"name":"getPledge","outputs":[{"name":"amount","type":"uint256"},{"name":"owner","type":"uint64"},{"name":"nDelegates","type":"uint64"},{"name":"intendedProject","type":"uint64"},{"name":"commitTime","type":"uint64"},{"name":"oldPledge","type":"uint64"},{"name":"token","type":"address"},{"name":"pledgeState","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP_ID","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getInitializationBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EVMSCRIPT_REGISTRY_APP","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_role","type":"bytes32"},{"name":"params","type":"uint256[]"}],"name":"canPerform","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_script","type":"bytes"}],"name":"getExecutor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}]}; +let Pledges = new EmbarkJS.Blockchain.Contract(PledgesJSONConfig); +export default Pledges; diff --git a/abi/contracts/RecoveryVault.js b/abi/contracts/RecoveryVault.js new file mode 100644 index 0000000..fca84c4 --- /dev/null +++ b/abi/contracts/RecoveryVault.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let RecoveryVaultJSONConfig = {"contract_name":{"className":"RecoveryVault","args":[],"code":"60606040523415600e57600080fd5b603580601b6000396000f3006060604052600080fd00a165627a7a72305820125ee52fe8e83b1d00614872f7665e9529d71c92525b9809cdd1e71fadc5085a0029","runtimeBytecode":"6060604052600080fd00a165627a7a72305820125ee52fe8e83b1d00614872f7665e9529d71c92525b9809cdd1e71fadc5085a0029","realRuntimeBytecode":"6060604052600080fd00a165627a7a72305820","linkReferences":{},"swarmHash":"125ee52fe8e83b1d00614872f7665e9529d71c92525b9809cdd1e71fadc5085a","gasEstimates":{"creation":{"codeDepositCost":"10600","executionCost":"61","totalCost":"10661"}},"functionHashes":{},"abiDefinition":[],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/test/RecoveryVault.sol","originalFilename":"contracts/test/RecoveryVault.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/test/RecoveryVault.sol","gas":"auto","type":"file","deploy":true,"_gasLimit":6000000,"error":false,"deploymentAccount":"0x1179823e34aBF984C52fC0CdD7b7b9F5dd394aB9","realArgs":[],"address":"0x835c1ab7CB9f0545164D7fE9827C5e43E3476809","deployedAddress":"0x835c1ab7CB9f0545164D7fE9827C5e43E3476809"},"address":"0x835c1ab7CB9f0545164D7fE9827C5e43E3476809","code":"60606040523415600e57600080fd5b603580601b6000396000f3006060604052600080fd00a165627a7a72305820125ee52fe8e83b1d00614872f7665e9529d71c92525b9809cdd1e71fadc5085a0029","runtime_bytecode":"6060604052600080fd00a165627a7a72305820125ee52fe8e83b1d00614872f7665e9529d71c92525b9809cdd1e71fadc5085a0029","real_runtime_bytecode":"6060604052600080fd00a165627a7a72305820","swarm_hash":"125ee52fe8e83b1d00614872f7665e9529d71c92525b9809cdd1e71fadc5085a","gas_estimates":{"creation":{"codeDepositCost":"10600","executionCost":"61","totalCost":"10661"}},"function_hashes":{},"abi":[]}; +let RecoveryVault = new EmbarkJS.Blockchain.Contract(RecoveryVaultJSONConfig); +export default RecoveryVault; diff --git a/abi/contracts/SNT.js b/abi/contracts/SNT.js new file mode 100644 index 0000000..faa376c --- /dev/null +++ b/abi/contracts/SNT.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let SNTJSONConfig = {"contract_name":{"className":"SNT","args":[],"code":"6060604052341561000f57600080fd5b60038054600160a060020a03191633600160a060020a031617905561063e806100396000396000f3006060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a723058203a3ff9020c463ab088645eb17136b8687630bd5628d666cbbfce1819c260c6300029","runtimeBytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a723058203a3ff9020c463ab088645eb17136b8687630bd5628d666cbbfce1819c260c6300029","realRuntimeBytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a72305820","linkReferences":{},"swarmHash":"3a3ff9020c463ab088645eb17136b8687630bd5628d666cbbfce1819c260c630","gasEstimates":{"creation":{"codeDepositCost":"319600","executionCost":"20717","totalCost":"340317"},"external":{"allowance(address,address)":"870","approve(address,uint256)":"22330","balanceOf(address)":"705","decreaseApproval(address,uint256)":"23286","increaseApproval(address,uint256)":"22690","mint(address,uint256)":"42975","totalSupply()":"395","transfer(address,uint256)":"43332","transferFrom(address,address,uint256)":"64071"}},"functionHashes":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decreaseApproval(address,uint256)":"66188463","increaseApproval(address,uint256)":"d73dd623","mint(address,uint256)":"40c10f19","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"abiDefinition":[{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x095ea7b3"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x18160ddd"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x23b872dd"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x40c10f19"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x66188463"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x70a08231"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa9059cbb"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd73dd623"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdd62ed3e"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event","signature":"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event","signature":"0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/test/SNT.sol","originalFilename":"contracts/test/SNT.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/test/SNT.sol","gas":"auto","type":"file","deploy":true,"_gasLimit":6000000,"error":false,"deploymentAccount":"0x1179823e34aBF984C52fC0CdD7b7b9F5dd394aB9","realArgs":[],"address":"0x43d5adC3B49130A575ae6e4b00dFa4BC55C71621","deployedAddress":"0x43d5adC3B49130A575ae6e4b00dFa4BC55C71621"},"address":"0x43d5adC3B49130A575ae6e4b00dFa4BC55C71621","code":"6060604052341561000f57600080fd5b60038054600160a060020a03191633600160a060020a031617905561063e806100396000396000f3006060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a723058203a3ff9020c463ab088645eb17136b8687630bd5628d666cbbfce1819c260c6300029","runtime_bytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a723058203a3ff9020c463ab088645eb17136b8687630bd5628d666cbbfce1819c260c6300029","real_runtime_bytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a72305820","swarm_hash":"3a3ff9020c463ab088645eb17136b8687630bd5628d666cbbfce1819c260c630","gas_estimates":{"creation":{"codeDepositCost":"319600","executionCost":"20717","totalCost":"340317"},"external":{"allowance(address,address)":"870","approve(address,uint256)":"22330","balanceOf(address)":"705","decreaseApproval(address,uint256)":"23286","increaseApproval(address,uint256)":"22690","mint(address,uint256)":"42975","totalSupply()":"395","transfer(address,uint256)":"43332","transferFrom(address,address,uint256)":"64071"}},"function_hashes":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decreaseApproval(address,uint256)":"66188463","increaseApproval(address,uint256)":"d73dd623","mint(address,uint256)":"40c10f19","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"abi":[{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x095ea7b3"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x18160ddd"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x23b872dd"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x40c10f19"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x66188463"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x70a08231"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa9059cbb"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd73dd623"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdd62ed3e"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event","signature":"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event","signature":"0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925"}]}; +let SNT = new EmbarkJS.Blockchain.Contract(SNTJSONConfig); +export default SNT; diff --git a/abi/contracts/ScriptHelpers.js b/abi/contracts/ScriptHelpers.js new file mode 100644 index 0000000..4d7befa --- /dev/null +++ b/abi/contracts/ScriptHelpers.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let ScriptHelpersJSONConfig = {"contract_name":{"className":"ScriptHelpers","args":[],"code":"6060604052341561000f57600080fd5b6103538061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663137d70268114610045575b600080fd5b61010d60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284375094965061018495505050505050565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610149578082015183820152602001610131565b50505050905090810190601f1680156101765780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61018c610315565b61019784848461019f565b949350505050565b6101a7610315565b6060600080806101b688610261565b602002840192506101c687610261565b602002830191506101d68661029c565b60200282019050806040518059106101eb5750595b818152601f19601f830116810160200160405290509450836020860152826040860152816060860152610229856102218a6102a9565b868b516102ac565b61023e85610236896102a9565b858a516102ac565b6102568561024b886102a9565b8489516020026102ac565b505050509392505050565b6000806020835181151561027157fe5b061161027e576000610281565b60015b60ff166020835181151561029157fe5b040160010192915050565b6000815160010192915050565b90565b600082602086010190506102c48185846020016102cb565b5050505050565b81838260005b602082106102f3578351835260209384019390920191601f19909101906102d1565b6001826020036101000a03905080198451168184511617909252505050505050565b602060405190810160405260008152905600a165627a7a72305820dc1e7c2a9952f87dea22d25ce432de31e594d4ffc99961da96c9231e856c428b0029","runtimeBytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663137d70268114610045575b600080fd5b61010d60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284375094965061018495505050505050565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610149578082015183820152602001610131565b50505050905090810190601f1680156101765780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61018c610315565b61019784848461019f565b949350505050565b6101a7610315565b6060600080806101b688610261565b602002840192506101c687610261565b602002830191506101d68661029c565b60200282019050806040518059106101eb5750595b818152601f19601f830116810160200160405290509450836020860152826040860152816060860152610229856102218a6102a9565b868b516102ac565b61023e85610236896102a9565b858a516102ac565b6102568561024b886102a9565b8489516020026102ac565b505050509392505050565b6000806020835181151561027157fe5b061161027e576000610281565b60015b60ff166020835181151561029157fe5b040160010192915050565b6000815160010192915050565b90565b600082602086010190506102c48185846020016102cb565b5050505050565b81838260005b602082106102f3578351835260209384019390920191601f19909101906102d1565b6001826020036101000a03905080198451168184511617909252505050505050565b602060405190810160405260008152905600a165627a7a72305820dc1e7c2a9952f87dea22d25ce432de31e594d4ffc99961da96c9231e856c428b0029","realRuntimeBytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663137d70268114610045575b600080fd5b61010d60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284375094965061018495505050505050565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610149578082015183820152602001610131565b50505050905090810190601f1680156101765780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61018c610315565b61019784848461019f565b949350505050565b6101a7610315565b6060600080806101b688610261565b602002840192506101c687610261565b602002830191506101d68661029c565b60200282019050806040518059106101eb5750595b818152601f19601f830116810160200160405290509450836020860152826040860152816060860152610229856102218a6102a9565b868b516102ac565b61023e85610236896102a9565b858a516102ac565b6102568561024b886102a9565b8489516020026102ac565b505050509392505050565b6000806020835181151561027157fe5b061161027e576000610281565b60015b60ff166020835181151561029157fe5b040160010192915050565b6000815160010192915050565b90565b600082602086010190506102c48185846020016102cb565b5050505050565b81838260005b602082106102f3578351835260209384019390920191601f19909101906102d1565b6001826020036101000a03905080198451168184511617909252505050505050565b602060405190810160405260008152905600a165627a7a72305820","linkReferences":{},"swarmHash":"dc1e7c2a9952f87dea22d25ce432de31e594d4ffc99961da96c9231e856c428b","gasEstimates":{"creation":{"codeDepositCost":"170200","executionCost":"209","totalCost":"170409"},"external":{"abiEncode(bytes,bytes,address[])":"infinite"},"internal":{"abiLength(address[] memory)":"infinite","abiLength(bytes memory)":"infinite","addressAt(bytes memory,uint256)":"infinite","copy(bytes memory,uint256,uint256,uint256)":"infinite","encode(bytes memory,bytes memory,address[] memory)":"infinite","getPtr(address[] memory)":"infinite","getPtr(bytes memory)":"12","getSpecId(bytes memory)":"infinite","locationOf(bytes memory,uint256)":"infinite","memcpy(uint256,uint256,uint256)":"infinite","toBytes(bytes4)":"infinite","uint256At(bytes memory,uint256)":"infinite","uint32At(bytes memory,uint256)":"infinite"}},"functionHashes":{"abiEncode(bytes,bytes,address[])":"137d7026"},"abiDefinition":[{"constant":true,"inputs":[{"name":"_a","type":"bytes"},{"name":"_b","type":"bytes"},{"name":"_c","type":"address[]"}],"name":"abiEncode","outputs":[{"name":"d","type":"bytes"}],"payable":false,"stateMutability":"pure","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/ScriptHelpers.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/evmscript/ScriptHelpers.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/evmscript/ScriptHelpers.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b6103538061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663137d70268114610045575b600080fd5b61010d60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284375094965061018495505050505050565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610149578082015183820152602001610131565b50505050905090810190601f1680156101765780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61018c610315565b61019784848461019f565b949350505050565b6101a7610315565b6060600080806101b688610261565b602002840192506101c687610261565b602002830191506101d68661029c565b60200282019050806040518059106101eb5750595b818152601f19601f830116810160200160405290509450836020860152826040860152816060860152610229856102218a6102a9565b868b516102ac565b61023e85610236896102a9565b858a516102ac565b6102568561024b886102a9565b8489516020026102ac565b505050509392505050565b6000806020835181151561027157fe5b061161027e576000610281565b60015b60ff166020835181151561029157fe5b040160010192915050565b6000815160010192915050565b90565b600082602086010190506102c48185846020016102cb565b5050505050565b81838260005b602082106102f3578351835260209384019390920191601f19909101906102d1565b6001826020036101000a03905080198451168184511617909252505050505050565b602060405190810160405260008152905600a165627a7a72305820dc1e7c2a9952f87dea22d25ce432de31e594d4ffc99961da96c9231e856c428b0029","runtime_bytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663137d70268114610045575b600080fd5b61010d60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284375094965061018495505050505050565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610149578082015183820152602001610131565b50505050905090810190601f1680156101765780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61018c610315565b61019784848461019f565b949350505050565b6101a7610315565b6060600080806101b688610261565b602002840192506101c687610261565b602002830191506101d68661029c565b60200282019050806040518059106101eb5750595b818152601f19601f830116810160200160405290509450836020860152826040860152816060860152610229856102218a6102a9565b868b516102ac565b61023e85610236896102a9565b858a516102ac565b6102568561024b886102a9565b8489516020026102ac565b505050509392505050565b6000806020835181151561027157fe5b061161027e576000610281565b60015b60ff166020835181151561029157fe5b040160010192915050565b6000815160010192915050565b90565b600082602086010190506102c48185846020016102cb565b5050505050565b81838260005b602082106102f3578351835260209384019390920191601f19909101906102d1565b6001826020036101000a03905080198451168184511617909252505050505050565b602060405190810160405260008152905600a165627a7a72305820dc1e7c2a9952f87dea22d25ce432de31e594d4ffc99961da96c9231e856c428b0029","real_runtime_bytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663137d70268114610045575b600080fd5b61010d60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284375094965061018495505050505050565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610149578082015183820152602001610131565b50505050905090810190601f1680156101765780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61018c610315565b61019784848461019f565b949350505050565b6101a7610315565b6060600080806101b688610261565b602002840192506101c687610261565b602002830191506101d68661029c565b60200282019050806040518059106101eb5750595b818152601f19601f830116810160200160405290509450836020860152826040860152816060860152610229856102218a6102a9565b868b516102ac565b61023e85610236896102a9565b858a516102ac565b6102568561024b886102a9565b8489516020026102ac565b505050509392505050565b6000806020835181151561027157fe5b061161027e576000610281565b60015b60ff166020835181151561029157fe5b040160010192915050565b6000815160010192915050565b90565b600082602086010190506102c48185846020016102cb565b5050505050565b81838260005b602082106102f3578351835260209384019390920191601f19909101906102d1565b6001826020036101000a03905080198451168184511617909252505050505050565b602060405190810160405260008152905600a165627a7a72305820","swarm_hash":"dc1e7c2a9952f87dea22d25ce432de31e594d4ffc99961da96c9231e856c428b","gas_estimates":{"creation":{"codeDepositCost":"170200","executionCost":"209","totalCost":"170409"},"external":{"abiEncode(bytes,bytes,address[])":"infinite"},"internal":{"abiLength(address[] memory)":"infinite","abiLength(bytes memory)":"infinite","addressAt(bytes memory,uint256)":"infinite","copy(bytes memory,uint256,uint256,uint256)":"infinite","encode(bytes memory,bytes memory,address[] memory)":"infinite","getPtr(address[] memory)":"infinite","getPtr(bytes memory)":"12","getSpecId(bytes memory)":"infinite","locationOf(bytes memory,uint256)":"infinite","memcpy(uint256,uint256,uint256)":"infinite","toBytes(bytes4)":"infinite","uint256At(bytes memory,uint256)":"infinite","uint32At(bytes memory,uint256)":"infinite"}},"function_hashes":{"abiEncode(bytes,bytes,address[])":"137d7026"},"abi":[{"constant":true,"inputs":[{"name":"_a","type":"bytes"},{"name":"_b","type":"bytes"},{"name":"_c","type":"address[]"}],"name":"abiEncode","outputs":[{"name":"d","type":"bytes"}],"payable":false,"stateMutability":"pure","type":"function"}]}; +let ScriptHelpers = new EmbarkJS.Blockchain.Contract(ScriptHelpersJSONConfig); +export default ScriptHelpers; diff --git a/abi/contracts/StandardToken.js b/abi/contracts/StandardToken.js new file mode 100644 index 0000000..60d4391 --- /dev/null +++ b/abi/contracts/StandardToken.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let StandardTokenJSONConfig = {"contract_name":{"className":"StandardToken","args":[],"code":"6060604052341561000f57600080fd5b60038054600160a060020a03191633600160a060020a031617905561063e806100396000396000f3006060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","runtimeBytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","realRuntimeBytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a72305820","linkReferences":{},"swarmHash":"35ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df578","gasEstimates":{"creation":{"codeDepositCost":"319600","executionCost":"20717","totalCost":"340317"},"external":{"allowance(address,address)":"870","approve(address,uint256)":"22330","balanceOf(address)":"705","decreaseApproval(address,uint256)":"23286","increaseApproval(address,uint256)":"22690","mint(address,uint256)":"42975","totalSupply()":"395","transfer(address,uint256)":"43332","transferFrom(address,address,uint256)":"64071"}},"functionHashes":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decreaseApproval(address,uint256)":"66188463","increaseApproval(address,uint256)":"d73dd623","mint(address,uint256)":"40c10f19","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"abiDefinition":[{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x095ea7b3"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x18160ddd"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x23b872dd"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x40c10f19"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x66188463"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x70a08231"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa9059cbb"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd73dd623"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdd62ed3e"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event","signature":"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event","signature":"0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/test/StandardToken.sol","originalFilename":"contracts/test/StandardToken.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/test/StandardToken.sol","gas":"auto","type":"file","deploy":true,"_gasLimit":6000000,"error":false,"deploymentAccount":"0x1179823e34aBF984C52fC0CdD7b7b9F5dd394aB9","realArgs":[],"address":"0x6732c6Cd8DA14C7E065b51689410058815657427","deployedAddress":"0x6732c6Cd8DA14C7E065b51689410058815657427"},"address":"0x6732c6Cd8DA14C7E065b51689410058815657427","code":"6060604052341561000f57600080fd5b60038054600160a060020a03191633600160a060020a031617905561063e806100396000396000f3006060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","runtime_bytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","real_runtime_bytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a72305820","swarm_hash":"35ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df578","gas_estimates":{"creation":{"codeDepositCost":"319600","executionCost":"20717","totalCost":"340317"},"external":{"allowance(address,address)":"870","approve(address,uint256)":"22330","balanceOf(address)":"705","decreaseApproval(address,uint256)":"23286","increaseApproval(address,uint256)":"22690","mint(address,uint256)":"42975","totalSupply()":"395","transfer(address,uint256)":"43332","transferFrom(address,address,uint256)":"64071"}},"function_hashes":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decreaseApproval(address,uint256)":"66188463","increaseApproval(address,uint256)":"d73dd623","mint(address,uint256)":"40c10f19","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"abi":[{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x095ea7b3"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x18160ddd"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x23b872dd"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x40c10f19"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x66188463"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x70a08231"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa9059cbb"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd73dd623"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdd62ed3e"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event","signature":"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event","signature":"0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925"}]}; +let StandardToken = new EmbarkJS.Blockchain.Contract(StandardTokenJSONConfig); +export default StandardToken; diff --git a/abi/contracts/TestSimpleDelegatePlugin.js b/abi/contracts/TestSimpleDelegatePlugin.js new file mode 100644 index 0000000..34e6e95 --- /dev/null +++ b/abi/contracts/TestSimpleDelegatePlugin.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let TestSimpleDelegatePluginJSONConfig = {"contract_name":{"className":"TestSimpleDelegatePlugin","args":[],"code":"6060604052341561000f57600080fd5b6040516020806105798339810160405280805191505033600160a060020a039081163291909116141561004157600080fd5b6000805460e060020a60ff0219600160a060020a039093166801000000000000000002604060020a60e060020a031990911617919091167c01000000000000000000000000000000000000000000000000000000001790556104d1806100a86000396000f3006060604052600436106100485763ffffffff60e060020a60003504166320fe5c2a811461004d5780637c032d5f1461007d578063ad1483c31461011e578063d4edf5e514610153575b600080fd5b341561005857600080fd5b61006061019a565b60405167ffffffffffffffff909116815260200160405180910390f35b341561008857600080fd5b61011c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101aa915050565b005b341561012957600080fd5b61011c67ffffffffffffffff600435811690602435811690604435811690606435166084356103a4565b341561015e57600080fd5b61018867ffffffffffffffff60043581169060243581169060443581169060643516608435610423565b60405190815260200160405180910390f35b60005467ffffffffffffffff1681565b60005460e060020a900460ff1615156101c257600080fd5b600060089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166352dc7dcc8484843060006040516020015260405160e060020a63ffffffff871602815267ffffffffffffffff8316604482015273ffffffffffffffffffffffffffffffffffffffff82166064820152608060048201908152908190602481019060840187818151815260200191508051906020019080838360005b8381101561028f578082015183820152602001610277565b50505050905090810190601f1680156102bc5780820380516001836020036101000a031916815260200191505b50838103825286818151815260200191508051906020019080838360005b838110156102f25780820151838201526020016102da565b50505050905090810190601f16801561031f5780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b151561034157600080fd5b6102c65a03f1151561035257600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff92909216919091177fffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff16905550505050565b60005460e060020a900460ff16156103bb57600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805460e060020a900460ff161561043b57600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820339f4189a97ce41047c269bfa43a051bc460f8595c05551ac91641b6239a40540029","runtimeBytecode":"6060604052600436106100485763ffffffff60e060020a60003504166320fe5c2a811461004d5780637c032d5f1461007d578063ad1483c31461011e578063d4edf5e514610153575b600080fd5b341561005857600080fd5b61006061019a565b60405167ffffffffffffffff909116815260200160405180910390f35b341561008857600080fd5b61011c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101aa915050565b005b341561012957600080fd5b61011c67ffffffffffffffff600435811690602435811690604435811690606435166084356103a4565b341561015e57600080fd5b61018867ffffffffffffffff60043581169060243581169060443581169060643516608435610423565b60405190815260200160405180910390f35b60005467ffffffffffffffff1681565b60005460e060020a900460ff1615156101c257600080fd5b600060089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166352dc7dcc8484843060006040516020015260405160e060020a63ffffffff871602815267ffffffffffffffff8316604482015273ffffffffffffffffffffffffffffffffffffffff82166064820152608060048201908152908190602481019060840187818151815260200191508051906020019080838360005b8381101561028f578082015183820152602001610277565b50505050905090810190601f1680156102bc5780820380516001836020036101000a031916815260200191505b50838103825286818151815260200191508051906020019080838360005b838110156102f25780820151838201526020016102da565b50505050905090810190601f16801561031f5780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b151561034157600080fd5b6102c65a03f1151561035257600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff92909216919091177fffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff16905550505050565b60005460e060020a900460ff16156103bb57600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805460e060020a900460ff161561043b57600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820339f4189a97ce41047c269bfa43a051bc460f8595c05551ac91641b6239a40540029","realRuntimeBytecode":"6060604052600436106100485763ffffffff60e060020a60003504166320fe5c2a811461004d5780637c032d5f1461007d578063ad1483c31461011e578063d4edf5e514610153575b600080fd5b341561005857600080fd5b61006061019a565b60405167ffffffffffffffff909116815260200160405180910390f35b341561008857600080fd5b61011c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101aa915050565b005b341561012957600080fd5b61011c67ffffffffffffffff600435811690602435811690604435811690606435166084356103a4565b341561015e57600080fd5b61018867ffffffffffffffff60043581169060243581169060443581169060643516608435610423565b60405190815260200160405180910390f35b60005467ffffffffffffffff1681565b60005460e060020a900460ff1615156101c257600080fd5b600060089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166352dc7dcc8484843060006040516020015260405160e060020a63ffffffff871602815267ffffffffffffffff8316604482015273ffffffffffffffffffffffffffffffffffffffff82166064820152608060048201908152908190602481019060840187818151815260200191508051906020019080838360005b8381101561028f578082015183820152602001610277565b50505050905090810190601f1680156102bc5780820380516001836020036101000a031916815260200191505b50838103825286818151815260200191508051906020019080838360005b838110156102f25780820151838201526020016102da565b50505050905090810190601f16801561031f5780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b151561034157600080fd5b6102c65a03f1151561035257600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff92909216919091177fffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff16905550505050565b60005460e060020a900460ff16156103bb57600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805460e060020a900460ff161561043b57600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820","linkReferences":{},"swarmHash":"339f4189a97ce41047c269bfa43a051bc460f8595c05551ac91641b6239a4054","gasEstimates":{"creation":{"codeDepositCost":"246600","executionCost":"20994","totalCost":"267594"},"external":{"afterTransfer(uint64,uint64,uint64,uint64,uint256)":"2800","beforeTransfer(uint64,uint64,uint64,uint64,uint256)":"2870","idDelegate()":"451","init(string,string,uint64)":"infinite"}},"functionHashes":{"afterTransfer(uint64,uint64,uint64,uint64,uint256)":"ad1483c3","beforeTransfer(uint64,uint64,uint64,uint64,uint256)":"d4edf5e5","idDelegate()":"20fe5c2a","init(string,string,uint64)":"7c032d5f"},"abiDefinition":[{"constant":true,"inputs":[],"name":"idDelegate","outputs":[{"name":"","type":"uint64"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"}],"name":"init","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"pledgeAdmin","type":"uint64"},{"name":"pledgeFrom","type":"uint64"},{"name":"pledgeTo","type":"uint64"},{"name":"context","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"afterTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"pledgeAdmin","type":"uint64"},{"name":"pledgeFrom","type":"uint64"},{"name":"pledgeTo","type":"uint64"},{"name":"context","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"beforeTransfer","outputs":[{"name":"maxAllowed","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_liquidPledging","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"pledgeAdmin","type":"uint64"},{"indexed":false,"name":"pledgeFrom","type":"uint64"},{"indexed":false,"name":"pledgeTo","type":"uint64"},{"indexed":false,"name":"context","type":"uint64"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"BeforeTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"pledgeAdmin","type":"uint64"},{"indexed":false,"name":"pledgeFrom","type":"uint64"},{"indexed":false,"name":"pledgeTo","type":"uint64"},{"indexed":false,"name":"context","type":"uint64"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"AfterTransfer","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/test/TestSimpleDelegatePlugin.sol","originalFilename":"contracts/test/TestSimpleDelegatePlugin.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/test/TestSimpleDelegatePlugin.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b6040516020806105798339810160405280805191505033600160a060020a039081163291909116141561004157600080fd5b6000805460e060020a60ff0219600160a060020a039093166801000000000000000002604060020a60e060020a031990911617919091167c01000000000000000000000000000000000000000000000000000000001790556104d1806100a86000396000f3006060604052600436106100485763ffffffff60e060020a60003504166320fe5c2a811461004d5780637c032d5f1461007d578063ad1483c31461011e578063d4edf5e514610153575b600080fd5b341561005857600080fd5b61006061019a565b60405167ffffffffffffffff909116815260200160405180910390f35b341561008857600080fd5b61011c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101aa915050565b005b341561012957600080fd5b61011c67ffffffffffffffff600435811690602435811690604435811690606435166084356103a4565b341561015e57600080fd5b61018867ffffffffffffffff60043581169060243581169060443581169060643516608435610423565b60405190815260200160405180910390f35b60005467ffffffffffffffff1681565b60005460e060020a900460ff1615156101c257600080fd5b600060089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166352dc7dcc8484843060006040516020015260405160e060020a63ffffffff871602815267ffffffffffffffff8316604482015273ffffffffffffffffffffffffffffffffffffffff82166064820152608060048201908152908190602481019060840187818151815260200191508051906020019080838360005b8381101561028f578082015183820152602001610277565b50505050905090810190601f1680156102bc5780820380516001836020036101000a031916815260200191505b50838103825286818151815260200191508051906020019080838360005b838110156102f25780820151838201526020016102da565b50505050905090810190601f16801561031f5780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b151561034157600080fd5b6102c65a03f1151561035257600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff92909216919091177fffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff16905550505050565b60005460e060020a900460ff16156103bb57600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805460e060020a900460ff161561043b57600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820339f4189a97ce41047c269bfa43a051bc460f8595c05551ac91641b6239a40540029","runtime_bytecode":"6060604052600436106100485763ffffffff60e060020a60003504166320fe5c2a811461004d5780637c032d5f1461007d578063ad1483c31461011e578063d4edf5e514610153575b600080fd5b341561005857600080fd5b61006061019a565b60405167ffffffffffffffff909116815260200160405180910390f35b341561008857600080fd5b61011c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101aa915050565b005b341561012957600080fd5b61011c67ffffffffffffffff600435811690602435811690604435811690606435166084356103a4565b341561015e57600080fd5b61018867ffffffffffffffff60043581169060243581169060443581169060643516608435610423565b60405190815260200160405180910390f35b60005467ffffffffffffffff1681565b60005460e060020a900460ff1615156101c257600080fd5b600060089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166352dc7dcc8484843060006040516020015260405160e060020a63ffffffff871602815267ffffffffffffffff8316604482015273ffffffffffffffffffffffffffffffffffffffff82166064820152608060048201908152908190602481019060840187818151815260200191508051906020019080838360005b8381101561028f578082015183820152602001610277565b50505050905090810190601f1680156102bc5780820380516001836020036101000a031916815260200191505b50838103825286818151815260200191508051906020019080838360005b838110156102f25780820151838201526020016102da565b50505050905090810190601f16801561031f5780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b151561034157600080fd5b6102c65a03f1151561035257600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff92909216919091177fffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff16905550505050565b60005460e060020a900460ff16156103bb57600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805460e060020a900460ff161561043b57600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820339f4189a97ce41047c269bfa43a051bc460f8595c05551ac91641b6239a40540029","real_runtime_bytecode":"6060604052600436106100485763ffffffff60e060020a60003504166320fe5c2a811461004d5780637c032d5f1461007d578063ad1483c31461011e578063d4edf5e514610153575b600080fd5b341561005857600080fd5b61006061019a565b60405167ffffffffffffffff909116815260200160405180910390f35b341561008857600080fd5b61011c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101aa915050565b005b341561012957600080fd5b61011c67ffffffffffffffff600435811690602435811690604435811690606435166084356103a4565b341561015e57600080fd5b61018867ffffffffffffffff60043581169060243581169060443581169060643516608435610423565b60405190815260200160405180910390f35b60005467ffffffffffffffff1681565b60005460e060020a900460ff1615156101c257600080fd5b600060089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166352dc7dcc8484843060006040516020015260405160e060020a63ffffffff871602815267ffffffffffffffff8316604482015273ffffffffffffffffffffffffffffffffffffffff82166064820152608060048201908152908190602481019060840187818151815260200191508051906020019080838360005b8381101561028f578082015183820152602001610277565b50505050905090810190601f1680156102bc5780820380516001836020036101000a031916815260200191505b50838103825286818151815260200191508051906020019080838360005b838110156102f25780820151838201526020016102da565b50505050905090810190601f16801561031f5780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b151561034157600080fd5b6102c65a03f1151561035257600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff92909216919091177fffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff16905550505050565b60005460e060020a900460ff16156103bb57600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805460e060020a900460ff161561043b57600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820","swarm_hash":"339f4189a97ce41047c269bfa43a051bc460f8595c05551ac91641b6239a4054","gas_estimates":{"creation":{"codeDepositCost":"246600","executionCost":"20994","totalCost":"267594"},"external":{"afterTransfer(uint64,uint64,uint64,uint64,uint256)":"2800","beforeTransfer(uint64,uint64,uint64,uint64,uint256)":"2870","idDelegate()":"451","init(string,string,uint64)":"infinite"}},"function_hashes":{"afterTransfer(uint64,uint64,uint64,uint64,uint256)":"ad1483c3","beforeTransfer(uint64,uint64,uint64,uint64,uint256)":"d4edf5e5","idDelegate()":"20fe5c2a","init(string,string,uint64)":"7c032d5f"},"abi":[{"constant":true,"inputs":[],"name":"idDelegate","outputs":[{"name":"","type":"uint64"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"}],"name":"init","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"pledgeAdmin","type":"uint64"},{"name":"pledgeFrom","type":"uint64"},{"name":"pledgeTo","type":"uint64"},{"name":"context","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"afterTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"pledgeAdmin","type":"uint64"},{"name":"pledgeFrom","type":"uint64"},{"name":"pledgeTo","type":"uint64"},{"name":"context","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"beforeTransfer","outputs":[{"name":"maxAllowed","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_liquidPledging","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"pledgeAdmin","type":"uint64"},{"indexed":false,"name":"pledgeFrom","type":"uint64"},{"indexed":false,"name":"pledgeTo","type":"uint64"},{"indexed":false,"name":"context","type":"uint64"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"BeforeTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"pledgeAdmin","type":"uint64"},{"indexed":false,"name":"pledgeFrom","type":"uint64"},{"indexed":false,"name":"pledgeTo","type":"uint64"},{"indexed":false,"name":"context","type":"uint64"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"AfterTransfer","type":"event"}]}; +let TestSimpleDelegatePlugin = new EmbarkJS.Blockchain.Contract(TestSimpleDelegatePluginJSONConfig); +export default TestSimpleDelegatePlugin; diff --git a/abi/contracts/TestSimpleDelegatePluginFactory.js b/abi/contracts/TestSimpleDelegatePluginFactory.js new file mode 100644 index 0000000..57fd101 --- /dev/null +++ b/abi/contracts/TestSimpleDelegatePluginFactory.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let TestSimpleDelegatePluginFactoryJSONConfig = {"contract_name":{"className":"TestSimpleDelegatePluginFactory","args":[],"code":"6060604052341561000f57600080fd5b6040516107a63803806107a683398101604052808051919060200180518201919060200180518201919060200180519150600090508461004d6101da565b600160a060020a039091168152602001604051809103906000f080151561007357600080fd5b905080600160a060020a0316637c032d5f8585856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808060200180602001846001604060020a03166001604060020a03168152602001838103835286818151815260200191508051906020019080838360005b8381101561010b5780820151838201526020016100f3565b50505050905090810190601f1680156101385780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b8381101561016e578082015183820152602001610156565b50505050905090810190601f16801561019b5780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15156101bc57600080fd5b6102c65a03f115156101cd57600080fd5b50505050505050506101ea565b6040516105798061022d83390190565b6035806101f86000396000f3006060604052600080fd00a165627a7a72305820975cec99ecdc2fa5c974026810129039a3f6d1fa47213a09f875b2cdb540afbf00296060604052341561000f57600080fd5b6040516020806105798339810160405280805191505033600160a060020a039081163291909116141561004157600080fd5b6000805460e060020a60ff0219600160a060020a039093166801000000000000000002604060020a60e060020a031990911617919091167c01000000000000000000000000000000000000000000000000000000001790556104d1806100a86000396000f3006060604052600436106100485763ffffffff60e060020a60003504166320fe5c2a811461004d5780637c032d5f1461007d578063ad1483c31461011e578063d4edf5e514610153575b600080fd5b341561005857600080fd5b61006061019a565b60405167ffffffffffffffff909116815260200160405180910390f35b341561008857600080fd5b61011c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101aa915050565b005b341561012957600080fd5b61011c67ffffffffffffffff600435811690602435811690604435811690606435166084356103a4565b341561015e57600080fd5b61018867ffffffffffffffff60043581169060243581169060443581169060643516608435610423565b60405190815260200160405180910390f35b60005467ffffffffffffffff1681565b60005460e060020a900460ff1615156101c257600080fd5b600060089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166352dc7dcc8484843060006040516020015260405160e060020a63ffffffff871602815267ffffffffffffffff8316604482015273ffffffffffffffffffffffffffffffffffffffff82166064820152608060048201908152908190602481019060840187818151815260200191508051906020019080838360005b8381101561028f578082015183820152602001610277565b50505050905090810190601f1680156102bc5780820380516001836020036101000a031916815260200191505b50838103825286818151815260200191508051906020019080838360005b838110156102f25780820151838201526020016102da565b50505050905090810190601f16801561031f5780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b151561034157600080fd5b6102c65a03f1151561035257600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff92909216919091177fffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff16905550505050565b60005460e060020a900460ff16156103bb57600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805460e060020a900460ff161561043b57600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820339f4189a97ce41047c269bfa43a051bc460f8595c05551ac91641b6239a40540029","runtimeBytecode":"6060604052600080fd00a165627a7a72305820975cec99ecdc2fa5c974026810129039a3f6d1fa47213a09f875b2cdb540afbf0029","realRuntimeBytecode":"6060604052600080fd00a165627a7a72305820","linkReferences":{},"swarmHash":"975cec99ecdc2fa5c974026810129039a3f6d1fa47213a09f875b2cdb540afbf","gasEstimates":{"creation":{"codeDepositCost":"10600","executionCost":"infinite","totalCost":"infinite"}},"functionHashes":{},"abiDefinition":[{"inputs":[{"name":"liquidPledging","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/test/TestSimpleDelegatePlugin.sol","originalFilename":"contracts/test/TestSimpleDelegatePlugin.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/test/TestSimpleDelegatePlugin.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b6040516107a63803806107a683398101604052808051919060200180518201919060200180518201919060200180519150600090508461004d6101da565b600160a060020a039091168152602001604051809103906000f080151561007357600080fd5b905080600160a060020a0316637c032d5f8585856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808060200180602001846001604060020a03166001604060020a03168152602001838103835286818151815260200191508051906020019080838360005b8381101561010b5780820151838201526020016100f3565b50505050905090810190601f1680156101385780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b8381101561016e578082015183820152602001610156565b50505050905090810190601f16801561019b5780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15156101bc57600080fd5b6102c65a03f115156101cd57600080fd5b50505050505050506101ea565b6040516105798061022d83390190565b6035806101f86000396000f3006060604052600080fd00a165627a7a72305820975cec99ecdc2fa5c974026810129039a3f6d1fa47213a09f875b2cdb540afbf00296060604052341561000f57600080fd5b6040516020806105798339810160405280805191505033600160a060020a039081163291909116141561004157600080fd5b6000805460e060020a60ff0219600160a060020a039093166801000000000000000002604060020a60e060020a031990911617919091167c01000000000000000000000000000000000000000000000000000000001790556104d1806100a86000396000f3006060604052600436106100485763ffffffff60e060020a60003504166320fe5c2a811461004d5780637c032d5f1461007d578063ad1483c31461011e578063d4edf5e514610153575b600080fd5b341561005857600080fd5b61006061019a565b60405167ffffffffffffffff909116815260200160405180910390f35b341561008857600080fd5b61011c60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101aa915050565b005b341561012957600080fd5b61011c67ffffffffffffffff600435811690602435811690604435811690606435166084356103a4565b341561015e57600080fd5b61018867ffffffffffffffff60043581169060243581169060443581169060643516608435610423565b60405190815260200160405180910390f35b60005467ffffffffffffffff1681565b60005460e060020a900460ff1615156101c257600080fd5b600060089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166352dc7dcc8484843060006040516020015260405160e060020a63ffffffff871602815267ffffffffffffffff8316604482015273ffffffffffffffffffffffffffffffffffffffff82166064820152608060048201908152908190602481019060840187818151815260200191508051906020019080838360005b8381101561028f578082015183820152602001610277565b50505050905090810190601f1680156102bc5780820380516001836020036101000a031916815260200191505b50838103825286818151815260200191508051906020019080838360005b838110156102f25780820151838201526020016102da565b50505050905090810190601f16801561031f5780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b151561034157600080fd5b6102c65a03f1151561035257600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff92909216919091177fffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff16905550505050565b60005460e060020a900460ff16156103bb57600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805460e060020a900460ff161561043b57600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820339f4189a97ce41047c269bfa43a051bc460f8595c05551ac91641b6239a40540029","runtime_bytecode":"6060604052600080fd00a165627a7a72305820975cec99ecdc2fa5c974026810129039a3f6d1fa47213a09f875b2cdb540afbf0029","real_runtime_bytecode":"6060604052600080fd00a165627a7a72305820","swarm_hash":"975cec99ecdc2fa5c974026810129039a3f6d1fa47213a09f875b2cdb540afbf","gas_estimates":{"creation":{"codeDepositCost":"10600","executionCost":"infinite","totalCost":"infinite"}},"function_hashes":{},"abi":[{"inputs":[{"name":"liquidPledging","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"commitTime","type":"uint64"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"}]}; +let TestSimpleDelegatePluginFactory = new EmbarkJS.Blockchain.Contract(TestSimpleDelegatePluginFactoryJSONConfig); +export default TestSimpleDelegatePluginFactory; diff --git a/abi/contracts/TestSimpleProjectPlugin.js b/abi/contracts/TestSimpleProjectPlugin.js new file mode 100644 index 0000000..41a8940 --- /dev/null +++ b/abi/contracts/TestSimpleProjectPlugin.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let TestSimpleProjectPluginJSONConfig = {"contract_name":{"className":"TestSimpleProjectPlugin","args":[],"code":"6060604052341561000f57600080fd5b32600160a060020a031633600160a060020a03161415151561003057600080fd5b60008054604060020a60ff0219166801000000000000000017905561050b8061005a6000396000f3006060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636e1c5d67811461006657806394edc35914610122578063ad1483c314610152578063d4edf5e514610187575b600080fd5b341561007157600080fd5b6101206004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101ce915050565b005b341561012d57600080fd5b6101356103c4565b60405167ffffffffffffffff909116815260200160405180910390f35b341561015d57600080fd5b61012067ffffffffffffffff600435811690602435811690604435811690606435166084356103d4565b341561019257600080fd5b6101bc67ffffffffffffffff60043581169060243581169060443581169060643516608435610458565b60405190815260200160405180910390f35b60005468010000000000000000900460ff1615156101eb57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff166372116e92848430856000306000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff891602815273ffffffffffffffffffffffffffffffffffffffff808616604483015267ffffffffffffffff808616606484015284166084830152821660a482015260c060048201908152908190602481019060c40189818151815260200191508051906020019080838360005b838110156102c25780820151838201526020016102aa565b50505050905090810190601f1680156102ef5780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561032557808201518382015260200161030d565b50505050905090810190601f1680156103525780820380516001836020036101000a031916815260200191505b5098505050505050505050602060405180830381600087803b151561037657600080fd5b6102c65a03f1151561038757600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff929092169190911768ff0000000000000000191690555050505050565b60005467ffffffffffffffff1681565b60005468010000000000000000900460ff16156103f057600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805468010000000000000000900460ff161561047557600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820bc395d61b244434f649213298b1f5d97d526ac26b3b6e78ab6aa7fb8f55bd0970029","runtimeBytecode":"6060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636e1c5d67811461006657806394edc35914610122578063ad1483c314610152578063d4edf5e514610187575b600080fd5b341561007157600080fd5b6101206004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101ce915050565b005b341561012d57600080fd5b6101356103c4565b60405167ffffffffffffffff909116815260200160405180910390f35b341561015d57600080fd5b61012067ffffffffffffffff600435811690602435811690604435811690606435166084356103d4565b341561019257600080fd5b6101bc67ffffffffffffffff60043581169060243581169060443581169060643516608435610458565b60405190815260200160405180910390f35b60005468010000000000000000900460ff1615156101eb57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff166372116e92848430856000306000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff891602815273ffffffffffffffffffffffffffffffffffffffff808616604483015267ffffffffffffffff808616606484015284166084830152821660a482015260c060048201908152908190602481019060c40189818151815260200191508051906020019080838360005b838110156102c25780820151838201526020016102aa565b50505050905090810190601f1680156102ef5780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561032557808201518382015260200161030d565b50505050905090810190601f1680156103525780820380516001836020036101000a031916815260200191505b5098505050505050505050602060405180830381600087803b151561037657600080fd5b6102c65a03f1151561038757600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff929092169190911768ff0000000000000000191690555050505050565b60005467ffffffffffffffff1681565b60005468010000000000000000900460ff16156103f057600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805468010000000000000000900460ff161561047557600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820bc395d61b244434f649213298b1f5d97d526ac26b3b6e78ab6aa7fb8f55bd0970029","realRuntimeBytecode":"6060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636e1c5d67811461006657806394edc35914610122578063ad1483c314610152578063d4edf5e514610187575b600080fd5b341561007157600080fd5b6101206004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101ce915050565b005b341561012d57600080fd5b6101356103c4565b60405167ffffffffffffffff909116815260200160405180910390f35b341561015d57600080fd5b61012067ffffffffffffffff600435811690602435811690604435811690606435166084356103d4565b341561019257600080fd5b6101bc67ffffffffffffffff60043581169060243581169060443581169060643516608435610458565b60405190815260200160405180910390f35b60005468010000000000000000900460ff1615156101eb57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff166372116e92848430856000306000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff891602815273ffffffffffffffffffffffffffffffffffffffff808616604483015267ffffffffffffffff808616606484015284166084830152821660a482015260c060048201908152908190602481019060c40189818151815260200191508051906020019080838360005b838110156102c25780820151838201526020016102aa565b50505050905090810190601f1680156102ef5780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561032557808201518382015260200161030d565b50505050905090810190601f1680156103525780820380516001836020036101000a031916815260200191505b5098505050505050505050602060405180830381600087803b151561037657600080fd5b6102c65a03f1151561038757600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff929092169190911768ff0000000000000000191690555050505050565b60005467ffffffffffffffff1681565b60005468010000000000000000900460ff16156103f057600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805468010000000000000000900460ff161561047557600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820","linkReferences":{},"swarmHash":"bc395d61b244434f649213298b1f5d97d526ac26b3b6e78ab6aa7fb8f55bd097","gasEstimates":{"creation":{"codeDepositCost":"258200","executionCost":"20770","totalCost":"278970"},"external":{"afterTransfer(uint64,uint64,uint64,uint64,uint256)":"2674","beforeTransfer(uint64,uint64,uint64,uint64,uint256)":"2744","idProject()":"410","init(address,string,string,uint64)":"infinite"}},"functionHashes":{"afterTransfer(uint64,uint64,uint64,uint64,uint256)":"ad1483c3","beforeTransfer(uint64,uint64,uint64,uint64,uint256)":"d4edf5e5","idProject()":"94edc359","init(address,string,string,uint64)":"6e1c5d67"},"abiDefinition":[{"constant":false,"inputs":[{"name":"liquidPledging","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"parentProject","type":"uint64"}],"name":"init","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"idProject","outputs":[{"name":"","type":"uint64"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"pledgeAdmin","type":"uint64"},{"name":"pledgeFrom","type":"uint64"},{"name":"pledgeTo","type":"uint64"},{"name":"context","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"afterTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"pledgeAdmin","type":"uint64"},{"name":"pledgeFrom","type":"uint64"},{"name":"pledgeTo","type":"uint64"},{"name":"context","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"beforeTransfer","outputs":[{"name":"maxAllowed","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"pledgeAdmin","type":"uint64"},{"indexed":false,"name":"pledgeFrom","type":"uint64"},{"indexed":false,"name":"pledgeTo","type":"uint64"},{"indexed":false,"name":"context","type":"uint64"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"BeforeTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"pledgeAdmin","type":"uint64"},{"indexed":false,"name":"pledgeFrom","type":"uint64"},{"indexed":false,"name":"pledgeTo","type":"uint64"},{"indexed":false,"name":"context","type":"uint64"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"AfterTransfer","type":"event"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/test/TestSimpleProjectPlugin.sol","originalFilename":"contracts/test/TestSimpleProjectPlugin.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/test/TestSimpleProjectPlugin.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b32600160a060020a031633600160a060020a03161415151561003057600080fd5b60008054604060020a60ff0219166801000000000000000017905561050b8061005a6000396000f3006060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636e1c5d67811461006657806394edc35914610122578063ad1483c314610152578063d4edf5e514610187575b600080fd5b341561007157600080fd5b6101206004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101ce915050565b005b341561012d57600080fd5b6101356103c4565b60405167ffffffffffffffff909116815260200160405180910390f35b341561015d57600080fd5b61012067ffffffffffffffff600435811690602435811690604435811690606435166084356103d4565b341561019257600080fd5b6101bc67ffffffffffffffff60043581169060243581169060443581169060643516608435610458565b60405190815260200160405180910390f35b60005468010000000000000000900460ff1615156101eb57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff166372116e92848430856000306000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff891602815273ffffffffffffffffffffffffffffffffffffffff808616604483015267ffffffffffffffff808616606484015284166084830152821660a482015260c060048201908152908190602481019060c40189818151815260200191508051906020019080838360005b838110156102c25780820151838201526020016102aa565b50505050905090810190601f1680156102ef5780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561032557808201518382015260200161030d565b50505050905090810190601f1680156103525780820380516001836020036101000a031916815260200191505b5098505050505050505050602060405180830381600087803b151561037657600080fd5b6102c65a03f1151561038757600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff929092169190911768ff0000000000000000191690555050505050565b60005467ffffffffffffffff1681565b60005468010000000000000000900460ff16156103f057600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805468010000000000000000900460ff161561047557600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820bc395d61b244434f649213298b1f5d97d526ac26b3b6e78ab6aa7fb8f55bd0970029","runtime_bytecode":"6060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636e1c5d67811461006657806394edc35914610122578063ad1483c314610152578063d4edf5e514610187575b600080fd5b341561007157600080fd5b6101206004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101ce915050565b005b341561012d57600080fd5b6101356103c4565b60405167ffffffffffffffff909116815260200160405180910390f35b341561015d57600080fd5b61012067ffffffffffffffff600435811690602435811690604435811690606435166084356103d4565b341561019257600080fd5b6101bc67ffffffffffffffff60043581169060243581169060443581169060643516608435610458565b60405190815260200160405180910390f35b60005468010000000000000000900460ff1615156101eb57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff166372116e92848430856000306000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff891602815273ffffffffffffffffffffffffffffffffffffffff808616604483015267ffffffffffffffff808616606484015284166084830152821660a482015260c060048201908152908190602481019060c40189818151815260200191508051906020019080838360005b838110156102c25780820151838201526020016102aa565b50505050905090810190601f1680156102ef5780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561032557808201518382015260200161030d565b50505050905090810190601f1680156103525780820380516001836020036101000a031916815260200191505b5098505050505050505050602060405180830381600087803b151561037657600080fd5b6102c65a03f1151561038757600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff929092169190911768ff0000000000000000191690555050505050565b60005467ffffffffffffffff1681565b60005468010000000000000000900460ff16156103f057600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805468010000000000000000900460ff161561047557600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820bc395d61b244434f649213298b1f5d97d526ac26b3b6e78ab6aa7fb8f55bd0970029","real_runtime_bytecode":"6060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636e1c5d67811461006657806394edc35914610122578063ad1483c314610152578063d4edf5e514610187575b600080fd5b341561007157600080fd5b6101206004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101ce915050565b005b341561012d57600080fd5b6101356103c4565b60405167ffffffffffffffff909116815260200160405180910390f35b341561015d57600080fd5b61012067ffffffffffffffff600435811690602435811690604435811690606435166084356103d4565b341561019257600080fd5b6101bc67ffffffffffffffff60043581169060243581169060443581169060643516608435610458565b60405190815260200160405180910390f35b60005468010000000000000000900460ff1615156101eb57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff166372116e92848430856000306000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff891602815273ffffffffffffffffffffffffffffffffffffffff808616604483015267ffffffffffffffff808616606484015284166084830152821660a482015260c060048201908152908190602481019060c40189818151815260200191508051906020019080838360005b838110156102c25780820151838201526020016102aa565b50505050905090810190601f1680156102ef5780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561032557808201518382015260200161030d565b50505050905090810190601f1680156103525780820380516001836020036101000a031916815260200191505b5098505050505050505050602060405180830381600087803b151561037657600080fd5b6102c65a03f1151561038757600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff929092169190911768ff0000000000000000191690555050505050565b60005467ffffffffffffffff1681565b60005468010000000000000000900460ff16156103f057600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805468010000000000000000900460ff161561047557600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820","swarm_hash":"bc395d61b244434f649213298b1f5d97d526ac26b3b6e78ab6aa7fb8f55bd097","gas_estimates":{"creation":{"codeDepositCost":"258200","executionCost":"20770","totalCost":"278970"},"external":{"afterTransfer(uint64,uint64,uint64,uint64,uint256)":"2674","beforeTransfer(uint64,uint64,uint64,uint64,uint256)":"2744","idProject()":"410","init(address,string,string,uint64)":"infinite"}},"function_hashes":{"afterTransfer(uint64,uint64,uint64,uint64,uint256)":"ad1483c3","beforeTransfer(uint64,uint64,uint64,uint64,uint256)":"d4edf5e5","idProject()":"94edc359","init(address,string,string,uint64)":"6e1c5d67"},"abi":[{"constant":false,"inputs":[{"name":"liquidPledging","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"parentProject","type":"uint64"}],"name":"init","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"idProject","outputs":[{"name":"","type":"uint64"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"pledgeAdmin","type":"uint64"},{"name":"pledgeFrom","type":"uint64"},{"name":"pledgeTo","type":"uint64"},{"name":"context","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"afterTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"pledgeAdmin","type":"uint64"},{"name":"pledgeFrom","type":"uint64"},{"name":"pledgeTo","type":"uint64"},{"name":"context","type":"uint64"},{"name":"amount","type":"uint256"}],"name":"beforeTransfer","outputs":[{"name":"maxAllowed","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"pledgeAdmin","type":"uint64"},{"indexed":false,"name":"pledgeFrom","type":"uint64"},{"indexed":false,"name":"pledgeTo","type":"uint64"},{"indexed":false,"name":"context","type":"uint64"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"BeforeTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"pledgeAdmin","type":"uint64"},{"indexed":false,"name":"pledgeFrom","type":"uint64"},{"indexed":false,"name":"pledgeTo","type":"uint64"},{"indexed":false,"name":"context","type":"uint64"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"AfterTransfer","type":"event"}]}; +let TestSimpleProjectPlugin = new EmbarkJS.Blockchain.Contract(TestSimpleProjectPluginJSONConfig); +export default TestSimpleProjectPlugin; diff --git a/abi/contracts/TestSimpleProjectPluginFactory.js b/abi/contracts/TestSimpleProjectPluginFactory.js new file mode 100644 index 0000000..98da733 --- /dev/null +++ b/abi/contracts/TestSimpleProjectPluginFactory.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let TestSimpleProjectPluginFactoryJSONConfig = {"contract_name":{"className":"TestSimpleProjectPluginFactory","args":[],"code":"6060604052341561000f57600080fd5b61084d8061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663c5688b7c8114610045575b600080fd5b341561005057600080fd5b6100ff6004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff169250610101915050565b005b600061010b6102ac565b604051809103906000f080151561012157600080fd5b90508073ffffffffffffffffffffffffffffffffffffffff16636e1c5d67868686866040517c010000000000000000000000000000000000000000000000000000000063ffffffff871602815273ffffffffffffffffffffffffffffffffffffffff85166004820190815267ffffffffffffffff831660648301526080602483019081529091604481019060840186818151815260200191508051906020019080838360005b838110156101df5780820151838201526020016101c7565b50505050905090810190601f16801561020c5780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b8381101561024257808201518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b151561029157600080fd5b6102c65a03f115156102a257600080fd5b5050505050505050565b604051610565806102bd8339019056006060604052341561000f57600080fd5b32600160a060020a031633600160a060020a03161415151561003057600080fd5b60008054604060020a60ff0219166801000000000000000017905561050b8061005a6000396000f3006060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636e1c5d67811461006657806394edc35914610122578063ad1483c314610152578063d4edf5e514610187575b600080fd5b341561007157600080fd5b6101206004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101ce915050565b005b341561012d57600080fd5b6101356103c4565b60405167ffffffffffffffff909116815260200160405180910390f35b341561015d57600080fd5b61012067ffffffffffffffff600435811690602435811690604435811690606435166084356103d4565b341561019257600080fd5b6101bc67ffffffffffffffff60043581169060243581169060443581169060643516608435610458565b60405190815260200160405180910390f35b60005468010000000000000000900460ff1615156101eb57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff166372116e92848430856000306000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff891602815273ffffffffffffffffffffffffffffffffffffffff808616604483015267ffffffffffffffff808616606484015284166084830152821660a482015260c060048201908152908190602481019060c40189818151815260200191508051906020019080838360005b838110156102c25780820151838201526020016102aa565b50505050905090810190601f1680156102ef5780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561032557808201518382015260200161030d565b50505050905090810190601f1680156103525780820380516001836020036101000a031916815260200191505b5098505050505050505050602060405180830381600087803b151561037657600080fd5b6102c65a03f1151561038757600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff929092169190911768ff0000000000000000191690555050505050565b60005467ffffffffffffffff1681565b60005468010000000000000000900460ff16156103f057600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805468010000000000000000900460ff161561047557600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820bc395d61b244434f649213298b1f5d97d526ac26b3b6e78ab6aa7fb8f55bd0970029a165627a7a72305820076aa8b92f090b4cf37d1a7d833b14ed002977aa325f45edcd26a1f9bfa36e3f0029","runtimeBytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663c5688b7c8114610045575b600080fd5b341561005057600080fd5b6100ff6004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff169250610101915050565b005b600061010b6102ac565b604051809103906000f080151561012157600080fd5b90508073ffffffffffffffffffffffffffffffffffffffff16636e1c5d67868686866040517c010000000000000000000000000000000000000000000000000000000063ffffffff871602815273ffffffffffffffffffffffffffffffffffffffff85166004820190815267ffffffffffffffff831660648301526080602483019081529091604481019060840186818151815260200191508051906020019080838360005b838110156101df5780820151838201526020016101c7565b50505050905090810190601f16801561020c5780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b8381101561024257808201518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b151561029157600080fd5b6102c65a03f115156102a257600080fd5b5050505050505050565b604051610565806102bd8339019056006060604052341561000f57600080fd5b32600160a060020a031633600160a060020a03161415151561003057600080fd5b60008054604060020a60ff0219166801000000000000000017905561050b8061005a6000396000f3006060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636e1c5d67811461006657806394edc35914610122578063ad1483c314610152578063d4edf5e514610187575b600080fd5b341561007157600080fd5b6101206004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101ce915050565b005b341561012d57600080fd5b6101356103c4565b60405167ffffffffffffffff909116815260200160405180910390f35b341561015d57600080fd5b61012067ffffffffffffffff600435811690602435811690604435811690606435166084356103d4565b341561019257600080fd5b6101bc67ffffffffffffffff60043581169060243581169060443581169060643516608435610458565b60405190815260200160405180910390f35b60005468010000000000000000900460ff1615156101eb57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff166372116e92848430856000306000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff891602815273ffffffffffffffffffffffffffffffffffffffff808616604483015267ffffffffffffffff808616606484015284166084830152821660a482015260c060048201908152908190602481019060c40189818151815260200191508051906020019080838360005b838110156102c25780820151838201526020016102aa565b50505050905090810190601f1680156102ef5780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561032557808201518382015260200161030d565b50505050905090810190601f1680156103525780820380516001836020036101000a031916815260200191505b5098505050505050505050602060405180830381600087803b151561037657600080fd5b6102c65a03f1151561038757600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff929092169190911768ff0000000000000000191690555050505050565b60005467ffffffffffffffff1681565b60005468010000000000000000900460ff16156103f057600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805468010000000000000000900460ff161561047557600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820bc395d61b244434f649213298b1f5d97d526ac26b3b6e78ab6aa7fb8f55bd0970029a165627a7a72305820076aa8b92f090b4cf37d1a7d833b14ed002977aa325f45edcd26a1f9bfa36e3f0029","realRuntimeBytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663c5688b7c8114610045575b600080fd5b341561005057600080fd5b6100ff6004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff169250610101915050565b005b600061010b6102ac565b604051809103906000f080151561012157600080fd5b90508073ffffffffffffffffffffffffffffffffffffffff16636e1c5d67868686866040517c010000000000000000000000000000000000000000000000000000000063ffffffff871602815273ffffffffffffffffffffffffffffffffffffffff85166004820190815267ffffffffffffffff831660648301526080602483019081529091604481019060840186818151815260200191508051906020019080838360005b838110156101df5780820151838201526020016101c7565b50505050905090810190601f16801561020c5780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b8381101561024257808201518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b151561029157600080fd5b6102c65a03f115156102a257600080fd5b5050505050505050565b604051610565806102bd8339019056006060604052341561000f57600080fd5b32600160a060020a031633600160a060020a03161415151561003057600080fd5b60008054604060020a60ff0219166801000000000000000017905561050b8061005a6000396000f3006060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636e1c5d67811461006657806394edc35914610122578063ad1483c314610152578063d4edf5e514610187575b600080fd5b341561007157600080fd5b6101206004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101ce915050565b005b341561012d57600080fd5b6101356103c4565b60405167ffffffffffffffff909116815260200160405180910390f35b341561015d57600080fd5b61012067ffffffffffffffff600435811690602435811690604435811690606435166084356103d4565b341561019257600080fd5b6101bc67ffffffffffffffff60043581169060243581169060443581169060643516608435610458565b60405190815260200160405180910390f35b60005468010000000000000000900460ff1615156101eb57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff166372116e92848430856000306000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff891602815273ffffffffffffffffffffffffffffffffffffffff808616604483015267ffffffffffffffff808616606484015284166084830152821660a482015260c060048201908152908190602481019060c40189818151815260200191508051906020019080838360005b838110156102c25780820151838201526020016102aa565b50505050905090810190601f1680156102ef5780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561032557808201518382015260200161030d565b50505050905090810190601f1680156103525780820380516001836020036101000a031916815260200191505b5098505050505050505050602060405180830381600087803b151561037657600080fd5b6102c65a03f1151561038757600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff929092169190911768ff0000000000000000191690555050505050565b60005467ffffffffffffffff1681565b60005468010000000000000000900460ff16156103f057600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805468010000000000000000900460ff161561047557600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820bc395d61b244434f649213298b1f5d97d526ac26b3b6e78ab6aa7fb8f55bd0970029a165627a7a72305820","linkReferences":{},"swarmHash":"076aa8b92f090b4cf37d1a7d833b14ed002977aa325f45edcd26a1f9bfa36e3f","gasEstimates":{"creation":{"codeDepositCost":"425000","executionCost":"456","totalCost":"425456"},"external":{"deploy(address,string,string,uint64)":"infinite"}},"functionHashes":{"deploy(address,string,string,uint64)":"c5688b7c"},"abiDefinition":[{"constant":false,"inputs":[{"name":"liquidPledging","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"parentProject","type":"uint64"}],"name":"deploy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/test/TestSimpleProjectPluginFactory.sol","originalFilename":"contracts/test/TestSimpleProjectPluginFactory.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/test/TestSimpleProjectPluginFactory.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"6060604052341561000f57600080fd5b61084d8061001e6000396000f3006060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663c5688b7c8114610045575b600080fd5b341561005057600080fd5b6100ff6004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff169250610101915050565b005b600061010b6102ac565b604051809103906000f080151561012157600080fd5b90508073ffffffffffffffffffffffffffffffffffffffff16636e1c5d67868686866040517c010000000000000000000000000000000000000000000000000000000063ffffffff871602815273ffffffffffffffffffffffffffffffffffffffff85166004820190815267ffffffffffffffff831660648301526080602483019081529091604481019060840186818151815260200191508051906020019080838360005b838110156101df5780820151838201526020016101c7565b50505050905090810190601f16801561020c5780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b8381101561024257808201518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b151561029157600080fd5b6102c65a03f115156102a257600080fd5b5050505050505050565b604051610565806102bd8339019056006060604052341561000f57600080fd5b32600160a060020a031633600160a060020a03161415151561003057600080fd5b60008054604060020a60ff0219166801000000000000000017905561050b8061005a6000396000f3006060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636e1c5d67811461006657806394edc35914610122578063ad1483c314610152578063d4edf5e514610187575b600080fd5b341561007157600080fd5b6101206004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101ce915050565b005b341561012d57600080fd5b6101356103c4565b60405167ffffffffffffffff909116815260200160405180910390f35b341561015d57600080fd5b61012067ffffffffffffffff600435811690602435811690604435811690606435166084356103d4565b341561019257600080fd5b6101bc67ffffffffffffffff60043581169060243581169060443581169060643516608435610458565b60405190815260200160405180910390f35b60005468010000000000000000900460ff1615156101eb57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff166372116e92848430856000306000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff891602815273ffffffffffffffffffffffffffffffffffffffff808616604483015267ffffffffffffffff808616606484015284166084830152821660a482015260c060048201908152908190602481019060c40189818151815260200191508051906020019080838360005b838110156102c25780820151838201526020016102aa565b50505050905090810190601f1680156102ef5780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561032557808201518382015260200161030d565b50505050905090810190601f1680156103525780820380516001836020036101000a031916815260200191505b5098505050505050505050602060405180830381600087803b151561037657600080fd5b6102c65a03f1151561038757600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff929092169190911768ff0000000000000000191690555050505050565b60005467ffffffffffffffff1681565b60005468010000000000000000900460ff16156103f057600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805468010000000000000000900460ff161561047557600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820bc395d61b244434f649213298b1f5d97d526ac26b3b6e78ab6aa7fb8f55bd0970029a165627a7a72305820076aa8b92f090b4cf37d1a7d833b14ed002977aa325f45edcd26a1f9bfa36e3f0029","runtime_bytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663c5688b7c8114610045575b600080fd5b341561005057600080fd5b6100ff6004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff169250610101915050565b005b600061010b6102ac565b604051809103906000f080151561012157600080fd5b90508073ffffffffffffffffffffffffffffffffffffffff16636e1c5d67868686866040517c010000000000000000000000000000000000000000000000000000000063ffffffff871602815273ffffffffffffffffffffffffffffffffffffffff85166004820190815267ffffffffffffffff831660648301526080602483019081529091604481019060840186818151815260200191508051906020019080838360005b838110156101df5780820151838201526020016101c7565b50505050905090810190601f16801561020c5780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b8381101561024257808201518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b151561029157600080fd5b6102c65a03f115156102a257600080fd5b5050505050505050565b604051610565806102bd8339019056006060604052341561000f57600080fd5b32600160a060020a031633600160a060020a03161415151561003057600080fd5b60008054604060020a60ff0219166801000000000000000017905561050b8061005a6000396000f3006060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636e1c5d67811461006657806394edc35914610122578063ad1483c314610152578063d4edf5e514610187575b600080fd5b341561007157600080fd5b6101206004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101ce915050565b005b341561012d57600080fd5b6101356103c4565b60405167ffffffffffffffff909116815260200160405180910390f35b341561015d57600080fd5b61012067ffffffffffffffff600435811690602435811690604435811690606435166084356103d4565b341561019257600080fd5b6101bc67ffffffffffffffff60043581169060243581169060443581169060643516608435610458565b60405190815260200160405180910390f35b60005468010000000000000000900460ff1615156101eb57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff166372116e92848430856000306000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff891602815273ffffffffffffffffffffffffffffffffffffffff808616604483015267ffffffffffffffff808616606484015284166084830152821660a482015260c060048201908152908190602481019060c40189818151815260200191508051906020019080838360005b838110156102c25780820151838201526020016102aa565b50505050905090810190601f1680156102ef5780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561032557808201518382015260200161030d565b50505050905090810190601f1680156103525780820380516001836020036101000a031916815260200191505b5098505050505050505050602060405180830381600087803b151561037657600080fd5b6102c65a03f1151561038757600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff929092169190911768ff0000000000000000191690555050505050565b60005467ffffffffffffffff1681565b60005468010000000000000000900460ff16156103f057600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805468010000000000000000900460ff161561047557600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820bc395d61b244434f649213298b1f5d97d526ac26b3b6e78ab6aa7fb8f55bd0970029a165627a7a72305820076aa8b92f090b4cf37d1a7d833b14ed002977aa325f45edcd26a1f9bfa36e3f0029","real_runtime_bytecode":"6060604052600436106100405763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663c5688b7c8114610045575b600080fd5b341561005057600080fd5b6100ff6004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff169250610101915050565b005b600061010b6102ac565b604051809103906000f080151561012157600080fd5b90508073ffffffffffffffffffffffffffffffffffffffff16636e1c5d67868686866040517c010000000000000000000000000000000000000000000000000000000063ffffffff871602815273ffffffffffffffffffffffffffffffffffffffff85166004820190815267ffffffffffffffff831660648301526080602483019081529091604481019060840186818151815260200191508051906020019080838360005b838110156101df5780820151838201526020016101c7565b50505050905090810190601f16801561020c5780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b8381101561024257808201518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b151561029157600080fd5b6102c65a03f115156102a257600080fd5b5050505050505050565b604051610565806102bd8339019056006060604052341561000f57600080fd5b32600160a060020a031633600160a060020a03161415151561003057600080fd5b60008054604060020a60ff0219166801000000000000000017905561050b8061005a6000396000f3006060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636e1c5d67811461006657806394edc35914610122578063ad1483c314610152578063d4edf5e514610187575b600080fd5b341561007157600080fd5b6101206004803573ffffffffffffffffffffffffffffffffffffffff169060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405281815292919060208401838380828437509496505050923567ffffffffffffffff1692506101ce915050565b005b341561012d57600080fd5b6101356103c4565b60405167ffffffffffffffff909116815260200160405180910390f35b341561015d57600080fd5b61012067ffffffffffffffff600435811690602435811690604435811690606435166084356103d4565b341561019257600080fd5b6101bc67ffffffffffffffff60043581169060243581169060443581169060643516608435610458565b60405190815260200160405180910390f35b60005468010000000000000000900460ff1615156101eb57600080fd5b8373ffffffffffffffffffffffffffffffffffffffff166372116e92848430856000306000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff891602815273ffffffffffffffffffffffffffffffffffffffff808616604483015267ffffffffffffffff808616606484015284166084830152821660a482015260c060048201908152908190602481019060c40189818151815260200191508051906020019080838360005b838110156102c25780820151838201526020016102aa565b50505050905090810190601f1680156102ef5780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b8381101561032557808201518382015260200161030d565b50505050905090810190601f1680156103525780820380516001836020036101000a031916815260200191505b5098505050505050505050602060405180830381600087803b151561037657600080fd5b6102c65a03f1151561038757600080fd5b50505060405180516000805467ffffffffffffffff191667ffffffffffffffff929092169190911768ff0000000000000000191690555050505050565b60005467ffffffffffffffff1681565b60005468010000000000000000900460ff16156103f057600080fd5b7fd3b94fd0ec63b2f94d5dcc25db5025576f742d1da773c386b38e308b43841bba858585858560405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a15050505050565b6000805468010000000000000000900460ff161561047557600080fd5b7fb5ecb36c4ccb2023ce7243cc977d0c33d9931336485a793d948379f39f700ea3868686868660405167ffffffffffffffff9586168152938516602085015291841660408085019190915293166060830152608082015260a001905180910390a1959450505050505600a165627a7a72305820bc395d61b244434f649213298b1f5d97d526ac26b3b6e78ab6aa7fb8f55bd0970029a165627a7a72305820","swarm_hash":"076aa8b92f090b4cf37d1a7d833b14ed002977aa325f45edcd26a1f9bfa36e3f","gas_estimates":{"creation":{"codeDepositCost":"425000","executionCost":"456","totalCost":"425456"},"external":{"deploy(address,string,string,uint64)":"infinite"}},"function_hashes":{"deploy(address,string,string,uint64)":"c5688b7c"},"abi":[{"constant":false,"inputs":[{"name":"liquidPledging","type":"address"},{"name":"name","type":"string"},{"name":"url","type":"string"},{"name":"parentProject","type":"uint64"}],"name":"deploy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]}; +let TestSimpleProjectPluginFactory = new EmbarkJS.Blockchain.Contract(TestSimpleProjectPluginFactoryJSONConfig); +export default TestSimpleProjectPluginFactory; diff --git a/abi/contracts/VaultRecoverable.js b/abi/contracts/VaultRecoverable.js new file mode 100644 index 0000000..1974e5e --- /dev/null +++ b/abi/contracts/VaultRecoverable.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let VaultRecoverableJSONConfig = {"contract_name":{"className":"VaultRecoverable","args":[],"code":"","runtimeBytecode":"","realRuntimeBytecode":"","linkReferences":{},"swarmHash":"","gasEstimates":null,"functionHashes":{"ETH()":"8322fff2","allowRecoverability(address)":"7e7db6e1","getRecoveryVault()":"32f0a3b5","transferToVault(address)":"9d4941d8"},"abiDefinition":[{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}],"filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/common/VaultRecoverable.sol","originalFilename":"contracts//Users/Barry/projects/status-im/liquid-funding/.embark/node_modules/@aragon/os/contracts/common/VaultRecoverable.sol","path":"/Users/Barry/projects/status-im/liquid-funding/contracts/.embark/node_modules/@aragon/os/contracts/common/VaultRecoverable.sol","gas":"auto","type":"file","deploy":false,"_gasLimit":6000000,"error":false},"code":"","runtime_bytecode":"","real_runtime_bytecode":"","swarm_hash":"","gas_estimates":null,"function_hashes":{"ETH()":"8322fff2","allowRecoverability(address)":"7e7db6e1","getRecoveryVault()":"32f0a3b5","transferToVault(address)":"9d4941d8"},"abi":[{"constant":true,"inputs":[],"name":"getRecoveryVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"}],"name":"allowRecoverability","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ETH","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"transferToVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]}; +let VaultRecoverable = new EmbarkJS.Blockchain.Contract(VaultRecoverableJSONConfig); +export default VaultRecoverable; diff --git a/abi/contracts/cDAI.js b/abi/contracts/cDAI.js new file mode 100644 index 0000000..9343f6f --- /dev/null +++ b/abi/contracts/cDAI.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let cDAIJSONConfig = {"contract_name":{"instanceOf":"StandardToken","address":"0xf5dce57282a584d2746faf1593d3121fcac444dc","className":"cDAI","args":[],"deploy":true,"path":"/Users/Barry/projects/status-im/liquid-funding/contracts/test/StandardToken.sol","originalFilename":"contracts/test/StandardToken.sol","filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/test/StandardToken.sol","code":"6060604052341561000f57600080fd5b60038054600160a060020a03191633600160a060020a031617905561063e806100396000396000f3006060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","runtimeBytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","realRuntimeBytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a72305820","gasEstimates":{"creation":{"codeDepositCost":"319600","executionCost":"20717","totalCost":"340317"},"external":{"allowance(address,address)":"870","approve(address,uint256)":"22330","balanceOf(address)":"705","decreaseApproval(address,uint256)":"23286","increaseApproval(address,uint256)":"22690","mint(address,uint256)":"42975","totalSupply()":"395","transfer(address,uint256)":"43332","transferFrom(address,address,uint256)":"64071"}},"functionHashes":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decreaseApproval(address,uint256)":"66188463","increaseApproval(address,uint256)":"d73dd623","mint(address,uint256)":"40c10f19","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"abiDefinition":[{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x095ea7b3"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x18160ddd"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x23b872dd"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x40c10f19"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x66188463"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x70a08231"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa9059cbb"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd73dd623"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdd62ed3e"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event","signature":"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event","signature":"0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925"}],"linkReferences":{},"gas":"auto","type":"instance","_gasLimit":6000000,"error":false,"deploymentAccount":"0xB08aaB8C9fb336eE062e7aE326924639fC927e35","realArgs":[],"deployedAddress":"0xf5dce57282a584d2746faf1593d3121fcac444dc"},"address":"0xf5dce57282a584d2746faf1593d3121fcac444dc","code":"6060604052341561000f57600080fd5b60038054600160a060020a03191633600160a060020a031617905561063e806100396000396000f3006060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","runtime_bytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","real_runtime_bytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a72305820","gas_estimates":{"creation":{"codeDepositCost":"319600","executionCost":"20717","totalCost":"340317"},"external":{"allowance(address,address)":"870","approve(address,uint256)":"22330","balanceOf(address)":"705","decreaseApproval(address,uint256)":"23286","increaseApproval(address,uint256)":"22690","mint(address,uint256)":"42975","totalSupply()":"395","transfer(address,uint256)":"43332","transferFrom(address,address,uint256)":"64071"}},"function_hashes":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decreaseApproval(address,uint256)":"66188463","increaseApproval(address,uint256)":"d73dd623","mint(address,uint256)":"40c10f19","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"abi":[{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x095ea7b3"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x18160ddd"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x23b872dd"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x40c10f19"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x66188463"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x70a08231"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa9059cbb"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd73dd623"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdd62ed3e"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event","signature":"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event","signature":"0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925"}]}; +let cDAI = new EmbarkJS.Blockchain.Contract(cDAIJSONConfig); +export default cDAI; diff --git a/abi/contracts/cETH.js b/abi/contracts/cETH.js new file mode 100644 index 0000000..dc3be01 --- /dev/null +++ b/abi/contracts/cETH.js @@ -0,0 +1,4 @@ +import EmbarkJS from '../embarkjs'; +let cETHJSONConfig = {"contract_name":{"instanceOf":"StandardToken","address":"0x4Ddc2D193948926D02f9B1fE9e1daa0718270ED5","className":"cETH","args":[],"deploy":true,"path":"/Users/Barry/projects/status-im/liquid-funding/contracts/test/StandardToken.sol","originalFilename":"contracts/test/StandardToken.sol","filename":"/Users/Barry/projects/status-im/liquid-funding/.embark/contracts/test/StandardToken.sol","code":"6060604052341561000f57600080fd5b60038054600160a060020a03191633600160a060020a031617905561063e806100396000396000f3006060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","runtimeBytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","realRuntimeBytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a72305820","gasEstimates":{"creation":{"codeDepositCost":"319600","executionCost":"20717","totalCost":"340317"},"external":{"allowance(address,address)":"870","approve(address,uint256)":"22330","balanceOf(address)":"705","decreaseApproval(address,uint256)":"23286","increaseApproval(address,uint256)":"22690","mint(address,uint256)":"42975","totalSupply()":"395","transfer(address,uint256)":"43332","transferFrom(address,address,uint256)":"64071"}},"functionHashes":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decreaseApproval(address,uint256)":"66188463","increaseApproval(address,uint256)":"d73dd623","mint(address,uint256)":"40c10f19","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"abiDefinition":[{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x095ea7b3"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x18160ddd"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x23b872dd"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x40c10f19"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x66188463"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x70a08231"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa9059cbb"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd73dd623"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdd62ed3e"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event","signature":"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event","signature":"0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925"}],"linkReferences":{},"gas":"auto","type":"instance","_gasLimit":6000000,"error":false,"deploymentAccount":"0xB08aaB8C9fb336eE062e7aE326924639fC927e35","realArgs":[],"deployedAddress":"0x4Ddc2D193948926D02f9B1fE9e1daa0718270ED5"},"address":"0x4Ddc2D193948926D02f9B1fE9e1daa0718270ED5","code":"6060604052341561000f57600080fd5b60038054600160a060020a03191633600160a060020a031617905561063e806100396000396000f3006060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","runtime_bytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a7230582035ba8552d3ed39a7130d0192233e4ae2bddbdf6145425c332f3a768f934df5780029","real_runtime_bytecode":"6060604052600436106100985763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663095ea7b3811461009d57806318160ddd146100d357806323b872dd146100f857806340c10f1914610120578063661884631461014457806370a0823114610166578063a9059cbb14610185578063d73dd623146101a7578063dd62ed3e146101c9575b600080fd5b34156100a857600080fd5b6100bf600160a060020a03600435166024356101ee565b604051901515815260200160405180910390f35b34156100de57600080fd5b6100e6610258565b60405190815260200160405180910390f35b341561010357600080fd5b6100bf600160a060020a036004358116906024351660443561025e565b341561012b57600080fd5b610142600160a060020a0360043516602435610358565b005b341561014f57600080fd5b6100bf600160a060020a03600435166024356103d1565b341561017157600080fd5b6100e6600160a060020a03600435166104b7565b341561019057600080fd5b6100bf600160a060020a03600435166024356104d2565b34156101b257600080fd5b6100bf600160a060020a036004351660243561057c565b34156101d457600080fd5b6100e6600160a060020a03600435811690602435166105e9565b600160a060020a0333811660008181526020818152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025490565b6000600160a060020a038316151561027557600080fd5b600160a060020a03841660009081526001602052604090205482111561029a57600080fd5b600160a060020a0380851660009081526020818152604080832033909416835292905220548211156102cb57600080fd5b600160a060020a038481166000818152600160209081526040808320805488900390558785168084528184208054890190558484528383528184203390961684529490915290819020805486900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461037357600080fd5b6002805482019055600160a060020a0382166000818152600160205260408082208054850190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35050565b600160a060020a033381166000908152602081815260408083209386168352929052908120548083111561042a57600160a060020a03338116600090815260208181526040808320938816835292905290812055610453565b600160a060020a0333811660009081526020818152604080832093881683529290522083820390555b600160a060020a033381166000818152602081815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b6000600160a060020a03831615156104e957600080fd5b600160a060020a03331660009081526001602052604090205482111561050e57600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a03338116600081815260208181526040808320948716808452949091528082208054860190819055919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260208181526040808320939094168252919091522054905600a165627a7a72305820","gas_estimates":{"creation":{"codeDepositCost":"319600","executionCost":"20717","totalCost":"340317"},"external":{"allowance(address,address)":"870","approve(address,uint256)":"22330","balanceOf(address)":"705","decreaseApproval(address,uint256)":"23286","increaseApproval(address,uint256)":"22690","mint(address,uint256)":"42975","totalSupply()":"395","transfer(address,uint256)":"43332","transferFrom(address,address,uint256)":"64071"}},"function_hashes":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decreaseApproval(address,uint256)":"66188463","increaseApproval(address,uint256)":"d73dd623","mint(address,uint256)":"40c10f19","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"abi":[{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x095ea7b3"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x18160ddd"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x23b872dd"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x40c10f19"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0x66188463"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0x70a08231"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xa9059cbb"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function","signature":"0xd73dd623"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function","signature":"0xdd62ed3e"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event","signature":"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event","signature":"0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925"}]}; +let cETH = new EmbarkJS.Blockchain.Contract(cETHJSONConfig); +export default cETH; diff --git a/abi/contracts/fileParser.js b/abi/contracts/fileParser.js new file mode 100644 index 0000000..8165885 --- /dev/null +++ b/abi/contracts/fileParser.js @@ -0,0 +1,22 @@ +var fs = require('fs'); + +function removeLine(textblock){ + // break the textblock into an array of lines + var lines = textblock.split('\n'); + // remove one line, starting at the first position + lines.splice(0,1); + // join the array back into a single string + var newtext = lines.join('\n'); + return newtext +} + +function printFirstLine(block){ + var lines = block.split('\n'); + console.log(lines[0]) +} + +fs.readFile('./LiquidPledging.json', 'utf8', function(err, contents) { + //let cleansed = removeLine(contents) + let parsed = JSON.parse(contents) + console.log(parsed) +}); diff --git a/abi/contracts/index.js b/abi/contracts/index.js new file mode 100644 index 0000000..b550202 --- /dev/null +++ b/abi/contracts/index.js @@ -0,0 +1,62 @@ +module.exports = { +"ERC20Basic": require('./ERC20Basic').default, +"RecoveryVault": require('./RecoveryVault').default, +"ERC20": require('./ERC20').default, +"ILiquidPledging": require('./ILiquidPledging').default, +"ILiquidPledgingPlugin": require('./ILiquidPledgingPlugin').default, +"LiquidPledgingStorage": require('./LiquidPledgingStorage').default, +"ACLOracle": require('./ACLOracle').default, +"LiquidPledgingACLHelpers": require('./LiquidPledgingACLHelpers').default, +"ACLHelpers": require('./ACLHelpers').default, +"AppProxyBase": require('./AppProxyBase').default, +"IACL": require('./IACL').default, +"ACLSyntaxSugar": require('./ACLSyntaxSugar').default, +"AppStorage": require('./AppStorage').default, +"ILPVault": require('./ILPVault').default, +"ERCProxy": require('./ERCProxy').default, +"DelegateProxy": require('./DelegateProxy').default, +"EtherTokenConstant": require('./EtherTokenConstant').default, +"Initializable": require('./Initializable').default, +"DepositableDelegateProxy": require('./DepositableDelegateProxy').default, +"IEVMScriptExecutor": require('./IEVMScriptExecutor').default, +"IVaultRecoverable": require('./IVaultRecoverable').default, +"EVMScriptRegistryConstants": require('./EVMScriptRegistryConstants').default, +"IsContract": require('./IsContract').default, +"VaultRecoverable": require('./VaultRecoverable').default, +"IKernel": require('./IKernel').default, +"IEVMScriptRegistry": require('./IEVMScriptRegistry').default, +"DelegateScriptTarget": require('./DelegateScriptTarget').default, +"LPConstants": require('./LPConstants').default, +"TestSimpleDelegatePluginFactory": require('./TestSimpleDelegatePluginFactory').default, +"EVMScriptRunner": require('./EVMScriptRunner').default, +"ScriptHelpers": require('./ScriptHelpers').default, +"CallsScript": require('./CallsScript').default, +"DelegateScript": require('./DelegateScript').default, +"DeployDelegateScript": require('./DeployDelegateScript').default, +"KernelConstants": require('./KernelConstants').default, +"KernelStorage": require('./KernelStorage').default, +"TestSimpleDelegatePlugin": require('./TestSimpleDelegatePlugin').default, +"TestSimpleProjectPlugin": require('./TestSimpleProjectPlugin').default, +"AppProxyUpgradeable": require('./AppProxyUpgradeable').default, +"SNT": require('./SNT').default, +"StandardToken": require('./StandardToken').default, +"AppProxyPinned": require('./AppProxyPinned').default, +"TestSimpleProjectPluginFactory": require('./TestSimpleProjectPluginFactory').default, +"AragonApp": require('./AragonApp').default, +"KernelProxy": require('./KernelProxy').default, +"Pledges": require('./Pledges').default, +"LiquidPledgingPlugins": require('./LiquidPledgingPlugins').default, +"EVMScriptRegistry": require('./EVMScriptRegistry').default, +"DAOFactory": require('./DAOFactory').default, +"AppProxyFactory": require('./AppProxyFactory').default, +"LPVault": require('./LPVault').default, +"ACL": require('./ACL').default, +"EVMScriptRegistryFactory": require('./EVMScriptRegistryFactory').default, +"PledgeAdmins": require('./PledgeAdmins').default, +"Kernel": require('./Kernel').default, +"LPFactory": require('./LPFactory').default, +"LiquidPledgingBase": require('./LiquidPledgingBase').default, +"LiquidPledging": require('./LiquidPledging').default, +"LiquidPledgingMock": require('./LiquidPledgingMock').default, + +}; \ No newline at end of file diff --git a/abi/embarkjs.js b/abi/embarkjs.js new file mode 100644 index 0000000..6b144c9 --- /dev/null +++ b/abi/embarkjs.js @@ -0,0 +1,100 @@ +/* eslint-disable */ + +const EmbarkJS = require("/Users/Barry/projects/status-im/liquid-funding/src/embarkArtifacts/modules/embarkjs").default || require("/Users/Barry/projects/status-im/liquid-funding/src/embarkArtifacts/modules/embarkjs"); +global.EmbarkJS = EmbarkJS; + +const Web3 = global.__Web3 || require('/Users/Barry/projects/status-im/liquid-funding/src/embarkArtifacts/modules/web3'); +global.Web3 = Web3;/*global Web3*/ +const embarkJSConnectorWeb3 = {}; + +embarkJSConnectorWeb3.init = function(config) { + global.web3 = config.web3 || global.web3; + // Check if the global web3 object uses the old web3 (0.x) + if (global.web3 && typeof global.web3.version !== 'string') { + // If so, use a new instance using 1.0, but use its provider + this.web3 = new Web3(global.web3.currentProvider); + } else { + this.web3 = global.web3 || new Web3(); + } + global.web3 = this.web3; +}; + +embarkJSConnectorWeb3.getInstance = function () { + return this.web3; +}; + +embarkJSConnectorWeb3.getAccounts = function () { + return this.web3.eth.getAccounts(...arguments); +}; + +embarkJSConnectorWeb3.getNewProvider = function (providerName, ...args) { + return new Web3.providers[providerName](...args); +}; + +embarkJSConnectorWeb3.setProvider = function (provider) { + return this.web3.setProvider(provider); +}; + +embarkJSConnectorWeb3.getCurrentProvider = function () { + return this.web3.currentProvider; +}; + +embarkJSConnectorWeb3.getDefaultAccount = function () { + return this.web3.eth.defaultAccount; +}; + +embarkJSConnectorWeb3.setDefaultAccount = function (account) { + this.web3.eth.defaultAccount = account; +}; + +embarkJSConnectorWeb3.newContract = function (options) { + return new this.web3.eth.Contract(options.abi, options.address); +}; + +embarkJSConnectorWeb3.send = function () { + return this.web3.eth.sendTransaction(...arguments); +}; + +embarkJSConnectorWeb3.toWei = function () { + return this.web3.toWei(...arguments); +}; + +embarkJSConnectorWeb3.getNetworkId = function () { + return this.web3.eth.net.getId(); +}; + +EmbarkJS.Blockchain.registerProvider('web3', embarkJSConnectorWeb3); +EmbarkJS.Blockchain.setProvider('web3', {}); +if (!global.__Web3) { + const web3ConnectionConfig = require('/Users/Barry/projects/status-im/liquid-funding/src/embarkArtifacts/config/blockchain.json'); + EmbarkJS.Blockchain.connect(web3ConnectionConfig, (err) => {if (err) { console.error(err); } }); +} +var whenEnvIsLoaded = function(cb) { + if (typeof document !== 'undefined' && document !== null && !/comp|inter|loaded/.test(document.readyState)) { + document.addEventListener('DOMContentLoaded', cb); + } else { + cb(); + } +} + +var whenEnvIsLoaded = function(cb) { + if (typeof document !== 'undefined' && document !== null && !/comp|inter|loaded/.test(document.readyState)) { + document.addEventListener('DOMContentLoaded', cb); + } else { + cb(); + } +} + +var whenEnvIsLoaded = function(cb) { + if (typeof document !== 'undefined' && document !== null && !/comp|inter|loaded/.test(document.readyState)) { + document.addEventListener('DOMContentLoaded', cb); + } else { + cb(); + } +} + +export default EmbarkJS; +if (typeof module !== 'undefined' && module.exports) { + module.exports = EmbarkJS; +} +/* eslint-enable */ \ No newline at end of file diff --git a/abi/embarkjs.node.js b/abi/embarkjs.node.js new file mode 100644 index 0000000..e323f17 --- /dev/null +++ b/abi/embarkjs.node.js @@ -0,0 +1,120 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; + +/* eslint-disable */ +const EmbarkJS = require("/Users/Barry/projects/status-im/liquid-funding/src/embarkArtifacts/modules/embarkjs").default || require("/Users/Barry/projects/status-im/liquid-funding/src/embarkArtifacts/modules/embarkjs"); + +global.EmbarkJS = EmbarkJS; + +const Web3 = global.__Web3 || require('/Users/Barry/projects/status-im/liquid-funding/src/embarkArtifacts/modules/web3'); + +global.Web3 = Web3; +/*global Web3*/ + +const embarkJSConnectorWeb3 = {}; + +embarkJSConnectorWeb3.init = function (config) { + global.web3 = config.web3 || global.web3; // Check if the global web3 object uses the old web3 (0.x) + + if (global.web3 && typeof global.web3.version !== 'string') { + // If so, use a new instance using 1.0, but use its provider + this.web3 = new Web3(global.web3.currentProvider); + } else { + this.web3 = global.web3 || new Web3(); + } + + global.web3 = this.web3; +}; + +embarkJSConnectorWeb3.getInstance = function () { + return this.web3; +}; + +embarkJSConnectorWeb3.getAccounts = function () { + return this.web3.eth.getAccounts(...arguments); +}; + +embarkJSConnectorWeb3.getNewProvider = function (providerName, ...args) { + return new Web3.providers[providerName](...args); +}; + +embarkJSConnectorWeb3.setProvider = function (provider) { + return this.web3.setProvider(provider); +}; + +embarkJSConnectorWeb3.getCurrentProvider = function () { + return this.web3.currentProvider; +}; + +embarkJSConnectorWeb3.getDefaultAccount = function () { + return this.web3.eth.defaultAccount; +}; + +embarkJSConnectorWeb3.setDefaultAccount = function (account) { + this.web3.eth.defaultAccount = account; +}; + +embarkJSConnectorWeb3.newContract = function (options) { + return new this.web3.eth.Contract(options.abi, options.address); +}; + +embarkJSConnectorWeb3.send = function () { + return this.web3.eth.sendTransaction(...arguments); +}; + +embarkJSConnectorWeb3.toWei = function () { + return this.web3.toWei(...arguments); +}; + +embarkJSConnectorWeb3.getNetworkId = function () { + return this.web3.eth.net.getId(); +}; + +EmbarkJS.Blockchain.registerProvider('web3', embarkJSConnectorWeb3); +EmbarkJS.Blockchain.setProvider('web3', {}); + +if (!global.__Web3) { + const web3ConnectionConfig = require('/Users/Barry/projects/status-im/liquid-funding/src/embarkArtifacts/config/blockchain.json'); + + EmbarkJS.Blockchain.connect(web3ConnectionConfig, err => { + if (err) { + console.error(err); + } + }); +} + +var whenEnvIsLoaded = function (cb) { + if (typeof document !== 'undefined' && document !== null && !/comp|inter|loaded/.test(document.readyState)) { + document.addEventListener('DOMContentLoaded', cb); + } else { + cb(); + } +}; + +var whenEnvIsLoaded = function (cb) { + if (typeof document !== 'undefined' && document !== null && !/comp|inter|loaded/.test(document.readyState)) { + document.addEventListener('DOMContentLoaded', cb); + } else { + cb(); + } +}; + +var whenEnvIsLoaded = function (cb) { + if (typeof document !== 'undefined' && document !== null && !/comp|inter|loaded/.test(document.readyState)) { + document.addEventListener('DOMContentLoaded', cb); + } else { + cb(); + } +}; + +var _default = EmbarkJS; +exports.default = _default; + +if (typeof module !== 'undefined' && module.exports) { + module.exports = EmbarkJS; +} +/* eslint-enable */ \ No newline at end of file diff --git a/abi/modules/embarkjs b/abi/modules/embarkjs new file mode 120000 index 0000000..c78f51b --- /dev/null +++ b/abi/modules/embarkjs @@ -0,0 +1 @@ +/Users/Barry/projects/status-im/liquid-funding/node_modules/embarkjs/dist/node \ No newline at end of file diff --git a/abi/modules/web3 b/abi/modules/web3 new file mode 120000 index 0000000..415c3f6 --- /dev/null +++ b/abi/modules/web3 @@ -0,0 +1 @@ +/Users/Barry/projects/status-im/liquid-funding/node_modules/embark/node_modules/web3/src \ No newline at end of file diff --git a/subgraph/abis/Contract.json b/subgraph/abis/Contract.json new file mode 100644 index 0000000..0256fa2 --- /dev/null +++ b/subgraph/abis/Contract.json @@ -0,0 +1,686 @@ +[ + { + "constant": false, + "inputs": [ + { "name": "idReceiver", "type": "uint64" }, + { "name": "donorAddress", "type": "address" }, + { "name": "token", "type": "address" }, + { "name": "amount", "type": "uint256" } + ], + "name": "addGiverAndDonate", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x007611c6" + }, + { + "constant": true, + "inputs": [], + "name": "APP_ADDR_NAMESPACE", + "outputs": [{ "name": "", "type": "bytes32" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x178e6079" + }, + { + "constant": true, + "inputs": [], + "name": "whitelistDisabled", + "outputs": [{ "name": "", "type": "bool" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x1c8e8568" + }, + { + "constant": true, + "inputs": [{ "name": "projectId", "type": "uint64" }], + "name": "isProjectCanceled", + "outputs": [{ "name": "", "type": "bool" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x2101a6ad" + }, + { + "constant": true, + "inputs": [], + "name": "PLUGIN_MANAGER_ROLE", + "outputs": [{ "name": "", "type": "bytes32" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x24fea3b0" + }, + { + "constant": true, + "inputs": [], + "name": "numberOfPledges", + "outputs": [{ "name": "", "type": "uint256" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x2a8ec8cc" + }, + { + "constant": false, + "inputs": [ + { "name": "idPledge", "type": "uint64" }, + { "name": "amount", "type": "uint256" } + ], + "name": "confirmPayment", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x2ee88808" + }, + { + "constant": true, + "inputs": [ + { "name": "idPledge", "type": "uint64" }, + { "name": "idxDelegate", "type": "uint64" } + ], + "name": "getPledgeDelegate", + "outputs": [ + { "name": "idDelegate", "type": "uint64" }, + { "name": "addr", "type": "address" }, + { "name": "name", "type": "string" } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x2f6b64ca" + }, + { + "constant": false, + "inputs": [{ "name": "contractHashes", "type": "bytes32[]" }], + "name": "addValidPluginContracts", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x32ce8ebc" + }, + { + "constant": true, + "inputs": [], + "name": "getRecoveryVault", + "outputs": [{ "name": "", "type": "address" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x32f0a3b5" + }, + { + "constant": false, + "inputs": [{ "name": "useWhitelist", "type": "bool" }], + "name": "useWhitelist", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x38740291" + }, + { + "constant": true, + "inputs": [{ "name": "idPledge", "type": "uint64" }], + "name": "getPledge", + "outputs": [ + { "name": "amount", "type": "uint256" }, + { "name": "owner", "type": "uint64" }, + { "name": "nDelegates", "type": "uint64" }, + { "name": "intendedProject", "type": "uint64" }, + { "name": "commitTime", "type": "uint64" }, + { "name": "oldPledge", "type": "uint64" }, + { "name": "token", "type": "address" }, + { "name": "pledgeState", "type": "uint8" } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x3f657a46" + }, + { + "constant": false, + "inputs": [ + { "name": "idPledge", "type": "uint64" }, + { "name": "amount", "type": "uint256" } + ], + "name": "withdraw", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x43387983" + }, + { + "constant": false, + "inputs": [ + { "name": "idSender", "type": "uint64" }, + { "name": "idPledge", "type": "uint64" }, + { "name": "amount", "type": "uint256" }, + { "name": "idReceiver", "type": "uint64" } + ], + "name": "transfer", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x47c5ef43" + }, + { + "constant": false, + "inputs": [ + { "name": "idGiver", "type": "uint64" }, + { "name": "idReceiver", "type": "uint64" }, + { "name": "token", "type": "address" }, + { "name": "amount", "type": "uint256" } + ], + "name": "donate", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x4c4316c7" + }, + { + "constant": true, + "inputs": [{ "name": "addr", "type": "address" }], + "name": "isValidPlugin", + "outputs": [{ "name": "", "type": "bool" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x4eafbcd5" + }, + { + "constant": false, + "inputs": [{ "name": "idPledge", "type": "uint64" }], + "name": "normalizePledge", + "outputs": [{ "name": "", "type": "uint64" }], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x50f8a803" + }, + { + "constant": false, + "inputs": [ + { "name": "name", "type": "string" }, + { "name": "url", "type": "string" }, + { "name": "commitTime", "type": "uint64" }, + { "name": "plugin", "type": "address" } + ], + "name": "addDelegate", + "outputs": [{ "name": "idDelegate", "type": "uint64" }], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x52dc7dcc" + }, + { + "constant": true, + "inputs": [], + "name": "numberOfPledgeAdmins", + "outputs": [{ "name": "", "type": "uint256" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x5503d9ba" + }, + { + "constant": false, + "inputs": [{ "name": "pledgesAmounts", "type": "uint256[]" }], + "name": "mWithdraw", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x57adafb6" + }, + { + "constant": true, + "inputs": [], + "name": "EVMSCRIPT_REGISTRY_APP_ID", + "outputs": [{ "name": "", "type": "bytes32" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x60b1e057" + }, + { + "constant": false, + "inputs": [{ "name": "addr", "type": "address" }], + "name": "removeValidPluginInstance", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x6293c702" + }, + { + "constant": false, + "inputs": [ + { "name": "idReceiver", "type": "uint64" }, + { "name": "token", "type": "address" }, + { "name": "amount", "type": "uint256" } + ], + "name": "addGiverAndDonate", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x6ba3cc87" + }, + { + "constant": false, + "inputs": [ + { "name": "addr", "type": "address" }, + { "name": "name", "type": "string" }, + { "name": "url", "type": "string" }, + { "name": "commitTime", "type": "uint64" }, + { "name": "plugin", "type": "address" } + ], + "name": "addGiver", + "outputs": [{ "name": "idGiver", "type": "uint64" }], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x6e802c6a" + }, + { + "constant": false, + "inputs": [ + { "name": "name", "type": "string" }, + { "name": "url", "type": "string" }, + { "name": "projectAdmin", "type": "address" }, + { "name": "parentProject", "type": "uint64" }, + { "name": "commitTime", "type": "uint64" }, + { "name": "plugin", "type": "address" } + ], + "name": "addProject", + "outputs": [{ "name": "idProject", "type": "uint64" }], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x72116e92" + }, + { + "constant": false, + "inputs": [{ "name": "idProject", "type": "uint64" }], + "name": "cancelProject", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x796d5654" + }, + { + "constant": false, + "inputs": [{ "name": "addr", "type": "address" }], + "name": "addValidPluginInstance", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x79f4542e" + }, + { + "constant": true, + "inputs": [{ "name": "token", "type": "address" }], + "name": "allowRecoverability", + "outputs": [{ "name": "", "type": "bool" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x7e7db6e1" + }, + { + "constant": false, + "inputs": [ + { "name": "name", "type": "string" }, + { "name": "url", "type": "string" }, + { "name": "commitTime", "type": "uint64" }, + { "name": "plugin", "type": "address" } + ], + "name": "addGiver", + "outputs": [{ "name": "idGiver", "type": "uint64" }], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x7f61fa93" + }, + { + "constant": true, + "inputs": [], + "name": "appId", + "outputs": [{ "name": "", "type": "bytes32" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x80afdea8" + }, + { + "constant": true, + "inputs": [{ "name": "addr", "type": "address" }], + "name": "getCodeHash", + "outputs": [{ "name": "", "type": "bytes32" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x81ea4408" + }, + { + "constant": true, + "inputs": [], + "name": "ETH", + "outputs": [{ "name": "", "type": "address" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x8322fff2" + }, + { + "constant": true, + "inputs": [], + "name": "getInitializationBlock", + "outputs": [{ "name": "", "type": "uint256" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x8b3dd749" + }, + { + "constant": true, + "inputs": [], + "name": "EVMSCRIPT_REGISTRY_APP", + "outputs": [{ "name": "", "type": "bytes32" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x9b3fdf4c" + }, + { + "constant": false, + "inputs": [{ "name": "_token", "type": "address" }], + "name": "transferToVault", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x9d4941d8" + }, + { + "constant": true, + "inputs": [ + { "name": "_sender", "type": "address" }, + { "name": "_role", "type": "bytes32" }, + { "name": "params", "type": "uint256[]" } + ], + "name": "canPerform", + "outputs": [{ "name": "", "type": "bool" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0xa1658fad" + }, + { + "constant": false, + "inputs": [ + { "name": "idPledge", "type": "uint64" }, + { "name": "amount", "type": "uint256" } + ], + "name": "cancelPledge", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xaf9f4563" + }, + { + "constant": false, + "inputs": [{ "name": "contractHash", "type": "bytes32" }], + "name": "removeValidPluginContract", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xb12b5f76" + }, + { + "constant": false, + "inputs": [{ "name": "_vault", "type": "address" }], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xc4d66de8" + }, + { + "constant": false, + "inputs": [{ "name": "contractHash", "type": "bytes32" }], + "name": "addValidPluginContract", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xc8ae070f" + }, + { + "constant": false, + "inputs": [ + { "name": "idDelegate", "type": "uint64" }, + { "name": "newAddr", "type": "address" }, + { "name": "newName", "type": "string" }, + { "name": "newUrl", "type": "string" }, + { "name": "newCommitTime", "type": "uint64" } + ], + "name": "updateDelegate", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xcc19ecf7" + }, + { + "constant": false, + "inputs": [{ "name": "pledges", "type": "uint64[]" }], + "name": "mNormalizePledge", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xce17273c" + }, + { + "constant": true, + "inputs": [], + "name": "kernel", + "outputs": [{ "name": "", "type": "address" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0xd4aae0c4" + }, + { + "constant": false, + "inputs": [ + { "name": "idSender", "type": "uint64" }, + { "name": "pledgesAmounts", "type": "uint256[]" }, + { "name": "idReceiver", "type": "uint64" } + ], + "name": "mTransfer", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xd639cd73" + }, + { + "constant": false, + "inputs": [ + { "name": "idGiver", "type": "uint64" }, + { "name": "newAddr", "type": "address" }, + { "name": "newName", "type": "string" }, + { "name": "newUrl", "type": "string" }, + { "name": "newCommitTime", "type": "uint64" } + ], + "name": "updateGiver", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xdb7c2314" + }, + { + "constant": false, + "inputs": [ + { "name": "idPledge", "type": "uint64" }, + { "name": "amount", "type": "uint256" } + ], + "name": "cancelPayment", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xe9c211e2" + }, + { + "constant": true, + "inputs": [{ "name": "idAdmin", "type": "uint64" }], + "name": "getPledgeAdmin", + "outputs": [ + { "name": "adminType", "type": "uint8" }, + { "name": "addr", "type": "address" }, + { "name": "name", "type": "string" }, + { "name": "url", "type": "string" }, + { "name": "commitTime", "type": "uint64" }, + { "name": "parentProject", "type": "uint64" }, + { "name": "canceled", "type": "bool" }, + { "name": "plugin", "type": "address" } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0xeba8ba06" + }, + { + "constant": false, + "inputs": [ + { "name": "idProject", "type": "uint64" }, + { "name": "newAddr", "type": "address" }, + { "name": "newName", "type": "string" }, + { "name": "newUrl", "type": "string" }, + { "name": "newCommitTime", "type": "uint64" } + ], + "name": "updateProject", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xf6b24b1c" + }, + { + "constant": true, + "inputs": [{ "name": "_script", "type": "bytes" }], + "name": "getExecutor", + "outputs": [{ "name": "", "type": "address" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0xf92a79ff" + }, + { + "constant": true, + "inputs": [], + "name": "vault", + "outputs": [{ "name": "", "type": "address" }], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0xfbfa77cf" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "name": "from", "type": "uint256" }, + { "indexed": true, "name": "to", "type": "uint256" }, + { "indexed": false, "name": "amount", "type": "uint256" } + ], + "name": "Transfer", + "type": "event", + "signature": "0xaf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f6" + }, + { + "anonymous": false, + "inputs": [{ "indexed": true, "name": "idProject", "type": "uint256" }], + "name": "CancelProject", + "type": "event", + "signature": "0x74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d346" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "name": "idGiver", "type": "uint64" }, + { "indexed": true, "name": "addr", "type": "address" }, + { "indexed": false, "name": "url", "type": "string" } + ], + "name": "GiverAdded", + "type": "event", + "signature": "0xf5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a3" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "name": "idGiver", "type": "uint64" }, + { "indexed": false, "name": "url", "type": "string" } + ], + "name": "GiverUpdated", + "type": "event", + "signature": "0x4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "name": "idDelegate", "type": "uint64" }, + { "indexed": false, "name": "url", "type": "string" } + ], + "name": "DelegateAdded", + "type": "event", + "signature": "0xd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "name": "idDelegate", "type": "uint64" }, + { "indexed": false, "name": "url", "type": "string" } + ], + "name": "DelegateUpdated", + "type": "event", + "signature": "0x6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "name": "idProject", "type": "uint64" }, + { "indexed": false, "name": "url", "type": "string" } + ], + "name": "ProjectAdded", + "type": "event", + "signature": "0x9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "name": "idProject", "type": "uint64" }, + { "indexed": false, "name": "url", "type": "string" } + ], + "name": "ProjectUpdated", + "type": "event", + "signature": "0xab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c58707" + } +] diff --git a/subgraph/build/Contract/Contract.wasm b/subgraph/build/Contract/Contract.wasm new file mode 100644 index 0000000000000000000000000000000000000000..42c41491850ffff279f33f98887264835a57a6dd GIT binary patch literal 5694 zcmeHKOK%*<5w7l@*&V7Wsx8vi%9QNck!(?NOeR6>z!nm*Em2Q1$w5hu){-1iTrPLX z-6bO-MyNv&I5(a12a=0{Acw%mTmtB5AQv5V$iY9sfPpAqRnP3hB4rw_542RpfST$I>iC)2q$UQC=?>LW~Bv*JX<}b)hL{W?)t+%@D-UZ8VT4BKMeX z)0>@4r_{^m(Q)I$Vu~hT{{m=xsWy>|oR;_437eMjFD@6OZxS*amoAD~Fg?H??HF%&d8v zu-crCesUBsqY3#@ekpg1SuaM80g_kEx}MY)z_C-`RlQ>Er@k^~PiOOyl?5YGg8Cn+GYgcXaLa2bKfK@y{%4EvKT zpDggn28nW0GHIC7ws#4&Y%)uC~yVH^SM3vyfdpDuBm0zr*& zCu6v)1p4j)H=2qsT&n-;%CW{g zmj})N5_gQdJn;S-xY>VsV18TwZ1c54)c!*c??arZxa68CEoTN-qQSYyUA4?tD)JE* z+;P4gQ*{Fa%2#)g^VJ>Pq}Z9U$Wq7mSYAvweYppvq`SE!$0 z$#p=cZwg^j8lxFX<2e*bTpBa4G3NS^qm#M{=v@_Y;>6-26Y}ZQNI4}vfxPJ^pq6Sb z#_=(PSMd7d!fWt^bBgRoC?pt1go*VW|S^om90gOU=Jp|e2p ziE@(}kn_C>rBAu`Q|<&RpBr2tMPNYc%82VqE+Z$4k}{YOzi_+r3q|8tJ&GD#2JLsm zHEPBX*dyh??=OYGKnG6?3YsAJeSBvv^R$>G<+qI zW4d7%b%n3(vZ6f!ZxUd2EI`Y}qW@eW)Kl(+y#g(>sIdS7C_GJXOKgVoD$z712tyU&AQXPjTP3_z2;u`3M0my#=xJE z5iZ3vbGimad>=%v&MObu-$rF>Oy=IOzm$N&cM85qrOY&b-&xSUiT=uugG?Lt&K1xJObe|fu zMcdS(9KAO6X#@Wca7+Y^-$1fKE3^Q;E`A%3%|oNd-~aaFDL5IbY>0y#YHcXC#*9{I zm+s=1rGZMuj5u9$XY9u9CQds|ppfV(yT z=3ur6^QpGC&cfvq6z)mbbK7RCw+oLw=v;=sZT4$y64(EwpuofUtfjQp8&}(BnKBg@HACTnTH`26rv|`X?3p i`V{aCcgwhiY^jG;`@IumO3!bp1I#|Few$1mGyFG$u2CBR literal 0 HcmV?d00001 diff --git a/subgraph/build/Contract/abis/Contract.json b/subgraph/build/Contract/abis/Contract.json new file mode 100644 index 0000000..05dd223 --- /dev/null +++ b/subgraph/build/Contract/abis/Contract.json @@ -0,0 +1,1223 @@ +[ + { + "constant": false, + "inputs": [ + { + "name": "idReceiver", + "type": "uint64" + }, + { + "name": "donorAddress", + "type": "address" + }, + { + "name": "token", + "type": "address" + }, + { + "name": "amount", + "type": "uint256" + } + ], + "name": "addGiverAndDonate", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x007611c6" + }, + { + "constant": true, + "inputs": [], + "name": "APP_ADDR_NAMESPACE", + "outputs": [ + { + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x178e6079" + }, + { + "constant": true, + "inputs": [], + "name": "whitelistDisabled", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x1c8e8568" + }, + { + "constant": true, + "inputs": [ + { + "name": "projectId", + "type": "uint64" + } + ], + "name": "isProjectCanceled", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x2101a6ad" + }, + { + "constant": true, + "inputs": [], + "name": "PLUGIN_MANAGER_ROLE", + "outputs": [ + { + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x24fea3b0" + }, + { + "constant": true, + "inputs": [], + "name": "numberOfPledges", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x2a8ec8cc" + }, + { + "constant": false, + "inputs": [ + { + "name": "idPledge", + "type": "uint64" + }, + { + "name": "amount", + "type": "uint256" + } + ], + "name": "confirmPayment", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x2ee88808" + }, + { + "constant": true, + "inputs": [ + { + "name": "idPledge", + "type": "uint64" + }, + { + "name": "idxDelegate", + "type": "uint64" + } + ], + "name": "getPledgeDelegate", + "outputs": [ + { + "name": "idDelegate", + "type": "uint64" + }, + { + "name": "addr", + "type": "address" + }, + { + "name": "name", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x2f6b64ca" + }, + { + "constant": false, + "inputs": [ + { + "name": "contractHashes", + "type": "bytes32[]" + } + ], + "name": "addValidPluginContracts", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x32ce8ebc" + }, + { + "constant": true, + "inputs": [], + "name": "getRecoveryVault", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x32f0a3b5" + }, + { + "constant": false, + "inputs": [ + { + "name": "useWhitelist", + "type": "bool" + } + ], + "name": "useWhitelist", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x38740291" + }, + { + "constant": true, + "inputs": [ + { + "name": "idPledge", + "type": "uint64" + } + ], + "name": "getPledge", + "outputs": [ + { + "name": "amount", + "type": "uint256" + }, + { + "name": "owner", + "type": "uint64" + }, + { + "name": "nDelegates", + "type": "uint64" + }, + { + "name": "intendedProject", + "type": "uint64" + }, + { + "name": "commitTime", + "type": "uint64" + }, + { + "name": "oldPledge", + "type": "uint64" + }, + { + "name": "token", + "type": "address" + }, + { + "name": "pledgeState", + "type": "uint8" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x3f657a46" + }, + { + "constant": false, + "inputs": [ + { + "name": "idPledge", + "type": "uint64" + }, + { + "name": "amount", + "type": "uint256" + } + ], + "name": "withdraw", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x43387983" + }, + { + "constant": false, + "inputs": [ + { + "name": "idSender", + "type": "uint64" + }, + { + "name": "idPledge", + "type": "uint64" + }, + { + "name": "amount", + "type": "uint256" + }, + { + "name": "idReceiver", + "type": "uint64" + } + ], + "name": "transfer", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x47c5ef43" + }, + { + "constant": false, + "inputs": [ + { + "name": "idGiver", + "type": "uint64" + }, + { + "name": "idReceiver", + "type": "uint64" + }, + { + "name": "token", + "type": "address" + }, + { + "name": "amount", + "type": "uint256" + } + ], + "name": "donate", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x4c4316c7" + }, + { + "constant": true, + "inputs": [ + { + "name": "addr", + "type": "address" + } + ], + "name": "isValidPlugin", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x4eafbcd5" + }, + { + "constant": false, + "inputs": [ + { + "name": "idPledge", + "type": "uint64" + } + ], + "name": "normalizePledge", + "outputs": [ + { + "name": "", + "type": "uint64" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x50f8a803" + }, + { + "constant": false, + "inputs": [ + { + "name": "name", + "type": "string" + }, + { + "name": "url", + "type": "string" + }, + { + "name": "commitTime", + "type": "uint64" + }, + { + "name": "plugin", + "type": "address" + } + ], + "name": "addDelegate", + "outputs": [ + { + "name": "idDelegate", + "type": "uint64" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x52dc7dcc" + }, + { + "constant": true, + "inputs": [], + "name": "numberOfPledgeAdmins", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x5503d9ba" + }, + { + "constant": false, + "inputs": [ + { + "name": "pledgesAmounts", + "type": "uint256[]" + } + ], + "name": "mWithdraw", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x57adafb6" + }, + { + "constant": true, + "inputs": [], + "name": "EVMSCRIPT_REGISTRY_APP_ID", + "outputs": [ + { + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x60b1e057" + }, + { + "constant": false, + "inputs": [ + { + "name": "addr", + "type": "address" + } + ], + "name": "removeValidPluginInstance", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x6293c702" + }, + { + "constant": false, + "inputs": [ + { + "name": "idReceiver", + "type": "uint64" + }, + { + "name": "token", + "type": "address" + }, + { + "name": "amount", + "type": "uint256" + } + ], + "name": "addGiverAndDonate", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x6ba3cc87" + }, + { + "constant": false, + "inputs": [ + { + "name": "addr", + "type": "address" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "url", + "type": "string" + }, + { + "name": "commitTime", + "type": "uint64" + }, + { + "name": "plugin", + "type": "address" + } + ], + "name": "addGiver", + "outputs": [ + { + "name": "idGiver", + "type": "uint64" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x6e802c6a" + }, + { + "constant": false, + "inputs": [ + { + "name": "name", + "type": "string" + }, + { + "name": "url", + "type": "string" + }, + { + "name": "projectAdmin", + "type": "address" + }, + { + "name": "parentProject", + "type": "uint64" + }, + { + "name": "commitTime", + "type": "uint64" + }, + { + "name": "plugin", + "type": "address" + } + ], + "name": "addProject", + "outputs": [ + { + "name": "idProject", + "type": "uint64" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x72116e92" + }, + { + "constant": false, + "inputs": [ + { + "name": "idProject", + "type": "uint64" + } + ], + "name": "cancelProject", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x796d5654" + }, + { + "constant": false, + "inputs": [ + { + "name": "addr", + "type": "address" + } + ], + "name": "addValidPluginInstance", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x79f4542e" + }, + { + "constant": true, + "inputs": [ + { + "name": "token", + "type": "address" + } + ], + "name": "allowRecoverability", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x7e7db6e1" + }, + { + "constant": false, + "inputs": [ + { + "name": "name", + "type": "string" + }, + { + "name": "url", + "type": "string" + }, + { + "name": "commitTime", + "type": "uint64" + }, + { + "name": "plugin", + "type": "address" + } + ], + "name": "addGiver", + "outputs": [ + { + "name": "idGiver", + "type": "uint64" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x7f61fa93" + }, + { + "constant": true, + "inputs": [], + "name": "appId", + "outputs": [ + { + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x80afdea8" + }, + { + "constant": true, + "inputs": [ + { + "name": "addr", + "type": "address" + } + ], + "name": "getCodeHash", + "outputs": [ + { + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x81ea4408" + }, + { + "constant": true, + "inputs": [], + "name": "ETH", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x8322fff2" + }, + { + "constant": true, + "inputs": [], + "name": "getInitializationBlock", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x8b3dd749" + }, + { + "constant": true, + "inputs": [], + "name": "EVMSCRIPT_REGISTRY_APP", + "outputs": [ + { + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0x9b3fdf4c" + }, + { + "constant": false, + "inputs": [ + { + "name": "_token", + "type": "address" + } + ], + "name": "transferToVault", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0x9d4941d8" + }, + { + "constant": true, + "inputs": [ + { + "name": "_sender", + "type": "address" + }, + { + "name": "_role", + "type": "bytes32" + }, + { + "name": "params", + "type": "uint256[]" + } + ], + "name": "canPerform", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0xa1658fad" + }, + { + "constant": false, + "inputs": [ + { + "name": "idPledge", + "type": "uint64" + }, + { + "name": "amount", + "type": "uint256" + } + ], + "name": "cancelPledge", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xaf9f4563" + }, + { + "constant": false, + "inputs": [ + { + "name": "contractHash", + "type": "bytes32" + } + ], + "name": "removeValidPluginContract", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xb12b5f76" + }, + { + "constant": false, + "inputs": [ + { + "name": "_vault", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xc4d66de8" + }, + { + "constant": false, + "inputs": [ + { + "name": "contractHash", + "type": "bytes32" + } + ], + "name": "addValidPluginContract", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xc8ae070f" + }, + { + "constant": false, + "inputs": [ + { + "name": "idDelegate", + "type": "uint64" + }, + { + "name": "newAddr", + "type": "address" + }, + { + "name": "newName", + "type": "string" + }, + { + "name": "newUrl", + "type": "string" + }, + { + "name": "newCommitTime", + "type": "uint64" + } + ], + "name": "updateDelegate", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xcc19ecf7" + }, + { + "constant": false, + "inputs": [ + { + "name": "pledges", + "type": "uint64[]" + } + ], + "name": "mNormalizePledge", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xce17273c" + }, + { + "constant": true, + "inputs": [], + "name": "kernel", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0xd4aae0c4" + }, + { + "constant": false, + "inputs": [ + { + "name": "idSender", + "type": "uint64" + }, + { + "name": "pledgesAmounts", + "type": "uint256[]" + }, + { + "name": "idReceiver", + "type": "uint64" + } + ], + "name": "mTransfer", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xd639cd73" + }, + { + "constant": false, + "inputs": [ + { + "name": "idGiver", + "type": "uint64" + }, + { + "name": "newAddr", + "type": "address" + }, + { + "name": "newName", + "type": "string" + }, + { + "name": "newUrl", + "type": "string" + }, + { + "name": "newCommitTime", + "type": "uint64" + } + ], + "name": "updateGiver", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xdb7c2314" + }, + { + "constant": false, + "inputs": [ + { + "name": "idPledge", + "type": "uint64" + }, + { + "name": "amount", + "type": "uint256" + } + ], + "name": "cancelPayment", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xe9c211e2" + }, + { + "constant": true, + "inputs": [ + { + "name": "idAdmin", + "type": "uint64" + } + ], + "name": "getPledgeAdmin", + "outputs": [ + { + "name": "adminType", + "type": "uint8" + }, + { + "name": "addr", + "type": "address" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "url", + "type": "string" + }, + { + "name": "commitTime", + "type": "uint64" + }, + { + "name": "parentProject", + "type": "uint64" + }, + { + "name": "canceled", + "type": "bool" + }, + { + "name": "plugin", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0xeba8ba06" + }, + { + "constant": false, + "inputs": [ + { + "name": "idProject", + "type": "uint64" + }, + { + "name": "newAddr", + "type": "address" + }, + { + "name": "newName", + "type": "string" + }, + { + "name": "newUrl", + "type": "string" + }, + { + "name": "newCommitTime", + "type": "uint64" + } + ], + "name": "updateProject", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function", + "signature": "0xf6b24b1c" + }, + { + "constant": true, + "inputs": [ + { + "name": "_script", + "type": "bytes" + } + ], + "name": "getExecutor", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0xf92a79ff" + }, + { + "constant": true, + "inputs": [], + "name": "vault", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function", + "signature": "0xfbfa77cf" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "from", + "type": "uint256" + }, + { + "indexed": true, + "name": "to", + "type": "uint256" + }, + { + "indexed": false, + "name": "amount", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event", + "signature": "0xaf6151f5085accf2d57e1e7bf7601d3b3982e0de7e9a90f032f8554de9c104f6" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "idProject", + "type": "uint256" + } + ], + "name": "CancelProject", + "type": "event", + "signature": "0x74acb192d39829b88a66ad5363afa9120c5a306a458287a870351ae34a04d346" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "idGiver", + "type": "uint64" + }, + { + "indexed": true, + "name": "addr", + "type": "address" + }, + { + "indexed": false, + "name": "url", + "type": "string" + } + ], + "name": "GiverAdded", + "type": "event", + "signature": "0xf5abb7d99fe692941bfd32625b4a8d7342036635d1fbb0e2a75754b8266c61a3" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "idGiver", + "type": "uint64" + }, + { + "indexed": false, + "name": "url", + "type": "string" + } + ], + "name": "GiverUpdated", + "type": "event", + "signature": "0x4b2f87168338ea08f27c7f7b2dfe4e61feb620ffe9a6a6a18afeaf94546075bf" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "idDelegate", + "type": "uint64" + }, + { + "indexed": false, + "name": "url", + "type": "string" + } + ], + "name": "DelegateAdded", + "type": "event", + "signature": "0xd921f0ff8d5f67ca22b52c5b4be3463a8cabd9d95c28a02dd7c86f9deb3329be" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "idDelegate", + "type": "uint64" + }, + { + "indexed": false, + "name": "url", + "type": "string" + } + ], + "name": "DelegateUpdated", + "type": "event", + "signature": "0x6586deed9fa035704e9886588d904801e7e86d1ebd926905fa03a0018531b2fd" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "idProject", + "type": "uint64" + }, + { + "indexed": false, + "name": "url", + "type": "string" + } + ], + "name": "ProjectAdded", + "type": "event", + "signature": "0x9958fc92731727637b02f1ac1e6caf2814442c27e1d962f0c477cd14280f586d" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "idProject", + "type": "uint64" + }, + { + "indexed": false, + "name": "url", + "type": "string" + } + ], + "name": "ProjectUpdated", + "type": "event", + "signature": "0xab039fa652845d2aa9439ffe6f2130ee7203ed63f29b71bed5b3b74f27c58707" + } +] \ No newline at end of file diff --git a/subgraph/build/schema.graphql b/subgraph/build/schema.graphql new file mode 100644 index 0000000..c92aa5d --- /dev/null +++ b/subgraph/build/schema.graphql @@ -0,0 +1,6 @@ +type ExampleEntity @entity { + id: ID! + count: BigInt! + from: BigInt! # uint256 + to: BigInt! # uint256 +} diff --git a/subgraph/build/subgraph.yaml b/subgraph/build/subgraph.yaml new file mode 100644 index 0000000..405857e --- /dev/null +++ b/subgraph/build/subgraph.yaml @@ -0,0 +1,44 @@ +specVersion: 0.0.1 +schema: + file: schema.graphql +dataSources: + - kind: ethereum/contract + name: Contract + network: rinkeby + source: + address: "0x07E92635AF5e524C20B20F2770aE0E0Ef597eD07" + abi: Contract + mapping: + kind: ethereum/events + apiVersion: 0.0.3 + language: wasm/assemblyscript + entities: + - Transfer + - CancelProject + - GiverAdded + - GiverUpdated + - DelegateAdded + - DelegateUpdated + - ProjectAdded + - ProjectUpdated + abis: + - name: Contract + file: Contract/abis/Contract.json + eventHandlers: + - event: Transfer(indexed uint256,indexed uint256,uint256) + handler: handleTransfer + - event: CancelProject(indexed uint256) + handler: handleCancelProject + - event: GiverAdded(indexed uint64,indexed address,string) + handler: handleGiverAdded + - event: GiverUpdated(indexed uint64,string) + handler: handleGiverUpdated + - event: DelegateAdded(indexed uint64,string) + handler: handleDelegateAdded + - event: DelegateUpdated(indexed uint64,string) + handler: handleDelegateUpdated + - event: ProjectAdded(indexed uint64,string) + handler: handleProjectAdded + - event: ProjectUpdated(indexed uint64,string) + handler: handleProjectUpdated + file: Contract/Contract.wasm diff --git a/subgraph/generated/Contract/Contract.ts b/subgraph/generated/Contract/Contract.ts new file mode 100644 index 0000000..058d3ff --- /dev/null +++ b/subgraph/generated/Contract/Contract.ts @@ -0,0 +1,1568 @@ +// THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. + +import { + EthereumCall, + EthereumEvent, + SmartContract, + EthereumValue, + JSONValue, + TypedMap, + Entity, + EthereumTuple, + Bytes, + Address, + BigInt +} from "@graphprotocol/graph-ts"; + +export class Transfer extends EthereumEvent { + get params(): Transfer__Params { + return new Transfer__Params(this); + } +} + +export class Transfer__Params { + _event: Transfer; + + constructor(event: Transfer) { + this._event = event; + } + + get from(): BigInt { + return this._event.parameters[0].value.toBigInt(); + } + + get to(): BigInt { + return this._event.parameters[1].value.toBigInt(); + } + + get amount(): BigInt { + return this._event.parameters[2].value.toBigInt(); + } +} + +export class CancelProject extends EthereumEvent { + get params(): CancelProject__Params { + return new CancelProject__Params(this); + } +} + +export class CancelProject__Params { + _event: CancelProject; + + constructor(event: CancelProject) { + this._event = event; + } + + get idProject(): BigInt { + return this._event.parameters[0].value.toBigInt(); + } +} + +export class GiverAdded extends EthereumEvent { + get params(): GiverAdded__Params { + return new GiverAdded__Params(this); + } +} + +export class GiverAdded__Params { + _event: GiverAdded; + + constructor(event: GiverAdded) { + this._event = event; + } + + get idGiver(): BigInt { + return this._event.parameters[0].value.toBigInt(); + } + + get addr(): Address { + return this._event.parameters[1].value.toAddress(); + } + + get url(): string { + return this._event.parameters[2].value.toString(); + } +} + +export class GiverUpdated extends EthereumEvent { + get params(): GiverUpdated__Params { + return new GiverUpdated__Params(this); + } +} + +export class GiverUpdated__Params { + _event: GiverUpdated; + + constructor(event: GiverUpdated) { + this._event = event; + } + + get idGiver(): BigInt { + return this._event.parameters[0].value.toBigInt(); + } + + get url(): string { + return this._event.parameters[1].value.toString(); + } +} + +export class DelegateAdded extends EthereumEvent { + get params(): DelegateAdded__Params { + return new DelegateAdded__Params(this); + } +} + +export class DelegateAdded__Params { + _event: DelegateAdded; + + constructor(event: DelegateAdded) { + this._event = event; + } + + get idDelegate(): BigInt { + return this._event.parameters[0].value.toBigInt(); + } + + get url(): string { + return this._event.parameters[1].value.toString(); + } +} + +export class DelegateUpdated extends EthereumEvent { + get params(): DelegateUpdated__Params { + return new DelegateUpdated__Params(this); + } +} + +export class DelegateUpdated__Params { + _event: DelegateUpdated; + + constructor(event: DelegateUpdated) { + this._event = event; + } + + get idDelegate(): BigInt { + return this._event.parameters[0].value.toBigInt(); + } + + get url(): string { + return this._event.parameters[1].value.toString(); + } +} + +export class ProjectAdded extends EthereumEvent { + get params(): ProjectAdded__Params { + return new ProjectAdded__Params(this); + } +} + +export class ProjectAdded__Params { + _event: ProjectAdded; + + constructor(event: ProjectAdded) { + this._event = event; + } + + get idProject(): BigInt { + return this._event.parameters[0].value.toBigInt(); + } + + get url(): string { + return this._event.parameters[1].value.toString(); + } +} + +export class ProjectUpdated extends EthereumEvent { + get params(): ProjectUpdated__Params { + return new ProjectUpdated__Params(this); + } +} + +export class ProjectUpdated__Params { + _event: ProjectUpdated; + + constructor(event: ProjectUpdated) { + this._event = event; + } + + get idProject(): BigInt { + return this._event.parameters[0].value.toBigInt(); + } + + get url(): string { + return this._event.parameters[1].value.toString(); + } +} + +export class Contract__getPledgeDelegateResult { + value0: BigInt; + value1: Address; + value2: string; + + constructor(value0: BigInt, value1: Address, value2: string) { + this.value0 = value0; + this.value1 = value1; + this.value2 = value2; + } + + toMap(): TypedMap { + let map = new TypedMap(); + map.set("value0", EthereumValue.fromUnsignedBigInt(this.value0)); + map.set("value1", EthereumValue.fromAddress(this.value1)); + map.set("value2", EthereumValue.fromString(this.value2)); + return map; + } +} + +export class Contract__getPledgeResult { + value0: BigInt; + value1: BigInt; + value2: BigInt; + value3: BigInt; + value4: BigInt; + value5: BigInt; + value6: Address; + value7: i32; + + constructor( + value0: BigInt, + value1: BigInt, + value2: BigInt, + value3: BigInt, + value4: BigInt, + value5: BigInt, + value6: Address, + value7: i32 + ) { + this.value0 = value0; + this.value1 = value1; + this.value2 = value2; + this.value3 = value3; + this.value4 = value4; + this.value5 = value5; + this.value6 = value6; + this.value7 = value7; + } + + toMap(): TypedMap { + let map = new TypedMap(); + map.set("value0", EthereumValue.fromUnsignedBigInt(this.value0)); + map.set("value1", EthereumValue.fromUnsignedBigInt(this.value1)); + map.set("value2", EthereumValue.fromUnsignedBigInt(this.value2)); + map.set("value3", EthereumValue.fromUnsignedBigInt(this.value3)); + map.set("value4", EthereumValue.fromUnsignedBigInt(this.value4)); + map.set("value5", EthereumValue.fromUnsignedBigInt(this.value5)); + map.set("value6", EthereumValue.fromAddress(this.value6)); + map.set("value7", EthereumValue.fromI32(this.value7)); + return map; + } +} + +export class Contract__getPledgeAdminResult { + value0: i32; + value1: Address; + value2: string; + value3: string; + value4: BigInt; + value5: BigInt; + value6: boolean; + value7: Address; + + constructor( + value0: i32, + value1: Address, + value2: string, + value3: string, + value4: BigInt, + value5: BigInt, + value6: boolean, + value7: Address + ) { + this.value0 = value0; + this.value1 = value1; + this.value2 = value2; + this.value3 = value3; + this.value4 = value4; + this.value5 = value5; + this.value6 = value6; + this.value7 = value7; + } + + toMap(): TypedMap { + let map = new TypedMap(); + map.set("value0", EthereumValue.fromI32(this.value0)); + map.set("value1", EthereumValue.fromAddress(this.value1)); + map.set("value2", EthereumValue.fromString(this.value2)); + map.set("value3", EthereumValue.fromString(this.value3)); + map.set("value4", EthereumValue.fromUnsignedBigInt(this.value4)); + map.set("value5", EthereumValue.fromUnsignedBigInt(this.value5)); + map.set("value6", EthereumValue.fromBoolean(this.value6)); + map.set("value7", EthereumValue.fromAddress(this.value7)); + return map; + } +} + +export class Contract extends SmartContract { + static bind(address: Address): Contract { + return new Contract("Contract", address); + } + + APP_ADDR_NAMESPACE(): Bytes { + let result = super.call("APP_ADDR_NAMESPACE", []); + return result[0].toBytes(); + } + + whitelistDisabled(): boolean { + let result = super.call("whitelistDisabled", []); + return result[0].toBoolean(); + } + + isProjectCanceled(projectId: BigInt): boolean { + let result = super.call("isProjectCanceled", [ + EthereumValue.fromUnsignedBigInt(projectId) + ]); + return result[0].toBoolean(); + } + + PLUGIN_MANAGER_ROLE(): Bytes { + let result = super.call("PLUGIN_MANAGER_ROLE", []); + return result[0].toBytes(); + } + + numberOfPledges(): BigInt { + let result = super.call("numberOfPledges", []); + return result[0].toBigInt(); + } + + getPledgeDelegate( + idPledge: BigInt, + idxDelegate: BigInt + ): Contract__getPledgeDelegateResult { + let result = super.call("getPledgeDelegate", [ + EthereumValue.fromUnsignedBigInt(idPledge), + EthereumValue.fromUnsignedBigInt(idxDelegate) + ]); + return new Contract__getPledgeDelegateResult( + result[0].toBigInt(), + result[1].toAddress(), + result[2].toString() + ); + } + + getRecoveryVault(): Address { + let result = super.call("getRecoveryVault", []); + return result[0].toAddress(); + } + + getPledge(idPledge: BigInt): Contract__getPledgeResult { + let result = super.call("getPledge", [ + EthereumValue.fromUnsignedBigInt(idPledge) + ]); + return new Contract__getPledgeResult( + result[0].toBigInt(), + result[1].toBigInt(), + result[2].toBigInt(), + result[3].toBigInt(), + result[4].toBigInt(), + result[5].toBigInt(), + result[6].toAddress(), + result[7].toI32() + ); + } + + isValidPlugin(addr: Address): boolean { + let result = super.call("isValidPlugin", [EthereumValue.fromAddress(addr)]); + return result[0].toBoolean(); + } + + normalizePledge(idPledge: BigInt): BigInt { + let result = super.call("normalizePledge", [ + EthereumValue.fromUnsignedBigInt(idPledge) + ]); + return result[0].toBigInt(); + } + + addDelegate( + name: string, + url: string, + commitTime: BigInt, + plugin: Address + ): BigInt { + let result = super.call("addDelegate", [ + EthereumValue.fromString(name), + EthereumValue.fromString(url), + EthereumValue.fromUnsignedBigInt(commitTime), + EthereumValue.fromAddress(plugin) + ]); + return result[0].toBigInt(); + } + + numberOfPledgeAdmins(): BigInt { + let result = super.call("numberOfPledgeAdmins", []); + return result[0].toBigInt(); + } + + EVMSCRIPT_REGISTRY_APP_ID(): Bytes { + let result = super.call("EVMSCRIPT_REGISTRY_APP_ID", []); + return result[0].toBytes(); + } + + addGiver( + addr: Address, + name: string, + url: string, + commitTime: BigInt, + plugin: Address + ): BigInt { + let result = super.call("addGiver", [ + EthereumValue.fromAddress(addr), + EthereumValue.fromString(name), + EthereumValue.fromString(url), + EthereumValue.fromUnsignedBigInt(commitTime), + EthereumValue.fromAddress(plugin) + ]); + return result[0].toBigInt(); + } + + addProject( + name: string, + url: string, + projectAdmin: Address, + parentProject: BigInt, + commitTime: BigInt, + plugin: Address + ): BigInt { + let result = super.call("addProject", [ + EthereumValue.fromString(name), + EthereumValue.fromString(url), + EthereumValue.fromAddress(projectAdmin), + EthereumValue.fromUnsignedBigInt(parentProject), + EthereumValue.fromUnsignedBigInt(commitTime), + EthereumValue.fromAddress(plugin) + ]); + return result[0].toBigInt(); + } + + allowRecoverability(token: Address): boolean { + let result = super.call("allowRecoverability", [ + EthereumValue.fromAddress(token) + ]); + return result[0].toBoolean(); + } + + addGiver1( + name: string, + url: string, + commitTime: BigInt, + plugin: Address + ): BigInt { + let result = super.call("addGiver", [ + EthereumValue.fromString(name), + EthereumValue.fromString(url), + EthereumValue.fromUnsignedBigInt(commitTime), + EthereumValue.fromAddress(plugin) + ]); + return result[0].toBigInt(); + } + + appId(): Bytes { + let result = super.call("appId", []); + return result[0].toBytes(); + } + + getCodeHash(addr: Address): Bytes { + let result = super.call("getCodeHash", [EthereumValue.fromAddress(addr)]); + return result[0].toBytes(); + } + + ETH(): Address { + let result = super.call("ETH", []); + return result[0].toAddress(); + } + + getInitializationBlock(): BigInt { + let result = super.call("getInitializationBlock", []); + return result[0].toBigInt(); + } + + EVMSCRIPT_REGISTRY_APP(): Bytes { + let result = super.call("EVMSCRIPT_REGISTRY_APP", []); + return result[0].toBytes(); + } + + canPerform(_sender: Address, _role: Bytes, params: Array): boolean { + let result = super.call("canPerform", [ + EthereumValue.fromAddress(_sender), + EthereumValue.fromFixedBytes(_role), + EthereumValue.fromUnsignedBigIntArray(params) + ]); + return result[0].toBoolean(); + } + + kernel(): Address { + let result = super.call("kernel", []); + return result[0].toAddress(); + } + + getPledgeAdmin(idAdmin: BigInt): Contract__getPledgeAdminResult { + let result = super.call("getPledgeAdmin", [ + EthereumValue.fromUnsignedBigInt(idAdmin) + ]); + return new Contract__getPledgeAdminResult( + result[0].toI32(), + result[1].toAddress(), + result[2].toString(), + result[3].toString(), + result[4].toBigInt(), + result[5].toBigInt(), + result[6].toBoolean(), + result[7].toAddress() + ); + } + + getExecutor(_script: Bytes): Address { + let result = super.call("getExecutor", [EthereumValue.fromBytes(_script)]); + return result[0].toAddress(); + } + + vault(): Address { + let result = super.call("vault", []); + return result[0].toAddress(); + } +} + +export class AddGiverAndDonateCall extends EthereumCall { + get inputs(): AddGiverAndDonateCall__Inputs { + return new AddGiverAndDonateCall__Inputs(this); + } + + get outputs(): AddGiverAndDonateCall__Outputs { + return new AddGiverAndDonateCall__Outputs(this); + } +} + +export class AddGiverAndDonateCall__Inputs { + _call: AddGiverAndDonateCall; + + constructor(call: AddGiverAndDonateCall) { + this._call = call; + } + + get idReceiver(): BigInt { + return this._call.inputValues[0].value.toBigInt(); + } + + get donorAddress(): Address { + return this._call.inputValues[1].value.toAddress(); + } + + get token(): Address { + return this._call.inputValues[2].value.toAddress(); + } + + get amount(): BigInt { + return this._call.inputValues[3].value.toBigInt(); + } +} + +export class AddGiverAndDonateCall__Outputs { + _call: AddGiverAndDonateCall; + + constructor(call: AddGiverAndDonateCall) { + this._call = call; + } +} + +export class ConfirmPaymentCall extends EthereumCall { + get inputs(): ConfirmPaymentCall__Inputs { + return new ConfirmPaymentCall__Inputs(this); + } + + get outputs(): ConfirmPaymentCall__Outputs { + return new ConfirmPaymentCall__Outputs(this); + } +} + +export class ConfirmPaymentCall__Inputs { + _call: ConfirmPaymentCall; + + constructor(call: ConfirmPaymentCall) { + this._call = call; + } + + get idPledge(): BigInt { + return this._call.inputValues[0].value.toBigInt(); + } + + get amount(): BigInt { + return this._call.inputValues[1].value.toBigInt(); + } +} + +export class ConfirmPaymentCall__Outputs { + _call: ConfirmPaymentCall; + + constructor(call: ConfirmPaymentCall) { + this._call = call; + } +} + +export class AddValidPluginContractsCall extends EthereumCall { + get inputs(): AddValidPluginContractsCall__Inputs { + return new AddValidPluginContractsCall__Inputs(this); + } + + get outputs(): AddValidPluginContractsCall__Outputs { + return new AddValidPluginContractsCall__Outputs(this); + } +} + +export class AddValidPluginContractsCall__Inputs { + _call: AddValidPluginContractsCall; + + constructor(call: AddValidPluginContractsCall) { + this._call = call; + } + + get contractHashes(): Array { + return this._call.inputValues[0].value.toBytesArray(); + } +} + +export class AddValidPluginContractsCall__Outputs { + _call: AddValidPluginContractsCall; + + constructor(call: AddValidPluginContractsCall) { + this._call = call; + } +} + +export class UseWhitelistCall extends EthereumCall { + get inputs(): UseWhitelistCall__Inputs { + return new UseWhitelistCall__Inputs(this); + } + + get outputs(): UseWhitelistCall__Outputs { + return new UseWhitelistCall__Outputs(this); + } +} + +export class UseWhitelistCall__Inputs { + _call: UseWhitelistCall; + + constructor(call: UseWhitelistCall) { + this._call = call; + } + + get useWhitelist(): boolean { + return this._call.inputValues[0].value.toBoolean(); + } +} + +export class UseWhitelistCall__Outputs { + _call: UseWhitelistCall; + + constructor(call: UseWhitelistCall) { + this._call = call; + } +} + +export class WithdrawCall extends EthereumCall { + get inputs(): WithdrawCall__Inputs { + return new WithdrawCall__Inputs(this); + } + + get outputs(): WithdrawCall__Outputs { + return new WithdrawCall__Outputs(this); + } +} + +export class WithdrawCall__Inputs { + _call: WithdrawCall; + + constructor(call: WithdrawCall) { + this._call = call; + } + + get idPledge(): BigInt { + return this._call.inputValues[0].value.toBigInt(); + } + + get amount(): BigInt { + return this._call.inputValues[1].value.toBigInt(); + } +} + +export class WithdrawCall__Outputs { + _call: WithdrawCall; + + constructor(call: WithdrawCall) { + this._call = call; + } +} + +export class TransferCall extends EthereumCall { + get inputs(): TransferCall__Inputs { + return new TransferCall__Inputs(this); + } + + get outputs(): TransferCall__Outputs { + return new TransferCall__Outputs(this); + } +} + +export class TransferCall__Inputs { + _call: TransferCall; + + constructor(call: TransferCall) { + this._call = call; + } + + get idSender(): BigInt { + return this._call.inputValues[0].value.toBigInt(); + } + + get idPledge(): BigInt { + return this._call.inputValues[1].value.toBigInt(); + } + + get amount(): BigInt { + return this._call.inputValues[2].value.toBigInt(); + } + + get idReceiver(): BigInt { + return this._call.inputValues[3].value.toBigInt(); + } +} + +export class TransferCall__Outputs { + _call: TransferCall; + + constructor(call: TransferCall) { + this._call = call; + } +} + +export class DonateCall extends EthereumCall { + get inputs(): DonateCall__Inputs { + return new DonateCall__Inputs(this); + } + + get outputs(): DonateCall__Outputs { + return new DonateCall__Outputs(this); + } +} + +export class DonateCall__Inputs { + _call: DonateCall; + + constructor(call: DonateCall) { + this._call = call; + } + + get idGiver(): BigInt { + return this._call.inputValues[0].value.toBigInt(); + } + + get idReceiver(): BigInt { + return this._call.inputValues[1].value.toBigInt(); + } + + get token(): Address { + return this._call.inputValues[2].value.toAddress(); + } + + get amount(): BigInt { + return this._call.inputValues[3].value.toBigInt(); + } +} + +export class DonateCall__Outputs { + _call: DonateCall; + + constructor(call: DonateCall) { + this._call = call; + } +} + +export class NormalizePledgeCall extends EthereumCall { + get inputs(): NormalizePledgeCall__Inputs { + return new NormalizePledgeCall__Inputs(this); + } + + get outputs(): NormalizePledgeCall__Outputs { + return new NormalizePledgeCall__Outputs(this); + } +} + +export class NormalizePledgeCall__Inputs { + _call: NormalizePledgeCall; + + constructor(call: NormalizePledgeCall) { + this._call = call; + } + + get idPledge(): BigInt { + return this._call.inputValues[0].value.toBigInt(); + } +} + +export class NormalizePledgeCall__Outputs { + _call: NormalizePledgeCall; + + constructor(call: NormalizePledgeCall) { + this._call = call; + } + + get value0(): BigInt { + return this._call.outputValues[0].value.toBigInt(); + } +} + +export class AddDelegateCall extends EthereumCall { + get inputs(): AddDelegateCall__Inputs { + return new AddDelegateCall__Inputs(this); + } + + get outputs(): AddDelegateCall__Outputs { + return new AddDelegateCall__Outputs(this); + } +} + +export class AddDelegateCall__Inputs { + _call: AddDelegateCall; + + constructor(call: AddDelegateCall) { + this._call = call; + } + + get name(): string { + return this._call.inputValues[0].value.toString(); + } + + get url(): string { + return this._call.inputValues[1].value.toString(); + } + + get commitTime(): BigInt { + return this._call.inputValues[2].value.toBigInt(); + } + + get plugin(): Address { + return this._call.inputValues[3].value.toAddress(); + } +} + +export class AddDelegateCall__Outputs { + _call: AddDelegateCall; + + constructor(call: AddDelegateCall) { + this._call = call; + } + + get idDelegate(): BigInt { + return this._call.outputValues[0].value.toBigInt(); + } +} + +export class MWithdrawCall extends EthereumCall { + get inputs(): MWithdrawCall__Inputs { + return new MWithdrawCall__Inputs(this); + } + + get outputs(): MWithdrawCall__Outputs { + return new MWithdrawCall__Outputs(this); + } +} + +export class MWithdrawCall__Inputs { + _call: MWithdrawCall; + + constructor(call: MWithdrawCall) { + this._call = call; + } + + get pledgesAmounts(): Array { + return this._call.inputValues[0].value.toBigIntArray(); + } +} + +export class MWithdrawCall__Outputs { + _call: MWithdrawCall; + + constructor(call: MWithdrawCall) { + this._call = call; + } +} + +export class RemoveValidPluginInstanceCall extends EthereumCall { + get inputs(): RemoveValidPluginInstanceCall__Inputs { + return new RemoveValidPluginInstanceCall__Inputs(this); + } + + get outputs(): RemoveValidPluginInstanceCall__Outputs { + return new RemoveValidPluginInstanceCall__Outputs(this); + } +} + +export class RemoveValidPluginInstanceCall__Inputs { + _call: RemoveValidPluginInstanceCall; + + constructor(call: RemoveValidPluginInstanceCall) { + this._call = call; + } + + get addr(): Address { + return this._call.inputValues[0].value.toAddress(); + } +} + +export class RemoveValidPluginInstanceCall__Outputs { + _call: RemoveValidPluginInstanceCall; + + constructor(call: RemoveValidPluginInstanceCall) { + this._call = call; + } +} + +export class AddGiverAndDonate1Call extends EthereumCall { + get inputs(): AddGiverAndDonate1Call__Inputs { + return new AddGiverAndDonate1Call__Inputs(this); + } + + get outputs(): AddGiverAndDonate1Call__Outputs { + return new AddGiverAndDonate1Call__Outputs(this); + } +} + +export class AddGiverAndDonate1Call__Inputs { + _call: AddGiverAndDonate1Call; + + constructor(call: AddGiverAndDonate1Call) { + this._call = call; + } + + get idReceiver(): BigInt { + return this._call.inputValues[0].value.toBigInt(); + } + + get token(): Address { + return this._call.inputValues[1].value.toAddress(); + } + + get amount(): BigInt { + return this._call.inputValues[2].value.toBigInt(); + } +} + +export class AddGiverAndDonate1Call__Outputs { + _call: AddGiverAndDonate1Call; + + constructor(call: AddGiverAndDonate1Call) { + this._call = call; + } +} + +export class AddGiverCall extends EthereumCall { + get inputs(): AddGiverCall__Inputs { + return new AddGiverCall__Inputs(this); + } + + get outputs(): AddGiverCall__Outputs { + return new AddGiverCall__Outputs(this); + } +} + +export class AddGiverCall__Inputs { + _call: AddGiverCall; + + constructor(call: AddGiverCall) { + this._call = call; + } + + get addr(): Address { + return this._call.inputValues[0].value.toAddress(); + } + + get name(): string { + return this._call.inputValues[1].value.toString(); + } + + get url(): string { + return this._call.inputValues[2].value.toString(); + } + + get commitTime(): BigInt { + return this._call.inputValues[3].value.toBigInt(); + } + + get plugin(): Address { + return this._call.inputValues[4].value.toAddress(); + } +} + +export class AddGiverCall__Outputs { + _call: AddGiverCall; + + constructor(call: AddGiverCall) { + this._call = call; + } + + get idGiver(): BigInt { + return this._call.outputValues[0].value.toBigInt(); + } +} + +export class AddProjectCall extends EthereumCall { + get inputs(): AddProjectCall__Inputs { + return new AddProjectCall__Inputs(this); + } + + get outputs(): AddProjectCall__Outputs { + return new AddProjectCall__Outputs(this); + } +} + +export class AddProjectCall__Inputs { + _call: AddProjectCall; + + constructor(call: AddProjectCall) { + this._call = call; + } + + get name(): string { + return this._call.inputValues[0].value.toString(); + } + + get url(): string { + return this._call.inputValues[1].value.toString(); + } + + get projectAdmin(): Address { + return this._call.inputValues[2].value.toAddress(); + } + + get parentProject(): BigInt { + return this._call.inputValues[3].value.toBigInt(); + } + + get commitTime(): BigInt { + return this._call.inputValues[4].value.toBigInt(); + } + + get plugin(): Address { + return this._call.inputValues[5].value.toAddress(); + } +} + +export class AddProjectCall__Outputs { + _call: AddProjectCall; + + constructor(call: AddProjectCall) { + this._call = call; + } + + get idProject(): BigInt { + return this._call.outputValues[0].value.toBigInt(); + } +} + +export class CancelProjectCall extends EthereumCall { + get inputs(): CancelProjectCall__Inputs { + return new CancelProjectCall__Inputs(this); + } + + get outputs(): CancelProjectCall__Outputs { + return new CancelProjectCall__Outputs(this); + } +} + +export class CancelProjectCall__Inputs { + _call: CancelProjectCall; + + constructor(call: CancelProjectCall) { + this._call = call; + } + + get idProject(): BigInt { + return this._call.inputValues[0].value.toBigInt(); + } +} + +export class CancelProjectCall__Outputs { + _call: CancelProjectCall; + + constructor(call: CancelProjectCall) { + this._call = call; + } +} + +export class AddValidPluginInstanceCall extends EthereumCall { + get inputs(): AddValidPluginInstanceCall__Inputs { + return new AddValidPluginInstanceCall__Inputs(this); + } + + get outputs(): AddValidPluginInstanceCall__Outputs { + return new AddValidPluginInstanceCall__Outputs(this); + } +} + +export class AddValidPluginInstanceCall__Inputs { + _call: AddValidPluginInstanceCall; + + constructor(call: AddValidPluginInstanceCall) { + this._call = call; + } + + get addr(): Address { + return this._call.inputValues[0].value.toAddress(); + } +} + +export class AddValidPluginInstanceCall__Outputs { + _call: AddValidPluginInstanceCall; + + constructor(call: AddValidPluginInstanceCall) { + this._call = call; + } +} + +export class AddGiver1Call extends EthereumCall { + get inputs(): AddGiver1Call__Inputs { + return new AddGiver1Call__Inputs(this); + } + + get outputs(): AddGiver1Call__Outputs { + return new AddGiver1Call__Outputs(this); + } +} + +export class AddGiver1Call__Inputs { + _call: AddGiver1Call; + + constructor(call: AddGiver1Call) { + this._call = call; + } + + get name(): string { + return this._call.inputValues[0].value.toString(); + } + + get url(): string { + return this._call.inputValues[1].value.toString(); + } + + get commitTime(): BigInt { + return this._call.inputValues[2].value.toBigInt(); + } + + get plugin(): Address { + return this._call.inputValues[3].value.toAddress(); + } +} + +export class AddGiver1Call__Outputs { + _call: AddGiver1Call; + + constructor(call: AddGiver1Call) { + this._call = call; + } + + get idGiver(): BigInt { + return this._call.outputValues[0].value.toBigInt(); + } +} + +export class TransferToVaultCall extends EthereumCall { + get inputs(): TransferToVaultCall__Inputs { + return new TransferToVaultCall__Inputs(this); + } + + get outputs(): TransferToVaultCall__Outputs { + return new TransferToVaultCall__Outputs(this); + } +} + +export class TransferToVaultCall__Inputs { + _call: TransferToVaultCall; + + constructor(call: TransferToVaultCall) { + this._call = call; + } + + get _token(): Address { + return this._call.inputValues[0].value.toAddress(); + } +} + +export class TransferToVaultCall__Outputs { + _call: TransferToVaultCall; + + constructor(call: TransferToVaultCall) { + this._call = call; + } +} + +export class CancelPledgeCall extends EthereumCall { + get inputs(): CancelPledgeCall__Inputs { + return new CancelPledgeCall__Inputs(this); + } + + get outputs(): CancelPledgeCall__Outputs { + return new CancelPledgeCall__Outputs(this); + } +} + +export class CancelPledgeCall__Inputs { + _call: CancelPledgeCall; + + constructor(call: CancelPledgeCall) { + this._call = call; + } + + get idPledge(): BigInt { + return this._call.inputValues[0].value.toBigInt(); + } + + get amount(): BigInt { + return this._call.inputValues[1].value.toBigInt(); + } +} + +export class CancelPledgeCall__Outputs { + _call: CancelPledgeCall; + + constructor(call: CancelPledgeCall) { + this._call = call; + } +} + +export class RemoveValidPluginContractCall extends EthereumCall { + get inputs(): RemoveValidPluginContractCall__Inputs { + return new RemoveValidPluginContractCall__Inputs(this); + } + + get outputs(): RemoveValidPluginContractCall__Outputs { + return new RemoveValidPluginContractCall__Outputs(this); + } +} + +export class RemoveValidPluginContractCall__Inputs { + _call: RemoveValidPluginContractCall; + + constructor(call: RemoveValidPluginContractCall) { + this._call = call; + } + + get contractHash(): Bytes { + return this._call.inputValues[0].value.toBytes(); + } +} + +export class RemoveValidPluginContractCall__Outputs { + _call: RemoveValidPluginContractCall; + + constructor(call: RemoveValidPluginContractCall) { + this._call = call; + } +} + +export class InitializeCall extends EthereumCall { + get inputs(): InitializeCall__Inputs { + return new InitializeCall__Inputs(this); + } + + get outputs(): InitializeCall__Outputs { + return new InitializeCall__Outputs(this); + } +} + +export class InitializeCall__Inputs { + _call: InitializeCall; + + constructor(call: InitializeCall) { + this._call = call; + } + + get _vault(): Address { + return this._call.inputValues[0].value.toAddress(); + } +} + +export class InitializeCall__Outputs { + _call: InitializeCall; + + constructor(call: InitializeCall) { + this._call = call; + } +} + +export class AddValidPluginContractCall extends EthereumCall { + get inputs(): AddValidPluginContractCall__Inputs { + return new AddValidPluginContractCall__Inputs(this); + } + + get outputs(): AddValidPluginContractCall__Outputs { + return new AddValidPluginContractCall__Outputs(this); + } +} + +export class AddValidPluginContractCall__Inputs { + _call: AddValidPluginContractCall; + + constructor(call: AddValidPluginContractCall) { + this._call = call; + } + + get contractHash(): Bytes { + return this._call.inputValues[0].value.toBytes(); + } +} + +export class AddValidPluginContractCall__Outputs { + _call: AddValidPluginContractCall; + + constructor(call: AddValidPluginContractCall) { + this._call = call; + } +} + +export class UpdateDelegateCall extends EthereumCall { + get inputs(): UpdateDelegateCall__Inputs { + return new UpdateDelegateCall__Inputs(this); + } + + get outputs(): UpdateDelegateCall__Outputs { + return new UpdateDelegateCall__Outputs(this); + } +} + +export class UpdateDelegateCall__Inputs { + _call: UpdateDelegateCall; + + constructor(call: UpdateDelegateCall) { + this._call = call; + } + + get idDelegate(): BigInt { + return this._call.inputValues[0].value.toBigInt(); + } + + get newAddr(): Address { + return this._call.inputValues[1].value.toAddress(); + } + + get newName(): string { + return this._call.inputValues[2].value.toString(); + } + + get newUrl(): string { + return this._call.inputValues[3].value.toString(); + } + + get newCommitTime(): BigInt { + return this._call.inputValues[4].value.toBigInt(); + } +} + +export class UpdateDelegateCall__Outputs { + _call: UpdateDelegateCall; + + constructor(call: UpdateDelegateCall) { + this._call = call; + } +} + +export class MNormalizePledgeCall extends EthereumCall { + get inputs(): MNormalizePledgeCall__Inputs { + return new MNormalizePledgeCall__Inputs(this); + } + + get outputs(): MNormalizePledgeCall__Outputs { + return new MNormalizePledgeCall__Outputs(this); + } +} + +export class MNormalizePledgeCall__Inputs { + _call: MNormalizePledgeCall; + + constructor(call: MNormalizePledgeCall) { + this._call = call; + } + + get pledges(): Array { + return this._call.inputValues[0].value.toBigIntArray(); + } +} + +export class MNormalizePledgeCall__Outputs { + _call: MNormalizePledgeCall; + + constructor(call: MNormalizePledgeCall) { + this._call = call; + } +} + +export class MTransferCall extends EthereumCall { + get inputs(): MTransferCall__Inputs { + return new MTransferCall__Inputs(this); + } + + get outputs(): MTransferCall__Outputs { + return new MTransferCall__Outputs(this); + } +} + +export class MTransferCall__Inputs { + _call: MTransferCall; + + constructor(call: MTransferCall) { + this._call = call; + } + + get idSender(): BigInt { + return this._call.inputValues[0].value.toBigInt(); + } + + get pledgesAmounts(): Array { + return this._call.inputValues[1].value.toBigIntArray(); + } + + get idReceiver(): BigInt { + return this._call.inputValues[2].value.toBigInt(); + } +} + +export class MTransferCall__Outputs { + _call: MTransferCall; + + constructor(call: MTransferCall) { + this._call = call; + } +} + +export class UpdateGiverCall extends EthereumCall { + get inputs(): UpdateGiverCall__Inputs { + return new UpdateGiverCall__Inputs(this); + } + + get outputs(): UpdateGiverCall__Outputs { + return new UpdateGiverCall__Outputs(this); + } +} + +export class UpdateGiverCall__Inputs { + _call: UpdateGiverCall; + + constructor(call: UpdateGiverCall) { + this._call = call; + } + + get idGiver(): BigInt { + return this._call.inputValues[0].value.toBigInt(); + } + + get newAddr(): Address { + return this._call.inputValues[1].value.toAddress(); + } + + get newName(): string { + return this._call.inputValues[2].value.toString(); + } + + get newUrl(): string { + return this._call.inputValues[3].value.toString(); + } + + get newCommitTime(): BigInt { + return this._call.inputValues[4].value.toBigInt(); + } +} + +export class UpdateGiverCall__Outputs { + _call: UpdateGiverCall; + + constructor(call: UpdateGiverCall) { + this._call = call; + } +} + +export class CancelPaymentCall extends EthereumCall { + get inputs(): CancelPaymentCall__Inputs { + return new CancelPaymentCall__Inputs(this); + } + + get outputs(): CancelPaymentCall__Outputs { + return new CancelPaymentCall__Outputs(this); + } +} + +export class CancelPaymentCall__Inputs { + _call: CancelPaymentCall; + + constructor(call: CancelPaymentCall) { + this._call = call; + } + + get idPledge(): BigInt { + return this._call.inputValues[0].value.toBigInt(); + } + + get amount(): BigInt { + return this._call.inputValues[1].value.toBigInt(); + } +} + +export class CancelPaymentCall__Outputs { + _call: CancelPaymentCall; + + constructor(call: CancelPaymentCall) { + this._call = call; + } +} + +export class UpdateProjectCall extends EthereumCall { + get inputs(): UpdateProjectCall__Inputs { + return new UpdateProjectCall__Inputs(this); + } + + get outputs(): UpdateProjectCall__Outputs { + return new UpdateProjectCall__Outputs(this); + } +} + +export class UpdateProjectCall__Inputs { + _call: UpdateProjectCall; + + constructor(call: UpdateProjectCall) { + this._call = call; + } + + get idProject(): BigInt { + return this._call.inputValues[0].value.toBigInt(); + } + + get newAddr(): Address { + return this._call.inputValues[1].value.toAddress(); + } + + get newName(): string { + return this._call.inputValues[2].value.toString(); + } + + get newUrl(): string { + return this._call.inputValues[3].value.toString(); + } + + get newCommitTime(): BigInt { + return this._call.inputValues[4].value.toBigInt(); + } +} + +export class UpdateProjectCall__Outputs { + _call: UpdateProjectCall; + + constructor(call: UpdateProjectCall) { + this._call = call; + } +} diff --git a/subgraph/generated/schema.ts b/subgraph/generated/schema.ts new file mode 100644 index 0000000..f5eaac8 --- /dev/null +++ b/subgraph/generated/schema.ts @@ -0,0 +1,71 @@ +// THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. + +import { + TypedMap, + Entity, + Value, + ValueKind, + store, + Address, + Bytes, + BigInt, + BigDecimal +} from "@graphprotocol/graph-ts"; + +export class ExampleEntity extends Entity { + constructor(id: string) { + super(); + this.set("id", Value.fromString(id)); + } + + save(): void { + let id = this.get("id"); + assert(id !== null, "Cannot save ExampleEntity entity without an ID"); + assert( + id.kind == ValueKind.STRING, + "Cannot save ExampleEntity entity with non-string ID. " + + 'Considering using .toHex() to convert the "id" to a string.' + ); + store.set("ExampleEntity", id.toString(), this); + } + + static load(id: string): ExampleEntity | null { + return store.get("ExampleEntity", id) as ExampleEntity | null; + } + + get id(): string { + let value = this.get("id"); + return value.toString(); + } + + set id(value: string) { + this.set("id", Value.fromString(value)); + } + + get count(): BigInt { + let value = this.get("count"); + return value.toBigInt(); + } + + set count(value: BigInt) { + this.set("count", Value.fromBigInt(value)); + } + + get from(): BigInt { + let value = this.get("from"); + return value.toBigInt(); + } + + set from(value: BigInt) { + this.set("from", Value.fromBigInt(value)); + } + + get to(): BigInt { + let value = this.get("to"); + return value.toBigInt(); + } + + set to(value: BigInt) { + this.set("to", Value.fromBigInt(value)); + } +} diff --git a/subgraph/package.json b/subgraph/package.json new file mode 100644 index 0000000..1076e4b --- /dev/null +++ b/subgraph/package.json @@ -0,0 +1,16 @@ +{ + "name": "liquid-funding-rinkeby", + "license": "UNLICENSED", + "scripts": { + "codegen": "graph codegen", + "build": "graph build", + "deploy": "graph deploy --node https://api.thegraph.com/deploy/ --ipfs https://api.thegraph.com/ipfs/ bgits/liquid-funding-rinkeby", + "create-local": "graph create --node http://localhost:8020/ bgits/liquid-funding-rinkeby", + "remove-local": "graph remove --node http://localhost:8020/ bgits/liquid-funding-rinkeby", + "deploy-local": "graph deploy --node http://localhost:8020/ --ipfs http://localhost:5001 bgits/liquid-funding-rinkeby" + }, + "dependencies": { + "@graphprotocol/graph-cli": "0.14.0", + "@graphprotocol/graph-ts": "0.13.0" + } +} diff --git a/subgraph/schema.graphql b/subgraph/schema.graphql new file mode 100644 index 0000000..c92aa5d --- /dev/null +++ b/subgraph/schema.graphql @@ -0,0 +1,6 @@ +type ExampleEntity @entity { + id: ID! + count: BigInt! + from: BigInt! # uint256 + to: BigInt! # uint256 +} diff --git a/subgraph/src/mapping.ts b/subgraph/src/mapping.ts new file mode 100644 index 0000000..83d1e0f --- /dev/null +++ b/subgraph/src/mapping.ts @@ -0,0 +1,95 @@ +import { BigInt } from "@graphprotocol/graph-ts" +import { + Contract, + Transfer, + CancelProject, + GiverAdded, + GiverUpdated, + DelegateAdded, + DelegateUpdated, + ProjectAdded, + ProjectUpdated +} from "../generated/Contract/Contract" +import { ExampleEntity } from "../generated/schema" + +export function handleTransfer(event: Transfer): void { + // Entities can be loaded from the store using a string ID; this ID + // needs to be unique across all entities of the same type + let entity = ExampleEntity.load(event.transaction.from.toHex()) + + // Entities only exist after they have been saved to the store; + // `null` checks allow to create entities on demand + if (entity == null) { + entity = new ExampleEntity(event.transaction.from.toHex()) + + // Entity fields can be set using simple assignments + entity.count = BigInt.fromI32(0) + } + + // BigInt and BigDecimal math are supported + entity.count = entity.count + BigInt.fromI32(1) + + // Entity fields can be set based on event parameters + entity.from = event.params.from + entity.to = event.params.to + + // Entities can be written to the store with `.save()` + entity.save() + + // Note: If a handler doesn't require existing field values, it is faster + // _not_ to load the entity from the store. Instead, create it fresh with + // `new Entity(...)`, set the fields that should be updated and save the + // entity back to the store. Fields that were not set or unset remain + // unchanged, allowing for partial updates to be applied. + + // It is also possible to access smart contracts from mappings. For + // example, the contract that has emitted the event can be connected to + // with: + // + // let contract = Contract.bind(event.address) + // + // The following functions can then be called on this contract to access + // state variables and other data: + // + // - contract.APP_ADDR_NAMESPACE(...) + // - contract.whitelistDisabled(...) + // - contract.isProjectCanceled(...) + // - contract.PLUGIN_MANAGER_ROLE(...) + // - contract.numberOfPledges(...) + // - contract.getPledgeDelegate(...) + // - contract.getRecoveryVault(...) + // - contract.getPledge(...) + // - contract.isValidPlugin(...) + // - contract.normalizePledge(...) + // - contract.addDelegate(...) + // - contract.numberOfPledgeAdmins(...) + // - contract.EVMSCRIPT_REGISTRY_APP_ID(...) + // - contract.addGiver(...) + // - contract.addProject(...) + // - contract.allowRecoverability(...) + // - contract.addGiver(...) + // - contract.appId(...) + // - contract.getCodeHash(...) + // - contract.ETH(...) + // - contract.getInitializationBlock(...) + // - contract.EVMSCRIPT_REGISTRY_APP(...) + // - contract.canPerform(...) + // - contract.kernel(...) + // - contract.getPledgeAdmin(...) + // - contract.getExecutor(...) + // - contract.vault(...) +} + +export function handleCancelProject(event: CancelProject): void {} + +export function handleGiverAdded(event: GiverAdded): void {} + +export function handleGiverUpdated(event: GiverUpdated): void {} + +export function handleDelegateAdded(event: DelegateAdded): void {} + +export function handleDelegateUpdated(event: DelegateUpdated): void {} + +export function handleProjectAdded(event: ProjectAdded): void {} + +export function handleProjectUpdated(event: ProjectUpdated): void {} diff --git a/subgraph/subgraph.yaml b/subgraph/subgraph.yaml new file mode 100644 index 0000000..e5daf6e --- /dev/null +++ b/subgraph/subgraph.yaml @@ -0,0 +1,44 @@ +specVersion: 0.0.1 +schema: + file: ./schema.graphql +dataSources: + - kind: ethereum/contract + name: Contract + network: rinkeby + source: + address: "0x07E92635AF5e524C20B20F2770aE0E0Ef597eD07" + abi: Contract + mapping: + kind: ethereum/events + apiVersion: 0.0.3 + language: wasm/assemblyscript + entities: + - Transfer + - CancelProject + - GiverAdded + - GiverUpdated + - DelegateAdded + - DelegateUpdated + - ProjectAdded + - ProjectUpdated + abis: + - name: Contract + file: ./abis/Contract.json + eventHandlers: + - event: Transfer(indexed uint256,indexed uint256,uint256) + handler: handleTransfer + - event: CancelProject(indexed uint256) + handler: handleCancelProject + - event: GiverAdded(indexed uint64,indexed address,string) + handler: handleGiverAdded + - event: GiverUpdated(indexed uint64,string) + handler: handleGiverUpdated + - event: DelegateAdded(indexed uint64,string) + handler: handleDelegateAdded + - event: DelegateUpdated(indexed uint64,string) + handler: handleDelegateUpdated + - event: ProjectAdded(indexed uint64,string) + handler: handleProjectAdded + - event: ProjectUpdated(indexed uint64,string) + handler: handleProjectUpdated + file: ./src/mapping.ts diff --git a/subgraph/yarn.lock b/subgraph/yarn.lock new file mode 100644 index 0000000..61da7f4 --- /dev/null +++ b/subgraph/yarn.lock @@ -0,0 +1,2607 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@babel/runtime@^7.4.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.5.5.tgz#74fba56d35efbeca444091c7850ccd494fd2f132" + integrity sha512-28QvEGyQyNkB0/m2B4FU7IEZGK2NUrcMtT6BZEFALTguLk+AUT6ofsHtPk5QyjAdUkpMJ+/Em+quwz4HOt30AQ== + dependencies: + regenerator-runtime "^0.13.2" + +"@graphprotocol/graph-cli@0.14.0": + version "0.14.0" + resolved "https://registry.yarnpkg.com/@graphprotocol/graph-cli/-/graph-cli-0.14.0.tgz#61ce53f3087975ec970f0ab28c72ef7a15945d51" + integrity sha512-xW0A0ZVdF8r9IjpIgfg3sAgJ+neMRSRuKd9hmvFdgepuAYJTMNdFppJhHjuqe0y/krg0dw21jhC7/+mlC7X4lQ== + dependencies: + assemblyscript "https://github.com/AssemblyScript/assemblyscript#36040d5b5312f19a025782b5e36663823494c2f3" + chalk "^2.4.1" + chokidar "^3.0.2" + debug "^4.1.1" + fs-extra "^8.1.0" + glob "^7.1.2" + gluegun "^3.0.0" + graphql "^14.0.2" + immutable "^3.8.2" + ipfs-http-client "^33.1.0" + jayson "^3.0.2" + js-yaml "^3.13.1" + node-fetch "^2.3.0" + pkginfo "^0.4.1" + prettier "^1.13.5" + request "^2.88.0" + yaml "^1.5.1" + optionalDependencies: + keytar "^4.6.0" + +"@graphprotocol/graph-ts@0.13.0": + version "0.13.0" + resolved "https://registry.yarnpkg.com/@graphprotocol/graph-ts/-/graph-ts-0.13.0.tgz#5c1c440094270209eb68647ce59f8cad0987dda3" + integrity sha512-ajrGdh+/wDgMg0+FYw+ZmbUAaveorD5IHaSWAtms0PFhoiebeBcYHCCFh0FYWNJtumG9Il3GNkD9zo48iEwWSA== + dependencies: + assemblyscript "https://github.com/AssemblyScript/assemblyscript#36040d5b5312f19a025782b5e36663823494c2f3" + +"@protobufjs/utf8@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570" + integrity sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA= + +"@types/node@^10.3.5": + version "10.14.14" + resolved "https://registry.yarnpkg.com/@types/node/-/node-10.14.14.tgz#a47955df2acf76ba7f0ac3b205d325da193dc9ad" + integrity sha512-xXD08vZsvpv4xptQXj1+ky22f7ZoKu5ZNI/4l+/BXG3X+XaeZsmaFbbTKuhSE3NjjvRuZFxFf9sQBMXIcZNFMQ== + +JSONStream@^1.3.1: + version "1.3.5" + resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" + integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ== + dependencies: + jsonparse "^1.2.0" + through ">=2.2.7 <3" + +ajv@^6.5.5: + version "6.10.2" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.2.tgz#d3cea04d6b017b2894ad69040fec8b623eb4bd52" + integrity sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw== + dependencies: + fast-deep-equal "^2.0.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + +ansi-colors@^3.2.1: + version "3.2.4" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf" + integrity sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA== + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= + +ansi-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" + integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= + +ansi-regex@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" + integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== + +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +anymatch@^3.0.1: + version "3.0.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.0.3.tgz#2fb624fe0e84bccab00afee3d0006ed310f22f09" + integrity sha512-c6IvoeBECQlMVuYUjSwimnhmztImpErfxJzWZhIQinIvQWoGOnB0dLIgifbPHQt5heS6mNlaZG16f06H3C8t1g== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +apisauce@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/apisauce/-/apisauce-1.0.3.tgz#f2989299a5b7a7ea1b2a9ad69539212e5d59f9e2" + integrity sha512-kcc4p75KoRVQCCpKgieu4D/om9ixt7m/GX/q/VbOLuwLVf31IDDh9GbncmNA2XqFV7UO9STaqd68X9O2jwaCbQ== + dependencies: + axios "^0.18.1" + ramda "^0.25.0" + +app-module-path@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/app-module-path/-/app-module-path-2.2.0.tgz#641aa55dfb7d6a6f0a8141c4b9c0aa50b6c24dd5" + integrity sha1-ZBqlXft9am8KgUHEucCqULbCTdU= + +aproba@^1.0.3: + version "1.2.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== + +are-we-there-yet@~1.1.2: + version "1.1.5" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" + integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== + dependencies: + delegates "^1.0.0" + readable-stream "^2.0.6" + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + +asmcrypto.js@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/asmcrypto.js/-/asmcrypto.js-2.3.2.tgz#b9f84bd0a1fb82f21f8c29cc284a707ad17bba2e" + integrity sha512-3FgFARf7RupsZETQ1nHnhLUUvpcttcCq1iZCaVAbJZbCZ5VNRrNyvpDyHTOb0KC3llFcsyOT/a99NZcCbeiEsA== + +asn1.js@^5.0.1: + version "5.2.0" + resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.2.0.tgz#292c0357f26a47802ac9727e8772c09c7fc9bd85" + integrity sha512-Q7hnYGGNYbcmGrCPulXfkEw7oW7qjWeM4ZTALmgpuIcZLxyqqKYWxCZg2UBm8bklrnB4m2mGyJPWfoktdORD8A== + dependencies: + bn.js "^4.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + +asn1@~0.2.3: + version "0.2.4" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" + integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== + dependencies: + safer-buffer "~2.1.0" + +"assemblyscript@git+https://github.com/AssemblyScript/assemblyscript.git#36040d5b5312f19a025782b5e36663823494c2f3": + version "0.6.0" + resolved "git+https://github.com/AssemblyScript/assemblyscript.git#36040d5b5312f19a025782b5e36663823494c2f3" + dependencies: + "@protobufjs/utf8" "^1.1.0" + binaryen "77.0.0-nightly.20190407" + glob "^7.1.3" + long "^4.0.0" + opencollective-postinstall "^2.0.0" + source-map-support "^0.5.11" + +assert-plus@1.0.0, assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= + +async@^2.6.1, async@^2.6.2, async@^2.6.3: + version "2.6.3" + resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" + integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== + dependencies: + lodash "^4.17.14" + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= + +aws-sign2@~0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= + +aws4@^1.8.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" + integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ== + +axios@^0.18.1: + version "0.18.1" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.18.1.tgz#ff3f0de2e7b5d180e757ad98000f1081b87bcea3" + integrity sha512-0BfJq4NSfQXd+SkFdrvFbG7addhYSBA2mQwISr46pD6E5iqkWg02RAs8vyTT/j0RTnoYmeXauBuSv1qKwR179g== + dependencies: + follow-redirects "1.5.10" + is-buffer "^2.0.2" + +balanced-match@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" + integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= + +base-x@3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.4.tgz#94c1788736da065edb1d68808869e357c977fa77" + integrity sha512-UYOadoSIkEI/VrRGSG6qp93rp2WdokiAiNYDfGW5qURAY8GiAQkvMbwNNSDYiVJopqv4gCna7xqf4rrNGp+5AA== + dependencies: + safe-buffer "^5.0.1" + +base-x@^3.0.2: + version "3.0.6" + resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.6.tgz#de047ec95f5f7b99ae63d830a2a894c96538b2cd" + integrity sha512-4PaF8u2+AlViJxRVjurkLTxpp7CaFRD/jo5rPT9ONnKxyhQ8f59yzamEvq7EkriG56yn5On4ONyaG75HLqr46w== + dependencies: + safe-buffer "^5.0.1" + +base64-js@^1.0.2: + version "1.3.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" + integrity sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g== + +bcrypt-pbkdf@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" + integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= + dependencies: + tweetnacl "^0.14.3" + +bignumber.js@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.0.0.tgz#805880f84a329b5eac6e7cb6f8274b6d82bdf075" + integrity sha512-t/OYhhJ2SD+YGBQcjY8GzzDHEk9f3nerxjtfa6tlMXfe7frs/WozhvCNoGvpM0P3bNf3Gq5ZRMlGr5f3r4/N8A== + +binary-extensions@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" + integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== + +binaryen@77.0.0-nightly.20190407: + version "77.0.0-nightly.20190407" + resolved "https://registry.yarnpkg.com/binaryen/-/binaryen-77.0.0-nightly.20190407.tgz#fbe4f8ba0d6bd0809a84eb519d2d5b5ddff3a7d1" + integrity sha512-1mxYNvQ0xywMe582K7V6Vo2zzhZZxMTeGHH8aE/+/AND8f64D8Q1GThVY3RVRwGY/4p+p95ccw9Xbw2ovFXRIg== + +bindings@^1.3.0, bindings@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" + integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== + dependencies: + file-uri-to-path "1.0.0" + +bip66@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/bip66/-/bip66-1.1.5.tgz#01fa8748785ca70955d5011217d1b3139969ca22" + integrity sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI= + dependencies: + safe-buffer "^5.0.1" + +bl@^1.0.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.2.tgz#a160911717103c07410cef63ef51b397c025af9c" + integrity sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA== + dependencies: + readable-stream "^2.3.5" + safe-buffer "^5.1.1" + +bl@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/bl/-/bl-3.0.0.tgz#3611ec00579fd18561754360b21e9f784500ff88" + integrity sha512-EUAyP5UHU5hxF8BPT0LKW8gjYLhq1DQIcneOX/pL/m2Alo+OYDQAJlHq+yseMP50Os2nHXOSic6Ss3vSQeyf4A== + dependencies: + readable-stream "^3.0.1" + +blakejs@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.1.0.tgz#69df92ef953aa88ca51a32df6ab1c54a155fc7a5" + integrity sha1-ad+S75U6qIylGjLfarHFShVfx6U= + +bn.js@^4.0.0, bn.js@^4.11.8, bn.js@^4.4.0: + version "4.11.8" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" + integrity sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA== + +borc@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/borc/-/borc-2.1.1.tgz#df1a4ec063b9913f2fff5e07c9377eeeff47914a" + integrity sha512-vPLLC2/gS0QN4O3cnPh+8jLshkMMD4qIfs+B1TPGPh30WrtcfItaO6j4k9alsqu/hIgKi8dVdmMvTcbq4tIF7A== + dependencies: + bignumber.js "^9.0.0" + commander "^2.15.0" + ieee754 "^1.1.8" + iso-url "~0.4.4" + json-text-sequence "~0.1.0" + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +brorand@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= + +browserify-aes@^1.0.6, browserify-aes@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" + integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== + dependencies: + buffer-xor "^1.0.3" + cipher-base "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.3" + inherits "^2.0.1" + safe-buffer "^5.0.1" + +bs58@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/bs58/-/bs58-4.0.1.tgz#be161e76c354f6f788ae4071f63f34e8c4f0a42a" + integrity sha1-vhYedsNU9veIrkBx9j806MTwpCo= + dependencies: + base-x "^3.0.2" + +buffer-alloc-unsafe@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0" + integrity sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg== + +buffer-alloc@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/buffer-alloc/-/buffer-alloc-1.2.0.tgz#890dd90d923a873e08e10e5fd51a57e5b7cce0ec" + integrity sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow== + dependencies: + buffer-alloc-unsafe "^1.1.0" + buffer-fill "^1.0.0" + +buffer-fill@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c" + integrity sha1-+PeLdniYiO858gXNY39o5wISKyw= + +buffer-from@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" + integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== + +buffer-xor@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" + integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= + +buffer@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.2.1.tgz#dd57fa0f109ac59c602479044dca7b8b3d0b71d6" + integrity sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg== + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + +builtin-status-codes@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" + integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= + +caller-callsite@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" + integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= + dependencies: + callsites "^2.0.0" + +caller-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" + integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= + dependencies: + caller-callsite "^2.0.0" + +callsites@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" + integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= + +camelcase@^5.0.0: + version "5.3.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== + +caseless@~0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= + +chalk@^2.0.1, chalk@^2.4.1, chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chokidar@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.0.2.tgz#0d1cd6d04eb2df0327446188cd13736a3367d681" + integrity sha512-c4PR2egjNjI1um6bamCQ6bUNPDiyofNQruHvKgHQ4gDUP/ITSVSzNsiI5OWtHOsX323i5ha/kk4YmOZ1Ktg7KA== + dependencies: + anymatch "^3.0.1" + braces "^3.0.2" + glob-parent "^5.0.0" + is-binary-path "^2.1.0" + is-glob "^4.0.1" + normalize-path "^3.0.0" + readdirp "^3.1.1" + optionalDependencies: + fsevents "^2.0.6" + +chownr@^1.0.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.2.tgz#a18f1e0b269c8a6a5d3c86eb298beb14c3dd7bf6" + integrity sha512-GkfeAQh+QNy3wquu9oIZr6SS5x7wGdSgNQvD10X3r+AZr1Oys22HW8kAmDMvNg2+Dm0TeGaEuO8gFwdBXxwO8A== + +cids@~0.7.0, cids@~0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/cids/-/cids-0.7.1.tgz#d8bba49a35a0e82110879b5001abf1039c62347f" + integrity sha512-qEM4j2GKE/BiT6WdUi6cfW8dairhSLTUE8tIdxJG6SvY33Mp/UPjw+xcO0n1zsllgo72BupzKF/44v+Bg8YPPg== + dependencies: + class-is "^1.1.0" + multibase "~0.6.0" + multicodec "~0.5.1" + multihashes "~0.4.14" + +cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" + integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +class-is@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/class-is/-/class-is-1.1.0.tgz#9d3c0fba0440d211d843cec3dedfa48055005825" + integrity sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw== + +cli-cursor@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" + integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= + dependencies: + restore-cursor "^2.0.0" + +cli-spinners@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.2.0.tgz#e8b988d9206c692302d8ee834e7a85c0144d8f77" + integrity sha512-tgU3fKwzYjiLEQgPMD9Jt+JjHVL9kW93FiIMX/l7rivvOD4/LL0Mf7gda3+4U2KJBloybwgj5KEoQgGRioMiKQ== + +cli-table3@~0.5.0: + version "0.5.1" + resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.5.1.tgz#0252372d94dfc40dbd8df06005f48f31f656f202" + integrity sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw== + dependencies: + object-assign "^4.1.0" + string-width "^2.1.1" + optionalDependencies: + colors "^1.1.2" + +clone@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" + integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= + +code-point-at@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + +colors@^1.1.2, colors@^1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.3.3.tgz#39e005d546afe01e01f9c4ca8fa50f686a01205d" + integrity sha512-mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg== + +combined-stream@^1.0.6, combined-stream@~1.0.6: + version "1.0.8" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== + dependencies: + delayed-stream "~1.0.0" + +commander@^2.12.2, commander@^2.15.0: + version "2.20.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422" + integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + +"concat-stream@github:hugomrdias/concat-stream#feat/smaller": + version "2.0.0" + resolved "https://codeload.github.com/hugomrdias/concat-stream/tar.gz/057bc7b5d6d8df26c8cf00a3f151b6721a0a8034" + dependencies: + inherits "^2.0.3" + readable-stream "^3.0.2" + +console-control-strings@^1.0.0, console-control-strings@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= + +core-util-is@1.0.2, core-util-is@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + +cosmiconfig@5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.1.0.tgz#6c5c35e97f37f985061cdf653f114784231185cf" + integrity sha512-kCNPvthka8gvLtzAxQXvWo4FxqRB+ftRZyPZNuab5ngvM9Y7yw7hbEysglptLgpkGX9nAOKTBVkHUAe8xtYR6Q== + dependencies: + import-fresh "^2.0.0" + is-directory "^0.3.1" + js-yaml "^3.9.0" + lodash.get "^4.4.2" + parse-json "^4.0.0" + +create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" + integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== + dependencies: + cipher-base "^1.0.1" + inherits "^2.0.1" + md5.js "^1.3.4" + ripemd160 "^2.0.1" + sha.js "^2.4.0" + +create-hmac@^1.1.4: + version "1.1.7" + resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" + integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== + dependencies: + cipher-base "^1.0.3" + create-hash "^1.1.0" + inherits "^2.0.1" + ripemd160 "^2.0.0" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +cross-spawn@^6.0.0, cross-spawn@^6.0.5: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + +dashdash@^1.12.0: + version "1.14.1" + resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= + dependencies: + assert-plus "^1.0.0" + +debug@=3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== + dependencies: + ms "2.0.0" + +debug@^4.1.0, debug@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" + integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== + dependencies: + ms "^2.1.1" + +decamelize@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= + +decompress-response@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" + integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= + dependencies: + mimic-response "^1.0.0" + +deep-extend@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" + integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== + +defaults@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" + integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= + dependencies: + clone "^1.0.2" + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= + +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= + +delimit-stream@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/delimit-stream/-/delimit-stream-0.1.0.tgz#9b8319477c0e5f8aeb3ce357ae305fc25ea1cd2b" + integrity sha1-m4MZR3wOX4rrPONXrjBfwl6hzSs= + +detect-libc@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" + integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= + +detect-node@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" + integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== + +drbg.js@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/drbg.js/-/drbg.js-1.0.1.tgz#3e36b6c42b37043823cdbc332d58f31e2445480b" + integrity sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs= + dependencies: + browserify-aes "^1.0.6" + create-hash "^1.1.2" + create-hmac "^1.1.4" + +ecc-jsbn@~0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" + integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= + dependencies: + jsbn "~0.1.0" + safer-buffer "^2.1.0" + +ejs@^2.6.1: + version "2.6.2" + resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.6.2.tgz#3a32c63d1cd16d11266cd4703b14fec4e74ab4f6" + integrity sha512-PcW2a0tyTuPHz3tWyYqtK6r1fZ3gp+3Sop8Ph+ZYN81Ob5rwmbHEzaqs10N3BEsaGTkh/ooniXK+WwszGlc2+Q== + +elliptic@^6.4.1: + version "6.5.0" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.0.tgz#2b8ed4c891b7de3200e14412a5b8248c7af505ca" + integrity sha512-eFOJTMyCYb7xtE/caJ6JJu+bhi67WCYNbkGSknu20pmM8Ke/bqOfdnZWxyoGN26JgfxTbXrsCkEw4KheCT/KGg== + dependencies: + bn.js "^4.4.0" + brorand "^1.0.1" + hash.js "^1.0.0" + hmac-drbg "^1.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.0" + +end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" + integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q== + dependencies: + once "^1.4.0" + +enquirer@2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.1.tgz#f1bf52ea38470525f41412d723a62ba6868559c6" + integrity sha512-7slmHsJY+mvnIrzD0Z0FfTFLmVJuIzRNCW72X9s35BshOoC+MI4jLJ8aPyAC/BelAirXBZB+Mu1wSqP0wpW4Kg== + dependencies: + ansi-colors "^3.2.1" + +err-code@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/err-code/-/err-code-1.1.2.tgz#06e0116d3028f6aef4806849eb0ea6a748ae6960" + integrity sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA= + +error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + dependencies: + is-arrayish "^0.2.1" + +es6-promise@^4.0.3: + version "4.2.8" + resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a" + integrity sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w== + +es6-promisify@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-5.0.0.tgz#5109d62f3e56ea967c4b63505aef08291c8a5203" + integrity sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM= + dependencies: + es6-promise "^4.0.3" + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + +esprima@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== + +evp_bytestokey@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" + integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== + dependencies: + md5.js "^1.3.4" + safe-buffer "^5.1.1" + +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== + dependencies: + cross-spawn "^6.0.0" + get-stream "^4.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + +expand-template@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" + integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== + +extend@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== + +extsprintf@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= + +extsprintf@^1.2.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" + integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= + +eyes@^0.1.8: + version "0.1.8" + resolved "https://registry.yarnpkg.com/eyes/-/eyes-0.1.8.tgz#62cf120234c683785d902348a800ef3e0cc20bc0" + integrity sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A= + +fast-deep-equal@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" + integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= + +fast-json-stable-stringify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" + integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I= + +file-uri-to-path@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" + integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== + +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + +flatmap@0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/flatmap/-/flatmap-0.0.3.tgz#1f18a4d938152d495965f9c958d923ab2dd669b4" + integrity sha1-Hxik2TgVLUlZZfnJWNkjqy3WabQ= + +follow-redirects@1.5.10: + version "1.5.10" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.10.tgz#7b7a9f9aea2fdff36786a94ff643ed07f4ff5e2a" + integrity sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ== + dependencies: + debug "=3.1.0" + +forever-agent@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" + integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= + +form-data@~2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" + integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.6" + mime-types "^2.1.12" + +fs-constants@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" + integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== + +fs-extra@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" + integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^4.0.0" + universalify "^0.1.0" + +fs-jetpack@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/fs-jetpack/-/fs-jetpack-2.2.2.tgz#c3737c585a618d8d636f76165c881b985493d6fd" + integrity sha512-USJrUxck7SIXSvYPzU5fuR5iqLHRDSzb0kHvCJlQhUGEVai3P9yZDu/2b+bAzprbWLCc2YcslxBLBUInDmYkYA== + dependencies: + minimatch "^3.0.2" + rimraf "^2.6.3" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + +fsevents@^2.0.6: + version "2.0.7" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.0.7.tgz#382c9b443c6cbac4c57187cdda23aa3bf1ccfc2a" + integrity sha512-a7YT0SV3RB+DjYcppwVDLtn13UQnmg0SWZS7ezZD0UjnLwXmy8Zm21GMVGLaFGimIqcvyMQaOJBrop8MyOp1kQ== + +gauge@~2.7.3: + version "2.7.4" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" + integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= + dependencies: + aproba "^1.0.3" + console-control-strings "^1.0.0" + has-unicode "^2.0.0" + object-assign "^4.1.0" + signal-exit "^3.0.0" + string-width "^1.0.1" + strip-ansi "^3.0.1" + wide-align "^1.1.0" + +get-stream@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== + dependencies: + pump "^3.0.0" + +getpass@^0.1.1: + version "0.1.7" + resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= + dependencies: + assert-plus "^1.0.0" + +github-from-package@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" + integrity sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4= + +glob-parent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.0.0.tgz#1dc99f0f39b006d3e92c2c284068382f0c20e954" + integrity sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg== + dependencies: + is-glob "^4.0.1" + +glob@^7.1.2, glob@^7.1.3: + version "7.1.4" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" + integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +gluegun@^3.0.0: + version "3.3.3" + resolved "https://registry.yarnpkg.com/gluegun/-/gluegun-3.3.3.tgz#ddedf1db9c91cd4e52104f6184eb3003a35e3148" + integrity sha512-1Iq8Mjh58MxhArMqmfsoO9thgK8tiDLDMQCnCS8LTNg176bTOAqRn3PIxW+wh9Z6KtofVXbyKI5COzDAFtzuzw== + dependencies: + apisauce "^1.0.1" + app-module-path "^2.2.0" + cli-table3 "~0.5.0" + colors "^1.3.3" + cosmiconfig "5.1.0" + cross-spawn "^6.0.5" + ejs "^2.6.1" + enquirer "2.3.1" + execa "^1.0.0" + fs-jetpack "^2.2.2" + lodash.camelcase "^4.3.0" + lodash.kebabcase "^4.1.1" + lodash.lowercase "^4.3.0" + lodash.lowerfirst "^4.3.1" + lodash.pad "^4.5.1" + lodash.padend "^4.6.1" + lodash.padstart "^4.6.1" + lodash.repeat "^4.1.0" + lodash.snakecase "^4.1.1" + lodash.startcase "^4.4.0" + lodash.trim "^4.5.1" + lodash.trimend "^4.5.1" + lodash.trimstart "^4.5.1" + lodash.uppercase "^4.3.0" + lodash.upperfirst "^4.3.1" + ora "^3.4.0" + pluralize "^8.0.0" + ramdasauce "^2.1.0" + semver "^6.1.1" + which "^1.2.14" + yargs-parser "^12.0.0" + +graceful-fs@^4.1.6, graceful-fs@^4.2.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.1.tgz#1c1f0c364882c868f5bff6512146328336a11b1d" + integrity sha512-b9usnbDGnD928gJB3LrCmxoibr3VE4U2SMo5PBuBnokWyDADTqDPXg4YpwKF1trpH+UbGp7QLicO3+aWEy0+mw== + +graphql@^14.0.2: + version "14.4.2" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-14.4.2.tgz#553a7d546d524663eda49ed6df77577be3203ae3" + integrity sha512-6uQadiRgnpnSS56hdZUSvFrVcQ6OF9y6wkxJfKquFtHlnl7+KSuWwSJsdwiK1vybm1HgcdbpGkCpvhvsVQ0UZQ== + dependencies: + iterall "^1.2.2" + +har-schema@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" + integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= + +har-validator@~5.1.0: + version "5.1.3" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080" + integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g== + dependencies: + ajv "^6.5.5" + har-schema "^2.0.0" + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + +has-unicode@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= + +hash-base@^3.0.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" + integrity sha1-X8hoaEfs1zSZQDMZprCj8/auSRg= + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + +hi-base32@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/hi-base32/-/hi-base32-0.5.0.tgz#61329f76a31f31008533f1c36f2473e259d64571" + integrity sha512-DDRmxSyoYuvjUb9EnXdoiMChBZ7ZcUVJsK5Frd3kqMhuBxvmZdnBeynAVfj7/ECbn++CekcoprvC/rprHPAtow== + +hmac-drbg@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +http-signature@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= + dependencies: + assert-plus "^1.0.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + +ieee754@^1.1.4, ieee754@^1.1.8: + version "1.1.13" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" + integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg== + +immutable@^3.8.2: + version "3.8.2" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.8.2.tgz#c2439951455bb39913daf281376f1530e104adf3" + integrity sha1-wkOZUUVbs5kT2vKBN28VMOEErfM= + +import-fresh@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" + integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= + dependencies: + caller-path "^2.0.0" + resolve-from "^3.0.0" + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +ini@~1.3.0: + version "1.3.5" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" + integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== + +ip-regex@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" + integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= + +ip@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" + integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= + +ipfs-block@~0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/ipfs-block/-/ipfs-block-0.8.1.tgz#05e1068832775e8f1c2da5b64106cc837fd2acb9" + integrity sha512-0FaCpmij+jZBoUYhjoB5ptjdl9QzvrdRIoBmUU5JiBnK2GA+4YM/ifklaB8ePRhA/rRzhd+KYBjvMFMAL4NrVQ== + dependencies: + cids "~0.7.0" + class-is "^1.1.0" + +ipfs-http-client@^33.1.0: + version "33.1.1" + resolved "https://registry.yarnpkg.com/ipfs-http-client/-/ipfs-http-client-33.1.1.tgz#6ddc13e86f8db768093290b19537d2388c74dd45" + integrity sha512-iwtLL3lOIzxXJFwLnOEtFUv1cYTuWJ0NauD7rpMEd/y4C7z6fuN6TSF4h547lxMh7sJWv+6Z0PmOA5N8FzUHJw== + dependencies: + async "^2.6.1" + bignumber.js "^9.0.0" + bl "^3.0.0" + bs58 "^4.0.1" + buffer "^5.2.1" + cids "~0.7.1" + concat-stream "github:hugomrdias/concat-stream#feat/smaller" + debug "^4.1.0" + detect-node "^2.0.4" + end-of-stream "^1.4.1" + err-code "^1.1.2" + flatmap "0.0.3" + glob "^7.1.3" + ipfs-block "~0.8.1" + ipfs-utils "~0.0.3" + ipld-dag-cbor "~0.15.0" + ipld-dag-pb "~0.17.3" + ipld-raw "^4.0.0" + is-ipfs "~0.6.1" + is-pull-stream "0.0.0" + is-stream "^2.0.0" + iso-stream-http "~0.1.2" + iso-url "~0.4.6" + just-kebab-case "^1.1.0" + just-map-keys "^1.1.0" + kind-of "^6.0.2" + lru-cache "^5.1.1" + multiaddr "^6.0.6" + multibase "~0.6.0" + multicodec "~0.5.1" + multihashes "~0.4.14" + ndjson "github:hugomrdias/ndjson#feat/readable-stream3" + once "^1.4.0" + peer-id "~0.12.2" + peer-info "~0.15.1" + promisify-es6 "^1.0.3" + pull-defer "~0.2.3" + pull-stream "^3.6.9" + pull-to-stream "~0.1.1" + pump "^3.0.0" + qs "^6.5.2" + readable-stream "^3.1.1" + stream-to-pull-stream "^1.7.2" + tar-stream "^2.0.1" + through2 "^3.0.1" + +ipfs-utils@~0.0.3: + version "0.0.4" + resolved "https://registry.yarnpkg.com/ipfs-utils/-/ipfs-utils-0.0.4.tgz#946114cfeb6afb4454b4ccb10d2327cd323b0cce" + integrity sha512-7cZf6aGj2FG3XJWhCNwn4mS93Q0GEWjtBZvEHqzgI43U2qzNDCyzfS1pei1Y5F+tw/zDJ5U4XG0G9reJxR53Ig== + dependencies: + buffer "^5.2.1" + is-buffer "^2.0.3" + is-electron "^2.2.0" + is-pull-stream "0.0.0" + is-stream "^2.0.0" + kind-of "^6.0.2" + readable-stream "^3.4.0" + +ipld-dag-cbor@~0.15.0: + version "0.15.0" + resolved "https://registry.yarnpkg.com/ipld-dag-cbor/-/ipld-dag-cbor-0.15.0.tgz#1fbebef1c2d8b980fb18b94f96ec3c1f1d32f860" + integrity sha512-wc9nrDtV4Le76UUhG4LXX57NVi5d7JS2kLid2nOYZAcr0SFhiXZL2ZyV3bfmNohO50KvgPEessSaBBSm9bflGA== + dependencies: + borc "^2.1.0" + cids "~0.7.0" + is-circular "^1.0.2" + multicodec "~0.5.0" + multihashing-async "~0.7.0" + +ipld-dag-pb@~0.17.3: + version "0.17.4" + resolved "https://registry.yarnpkg.com/ipld-dag-pb/-/ipld-dag-pb-0.17.4.tgz#080841cfdd014d996f8da7f3a522ec8b1f6b6494" + integrity sha512-YwCxETEMuXVspOKOhjIOHJvKvB/OZfCDkpSFiYBQN2/JQjM9y/RFCYzIQGm0wg7dCFLrhvfjAZLTSaKs65jzWA== + dependencies: + cids "~0.7.0" + class-is "^1.1.0" + multicodec "~0.5.1" + multihashing-async "~0.7.0" + protons "^1.0.1" + stable "~0.1.8" + +ipld-raw@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/ipld-raw/-/ipld-raw-4.0.0.tgz#dd31f75dba2fad9cc8bb084d07ce1ea74fd47734" + integrity sha512-yNQG5zQqm/RH8aNQxcvcsAdHJW4q+LJ3cPfFzHOtujEa/PRlT5YCOVpAFh61HfpsWFm2GJrb2G+HHgtDDlFSMw== + dependencies: + cids "~0.7.0" + multicodec "~0.5.0" + multihashing-async "~0.7.0" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + +is-binary-path@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-buffer@^2.0.2, is-buffer@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.3.tgz#4ecf3fcf749cbd1e472689e109ac66261a25e725" + integrity sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw== + +is-circular@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-circular/-/is-circular-1.0.2.tgz#2e0ab4e9835f4c6b0ea2b9855a84acd501b8366c" + integrity sha512-YttjnrswnUYRVJvxCvu8z+PGMUSzC2JttP0OEXezlAEdp3EXzhf7IZ3j0gRAybJBQupedIZFhY61Tga6E0qASA== + +is-directory@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" + integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= + +is-electron@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-electron/-/is-electron-2.2.0.tgz#8943084f09e8b731b3a7a0298a7b5d56f6b7eef0" + integrity sha512-SpMppC2XR3YdxSzczXReBjqs2zGscWQpBIKqwXYBFic0ERaxNVgwLCHwOLZeESfdJQjX0RDvrJ1lBXX2ij+G1Q== + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + +is-fullwidth-code-point@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= + dependencies: + number-is-nan "^1.0.0" + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= + +is-glob@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" + integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== + dependencies: + is-extglob "^2.1.1" + +is-ip@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-ip/-/is-ip-2.0.0.tgz#68eea07e8a0a0a94c2d080dd674c731ab2a461ab" + integrity sha1-aO6gfooKCpTC0IDdZ0xzGrKkYas= + dependencies: + ip-regex "^2.0.0" + +is-ipfs@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/is-ipfs/-/is-ipfs-0.6.1.tgz#c85069c73275dc6a60673c791a9be731e2b4bfc4" + integrity sha512-WhqQylam6pODS2RyqT/u0PR5KWtBZNCgPjgargFOVQjzw/3+6d0midXenzU65klM4LH13IUiCC6ObhDUdXZ7Nw== + dependencies: + bs58 "^4.0.1" + cids "~0.7.0" + mafmt "^6.0.7" + multiaddr "^6.0.4" + multibase "~0.6.0" + multihashes "~0.4.13" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-promise@~1, is-promise@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-1.0.1.tgz#31573761c057e33c2e91aab9e96da08cefbe76e5" + integrity sha1-MVc3YcBX4zwukaq56W2gjO++duU= + +is-pull-stream@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/is-pull-stream/-/is-pull-stream-0.0.0.tgz#a3bc3d1c6d3055151c46bde6f399efed21440ca9" + integrity sha1-o7w9HG0wVRUcRr3m85nv7SFEDKk= + +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= + +is-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3" + integrity sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw== + +is-typedarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= + +isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + +iso-random-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/iso-random-stream/-/iso-random-stream-1.1.0.tgz#c1dc1bb43dd8da6524df9cbc6253b010806585c8" + integrity sha512-ywSWt0KrWcsaK0jVoVJIR30rLyjg9Rw3k2Sm/qp+3tdtSV0SNH7L7KilKnENcENOSoJxDFvpt2idvuMMQohdCQ== + +iso-stream-http@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/iso-stream-http/-/iso-stream-http-0.1.2.tgz#b3dfea4c9f23ff26d078d40c539cfc0dfebacd37" + integrity sha512-oHEDNOysIMTNypbg2f1SlydqRBvjl4ZbSE9+0awVxnkx3K2stGTFwB/kpVqnB6UEfF8QD36kAjDwZvqyXBLMnQ== + dependencies: + builtin-status-codes "^3.0.0" + inherits "^2.0.1" + readable-stream "^3.1.1" + +iso-url@~0.4.4, iso-url@~0.4.6: + version "0.4.6" + resolved "https://registry.yarnpkg.com/iso-url/-/iso-url-0.4.6.tgz#45005c4af4984cad4f8753da411b41b74cf0a8a6" + integrity sha512-YQO7+aIe6l1aSJUKOx+Vrv08DlhZeLFIVfehG2L29KLSEb9RszqPXilxJRVpp57px36BddKR5ZsebacO5qG0tg== + +isstream@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= + +iterall@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.2.2.tgz#92d70deb8028e0c39ff3164fdbf4d8b088130cd7" + integrity sha512-yynBb1g+RFUPY64fTrFv7nsjRrENBQJaX2UL+2Szc9REFrSNm1rpSXHGzhmAy7a9uv3vlvgBlXnf9RqmPH1/DA== + +jayson@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/jayson/-/jayson-3.0.2.tgz#3fdd1ba8d780fe4600d2f9aa80a8639f3a799b08" + integrity sha512-jru45VNl0S9tkwNxd9ZlAwAJpAFZaCTy9GVgPhDocCSs32bysslYTrbvTq/QrrFDLp2q6M81q3S6qxvS43AMPg== + dependencies: + "@types/node" "^10.3.5" + JSONStream "^1.3.1" + commander "^2.12.2" + es6-promisify "^5.0.0" + eyes "^0.1.8" + json-stringify-safe "^5.0.1" + lodash "^4.17.11" + uuid "^3.2.1" + +js-sha3@~0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" + integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== + +js-yaml@^3.13.1, js-yaml@^3.9.0: + version "3.13.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" + integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +jsbn@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= + +json-parse-better-errors@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" + integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-schema@0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" + integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= + +json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= + +json-text-sequence@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/json-text-sequence/-/json-text-sequence-0.1.1.tgz#a72f217dc4afc4629fff5feb304dc1bd51a2f3d2" + integrity sha1-py8hfcSvxGKf/1/rME3BvVGi89I= + dependencies: + delimit-stream "0.1.0" + +jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= + optionalDependencies: + graceful-fs "^4.1.6" + +jsonparse@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" + integrity sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA= + +jsprim@^1.2.2: + version "1.4.1" + resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" + integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= + dependencies: + assert-plus "1.0.0" + extsprintf "1.3.0" + json-schema "0.2.3" + verror "1.10.0" + +just-kebab-case@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/just-kebab-case/-/just-kebab-case-1.1.0.tgz#ebe854fde84b0afa4e597fcd870b12eb3c026755" + integrity sha512-QkuwuBMQ9BQHMUEkAtIA4INLrkmnnveqlFB1oFi09gbU0wBdZo6tTnyxNWMR84zHxBuwK7GLAwqN8nrvVxOLTA== + +just-map-keys@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/just-map-keys/-/just-map-keys-1.1.0.tgz#9663c9f971ba46e17f2b05e66fec81149375f230" + integrity sha512-oNKi+4y7fr8lXnhKYpBbCkiwHRVkAnx0VDkCeTDtKKMzGr1Lz1Yym+RSieKUTKim68emC5Yxrb4YmiF9STDO+g== + +keypair@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/keypair/-/keypair-1.0.1.tgz#7603719270afb6564ed38a22087a06fc9aa4ea1b" + integrity sha1-dgNxknCvtlZO04oiCHoG/Jqk6hs= + +keytar@^4.6.0: + version "4.13.0" + resolved "https://registry.yarnpkg.com/keytar/-/keytar-4.13.0.tgz#f3484988e87e692958ce901a36c850422093def0" + integrity sha512-qdyZ3XDuv11ANDXJ+shsmc+j/h5BHPDSn33MwkUMDg2EA++xEBleNkghr3Jg95cqVx5WgDYD8V/m3Q0y7kwQ2w== + dependencies: + nan "2.14.0" + prebuild-install "5.3.0" + +kind-of@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" + integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA== + +libp2p-crypto-secp256k1@~0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/libp2p-crypto-secp256k1/-/libp2p-crypto-secp256k1-0.3.1.tgz#4cbeb857f5cfe5fefb1253e6b2994420c0ca166e" + integrity sha512-evrfK/CeUSd/lcELUdDruyPBvxDmLairth75S32OLl3H+++2m2fV24JEtxzdFS9JH3xEFw0h6JFO8DBa1bP9dA== + dependencies: + async "^2.6.2" + bs58 "^4.0.1" + multihashing-async "~0.6.0" + nodeify "^1.0.1" + safe-buffer "^5.1.2" + secp256k1 "^3.6.2" + +libp2p-crypto@~0.16.1: + version "0.16.1" + resolved "https://registry.yarnpkg.com/libp2p-crypto/-/libp2p-crypto-0.16.1.tgz#40aa07e95a0a7fe6887ea3868625e74c81c34d75" + integrity sha512-+fxqy+cDjwOKK4KTj44WQmjPE5ep2eR5uAIQWHl/+RKvRSor3+RAY53VWkAecgAEvjX2AswxBsoCIJK1Qk5aIQ== + dependencies: + asmcrypto.js "^2.3.2" + asn1.js "^5.0.1" + async "^2.6.1" + bn.js "^4.11.8" + browserify-aes "^1.2.0" + bs58 "^4.0.1" + iso-random-stream "^1.1.0" + keypair "^1.0.1" + libp2p-crypto-secp256k1 "~0.3.0" + multihashing-async "~0.5.1" + node-forge "~0.7.6" + pem-jwk "^2.0.0" + protons "^1.0.1" + rsa-pem-to-jwk "^1.1.3" + tweetnacl "^1.0.0" + ursa-optional "~0.9.10" + +lodash.camelcase@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" + integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= + +lodash.get@^4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" + integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= + +lodash.kebabcase@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz#8489b1cb0d29ff88195cceca448ff6d6cc295c36" + integrity sha1-hImxyw0p/4gZXM7KRI/21swpXDY= + +lodash.lowercase@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/lodash.lowercase/-/lodash.lowercase-4.3.0.tgz#46515aced4acb0b7093133333af068e4c3b14e9d" + integrity sha1-RlFaztSssLcJMTMzOvBo5MOxTp0= + +lodash.lowerfirst@^4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/lodash.lowerfirst/-/lodash.lowerfirst-4.3.1.tgz#de3c7b12e02c6524a0059c2f6cb7c5c52655a13d" + integrity sha1-3jx7EuAsZSSgBZwvbLfFxSZVoT0= + +lodash.pad@^4.5.1: + version "4.5.1" + resolved "https://registry.yarnpkg.com/lodash.pad/-/lodash.pad-4.5.1.tgz#4330949a833a7c8da22cc20f6a26c4d59debba70" + integrity sha1-QzCUmoM6fI2iLMIPaibE1Z3runA= + +lodash.padend@^4.6.1: + version "4.6.1" + resolved "https://registry.yarnpkg.com/lodash.padend/-/lodash.padend-4.6.1.tgz#53ccba047d06e158d311f45da625f4e49e6f166e" + integrity sha1-U8y6BH0G4VjTEfRdpiX05J5vFm4= + +lodash.padstart@^4.6.1: + version "4.6.1" + resolved "https://registry.yarnpkg.com/lodash.padstart/-/lodash.padstart-4.6.1.tgz#d2e3eebff0d9d39ad50f5cbd1b52a7bce6bb611b" + integrity sha1-0uPuv/DZ05rVD1y9G1KnvOa7YRs= + +lodash.repeat@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/lodash.repeat/-/lodash.repeat-4.1.0.tgz#fc7de8131d8c8ac07e4b49f74ffe829d1f2bec44" + integrity sha1-/H3oEx2MisB+S0n3T/6CnR8r7EQ= + +lodash.snakecase@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz#39d714a35357147837aefd64b5dcbb16becd8f8d" + integrity sha1-OdcUo1NXFHg3rv1ktdy7Fr7Nj40= + +lodash.startcase@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.startcase/-/lodash.startcase-4.4.0.tgz#9436e34ed26093ed7ffae1936144350915d9add8" + integrity sha1-lDbjTtJgk+1/+uGTYUQ1CRXZrdg= + +lodash.trim@^4.5.1: + version "4.5.1" + resolved "https://registry.yarnpkg.com/lodash.trim/-/lodash.trim-4.5.1.tgz#36425e7ee90be4aa5e27bcebb85b7d11ea47aa57" + integrity sha1-NkJefukL5KpeJ7zruFt9EepHqlc= + +lodash.trimend@^4.5.1: + version "4.5.1" + resolved "https://registry.yarnpkg.com/lodash.trimend/-/lodash.trimend-4.5.1.tgz#12804437286b98cad8996b79414e11300114082f" + integrity sha1-EoBENyhrmMrYmWt5QU4RMAEUCC8= + +lodash.trimstart@^4.5.1: + version "4.5.1" + resolved "https://registry.yarnpkg.com/lodash.trimstart/-/lodash.trimstart-4.5.1.tgz#8ff4dec532d82486af59573c39445914e944a7f1" + integrity sha1-j/TexTLYJIavWVc8OURZFOlEp/E= + +lodash.uppercase@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/lodash.uppercase/-/lodash.uppercase-4.3.0.tgz#c404abfd1469f93931f9bb24cf6cc7d57059bc73" + integrity sha1-xASr/RRp+Tkx+bskz2zH1XBZvHM= + +lodash.upperfirst@^4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz#1365edf431480481ef0d1c68957a5ed99d49f7ce" + integrity sha1-E2Xt9DFIBIHvDRxolXpe2Z1J984= + +lodash@^4.17.11, lodash@^4.17.14: + version "4.17.15" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" + integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== + +log-symbols@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" + integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg== + dependencies: + chalk "^2.0.1" + +long@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28" + integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA== + +looper@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/looper/-/looper-3.0.0.tgz#2efa54c3b1cbaba9b94aee2e5914b0be57fbb749" + integrity sha1-LvpUw7HLq6m5Su4uWRSwvlf7t0k= + +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + dependencies: + yallist "^3.0.2" + +mafmt@^6.0.2, mafmt@^6.0.7: + version "6.0.7" + resolved "https://registry.yarnpkg.com/mafmt/-/mafmt-6.0.7.tgz#80312e08bfba0f89e2daa403525f33e07d9b97fa" + integrity sha512-2OG/EGAJZmpZBl7YRT1hD83sZa2gKsUEdegRuURreIOe7B4VeHU1rYYmhgk7BkLzknGL3xGYsDx3bbSgEEzE7g== + dependencies: + multiaddr "^6.0.4" + +md5.js@^1.3.4: + version "1.3.5" + resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" + integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + safe-buffer "^5.1.2" + +mime-db@1.40.0: + version "1.40.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.40.0.tgz#a65057e998db090f732a68f6c276d387d4126c32" + integrity sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA== + +mime-types@^2.1.12, mime-types@~2.1.19: + version "2.1.24" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.24.tgz#b6f8d0b3e951efb77dedeca194cff6d16f676f81" + integrity sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ== + dependencies: + mime-db "1.40.0" + +mimic-fn@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" + integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ== + +mimic-response@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" + integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== + +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== + +minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= + +minimatch@^3.0.2, minimatch@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== + dependencies: + brace-expansion "^1.1.7" + +minimist@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= + +minimist@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" + integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= + +mkdirp@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" + integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= + dependencies: + minimist "0.0.8" + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + +ms@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +multiaddr@^6.0.3, multiaddr@^6.0.4, multiaddr@^6.0.6: + version "6.1.0" + resolved "https://registry.yarnpkg.com/multiaddr/-/multiaddr-6.1.0.tgz#1f93afce58a33db5cc32a5917d8a14105d94330e" + integrity sha512-+XTP3OzG2m6JVcjxA9QBmGDr0Vk8WwnohC/fCC3puXb5qJqfJwLVJLEtdTc6vK7ri/hw+Nn4wyT4LkZaPnvGfQ== + dependencies: + bs58 "^4.0.1" + class-is "^1.1.0" + hi-base32 "~0.5.0" + ip "^1.1.5" + is-ip "^2.0.0" + varint "^5.0.0" + +multibase@~0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.6.0.tgz#0216e350614c7456da5e8e5b20d3fcd4c9104f56" + integrity sha512-R9bNLQhbD7MsitPm1NeY7w9sDgu6d7cuj25snAWH7k5PSNPSwIQQBpcpj8jx1W96dLbdigZqmUWOdQRMnAmgjA== + dependencies: + base-x "3.0.4" + +multicodec@~0.5.0, multicodec@~0.5.1: + version "0.5.5" + resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-0.5.5.tgz#55c2535b44eca9ea40a13771420153fe075bb36d" + integrity sha512-1kOifvwAqp9IdiiTKmpK2tS+LY6GHZdKpk3S2EvW4T32vlwDyA3hJoZtGauzqdedUPVNGChnTksEotVOCVlC+Q== + dependencies: + varint "^5.0.0" + +multihashes@~0.4.13, multihashes@~0.4.14, multihashes@~0.4.15: + version "0.4.15" + resolved "https://registry.yarnpkg.com/multihashes/-/multihashes-0.4.15.tgz#6dbc55f7f312c6782f5367c03c9783681589d8a6" + integrity sha512-G/Smj1GWqw1RQP3dRuRRPe3oyLqvPqUaEDIaoi7JF7Loxl4WAWvhJNk84oyDEodSucv0MmSW/ZT0RKUrsIFD3g== + dependencies: + bs58 "^4.0.1" + varint "^5.0.0" + +multihashing-async@~0.5.1: + version "0.5.2" + resolved "https://registry.yarnpkg.com/multihashing-async/-/multihashing-async-0.5.2.tgz#4af40e0dde2f1dbb12a7c6b265181437ac26b9de" + integrity sha512-mmyG6M/FKxrpBh9xQDUvuJ7BbqT93ZeEeH5X6LeMYKoYshYLr9BDdCsvDtZvn+Egf+/Xi+aOznrWL4vp3s+p0Q== + dependencies: + blakejs "^1.1.0" + js-sha3 "~0.8.0" + multihashes "~0.4.13" + murmurhash3js "^3.0.1" + nodeify "^1.0.1" + +multihashing-async@~0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/multihashing-async/-/multihashing-async-0.6.0.tgz#c1fc6696a624b9bf39b160b0c4c4e7ba3f394453" + integrity sha512-Qv8pgg99Lewc191A5nlXy0bSd2amfqlafNJZmarU6Sj7MZVjpR94SCxQjf4DwPtgWZkiLqsjUQBXA2RSq+hYyA== + dependencies: + blakejs "^1.1.0" + js-sha3 "~0.8.0" + multihashes "~0.4.13" + murmurhash3js "^3.0.1" + nodeify "^1.0.1" + +multihashing-async@~0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/multihashing-async/-/multihashing-async-0.7.0.tgz#3234fb98295be84386b85bfd20377d3e5be20d6b" + integrity sha512-SCbfl3f+DzJh+/5piukga9ofIOxwfT05t8R4jfzZIJ88YE9zU9+l3K2X+XB19MYyxqvyK9UJRNWbmQpZqQlbRA== + dependencies: + blakejs "^1.1.0" + buffer "^5.2.1" + err-code "^1.1.2" + js-sha3 "~0.8.0" + multihashes "~0.4.13" + murmurhash3js-revisited "^3.0.0" + +murmurhash3js-revisited@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/murmurhash3js-revisited/-/murmurhash3js-revisited-3.0.0.tgz#6bd36e25de8f73394222adc6e41fa3fac08a5869" + integrity sha512-/sF3ee6zvScXMb1XFJ8gDsSnY+X8PbOyjIuBhtgis10W2Jx4ZjIhikUCIF9c4gpJxVnQIsPAFrSwTCuAjicP6g== + +murmurhash3js@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/murmurhash3js/-/murmurhash3js-3.0.1.tgz#3e983e5b47c2a06f43a713174e7e435ca044b998" + integrity sha1-Ppg+W0fCoG9DpxMXTn5DXKBEuZg= + +nan@2.14.0, nan@^2.11.1, nan@^2.14.0: + version "2.14.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" + integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== + +napi-build-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/napi-build-utils/-/napi-build-utils-1.0.1.tgz#1381a0f92c39d66bf19852e7873432fc2123e508" + integrity sha512-boQj1WFgQH3v4clhu3mTNfP+vOBxorDlE8EKiMjUlLG3C4qAESnn9AxIOkFgTR2c9LtzNjPrjS60cT27ZKBhaA== + +"ndjson@github:hugomrdias/ndjson#feat/readable-stream3": + version "1.5.0" + resolved "https://codeload.github.com/hugomrdias/ndjson/tar.gz/4db16da6b42e5b39bf300c3a7cde62abb3fa3a11" + dependencies: + json-stringify-safe "^5.0.1" + minimist "^1.2.0" + split2 "^3.1.0" + through2 "^3.0.0" + +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== + +node-abi@^2.7.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.10.0.tgz#894bc6625ee042627ed9b5e9270d80bb63ef5045" + integrity sha512-OT0WepUvYHXdki6DU8LWhEkuo3M44i2paWBYtH9qXtPb9YiKlYEKa5WUII20XEcOv7UJPzfB0kZfPZdW46zdkw== + dependencies: + semver "^5.4.1" + +node-fetch@^2.3.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.0.tgz#e633456386d4aa55863f676a7ab0daa8fdecb0fd" + integrity sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA== + +node-forge@~0.7.6: + version "0.7.6" + resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.6.tgz#fdf3b418aee1f94f0ef642cd63486c77ca9724ac" + integrity sha512-sol30LUpz1jQFBjOKwbjxijiE3b6pjd74YwfD0fJOKPjF+fONKb2Yg8rYgS6+bK6VDl+/wfr4IYpC7jDzLUIfw== + +nodeify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/nodeify/-/nodeify-1.0.1.tgz#64ab69a7bdbaf03ce107b4f0335c87c0b9e91b1d" + integrity sha1-ZKtpp7268DzhB7TwM1yHwLnpGx0= + dependencies: + is-promise "~1.0.0" + promise "~1.3.0" + +noop-logger@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/noop-logger/-/noop-logger-0.1.1.tgz#94a2b1633c4f1317553007d8966fd0e841b6a4c2" + integrity sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI= + +normalize-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= + dependencies: + path-key "^2.0.0" + +npmlog@^4.0.1: + version "4.1.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" + integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== + dependencies: + are-we-there-yet "~1.1.2" + console-control-strings "~1.1.0" + gauge "~2.7.3" + set-blocking "~2.0.0" + +number-is-nan@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= + +oauth-sign@~0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" + integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== + +object-assign@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-2.1.1.tgz#43c36e5d569ff8e4816c4efa8be02d26967c18aa" + integrity sha1-Q8NuXVaf+OSBbE76i+AtJpZ8GKo= + +object-assign@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + +once@^1.3.0, once@^1.3.1, once@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + dependencies: + wrappy "1" + +onetime@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" + integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ= + dependencies: + mimic-fn "^1.0.0" + +opencollective-postinstall@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.2.tgz#5657f1bede69b6e33a45939b061eb53d3c6c3a89" + integrity sha512-pVOEP16TrAO2/fjej1IdOyupJY8KDUM1CvsaScRbw6oddvpQoOfGk4ywha0HKKVAD6RkW4x6Q+tNBwhf3Bgpuw== + +optimist@~0.3.5: + version "0.3.7" + resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.3.7.tgz#c90941ad59e4273328923074d2cf2e7cbc6ec0d9" + integrity sha1-yQlBrVnkJzMokjB00s8ufLxuwNk= + dependencies: + wordwrap "~0.0.2" + +ora@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/ora/-/ora-3.4.0.tgz#bf0752491059a3ef3ed4c85097531de9fdbcd318" + integrity sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg== + dependencies: + chalk "^2.4.2" + cli-cursor "^2.1.0" + cli-spinners "^2.0.0" + log-symbols "^2.2.0" + strip-ansi "^5.2.0" + wcwidth "^1.0.1" + +os-homedir@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= + +parse-json@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= + dependencies: + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + +path-key@^2.0.0, path-key@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= + +peer-id@~0.12.2: + version "0.12.4" + resolved "https://registry.yarnpkg.com/peer-id/-/peer-id-0.12.4.tgz#25708b0676ee0a8b0ce32d73fe9c68163ed747c2" + integrity sha512-AIAwL/6CmVc/VKbUhpA1rY3A/VJ3Z9ELvtvDQfl5cIi0A74L7lvsJ6LxQn5JSJVHM5Us2Ng9zMO523dO3FFnnw== + dependencies: + async "^2.6.3" + class-is "^1.1.0" + libp2p-crypto "~0.16.1" + multihashes "~0.4.15" + +peer-info@~0.15.1: + version "0.15.1" + resolved "https://registry.yarnpkg.com/peer-info/-/peer-info-0.15.1.tgz#21254a7c516d0dd046b150120b9aaf1b9ad02146" + integrity sha512-Y91Q2tZRC0CpSTPd1UebhGqniOrOAk/aj60uYUcWJXCoLTAnGu+4LJGoiay8ayudS6ice7l3SKhgL/cS62QacA== + dependencies: + mafmt "^6.0.2" + multiaddr "^6.0.3" + peer-id "~0.12.2" + unique-by "^1.0.0" + +pem-jwk@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pem-jwk/-/pem-jwk-2.0.0.tgz#1c5bb264612fc391340907f5c1de60c06d22f085" + integrity sha512-rFxu7rVoHgQ5H9YsP50dDWf0rHjreVA2z0yPiWr5WdH/UHb29hKtF7h6l8vNd1cbYR1t0QL+JKhW55a2ZV4KtA== + dependencies: + asn1.js "^5.0.1" + +performance-now@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= + +picomatch@^2.0.4: + version "2.0.7" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.0.7.tgz#514169d8c7cd0bdbeecc8a2609e34a7163de69f6" + integrity sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA== + +pkginfo@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.4.1.tgz#b5418ef0439de5425fc4995042dced14fb2a84ff" + integrity sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8= + +pluralize@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" + integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== + +prebuild-install@5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-5.3.0.tgz#58b4d8344e03590990931ee088dd5401b03004c8" + integrity sha512-aaLVANlj4HgZweKttFNUVNRxDukytuIuxeK2boIMHjagNJCiVKWFsKF4tCE3ql3GbrD2tExPQ7/pwtEJcHNZeg== + dependencies: + detect-libc "^1.0.3" + expand-template "^2.0.3" + github-from-package "0.0.0" + minimist "^1.2.0" + mkdirp "^0.5.1" + napi-build-utils "^1.0.1" + node-abi "^2.7.0" + noop-logger "^0.1.1" + npmlog "^4.0.1" + os-homedir "^1.0.1" + pump "^2.0.1" + rc "^1.2.7" + simple-get "^2.7.0" + tar-fs "^1.13.0" + tunnel-agent "^0.6.0" + which-pm-runs "^1.0.0" + +prettier@^1.13.5: + version "1.18.2" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.18.2.tgz#6823e7c5900017b4bd3acf46fe9ac4b4d7bda9ea" + integrity sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw== + +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + +promise@~1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/promise/-/promise-1.3.0.tgz#e5cc9a4c8278e4664ffedc01c7da84842b040175" + integrity sha1-5cyaTIJ45GZP/twBx9qEhCsEAXU= + dependencies: + is-promise "~1" + +promisify-es6@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/promisify-es6/-/promisify-es6-1.0.3.tgz#b012668c4df3c965ce13daac2b3a4d1726a96346" + integrity sha512-N9iVG+CGJsI4b4ZGazjwLnxErD2d9Pe4DPvvXSxYA9tFNu8ymXME4Qs5HIQ0LMJpNM7zj+m0NlNnNeqFpKzqnA== + +protocol-buffers-schema@^3.3.1: + version "3.3.2" + resolved "https://registry.yarnpkg.com/protocol-buffers-schema/-/protocol-buffers-schema-3.3.2.tgz#00434f608b4e8df54c59e070efeefc37fb4bb859" + integrity sha512-Xdayp8sB/mU+sUV4G7ws8xtYMGdQnxbeIfLjyO9TZZRJdztBGhlmbI5x1qcY4TG5hBkIKGnc28i7nXxaugu88w== + +protons@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/protons/-/protons-1.0.1.tgz#1c107144c07fc2d1cb8b6cb76451e6a938237676" + integrity sha512-+0ZKnfVs+4c43tbAQ5j0Mck8wPcLnlxUYzKQoB4iDW4ocdXGnN4P+0dDbgX1FTpoY9+7P2Tn2scJyHHqj+S/lQ== + dependencies: + protocol-buffers-schema "^3.3.1" + safe-buffer "^5.1.1" + signed-varint "^2.0.1" + varint "^5.0.0" + +psl@^1.1.24: + version "1.3.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.3.0.tgz#e1ebf6a3b5564fa8376f3da2275da76d875ca1bd" + integrity sha512-avHdspHO+9rQTLbv1RO+MPYeP/SzsCoxofjVnHanETfQhTJrmB0HlDoW+EiN/R+C0BZ+gERab9NY0lPN2TxNag== + +pull-defer@~0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/pull-defer/-/pull-defer-0.2.3.tgz#4ee09c6d9e227bede9938db80391c3dac489d113" + integrity sha512-/An3KE7mVjZCqNhZsr22k1Tx8MACnUnHZZNPSJ0S62td8JtYr/AiRG42Vz7Syu31SoTLUzVIe61jtT/pNdjVYA== + +pull-stream@^3.2.3, pull-stream@^3.6.9: + version "3.6.14" + resolved "https://registry.yarnpkg.com/pull-stream/-/pull-stream-3.6.14.tgz#529dbd5b86131f4a5ed636fdf7f6af00781357ee" + integrity sha512-KIqdvpqHHaTUA2mCYcLG1ibEbu/LCKoJZsBWyv9lSYtPkJPBq8m3Hxa103xHi6D2thj5YXa0TqK3L3GUkwgnew== + +pull-to-stream@~0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/pull-to-stream/-/pull-to-stream-0.1.1.tgz#fa2058528528e3542b81d6f17cbc42288508ff37" + integrity sha512-thZkMv6F9PILt9zdvpI2gxs19mkDrlixYKX6cOBxAW16i1NZH+yLAmF4r8QfJ69zuQh27e01JZP9y27tsH021w== + dependencies: + readable-stream "^3.1.1" + +pump@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/pump/-/pump-1.0.3.tgz#5dfe8311c33bbf6fc18261f9f34702c47c08a954" + integrity sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pump@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" + integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +punycode@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= + +punycode@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== + +qs@^6.5.2: + version "6.7.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" + integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== + +qs@~6.5.2: + version "6.5.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" + integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== + +ramda@^0.24.1: + version "0.24.1" + resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.24.1.tgz#c3b7755197f35b8dc3502228262c4c91ddb6b857" + integrity sha1-w7d1UZfzW43DUCIoJixMkd22uFc= + +ramda@^0.25.0: + version "0.25.0" + resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.25.0.tgz#8fdf68231cffa90bc2f9460390a0cb74a29b29a9" + integrity sha512-GXpfrYVPwx3K7RQ6aYT8KPS8XViSXUVJT1ONhoKPE9VAleW42YE+U+8VEyGWt41EnEQW7gwecYJriTI0pKoecQ== + +ramdasauce@^2.1.0: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ramdasauce/-/ramdasauce-2.1.3.tgz#acb45ecc7e4fc4d6f39e19989b4a16dff383e9c2" + integrity sha512-Ml3CPim4SKwmg5g9UI77lnRSeKr/kQw7YhQ6rfdMcBYy6DMlwmkEwQqjygJ3OhxPR+NfFfpjKl3Tf8GXckaqqg== + dependencies: + ramda "^0.24.1" + +rc@^1.2.7: + version "1.2.8" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" + integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== + dependencies: + deep-extend "^0.6.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" + +"readable-stream@2 || 3", readable-stream@^3.0.0, readable-stream@^3.0.1, readable-stream@^3.0.2, readable-stream@^3.1.1, readable-stream@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.4.0.tgz#a51c26754658e0a3c21dbf59163bd45ba6f447fc" + integrity sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + +readable-stream@^2.0.6, readable-stream@^2.3.0, readable-stream@^2.3.5: + version "2.3.6" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" + integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~2.0.0" + safe-buffer "~5.1.1" + string_decoder "~1.1.1" + util-deprecate "~1.0.1" + +readdirp@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.1.1.tgz#b158123ac343c8b0f31d65680269cc0fc1025db1" + integrity sha512-XXdSXZrQuvqoETj50+JAitxz1UPdt5dupjT6T5nVB+WvjMv2XKYj+s7hPeAVCXvmJrL36O4YYyWlIC3an2ePiQ== + dependencies: + picomatch "^2.0.4" + +regenerator-runtime@^0.13.2: + version "0.13.3" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz#7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5" + integrity sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw== + +request@^2.88.0: + version "2.88.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" + integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg== + dependencies: + aws-sign2 "~0.7.0" + aws4 "^1.8.0" + caseless "~0.12.0" + combined-stream "~1.0.6" + extend "~3.0.2" + forever-agent "~0.6.1" + form-data "~2.3.2" + har-validator "~5.1.0" + http-signature "~1.2.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.19" + oauth-sign "~0.9.0" + performance-now "^2.1.0" + qs "~6.5.2" + safe-buffer "^5.1.2" + tough-cookie "~2.4.3" + tunnel-agent "^0.6.0" + uuid "^3.3.2" + +resolve-from@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" + integrity sha1-six699nWiBvItuZTM17rywoYh0g= + +restore-cursor@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" + integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368= + dependencies: + onetime "^2.0.0" + signal-exit "^3.0.2" + +rimraf@^2.6.3: + version "2.6.3" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" + integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== + dependencies: + glob "^7.1.3" + +ripemd160@^2.0.0, ripemd160@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" + integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + +rsa-pem-to-jwk@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/rsa-pem-to-jwk/-/rsa-pem-to-jwk-1.1.3.tgz#245e76bdb7e7234cfee7ca032d31b54c38fab98e" + integrity sha1-JF52vbfnI0z+58oDLTG1TDj6uY4= + dependencies: + object-assign "^2.0.0" + rsa-unpack "0.0.6" + +rsa-unpack@0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/rsa-unpack/-/rsa-unpack-0.0.6.tgz#f50ebd56a628378e631f297161026ce9ab4eddba" + integrity sha1-9Q69VqYoN45jHylxYQJs6atO3bo= + dependencies: + optimist "~0.3.5" + +safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" + integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== + +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +secp256k1@^3.6.2: + version "3.7.1" + resolved "https://registry.yarnpkg.com/secp256k1/-/secp256k1-3.7.1.tgz#12e473e0e9a7c2f2d4d4818e722ad0e14cc1e2f1" + integrity sha512-1cf8sbnRreXrQFdH6qsg2H71Xw91fCCS9Yp021GnUNJzWJS/py96fS4lHbnTnouLp08Xj6jBoBB6V78Tdbdu5g== + dependencies: + bindings "^1.5.0" + bip66 "^1.1.5" + bn.js "^4.11.8" + create-hash "^1.2.0" + drbg.js "^1.0.1" + elliptic "^6.4.1" + nan "^2.14.0" + safe-buffer "^5.1.2" + +semver@^5.4.1, semver@^5.5.0: + version "5.7.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" + integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== + +semver@^6.1.1: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + +set-blocking@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= + +sha.js@^2.4.0, sha.js@^2.4.8: + version "2.4.11" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" + integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= + dependencies: + shebang-regex "^1.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= + +signal-exit@^3.0.0, signal-exit@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" + integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= + +signed-varint@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/signed-varint/-/signed-varint-2.0.1.tgz#50a9989da7c98c2c61dad119bc97470ef8528129" + integrity sha1-UKmYnafJjCxh2tEZvJdHDvhSgSk= + dependencies: + varint "~5.0.0" + +simple-concat@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.0.tgz#7344cbb8b6e26fb27d66b2fc86f9f6d5997521c6" + integrity sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY= + +simple-get@^2.7.0: + version "2.8.1" + resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-2.8.1.tgz#0e22e91d4575d87620620bc91308d57a77f44b5d" + integrity sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw== + dependencies: + decompress-response "^3.3.0" + once "^1.3.1" + simple-concat "^1.0.0" + +source-map-support@^0.5.11: + version "0.5.13" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" + integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map@^0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +split2@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/split2/-/split2-3.1.1.tgz#c51f18f3e06a8c4469aaab487687d8d956160bb6" + integrity sha512-emNzr1s7ruq4N+1993yht631/JH+jaj0NYBosuKmLcq+JkGQ9MmTw1RB1fGaTCzUuseRIClrlSLHRNYGwWQ58Q== + dependencies: + readable-stream "^3.0.0" + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + +sshpk@^1.7.0: + version "1.16.1" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" + integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== + dependencies: + asn1 "~0.2.3" + assert-plus "^1.0.0" + bcrypt-pbkdf "^1.0.0" + dashdash "^1.12.0" + ecc-jsbn "~0.1.1" + getpass "^0.1.1" + jsbn "~0.1.0" + safer-buffer "^2.0.2" + tweetnacl "~0.14.0" + +stable@~0.1.8: + version "0.1.8" + resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" + integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== + +stream-to-pull-stream@^1.7.2: + version "1.7.3" + resolved "https://registry.yarnpkg.com/stream-to-pull-stream/-/stream-to-pull-stream-1.7.3.tgz#4161aa2d2eb9964de60bfa1af7feaf917e874ece" + integrity sha512-6sNyqJpr5dIOQdgNy/xcDWwDuzAsAwVzhzrWlAPAQ7Lkjx/rv0wgvxEyKwTq6FmNd5rjTrELt/CLmaSw7crMGg== + dependencies: + looper "^3.0.0" + pull-stream "^3.2.3" + +string-width@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= + dependencies: + code-point-at "^1.0.0" + is-fullwidth-code-point "^1.0.0" + strip-ansi "^3.0.0" + +"string-width@^1.0.2 || 2", string-width@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + +strip-ansi@^3.0.0, strip-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= + dependencies: + ansi-regex "^2.0.0" + +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= + dependencies: + ansi-regex "^3.0.0" + +strip-ansi@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" + integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== + dependencies: + ansi-regex "^4.1.0" + +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= + +strip-json-comments@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +tar-fs@^1.13.0: + version "1.16.3" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-1.16.3.tgz#966a628841da2c4010406a82167cbd5e0c72d509" + integrity sha512-NvCeXpYx7OsmOh8zIOP/ebG55zZmxLE0etfWRbWok+q2Qo8x/vOR/IJT1taADXPe+jsiu9axDb3X4B+iIgNlKw== + dependencies: + chownr "^1.0.1" + mkdirp "^0.5.1" + pump "^1.0.0" + tar-stream "^1.1.2" + +tar-stream@^1.1.2: + version "1.6.2" + resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.6.2.tgz#8ea55dab37972253d9a9af90fdcd559ae435c555" + integrity sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A== + dependencies: + bl "^1.0.0" + buffer-alloc "^1.2.0" + end-of-stream "^1.0.0" + fs-constants "^1.0.0" + readable-stream "^2.3.0" + to-buffer "^1.1.1" + xtend "^4.0.0" + +tar-stream@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.1.0.tgz#d1aaa3661f05b38b5acc9b7020efdca5179a2cc3" + integrity sha512-+DAn4Nb4+gz6WZigRzKEZl1QuJVOLtAwwF+WUxy1fJ6X63CaGaUAxJRD2KEn1OMfcbCjySTYpNC6WmfQoIEOdw== + dependencies: + bl "^3.0.0" + end-of-stream "^1.4.1" + fs-constants "^1.0.0" + inherits "^2.0.3" + readable-stream "^3.1.1" + +through2@^3.0.0, through2@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/through2/-/through2-3.0.1.tgz#39276e713c3302edf9e388dd9c812dd3b825bd5a" + integrity sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww== + dependencies: + readable-stream "2 || 3" + +"through@>=2.2.7 <3": + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= + +to-buffer@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/to-buffer/-/to-buffer-1.1.1.tgz#493bd48f62d7c43fcded313a03dcadb2e1213a80" + integrity sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg== + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +tough-cookie@~2.4.3: + version "2.4.3" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" + integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ== + dependencies: + psl "^1.1.24" + punycode "^1.4.1" + +tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= + dependencies: + safe-buffer "^5.0.1" + +tweetnacl@^0.14.3, tweetnacl@~0.14.0: + version "0.14.5" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= + +tweetnacl@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-1.0.1.tgz#2594d42da73cd036bd0d2a54683dd35a6b55ca17" + integrity sha512-kcoMoKTPYnoeS50tzoqjPY3Uv9axeuuFAZY9M/9zFnhoVvRfxz9K29IMPD7jGmt2c8SW7i3gT9WqDl2+nV7p4A== + +unique-by@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unique-by/-/unique-by-1.0.0.tgz#5220c86ba7bc572fb713ad74651470cb644212bd" + integrity sha1-UiDIa6e8Vy+3E610ZRRwy2RCEr0= + +universalify@^0.1.0: + version "0.1.2" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" + integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== + +uri-js@^4.2.2: + version "4.2.2" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" + integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== + dependencies: + punycode "^2.1.0" + +ursa-optional@~0.9.10: + version "0.9.10" + resolved "https://registry.yarnpkg.com/ursa-optional/-/ursa-optional-0.9.10.tgz#f2eabfe0b6001dbf07a78740cd0a6e5ba6eb2554" + integrity sha512-RvEbhnxlggX4MXon7KQulTFiJQtLJZpSb9ZSa7ZTkOW0AzqiVTaLjI4vxaSzJBDH9dwZ3ltZadFiBaZslp6haA== + dependencies: + bindings "^1.3.0" + nan "^2.11.1" + +util-deprecate@^1.0.1, util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= + +uuid@^3.2.1, uuid@^3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" + integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== + +varint@^5.0.0, varint@~5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/varint/-/varint-5.0.0.tgz#d826b89f7490732fabc0c0ed693ed475dcb29ebf" + integrity sha1-2Ca4n3SQcy+rwMDtaT7Uddyynr8= + +verror@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= + dependencies: + assert-plus "^1.0.0" + core-util-is "1.0.2" + extsprintf "^1.2.0" + +wcwidth@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" + integrity sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g= + dependencies: + defaults "^1.0.3" + +which-pm-runs@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.0.0.tgz#670b3afbc552e0b55df6b7780ca74615f23ad1cb" + integrity sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs= + +which@^1.2.14, which@^1.2.9: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== + dependencies: + isexe "^2.0.0" + +wide-align@^1.1.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" + integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== + dependencies: + string-width "^1.0.2 || 2" + +wordwrap@~0.0.2: + version "0.0.3" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" + integrity sha1-o9XabNXAvAAI03I0u68b7WMFkQc= + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + +xtend@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== + +yallist@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.3.tgz#b4b049e314be545e3ce802236d6cd22cd91c3de9" + integrity sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A== + +yaml@^1.5.1: + version "1.6.0" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.6.0.tgz#d8a985cfb26086dd73f91c637f6e6bc909fddd3c" + integrity sha512-iZfse3lwrJRoSlfs/9KQ9iIXxs9++RvBFVzAqbbBiFT+giYtyanevreF9r61ZTbGMgWQBxAua3FzJiniiJXWWw== + dependencies: + "@babel/runtime" "^7.4.5" + +yargs-parser@^12.0.0: + version "12.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-12.0.0.tgz#18aa348854747dfe1002d01bd87d65df10d40a84" + integrity sha512-WQM8GrbF5TKiACr7iE3I2ZBNC7qC9taKPMfjJaMD2LkOJQhIctASxKXdFAOPim/m47kgAQBVIaPlFjnRdkol7w== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0"