opportunity-service 0.0.491 → 0.0.493
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/blockchain/addresses.json +3 -3
- package/opportunity-core/src/contracts/market/MarketFactory-solc-output.json +69049 -0
- package/opportunity-core/src/contracts/market/MarketFactory.abi +1 -0
- package/opportunity-core/src/contracts/market/MarketFactory.bin +1 -0
- package/opportunity-core/src/contracts/market/MarketFactory.json +1318 -0
- package/package.json +1 -1
- package/src/blockchain/addresses.json +3 -3
@@ -0,0 +1,1318 @@
|
|
1
|
+
{
|
2
|
+
"contractName": "MarketFactory",
|
3
|
+
"abi": [
|
4
|
+
{
|
5
|
+
"anonymous": false,
|
6
|
+
"inputs": [
|
7
|
+
{
|
8
|
+
"indexed": true,
|
9
|
+
"internalType": "address",
|
10
|
+
"name": "_market",
|
11
|
+
"type": "address"
|
12
|
+
},
|
13
|
+
{
|
14
|
+
"indexed": true,
|
15
|
+
"internalType": "uint256",
|
16
|
+
"name": "index",
|
17
|
+
"type": "uint256"
|
18
|
+
},
|
19
|
+
{
|
20
|
+
"indexed": false,
|
21
|
+
"internalType": "address",
|
22
|
+
"name": "owner",
|
23
|
+
"type": "address"
|
24
|
+
},
|
25
|
+
{
|
26
|
+
"indexed": false,
|
27
|
+
"internalType": "string",
|
28
|
+
"name": "marketName",
|
29
|
+
"type": "string"
|
30
|
+
}
|
31
|
+
],
|
32
|
+
"name": "MarketCreated",
|
33
|
+
"type": "event"
|
34
|
+
},
|
35
|
+
{
|
36
|
+
"anonymous": false,
|
37
|
+
"inputs": [
|
38
|
+
{
|
39
|
+
"indexed": true,
|
40
|
+
"internalType": "address",
|
41
|
+
"name": "_marketAddress",
|
42
|
+
"type": "address"
|
43
|
+
}
|
44
|
+
],
|
45
|
+
"name": "MarketDestroyed",
|
46
|
+
"type": "event"
|
47
|
+
},
|
48
|
+
{
|
49
|
+
"inputs": [
|
50
|
+
{
|
51
|
+
"internalType": "string",
|
52
|
+
"name": "marketName",
|
53
|
+
"type": "string"
|
54
|
+
},
|
55
|
+
{
|
56
|
+
"internalType": "enum MarketLib.MarketType",
|
57
|
+
"name": "marketType",
|
58
|
+
"type": "uint8"
|
59
|
+
}
|
60
|
+
],
|
61
|
+
"name": "createMarket",
|
62
|
+
"outputs": [],
|
63
|
+
"stateMutability": "nonpayable",
|
64
|
+
"type": "function"
|
65
|
+
},
|
66
|
+
{
|
67
|
+
"inputs": [
|
68
|
+
{
|
69
|
+
"internalType": "uint32",
|
70
|
+
"name": "index",
|
71
|
+
"type": "uint32"
|
72
|
+
}
|
73
|
+
],
|
74
|
+
"name": "destroyMarket",
|
75
|
+
"outputs": [],
|
76
|
+
"stateMutability": "nonpayable",
|
77
|
+
"type": "function"
|
78
|
+
},
|
79
|
+
{
|
80
|
+
"inputs": [],
|
81
|
+
"name": "getNumMarkets",
|
82
|
+
"outputs": [
|
83
|
+
{
|
84
|
+
"internalType": "uint256",
|
85
|
+
"name": "",
|
86
|
+
"type": "uint256"
|
87
|
+
}
|
88
|
+
],
|
89
|
+
"stateMutability": "view",
|
90
|
+
"type": "function"
|
91
|
+
}
|
92
|
+
],
|
93
|
+
"metadata": "{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_market\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"marketName\",\"type\":\"string\"}],\"name\":\"MarketCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_marketAddress\",\"type\":\"address\"}],\"name\":\"MarketDestroyed\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"marketName\",\"type\":\"string\"},{\"internalType\":\"enum MarketLib.MarketType\",\"name\":\"marketType\",\"type\":\"uint8\"}],\"name\":\"createMarket\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"name\":\"destroyMarket\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getNumMarkets\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"createMarket(string,uint8)\":{\"notice\":\"Creates a Market contract based on the market name and type. The market contract will generate and assign a unique id to the market.\"},\"destroyMarket(uint32)\":{\"notice\":\"Destroys a market.\"},\"getNumMarkets()\":{\"notice\":\"Returns the number of markets created.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/Users/elijahhampton/git/opportunity-core/src/contracts/market/MarketFactory.sol\":\"MarketFactory\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/elijahhampton/git/opportunity-core/node_modules/@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0x6bb804a310218875e89d12c053e94a13a4607cdf7cc2052f3e52bd32a0dc50a1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b2ebbbe6d0011175bd9e7268b83de3f9c2f9d8d4cbfbaef12aff977d7d727163\",\"dweb:/ipfs/Qmd5c7Vxtis9wzkDNhxwc6A2QT5H9xn9kfjhx7qx44vpro\"]},\"/Users/elijahhampton/git/opportunity-core/node_modules/@openzeppelin/contracts/security/Pausable.sol\":{\"keccak256\":\"0xa35b1f2a670cd2a701a52c398032c9fed72df1909fe394d77ceacbf074e8937b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72b957861691ebdaa78c52834465c4f8296480fe4f1a12ba72dc6c0c8ac076dd\",\"dweb:/ipfs/QmVz1sHCwgEivHPRDswdt9tdvky7EnWqFmbuk1wFE55VMG\"]},\"/Users/elijahhampton/git/opportunity-core/node_modules/@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0x90565a39ae45c80f0468dc96c7b20d0afc3055f344c8203a0c9258239f350b9f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://26e8b38a7ac8e7b4463af00cf7fff1bf48ae9875765bf4f7751e100124d0bc8c\",\"dweb:/ipfs/QmWcsmkVr24xmmjfnBQZoemFniXjj3vwT78Cz6uqZW1Hux\"]},\"/Users/elijahhampton/git/opportunity-core/src/contracts/control/Controllable.sol\":{\"keccak256\":\"0xc238d6026100e53a28c0c2b82ca5d48050abe245133189d1faf7463b995ac96a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0c09cb3eda0dc03f8f3a7e7bffa997f94cdbff415d9d4645d77dcffa1b525e3c\",\"dweb:/ipfs/QmVAVPYGATZSC9f4FRY25LqSL3iaJTwU5bnkLvWMJWufFo\"]},\"/Users/elijahhampton/git/opportunity-core/src/contracts/exchange/DaiEscrow.sol\":{\"keccak256\":\"0xc695d8a1c38b42986aede25ec3f2cba6785b50b6b749c39cce8c50abf94235a1\",\"license\":\"Unlicense\",\"urls\":[\"bzz-raw://cc1565c285a127ec71c063dbc0f1e117c2f56445251bd7f215cc2bbea13449df\",\"dweb:/ipfs/QmNk24vy19x9hbxbdbPeD76MPGjqYTisAU9FXnX8wdbs5N\"]},\"/Users/elijahhampton/git/opportunity-core/src/contracts/exchange/WorkExchange.sol\":{\"keccak256\":\"0xe279ad05b52712b9375fb8f0e78f6ece611077e1eb2032fd9d8801675faa8285\",\"license\":\"Unlicense\",\"urls\":[\"bzz-raw://ce980643b45731442380a56bcb03256b89039d406488bf9151c8c2d1da10d9a4\",\"dweb:/ipfs/QmXaykspUuov89kjfT1foDTN8CFuwZg1r2rQKvNBeKGLzP\"]},\"/Users/elijahhampton/git/opportunity-core/src/contracts/exchange/WorkRelationship.sol\":{\"keccak256\":\"0xcff496c36fb2f7dccab9f586bd54323d3bb0a8ebc13043ee3b51fd7953da3f0f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9bde28393050ced1e8f9f379d2ffec76fb6d38895e8a7a4ee0c66e6f472b9357\",\"dweb:/ipfs/QmRyM1RLjy4TEbVH79uZMbKvFemEWLLGr7GViExHCVjf3K\"]},\"/Users/elijahhampton/git/opportunity-core/src/contracts/libraries/Evaluation.sol\":{\"keccak256\":\"0xff423e5280de6eed302aa65b3ac47c959793c296f401b4d07b3124dcb7662bb5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://38fb2664c6cc71a436350e9c4be9ceb7092de5ea3577458054a1b565ccb0ced2\",\"dweb:/ipfs/Qmae2nZQYYUafXsm7NrBP5QeK95U64V9a1r231a8wN6uu5\"]},\"/Users/elijahhampton/git/opportunity-core/src/contracts/libraries/MarketLib.sol\":{\"keccak256\":\"0x7e944e129858491254735d487535aaa1198b85f4ba614076850e783664ef7a30\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://67ed08794bdb6a3b9848ac2d3a965ecfabfe8849e273b897349a5693952b5a2a\",\"dweb:/ipfs/QmfMFmxcPUpf13ABjuhmaTvmLuenJU86F3HENtDFb5Jg8s\"]},\"/Users/elijahhampton/git/opportunity-core/src/contracts/libraries/StringUtils.sol\":{\"keccak256\":\"0x24330c7ac45d1992491dbff11dd687ea7a7a21a44122277263a43b107021067d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1c398376771df2c72107cc2064806c8366f6a869b0d04094e9e7288e73e3d0f1\",\"dweb:/ipfs/QmSkr6Bt7wNo18yW2CaxgSCse2XXnVP2FPWSbpUZpQiemv\"]},\"/Users/elijahhampton/git/opportunity-core/src/contracts/libraries/User.sol\":{\"keccak256\":\"0x064c61f8f35fa7a1431a373e300980cf837339363ec810d7eea29239985414af\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b26f56f048516c30b26d1e3c0dc3d70c1cf87ee652b488612263bb0b3a3c2e8\",\"dweb:/ipfs/QmexMQGdWmpcN1mvu9NUAjKXyjkJU3RxNphwtJqxdAuNcv\"]},\"/Users/elijahhampton/git/opportunity-core/src/contracts/market/Market.sol\":{\"keccak256\":\"0xce411680993905edd1f37b6dae7505a73c75d248e0459208e20e8fe04ae46436\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a3f437272a5656bb2077127f1f18b23e891a9a7b8650519c08f3679af880e397\",\"dweb:/ipfs/QmRpx6QbUWstX7K4QVMxsVER8dc9V3zyrgkb5bABWvQ8tm\"]},\"/Users/elijahhampton/git/opportunity-core/src/contracts/market/MarketFactory.sol\":{\"keccak256\":\"0x0a861d91d4f9074837725ddf180119a6ebbf5affa20e286c85031fd8fbc26500\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://575ce472bb2cbc1dc39f176690f8693099dd430a0f3f33fb007b35c6b1b72b00\",\"dweb:/ipfs/QmSKpjTrXY3QuLd2pbQFVf7U65nDXWyxzfqmC57z3E4xic\"]},\"/Users/elijahhampton/git/opportunity-core/src/contracts/user/UserSummary.sol\":{\"keccak256\":\"0xdbedaa65e16795be877d3c1d4583616c112ed56c1cdb8ba7f25d4f78e6f4e053\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://271b25db4cfb6dbbb28ad4e737b7daed46095647117cf4edf4f362feb3e23041\",\"dweb:/ipfs/Qme2j8PG7ioEiFTtJ9wumnJ72NqaQhQKRkuZMd3oKC7x2Z\"]},\"/Users/elijahhampton/git/opportunity-core/src/contracts/user/interface/IUserSummary.sol\":{\"keccak256\":\"0x5d2ef9cbae7fdf951d044a3084313e8aeb3d2883909ceddab743cc71c828d5b1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62623602db15758dcefce9c880a485914a270967b688fcf55ccdff8856671de8\",\"dweb:/ipfs/QmZn3KoG23qA5vpgTMYCBN9RAkd7z2R6uWNtGyaQ7fLdgL\"]}},\"version\":1}",
|
94
|
+
"bytecode": "608060405234801561001057600080fd5b506134bb806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063295c39a51461004657806394542cd61461005b578063c2ca748b14610070575b600080fd5b60005460405190815260200160405180910390f35b61006e6100693660046102b7565b610083565b005b61006e61007e3660046101f5565b61010c565b60008163ffffffff168154811061009c5761009c61039d565b6000918252602082200180546001600160a01b0319169055805463ffffffff83169081106100cc576100cc61039d565b60009182526020822001546040516001600160a01b03909116917f78d1ea5a863e0b3fe0212151f92d49b33ecb2161bea91f3f90a0b97955d0674291a250565b6000828260405161011c906101d4565b61012792919061035d565b604051809103906000f080158015610143573d6000803e3d6000fd5b50600080546001810182558180527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5630180546001600160a01b0319166001600160a01b0384169081179091559054604051929350917f9a7b337ae3b401f60fe72d2f1d2a551465834d7d628737f20259c99ea0db9441906101c79033908890610331565b60405180910390a3505050565b6130bc806103ca83390190565b8035600281106101f057600080fd5b919050565b6000806040838503121561020857600080fd5b823567ffffffffffffffff8082111561022057600080fd5b818501915085601f83011261023457600080fd5b813581811115610246576102466103b3565b604051601f8201601f19908116603f0116810190838211818310171561026e5761026e6103b3565b8160405282815288602084870101111561028757600080fd5b8260208601602083013760006020848301015280965050505050506102ae602084016101e1565b90509250929050565b6000602082840312156102c957600080fd5b813563ffffffff811681146102dd57600080fd5b9392505050565b6000815180845260005b8181101561030a576020818501810151868301820152016102ee565b8181111561031c576000602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0383168152604060208201819052600090610355908301846102e4565b949350505050565b60408152600061037060408301856102e4565b90506002831061039057634e487b7160e01b600052602160045260246000fd5b8260208301529392505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fdfe60806040523480156200001157600080fd5b50604051620030bc380380620030bc8339810160408190526200003491620001a7565b6200003f336200009c565b600180546001600160a81b0319163360ff60a01b191617905581516200006d906002906020850190620000ec565b506003805482919060ff1916600183818111156200008f576200008f620002d5565b0217905550505062000301565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b828054620000fa9062000298565b90600052602060002090601f0160209004810192826200011e576000855562000169565b82601f106200013957805160ff191683800117855562000169565b8280016001018555821562000169579182015b82811115620001695782518255916020019190600101906200014c565b50620001779291506200017b565b5090565b5b808211156200017757600081556001016200017c565b805160028110620001a257600080fd5b919050565b60008060408385031215620001bb57600080fd5b82516001600160401b0380821115620001d357600080fd5b818501915085601f830112620001e857600080fd5b815181811115620001fd57620001fd620002eb565b604051601f8201601f19908116603f01168101908382118183101715620002285762000228620002eb565b816040528281526020935088848487010111156200024557600080fd5b600091505b828210156200026957848201840151818301850152908301906200024a565b828211156200027b5760008484830101525b95506200028d91505085820162000192565b925050509250929050565b600181811c90821680620002ad57607f821691505b60208210811415620002cf57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b612dab80620003116000396000f3fe60806040523480156200001157600080fd5b5060043610620001095760003560e01c8063838069f711620000a3578063a4f8ddee116200006e578063a4f8ddee14620001ec578063c143521f1462000203578063d8165743146200020d578063f2fde38b146200022057600080fd5b8063838069f714620001ae5780638da5cb5b14620001bc5780639319106b14620001d8578063a03738dc14620001e257600080fd5b80636039c8d711620000e45780636039c8d71462000163578063715018a6146200017c5780637cf63de914620001885780637e0c00ed14620001a557600080fd5b80630f091637146200010e57806336e114fc146200012b5780635c975abb1462000144575b600080fd5b6200011860045481565b6040519081526020015b60405180910390f35b6200013562000237565b604051620001229190620009e6565b600154600160a01b900460ff165b604051901515815260200162000122565b6200016d6200029b565b60405162000122919062000a4a565b6200018662000331565b005b600354620001969060ff1681565b60405162000122919062000a35565b60075462000118565b600654620001969060ff1681565b6000546040516001600160a01b03909116815260200162000122565b6200018662000375565b620001866200041b565b62000186620001fd36600462000843565b620004bd565b6200011860055481565b600154600160a01b900460ff1662000152565b62000186620002313660046200081e565b620005d7565b606060078054806020026020016040519081016040528092919081815260200182805480156200029157602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162000272575b5050505050905090565b60028054620002aa9062000a94565b80601f0160208091040260200160405190810160405280929190818152602001828054620002d89062000a94565b8015620003295780601f10620002fd5761010080835404028352916020019162000329565b820191906000526020600020905b8154815290600101906020018083116200030b57829003601f168201915b505050505081565b6000546001600160a01b03163314620003675760405162461bcd60e51b81526004016200035e9062000a5f565b60405180910390fd5b62000373600062000679565b565b6000546001600160a01b03163314620003a25760405162461bcd60e51b81526004016200035e9062000a5f565b60015433906001600160a01b03168114620003bc57600080fd5b60035460ff166000816001811115620003d957620003d962000ad1565b14620003e457600080fd5b60065460ff16600081600181111562000401576200040162000ad1565b146200040c57600080fd5b62000416620006c9565b505050565b6000546001600160a01b03163314620004485760405162461bcd60e51b81526004016200035e9062000a5f565b60015433906001600160a01b031681146200046257600080fd5b60035460ff1660008160018111156200047f576200047f62000ad1565b146200048a57600080fd5b60065460ff166001816001811115620004a757620004a762000ad1565b1415620004b357600080fd5b6200041662000768565b846001600160a01b0381166200050c5760405162461bcd60e51b815260206004820152601360248201527224b73b30b634b2103a30b9b59037bbb732b91760691b60448201526064016200035e565b600086868686866040516200052190620007f3565b6200053195949392919062000995565b604051809103906000f0801580156200054e573d6000803e3d6000fd5b506007805460018101825560009182527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880180546001600160a01b0319166001600160a01b0384811691821790925560405193945030939092918616917f43af47c504a2f23934b1a816cd86633559721bf26c3656844bdde3edd4719e1391a450505050505050565b6000546001600160a01b03163314620006045760405162461bcd60e51b81526004016200035e9062000a5f565b6001600160a01b0381166200066b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200035e565b620006768162000679565b50565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600154600160a01b900460ff166200071b5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016200035e565b6001805460ff60a01b191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b600154600160a01b900460ff1615620007b75760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016200035e565b6001805460ff60a01b1916600160a01b1790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586200074b3390565b6122598062000b1d83390190565b80356001600160a01b03811681146200081957600080fd5b919050565b6000602082840312156200083157600080fd5b6200083c8262000801565b9392505050565b600080600080600060a086880312156200085c57600080fd5b620008678662000801565b94506020860135600281106200087c57600080fd5b9350604086013567ffffffffffffffff808211156200089a57600080fd5b818801915088601f830112620008af57600080fd5b813581811115620008c457620008c462000ae7565b604051601f8201601f19908116603f01168101908382118183101715620008ef57620008ef62000ae7565b816040528281528b60208487010111156200090957600080fd5b82602086016020830137600060208483010152809750505050505060608601359150620009396080870162000801565b90509295509295909350565b6000815180845260005b818110156200096d576020818501810151868301820152016200094f565b8181111562000980576000602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b038681168252600090620009b08762000afd565b86602084015260a06040840152620009cc60a084018762000945565b606084019590955292909216608090910152509392505050565b6020808252825182820181905260009190848201906040850190845b8181101562000a295783516001600160a01b03168352928401929184019160010162000a02565b50909695505050505050565b6020810162000a448362000afd565b91905290565b6020815260006200083c602083018462000945565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168062000aa957607f821691505b6020821081141562000acb57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b600281106200067657634e487b7160e01b600052602160045260246000fdfe60c06040819052600060a08190526200001b916002916200019c565b506000600355604051620022593803806200225983398101604081905262000043916200026d565b81620000a95760405162461bcd60e51b815260206004820152602b60248201527f4d7573742073656e64206d6f7265207468616e20302064616920746f2074686960448201526a399031b7b73a3930b1ba1760a91b606482015260840160405180910390fd5b600180546001600160a01b0387166001600160a01b031991821617825560008054909116905560058054869261ff001990911690610100908490811115620000f557620000f5620003d0565b021790555060048290556005805460ff1916905582516200011e9060029060208601906200019c565b506001546040516000916001600160a01b0316908490849062000141906200022b565b6001600160a01b03938416815260208101929092529091166040820152606001604051809103906000f0801580156200017e573d6000803e3d6000fd5b5060601b6001600160601b03191660805250620003fc945050505050565b828054620001aa9062000393565b90600052602060002090601f016020900481019282620001ce576000855562000219565b82601f10620001e957805160ff191683800117855562000219565b8280016001018555821562000219579182015b8281111562000219578251825591602001919060010190620001fc565b506200022792915062000239565b5090565b610f6680620012f383390190565b5b808211156200022757600081556001016200023a565b80516001600160a01b03811681146200026857600080fd5b919050565b600080600080600060a086880312156200028657600080fd5b620002918662000250565b945060208087015160028110620002a757600080fd5b60408801519095506001600160401b0380821115620002c557600080fd5b818901915089601f830112620002da57600080fd5b815181811115620002ef57620002ef620003e6565b604051601f8201601f19908116603f011681019083821181831017156200031a576200031a620003e6565b816040528281528c868487010111156200033357600080fd5b600093505b8284101562000357578484018601518185018701529285019262000338565b82841115620003695760008684830101525b80985050505050505060608601519150620003876080870162000250565b90509295509295909350565b600181811c90821680620003a857607f821691505b60208210811415620003ca57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b60805160601c610eb66200043d6000396000818160ff015281816102cc015281816104a001528181610671015281816106e601526108b80152610eb66000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c8063a7f7dca911610097578063df502c6b11610066578063df502c6b14610208578063e6e885931461021d578063ec3a47901461022a578063f74cc7011461023d57600080fd5b8063a7f7dca9146101c5578063cb2ef6f7146101ce578063d8a845cf146101ed578063dabd57a5146101f557600080fd5b80635db28c66116100d35780635db28c66146101665780638da5cb5b1461017c57806396d6d6961461018f5780639aed0c17146101b257600080fd5b80630f032a3f146100fa5780634d547ada1461013e5780635cdcf07514610151575b600080fd5b6101217f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b600054610121906001600160a01b031681565b61016461015f366004610a5e565b610250565b005b61016e61032b565b604051908152602001610135565b600154610121906001600160a01b031681565b6101a261019d366004610aae565b610389565b6040519015158152602001610135565b6101646101c0366004610bbb565b610412565b61016e60045481565b6005546101e090610100900460ff1681565b6040516101359190610c63565b61016461050d565b610164610203366004610a82565b61058e565b610210610759565b6040516101359190610c76565b6005546101e09060ff1681565b610164610238366004610be1565b6107e7565b61016461024b366004610b77565b610860565b6000546001600160a01b031633146102835760405162461bcd60e51b815260040161027a90610d3c565b60405180910390fd5b6001546001600160a01b031633146102ad5760405162461bcd60e51b815260040161027a90610c89565b604051632ed9c42160e11b81526001600160a01b0382811660048301527f00000000000000000000000000000000000000000000000000000000000000001690635db3884290602401600060405180830381600087803b15801561031057600080fd5b505af1158015610324573d6000803e3d6000fd5b5050505050565b6001546000906001600160a01b031633146103585760405162461bcd60e51b815260040161027a90610c89565b6000546001600160a01b031633146103825760405162461bcd60e51b815260040161027a90610d3c565b5060035490565b600080836001600160a01b0316635d5f221f846040518263ffffffff1660e01b81526004016103b89190610d86565b602060405180830381600087803b1580156103d257600080fd5b505af11580156103e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061040a9190610b5a565b949350505050565b6000546001600160a01b0316331461043c5760405162461bcd60e51b815260040161027a90610d3c565b60018060055460ff16600181111561045657610456610e13565b146104735760405162461bcd60e51b815260040161027a90610cd2565b6040516353318a8760e01b81526004810186905260ff8516602482015260448101849052606481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906353318a8790608401600060405180830381600087803b1580156104ec57600080fd5b505af1158015610500573d6000803e3d6000fd5b5050505061032485600355565b6000546001600160a01b031633146105375760405162461bcd60e51b815260040161027a90610d3c565b60018060055460ff16600181111561055157610551610e13565b1461056e5760405162461bcd60e51b815260040161027a90610cd2565b600080546001600160a01b03191690556005805460ff1916905550565b50565b6001546001600160a01b031633146105b85760405162461bcd60e51b815260040161027a90610c89565b6001600160a01b0382166106345760405162461bcd60e51b815260206004820152603760248201527f576f726b65722061646472657373206d757374206e6f7420626520302077686560448201527f6e2061737369676e696e67206e657720776f726b65722e000000000000000000606482015260840161027a565b600080546001600160a01b0319166001600160a01b0384811691821790925560405163089f591560e21b81526004810191909152602481018390527f00000000000000000000000000000000000000000000000000000000000000009091169063227d645490604401600060405180830381600087803b1580156106b757600080fd5b505af11580156106cb573d6000803e3d6000fd5b50506005805460ff1916600117905550506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001661071257610712610dfd565b6000546001600160a01b0383811691161461072f5761072f610dfd565b600160055460ff16600181111561074857610748610e13565b1461075557610755610dfd565b5050565b6002805461076690610dc2565b80601f016020809104026020016040519081016040528092919081815260200182805461079290610dc2565b80156107df5780601f106107b4576101008083540402835291602001916107df565b820191906000526020600020905b8154815290600101906020018083116107c257829003601f168201915b505050505081565b6001546001600160a01b031633146108115760405162461bcd60e51b815260040161027a90610c89565b60008060055460ff16600181111561082b5761082b610e13565b146108485760405162461bcd60e51b815260040161027a90610cd2565b815161085b906002906020850190610922565b505050565b6001546001600160a01b0316331461088a5760405162461bcd60e51b815260040161027a90610c89565b6040516325b0db0f60e01b8152841515600482015260ff8416602482015260448101839052606481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906325b0db0f90608401600060405180830381600087803b15801561090457600080fd5b505af1158015610918573d6000803e3d6000fd5b5050505050505050565b82805461092e90610dc2565b90600052602060002090601f0160209004810192826109505760008555610996565b82601f1061096957805160ff1916838001178555610996565b82800160010185558215610996579182015b8281111561099657825182559160200191906001019061097b565b506109a29291506109a6565b5090565b5b808211156109a257600081556001016109a7565b600082601f8301126109cc57600080fd5b813567ffffffffffffffff808211156109e7576109e7610e29565b604051601f8301601f19908116603f01168101908282118183101715610a0f57610a0f610e29565b81604052838152866020858801011115610a2857600080fd5b836020870160208301376000602085830101528094505050505092915050565b803560ff81168114610a5957600080fd5b919050565b600060208284031215610a7057600080fd5b8135610a7b81610e5d565b9392505050565b60008060408385031215610a9557600080fd5b8235610aa081610e5d565b946020939093013593505050565b60008060408385031215610ac157600080fd5b8235610acc81610e5d565b9150602083013567ffffffffffffffff80821115610ae957600080fd5b9084019060608287031215610afd57600080fd5b604051606081018181108382111715610b1857610b18610e29565b604052823582811115610b2a57600080fd5b610b36888286016109bb565b82525060208301356020820152604083013560408201528093505050509250929050565b600060208284031215610b6c57600080fd5b8151610a7b81610e72565b60008060008060808587031215610b8d57600080fd5b8435610b9881610e72565b9350610ba660208601610a48565b93969395505050506040820135916060013590565b60008060008060808587031215610bd157600080fd5b84359350610ba660208601610a48565b600060208284031215610bf357600080fd5b813567ffffffffffffffff811115610c0a57600080fd5b61040a848285016109bb565b6000815180845260005b81811015610c3c57602081850181015186830182015201610c20565b81811115610c4e576000602083870101525b50601f01601f19169290920160200192915050565b60208101610c7083610e3f565b91905290565b602081526000610a7b6020830184610c16565b60208082526029908201527f576f726b52656c6174696f6e736869703a2063616c6c6572206973206e6f74206040820152683a34329037bbb732b960b91b606082015260800190565b60208082526044908201527f5468697320616374696f6e2063616e6e6f742062652063617272696564206f7560408201527f7420756e646572207468652063757272656e7420636f6e7472616374207374616060820152633a3ab99760e11b608082015260a00190565b6020808252602a908201527f576f726b52656c6174696f6e736869703a2063616c6c6572206973206e6f74206040820152693a3432903bb7b935b2b960b11b606082015260800190565b602081526000825160606020840152610da26080840182610c16565b905060208401516040840152604084015160608401528091505092915050565b600181811c90821680610dd657607f821691505b60208210811415610df757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6002811061058b57634e487b7160e01b600052602160045260246000fd5b6001600160a01b038116811461058b57600080fd5b801515811461058b57600080fdfea2646970667358221220b2e2031a13e77b4d15854628c2f6055718a81195fe4ef033fcca27d5d5baea8e64736f6c6343000807003360e060405234801561001057600080fd5b50604051610f66380380610f6683398101604081905261002f9161026a565b8282826001600160a01b0383166100a95760405162461bcd60e51b815260206004820152603360248201527f4465706f7369746f7220616464726573732063616e6e6f74206265203020776860448201527232b71031b932b0ba34b7339032b9b1b937bb9760691b60648201526084015b60405180910390fd5b6001600160a01b03811661011b5760405162461bcd60e51b815260206004820152603360248201527f44616920746f6b656e20616464726573732063616e6e6f74206265203020776860448201527232b71031b932b0ba34b7339032b9b1b937bb9760691b60648201526084016100a0565b604080518082018252600a81526944616920457363726f7760b01b6020918201528151808301835260018152603160f81b9082015281517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f918101919091527f0bdbe35568d399a0401d60d11c76785045fec8c775dcb34589d4a0b9d540700d918101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660ff811660808301523060a08301529060c00160408051601f198184030181529190528051602090910120608052506001600160601b031960609390931b9290921660a05260c0526002805461010061ff00196001600160a01b0394909416620100000293909316610100600160b01b031990911617919091179055506102a6915050565b80516001600160a01b038116811461026557600080fd5b919050565b60008060006060848603121561027f57600080fd5b6102888461024e565b92506020840151915061029d6040850161024e565b90509250925092565b60805160a05160601c60c051610c56610310600039600081816101f20152610710015260008181610297015281816103ca01528181610667015281816106e801528181610797015261083101526000818161025e015281816104cf01526105cf0152610c566000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c80637df38c5b11610097578063bfce14ea11610066578063bfce14ea14610259578063c19d93fb14610280578063c7c4ff4614610292578063d8a43107146102b957600080fd5b80637df38c5b146101ed57806396118e4414610214578063b01dcb311461023b578063bad453cf1461024657600080fd5b80633c86f6f3116100d35780633c86f6f31461017b57806353318a87146101b05780635db38842146101c357806360d98201146101d457600080fd5b8063200d2ed214610105578063227d64541461012857806325b0db0f1461013d57806338af3eed14610150575b600080fd5b6002546101129060ff1681565b60405161011f9190610b51565b60405180910390f35b61013b6101363660046109f3565b6102d9565b005b61013b61014b366004610a1f565b6103c8565b600054610163906001600160a01b031681565b6040516001600160a01b03909116815260200161011f565b6101a27ffa5e0016fb62b8dffda8fd95249d438edcffd3689b40ac3b4281d4cf710609ae81565b60405190815260200161011f565b61013b6101be366004610a68565b610542565b61013b6101d13660046109cf565b50565b600254610100900460ff165b60405161011f9190610b37565b6101a27f000000000000000000000000000000000000000000000000000000000000000081565b6101a27f62b607caa4d4e7fcbd31bf4c033cd30888b536567fadc83710fdf15f8d5cfc9e81565b60025460ff16610112565b61013b610254366004610aa7565b61063a565b6101a27f000000000000000000000000000000000000000000000000000000000000000081565b6002546101e090610100900460ff1681565b6101637f000000000000000000000000000000000000000000000000000000000000000081565b6101a26102c73660046109cf565b60016020526000908152604090205481565b60008060025460ff1660038111156102f3576102f3610bf5565b146103195760405162461bcd60e51b815260040161031090610b65565b60405180910390fd5b6001600160a01b0383166103955760405162461bcd60e51b815260206004820152603f60248201527f42656e65666963696172792063616e6e6f74206265203078206164647265737360448201527f207768656e2061737369676e696e67206e65772062656e6566696369617279006064820152608401610310565b600080546001600160a01b0319166001600160a01b038516179055600280546001919060ff191682800217905550505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031633146104405760405162461bcd60e51b815260206004820181905260248201527f4f776e65722063616e206f6e6c79207265736f6c766520636f6e74726163742e6044820152606401610310565b60028060025460ff16600381111561045a5761045a610bf5565b146104775760405162461bcd60e51b815260040161031090610b65565b604080517ffa5e0016fb62b8dffda8fd95249d438edcffd3689b40ac3b4281d4cf710609ae602080830191909152871580158385015283518084038501815260608401855280519083012061190160f01b60808501527f0000000000000000000000000000000000000000000000000000000000000000608285015260a2808501919091528451808503909101815260c29093019093528151910120906105255761052061082f565b61053a565b600280546001919060ff191682805b02179055505b505050505050565b60018060025460ff16600381111561055c5761055c610bf5565b146105795760405162461bcd60e51b815260040161031090610b65565b604080517f62b607caa4d4e7fcbd31bf4c033cd30888b536567fadc83710fdf15f8d5cfc9e60208083019190915281830188905282518083038401815260608301845280519082012061190160f01b60808401527f0000000000000000000000000000000000000000000000000000000000000000608284015260a2808401919091528351808403909101815260c290920190925280519101206000546001600160a01b031661062857600080fd5b60028054819060ff1916600182610534565b6002546040516323f2ebc360e21b8152620100009091046001600160a01b031690638fcbaf0c9061069e907f00000000000000000000000000000000000000000000000000000000000000009030908a908a906001908b908b908b90600401610aee565b600060405180830381600087803b1580156106b857600080fd5b505af11580156106cc573d6000803e3d6000fd5b505060025460405163f2d5d56b60e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301527f0000000000000000000000000000000000000000000000000000000000000000602483015262010000909204909116925063f2d5d56b9150604401600060405180830381600087803b15801561076457600080fd5b505af1158015610778573d6000803e3d6000fd5b50506002546201000090046001600160a01b03169150638fcbaf0c90507f0000000000000000000000000000000000000000000000000000000000000000306107c2896001610bcf565b8860008989896040518963ffffffff1660e01b81526004016107eb989796959493929190610aee565b600060405180830381600087803b15801561080557600080fd5b505af1158015610819573d6000803e3d6000fd5b50506002805461ffff1916905550505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031633146108a75760405162461bcd60e51b815260206004820181905260248201527f4f776e65722063616e206f6e6c79207265736f6c766520636f6e74726163742e6044820152606401610310565b6000546001600160a01b03166108bc57600080fd5b6002546000546040516370a0823160e01b81523060048201526001600160a01b036201000090930483169263b753a98c92169083906370a082319060240160206040518083038186803b15801561091257600080fd5b505afa158015610926573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061094a9190610a8e565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b15801561099057600080fd5b505af11580156109a4573d6000803e3d6000fd5b50506002805461ffff19166102031790555050565b803560ff811681146109ca57600080fd5b919050565b6000602082840312156109e157600080fd5b81356109ec81610c0b565b9392505050565b60008060408385031215610a0657600080fd5b8235610a1181610c0b565b946020939093013593505050565b60008060008060808587031215610a3557600080fd5b84358015158114610a4557600080fd5b9350610a53602086016109b9565b93969395505050506040820135916060013590565b60008060008060808587031215610a7e57600080fd5b84359350610a53602086016109b9565b600060208284031215610aa057600080fd5b5051919050565b600080600080600060a08688031215610abf57600080fd5b8535945060208601359350610ad6604087016109b9565b94979396509394606081013594506080013592915050565b6001600160a01b039889168152969097166020870152604086019490945260608501929092521515608084015260ff1660a083015260c082015260e08101919091526101000190565b6020810160038310610b4b57610b4b610bf5565b91905290565b6020810160048310610b4b57610b4b610bf5565b60208082526044908201527f43616e6e6f7420696e766f6b65207468697320657363726f772066756e63746960408201527f6f6e2077697468207468652063757272656e7420636f6e7472616374207374616060820152633a3ab99760e11b608082015260a00190565b60008219821115610bf057634e487b7160e01b600052601160045260246000fd5b500190565b634e487b7160e01b600052602160045260246000fd5b6001600160a01b03811681146101d157600080fdfea26469706673582212202dc66b1a9385167e89267cb825ab637c24b0528266bf6b07206e97268ee4212364736f6c63430008070033a2646970667358221220b5d0547f2cc6d5e1b836ad609e581a391e82bd1a8965b142750f01c3ee34540c64736f6c63430008070033a2646970667358221220886966baee02738677b34d84a9105b22e706ee5d6fdaec7b21e709b891f0692164736f6c63430008070033",
|
95
|
+
"deployedBytecode": "608060405234801561001057600080fd5b50600436106100415760003560e01c8063295c39a51461004657806394542cd61461005b578063c2ca748b14610070575b600080fd5b60005460405190815260200160405180910390f35b61006e6100693660046102b7565b610083565b005b61006e61007e3660046101f5565b61010c565b60008163ffffffff168154811061009c5761009c61039d565b6000918252602082200180546001600160a01b0319169055805463ffffffff83169081106100cc576100cc61039d565b60009182526020822001546040516001600160a01b03909116917f78d1ea5a863e0b3fe0212151f92d49b33ecb2161bea91f3f90a0b97955d0674291a250565b6000828260405161011c906101d4565b61012792919061035d565b604051809103906000f080158015610143573d6000803e3d6000fd5b50600080546001810182558180527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5630180546001600160a01b0319166001600160a01b0384169081179091559054604051929350917f9a7b337ae3b401f60fe72d2f1d2a551465834d7d628737f20259c99ea0db9441906101c79033908890610331565b60405180910390a3505050565b6130bc806103ca83390190565b8035600281106101f057600080fd5b919050565b6000806040838503121561020857600080fd5b823567ffffffffffffffff8082111561022057600080fd5b818501915085601f83011261023457600080fd5b813581811115610246576102466103b3565b604051601f8201601f19908116603f0116810190838211818310171561026e5761026e6103b3565b8160405282815288602084870101111561028757600080fd5b8260208601602083013760006020848301015280965050505050506102ae602084016101e1565b90509250929050565b6000602082840312156102c957600080fd5b813563ffffffff811681146102dd57600080fd5b9392505050565b6000815180845260005b8181101561030a576020818501810151868301820152016102ee565b8181111561031c576000602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0383168152604060208201819052600090610355908301846102e4565b949350505050565b60408152600061037060408301856102e4565b90506002831061039057634e487b7160e01b600052602160045260246000fd5b8260208301529392505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fdfe60806040523480156200001157600080fd5b50604051620030bc380380620030bc8339810160408190526200003491620001a7565b6200003f336200009c565b600180546001600160a81b0319163360ff60a01b191617905581516200006d906002906020850190620000ec565b506003805482919060ff1916600183818111156200008f576200008f620002d5565b0217905550505062000301565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b828054620000fa9062000298565b90600052602060002090601f0160209004810192826200011e576000855562000169565b82601f106200013957805160ff191683800117855562000169565b8280016001018555821562000169579182015b82811115620001695782518255916020019190600101906200014c565b50620001779291506200017b565b5090565b5b808211156200017757600081556001016200017c565b805160028110620001a257600080fd5b919050565b60008060408385031215620001bb57600080fd5b82516001600160401b0380821115620001d357600080fd5b818501915085601f830112620001e857600080fd5b815181811115620001fd57620001fd620002eb565b604051601f8201601f19908116603f01168101908382118183101715620002285762000228620002eb565b816040528281526020935088848487010111156200024557600080fd5b600091505b828210156200026957848201840151818301850152908301906200024a565b828211156200027b5760008484830101525b95506200028d91505085820162000192565b925050509250929050565b600181811c90821680620002ad57607f821691505b60208210811415620002cf57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b612dab80620003116000396000f3fe60806040523480156200001157600080fd5b5060043610620001095760003560e01c8063838069f711620000a3578063a4f8ddee116200006e578063a4f8ddee14620001ec578063c143521f1462000203578063d8165743146200020d578063f2fde38b146200022057600080fd5b8063838069f714620001ae5780638da5cb5b14620001bc5780639319106b14620001d8578063a03738dc14620001e257600080fd5b80636039c8d711620000e45780636039c8d71462000163578063715018a6146200017c5780637cf63de914620001885780637e0c00ed14620001a557600080fd5b80630f091637146200010e57806336e114fc146200012b5780635c975abb1462000144575b600080fd5b6200011860045481565b6040519081526020015b60405180910390f35b6200013562000237565b604051620001229190620009e6565b600154600160a01b900460ff165b604051901515815260200162000122565b6200016d6200029b565b60405162000122919062000a4a565b6200018662000331565b005b600354620001969060ff1681565b60405162000122919062000a35565b60075462000118565b600654620001969060ff1681565b6000546040516001600160a01b03909116815260200162000122565b6200018662000375565b620001866200041b565b62000186620001fd36600462000843565b620004bd565b6200011860055481565b600154600160a01b900460ff1662000152565b62000186620002313660046200081e565b620005d7565b606060078054806020026020016040519081016040528092919081815260200182805480156200029157602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162000272575b5050505050905090565b60028054620002aa9062000a94565b80601f0160208091040260200160405190810160405280929190818152602001828054620002d89062000a94565b8015620003295780601f10620002fd5761010080835404028352916020019162000329565b820191906000526020600020905b8154815290600101906020018083116200030b57829003601f168201915b505050505081565b6000546001600160a01b03163314620003675760405162461bcd60e51b81526004016200035e9062000a5f565b60405180910390fd5b62000373600062000679565b565b6000546001600160a01b03163314620003a25760405162461bcd60e51b81526004016200035e9062000a5f565b60015433906001600160a01b03168114620003bc57600080fd5b60035460ff166000816001811115620003d957620003d962000ad1565b14620003e457600080fd5b60065460ff16600081600181111562000401576200040162000ad1565b146200040c57600080fd5b62000416620006c9565b505050565b6000546001600160a01b03163314620004485760405162461bcd60e51b81526004016200035e9062000a5f565b60015433906001600160a01b031681146200046257600080fd5b60035460ff1660008160018111156200047f576200047f62000ad1565b146200048a57600080fd5b60065460ff166001816001811115620004a757620004a762000ad1565b1415620004b357600080fd5b6200041662000768565b846001600160a01b0381166200050c5760405162461bcd60e51b815260206004820152601360248201527224b73b30b634b2103a30b9b59037bbb732b91760691b60448201526064016200035e565b600086868686866040516200052190620007f3565b6200053195949392919062000995565b604051809103906000f0801580156200054e573d6000803e3d6000fd5b506007805460018101825560009182527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880180546001600160a01b0319166001600160a01b0384811691821790925560405193945030939092918616917f43af47c504a2f23934b1a816cd86633559721bf26c3656844bdde3edd4719e1391a450505050505050565b6000546001600160a01b03163314620006045760405162461bcd60e51b81526004016200035e9062000a5f565b6001600160a01b0381166200066b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200035e565b620006768162000679565b50565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600154600160a01b900460ff166200071b5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016200035e565b6001805460ff60a01b191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b600154600160a01b900460ff1615620007b75760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016200035e565b6001805460ff60a01b1916600160a01b1790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586200074b3390565b6122598062000b1d83390190565b80356001600160a01b03811681146200081957600080fd5b919050565b6000602082840312156200083157600080fd5b6200083c8262000801565b9392505050565b600080600080600060a086880312156200085c57600080fd5b620008678662000801565b94506020860135600281106200087c57600080fd5b9350604086013567ffffffffffffffff808211156200089a57600080fd5b818801915088601f830112620008af57600080fd5b813581811115620008c457620008c462000ae7565b604051601f8201601f19908116603f01168101908382118183101715620008ef57620008ef62000ae7565b816040528281528b60208487010111156200090957600080fd5b82602086016020830137600060208483010152809750505050505060608601359150620009396080870162000801565b90509295509295909350565b6000815180845260005b818110156200096d576020818501810151868301820152016200094f565b8181111562000980576000602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b038681168252600090620009b08762000afd565b86602084015260a06040840152620009cc60a084018762000945565b606084019590955292909216608090910152509392505050565b6020808252825182820181905260009190848201906040850190845b8181101562000a295783516001600160a01b03168352928401929184019160010162000a02565b50909695505050505050565b6020810162000a448362000afd565b91905290565b6020815260006200083c602083018462000945565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168062000aa957607f821691505b6020821081141562000acb57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b600281106200067657634e487b7160e01b600052602160045260246000fdfe60c06040819052600060a08190526200001b916002916200019c565b506000600355604051620022593803806200225983398101604081905262000043916200026d565b81620000a95760405162461bcd60e51b815260206004820152602b60248201527f4d7573742073656e64206d6f7265207468616e20302064616920746f2074686960448201526a399031b7b73a3930b1ba1760a91b606482015260840160405180910390fd5b600180546001600160a01b0387166001600160a01b031991821617825560008054909116905560058054869261ff001990911690610100908490811115620000f557620000f5620003d0565b021790555060048290556005805460ff1916905582516200011e9060029060208601906200019c565b506001546040516000916001600160a01b0316908490849062000141906200022b565b6001600160a01b03938416815260208101929092529091166040820152606001604051809103906000f0801580156200017e573d6000803e3d6000fd5b5060601b6001600160601b03191660805250620003fc945050505050565b828054620001aa9062000393565b90600052602060002090601f016020900481019282620001ce576000855562000219565b82601f10620001e957805160ff191683800117855562000219565b8280016001018555821562000219579182015b8281111562000219578251825591602001919060010190620001fc565b506200022792915062000239565b5090565b610f6680620012f383390190565b5b808211156200022757600081556001016200023a565b80516001600160a01b03811681146200026857600080fd5b919050565b600080600080600060a086880312156200028657600080fd5b620002918662000250565b945060208087015160028110620002a757600080fd5b60408801519095506001600160401b0380821115620002c557600080fd5b818901915089601f830112620002da57600080fd5b815181811115620002ef57620002ef620003e6565b604051601f8201601f19908116603f011681019083821181831017156200031a576200031a620003e6565b816040528281528c868487010111156200033357600080fd5b600093505b8284101562000357578484018601518185018701529285019262000338565b82841115620003695760008684830101525b80985050505050505060608601519150620003876080870162000250565b90509295509295909350565b600181811c90821680620003a857607f821691505b60208210811415620003ca57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b60805160601c610eb66200043d6000396000818160ff015281816102cc015281816104a001528181610671015281816106e601526108b80152610eb66000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c8063a7f7dca911610097578063df502c6b11610066578063df502c6b14610208578063e6e885931461021d578063ec3a47901461022a578063f74cc7011461023d57600080fd5b8063a7f7dca9146101c5578063cb2ef6f7146101ce578063d8a845cf146101ed578063dabd57a5146101f557600080fd5b80635db28c66116100d35780635db28c66146101665780638da5cb5b1461017c57806396d6d6961461018f5780639aed0c17146101b257600080fd5b80630f032a3f146100fa5780634d547ada1461013e5780635cdcf07514610151575b600080fd5b6101217f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b600054610121906001600160a01b031681565b61016461015f366004610a5e565b610250565b005b61016e61032b565b604051908152602001610135565b600154610121906001600160a01b031681565b6101a261019d366004610aae565b610389565b6040519015158152602001610135565b6101646101c0366004610bbb565b610412565b61016e60045481565b6005546101e090610100900460ff1681565b6040516101359190610c63565b61016461050d565b610164610203366004610a82565b61058e565b610210610759565b6040516101359190610c76565b6005546101e09060ff1681565b610164610238366004610be1565b6107e7565b61016461024b366004610b77565b610860565b6000546001600160a01b031633146102835760405162461bcd60e51b815260040161027a90610d3c565b60405180910390fd5b6001546001600160a01b031633146102ad5760405162461bcd60e51b815260040161027a90610c89565b604051632ed9c42160e11b81526001600160a01b0382811660048301527f00000000000000000000000000000000000000000000000000000000000000001690635db3884290602401600060405180830381600087803b15801561031057600080fd5b505af1158015610324573d6000803e3d6000fd5b5050505050565b6001546000906001600160a01b031633146103585760405162461bcd60e51b815260040161027a90610c89565b6000546001600160a01b031633146103825760405162461bcd60e51b815260040161027a90610d3c565b5060035490565b600080836001600160a01b0316635d5f221f846040518263ffffffff1660e01b81526004016103b89190610d86565b602060405180830381600087803b1580156103d257600080fd5b505af11580156103e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061040a9190610b5a565b949350505050565b6000546001600160a01b0316331461043c5760405162461bcd60e51b815260040161027a90610d3c565b60018060055460ff16600181111561045657610456610e13565b146104735760405162461bcd60e51b815260040161027a90610cd2565b6040516353318a8760e01b81526004810186905260ff8516602482015260448101849052606481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906353318a8790608401600060405180830381600087803b1580156104ec57600080fd5b505af1158015610500573d6000803e3d6000fd5b5050505061032485600355565b6000546001600160a01b031633146105375760405162461bcd60e51b815260040161027a90610d3c565b60018060055460ff16600181111561055157610551610e13565b1461056e5760405162461bcd60e51b815260040161027a90610cd2565b600080546001600160a01b03191690556005805460ff1916905550565b50565b6001546001600160a01b031633146105b85760405162461bcd60e51b815260040161027a90610c89565b6001600160a01b0382166106345760405162461bcd60e51b815260206004820152603760248201527f576f726b65722061646472657373206d757374206e6f7420626520302077686560448201527f6e2061737369676e696e67206e657720776f726b65722e000000000000000000606482015260840161027a565b600080546001600160a01b0319166001600160a01b0384811691821790925560405163089f591560e21b81526004810191909152602481018390527f00000000000000000000000000000000000000000000000000000000000000009091169063227d645490604401600060405180830381600087803b1580156106b757600080fd5b505af11580156106cb573d6000803e3d6000fd5b50506005805460ff1916600117905550506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001661071257610712610dfd565b6000546001600160a01b0383811691161461072f5761072f610dfd565b600160055460ff16600181111561074857610748610e13565b1461075557610755610dfd565b5050565b6002805461076690610dc2565b80601f016020809104026020016040519081016040528092919081815260200182805461079290610dc2565b80156107df5780601f106107b4576101008083540402835291602001916107df565b820191906000526020600020905b8154815290600101906020018083116107c257829003601f168201915b505050505081565b6001546001600160a01b031633146108115760405162461bcd60e51b815260040161027a90610c89565b60008060055460ff16600181111561082b5761082b610e13565b146108485760405162461bcd60e51b815260040161027a90610cd2565b815161085b906002906020850190610922565b505050565b6001546001600160a01b0316331461088a5760405162461bcd60e51b815260040161027a90610c89565b6040516325b0db0f60e01b8152841515600482015260ff8416602482015260448101839052606481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906325b0db0f90608401600060405180830381600087803b15801561090457600080fd5b505af1158015610918573d6000803e3d6000fd5b5050505050505050565b82805461092e90610dc2565b90600052602060002090601f0160209004810192826109505760008555610996565b82601f1061096957805160ff1916838001178555610996565b82800160010185558215610996579182015b8281111561099657825182559160200191906001019061097b565b506109a29291506109a6565b5090565b5b808211156109a257600081556001016109a7565b600082601f8301126109cc57600080fd5b813567ffffffffffffffff808211156109e7576109e7610e29565b604051601f8301601f19908116603f01168101908282118183101715610a0f57610a0f610e29565b81604052838152866020858801011115610a2857600080fd5b836020870160208301376000602085830101528094505050505092915050565b803560ff81168114610a5957600080fd5b919050565b600060208284031215610a7057600080fd5b8135610a7b81610e5d565b9392505050565b60008060408385031215610a9557600080fd5b8235610aa081610e5d565b946020939093013593505050565b60008060408385031215610ac157600080fd5b8235610acc81610e5d565b9150602083013567ffffffffffffffff80821115610ae957600080fd5b9084019060608287031215610afd57600080fd5b604051606081018181108382111715610b1857610b18610e29565b604052823582811115610b2a57600080fd5b610b36888286016109bb565b82525060208301356020820152604083013560408201528093505050509250929050565b600060208284031215610b6c57600080fd5b8151610a7b81610e72565b60008060008060808587031215610b8d57600080fd5b8435610b9881610e72565b9350610ba660208601610a48565b93969395505050506040820135916060013590565b60008060008060808587031215610bd157600080fd5b84359350610ba660208601610a48565b600060208284031215610bf357600080fd5b813567ffffffffffffffff811115610c0a57600080fd5b61040a848285016109bb565b6000815180845260005b81811015610c3c57602081850181015186830182015201610c20565b81811115610c4e576000602083870101525b50601f01601f19169290920160200192915050565b60208101610c7083610e3f565b91905290565b602081526000610a7b6020830184610c16565b60208082526029908201527f576f726b52656c6174696f6e736869703a2063616c6c6572206973206e6f74206040820152683a34329037bbb732b960b91b606082015260800190565b60208082526044908201527f5468697320616374696f6e2063616e6e6f742062652063617272696564206f7560408201527f7420756e646572207468652063757272656e7420636f6e7472616374207374616060820152633a3ab99760e11b608082015260a00190565b6020808252602a908201527f576f726b52656c6174696f6e736869703a2063616c6c6572206973206e6f74206040820152693a3432903bb7b935b2b960b11b606082015260800190565b602081526000825160606020840152610da26080840182610c16565b905060208401516040840152604084015160608401528091505092915050565b600181811c90821680610dd657607f821691505b60208210811415610df757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6002811061058b57634e487b7160e01b600052602160045260246000fd5b6001600160a01b038116811461058b57600080fd5b801515811461058b57600080fdfea2646970667358221220b2e2031a13e77b4d15854628c2f6055718a81195fe4ef033fcca27d5d5baea8e64736f6c6343000807003360e060405234801561001057600080fd5b50604051610f66380380610f6683398101604081905261002f9161026a565b8282826001600160a01b0383166100a95760405162461bcd60e51b815260206004820152603360248201527f4465706f7369746f7220616464726573732063616e6e6f74206265203020776860448201527232b71031b932b0ba34b7339032b9b1b937bb9760691b60648201526084015b60405180910390fd5b6001600160a01b03811661011b5760405162461bcd60e51b815260206004820152603360248201527f44616920746f6b656e20616464726573732063616e6e6f74206265203020776860448201527232b71031b932b0ba34b7339032b9b1b937bb9760691b60648201526084016100a0565b604080518082018252600a81526944616920457363726f7760b01b6020918201528151808301835260018152603160f81b9082015281517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f918101919091527f0bdbe35568d399a0401d60d11c76785045fec8c775dcb34589d4a0b9d540700d918101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660ff811660808301523060a08301529060c00160408051601f198184030181529190528051602090910120608052506001600160601b031960609390931b9290921660a05260c0526002805461010061ff00196001600160a01b0394909416620100000293909316610100600160b01b031990911617919091179055506102a6915050565b80516001600160a01b038116811461026557600080fd5b919050565b60008060006060848603121561027f57600080fd5b6102888461024e565b92506020840151915061029d6040850161024e565b90509250925092565b60805160a05160601c60c051610c56610310600039600081816101f20152610710015260008181610297015281816103ca01528181610667015281816106e801528181610797015261083101526000818161025e015281816104cf01526105cf0152610c566000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c80637df38c5b11610097578063bfce14ea11610066578063bfce14ea14610259578063c19d93fb14610280578063c7c4ff4614610292578063d8a43107146102b957600080fd5b80637df38c5b146101ed57806396118e4414610214578063b01dcb311461023b578063bad453cf1461024657600080fd5b80633c86f6f3116100d35780633c86f6f31461017b57806353318a87146101b05780635db38842146101c357806360d98201146101d457600080fd5b8063200d2ed214610105578063227d64541461012857806325b0db0f1461013d57806338af3eed14610150575b600080fd5b6002546101129060ff1681565b60405161011f9190610b51565b60405180910390f35b61013b6101363660046109f3565b6102d9565b005b61013b61014b366004610a1f565b6103c8565b600054610163906001600160a01b031681565b6040516001600160a01b03909116815260200161011f565b6101a27ffa5e0016fb62b8dffda8fd95249d438edcffd3689b40ac3b4281d4cf710609ae81565b60405190815260200161011f565b61013b6101be366004610a68565b610542565b61013b6101d13660046109cf565b50565b600254610100900460ff165b60405161011f9190610b37565b6101a27f000000000000000000000000000000000000000000000000000000000000000081565b6101a27f62b607caa4d4e7fcbd31bf4c033cd30888b536567fadc83710fdf15f8d5cfc9e81565b60025460ff16610112565b61013b610254366004610aa7565b61063a565b6101a27f000000000000000000000000000000000000000000000000000000000000000081565b6002546101e090610100900460ff1681565b6101637f000000000000000000000000000000000000000000000000000000000000000081565b6101a26102c73660046109cf565b60016020526000908152604090205481565b60008060025460ff1660038111156102f3576102f3610bf5565b146103195760405162461bcd60e51b815260040161031090610b65565b60405180910390fd5b6001600160a01b0383166103955760405162461bcd60e51b815260206004820152603f60248201527f42656e65666963696172792063616e6e6f74206265203078206164647265737360448201527f207768656e2061737369676e696e67206e65772062656e6566696369617279006064820152608401610310565b600080546001600160a01b0319166001600160a01b038516179055600280546001919060ff191682800217905550505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031633146104405760405162461bcd60e51b815260206004820181905260248201527f4f776e65722063616e206f6e6c79207265736f6c766520636f6e74726163742e6044820152606401610310565b60028060025460ff16600381111561045a5761045a610bf5565b146104775760405162461bcd60e51b815260040161031090610b65565b604080517ffa5e0016fb62b8dffda8fd95249d438edcffd3689b40ac3b4281d4cf710609ae602080830191909152871580158385015283518084038501815260608401855280519083012061190160f01b60808501527f0000000000000000000000000000000000000000000000000000000000000000608285015260a2808501919091528451808503909101815260c29093019093528151910120906105255761052061082f565b61053a565b600280546001919060ff191682805b02179055505b505050505050565b60018060025460ff16600381111561055c5761055c610bf5565b146105795760405162461bcd60e51b815260040161031090610b65565b604080517f62b607caa4d4e7fcbd31bf4c033cd30888b536567fadc83710fdf15f8d5cfc9e60208083019190915281830188905282518083038401815260608301845280519082012061190160f01b60808401527f0000000000000000000000000000000000000000000000000000000000000000608284015260a2808401919091528351808403909101815260c290920190925280519101206000546001600160a01b031661062857600080fd5b60028054819060ff1916600182610534565b6002546040516323f2ebc360e21b8152620100009091046001600160a01b031690638fcbaf0c9061069e907f00000000000000000000000000000000000000000000000000000000000000009030908a908a906001908b908b908b90600401610aee565b600060405180830381600087803b1580156106b857600080fd5b505af11580156106cc573d6000803e3d6000fd5b505060025460405163f2d5d56b60e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301527f0000000000000000000000000000000000000000000000000000000000000000602483015262010000909204909116925063f2d5d56b9150604401600060405180830381600087803b15801561076457600080fd5b505af1158015610778573d6000803e3d6000fd5b50506002546201000090046001600160a01b03169150638fcbaf0c90507f0000000000000000000000000000000000000000000000000000000000000000306107c2896001610bcf565b8860008989896040518963ffffffff1660e01b81526004016107eb989796959493929190610aee565b600060405180830381600087803b15801561080557600080fd5b505af1158015610819573d6000803e3d6000fd5b50506002805461ffff1916905550505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031633146108a75760405162461bcd60e51b815260206004820181905260248201527f4f776e65722063616e206f6e6c79207265736f6c766520636f6e74726163742e6044820152606401610310565b6000546001600160a01b03166108bc57600080fd5b6002546000546040516370a0823160e01b81523060048201526001600160a01b036201000090930483169263b753a98c92169083906370a082319060240160206040518083038186803b15801561091257600080fd5b505afa158015610926573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061094a9190610a8e565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b15801561099057600080fd5b505af11580156109a4573d6000803e3d6000fd5b50506002805461ffff19166102031790555050565b803560ff811681146109ca57600080fd5b919050565b6000602082840312156109e157600080fd5b81356109ec81610c0b565b9392505050565b60008060408385031215610a0657600080fd5b8235610a1181610c0b565b946020939093013593505050565b60008060008060808587031215610a3557600080fd5b84358015158114610a4557600080fd5b9350610a53602086016109b9565b93969395505050506040820135916060013590565b60008060008060808587031215610a7e57600080fd5b84359350610a53602086016109b9565b600060208284031215610aa057600080fd5b5051919050565b600080600080600060a08688031215610abf57600080fd5b8535945060208601359350610ad6604087016109b9565b94979396509394606081013594506080013592915050565b6001600160a01b039889168152969097166020870152604086019490945260608501929092521515608084015260ff1660a083015260c082015260e08101919091526101000190565b6020810160038310610b4b57610b4b610bf5565b91905290565b6020810160048310610b4b57610b4b610bf5565b60208082526044908201527f43616e6e6f7420696e766f6b65207468697320657363726f772066756e63746960408201527f6f6e2077697468207468652063757272656e7420636f6e7472616374207374616060820152633a3ab99760e11b608082015260a00190565b60008219821115610bf057634e487b7160e01b600052601160045260246000fd5b500190565b634e487b7160e01b600052602160045260246000fd5b6001600160a01b03811681146101d157600080fdfea26469706673582212202dc66b1a9385167e89267cb825ab637c24b0528266bf6b07206e97268ee4212364736f6c63430008070033a2646970667358221220b5d0547f2cc6d5e1b836ad609e581a391e82bd1a8965b142750f01c3ee34540c64736f6c63430008070033a2646970667358221220886966baee02738677b34d84a9105b22e706ee5d6fdaec7b21e709b891f0692164736f6c63430008070033",
|
96
|
+
"sourceMap": "118:1187:12:-:0;;;;;;;;;;;;;;;;;;;",
|
97
|
+
"deployedSourceMap": "118:1187:12:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1200:103;1246:7;1273:22;1200:103;;2892:25:15;;;2880:2;2865:18;1200:103:12;;;;;;;976:155;;;;;;:::i;:::-;;:::i;:::-;;571:357;;;;;;:::i;:::-;;:::i;976:155::-;1039:15;1055:5;1039:22;;;;;;;;;;:::i;:::-;;;;;;;;;1032:29;;-1:-1:-1;;;;;;1032:29:12;;;1100:22;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1076:48;;-1:-1:-1;;;;;1100:22:12;;;;1076:48;;;976:155;:::o;571:357::-;671:20;705:10;717;694:34;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;786:15:12;:35;;;;;;;;;;;;;;-1:-1:-1;;;;;;786:35:12;-1:-1:-1;;;;;786:35:12;;;;;;;;874:22;;836:85;;786:35;;-1:-1:-1;874:22:12;836:85;;;;898:10;;910;;836:85;:::i;:::-;;;;;;;;661:267;571:357;;:::o;-1:-1:-1:-;;;;;;;;:::o;14:151:15:-;90:20;;139:1;129:12;;119:40;;155:1;152;145:12;119:40;14:151;;;:::o;170:1029::-;263:6;271;324:2;312:9;303:7;299:23;295:32;292:52;;;340:1;337;330:12;292:52;380:9;367:23;409:18;450:2;442:6;439:14;436:34;;;466:1;463;456:12;436:34;504:6;493:9;489:22;479:32;;549:7;542:4;538:2;534:13;530:27;520:55;;571:1;568;561:12;520:55;607:2;594:16;629:2;625;622:10;619:36;;;635:18;;:::i;:::-;710:2;704:9;678:2;764:13;;-1:-1:-1;;760:22:15;;;784:2;756:31;752:40;740:53;;;808:18;;;828:22;;;805:46;802:72;;;854:18;;:::i;:::-;894:10;890:2;883:22;929:2;921:6;914:18;971:7;964:4;959:2;955;951:11;947:22;944:35;941:55;;;992:1;989;982:12;941:55;1052:2;1045:4;1041:2;1037:13;1030:4;1022:6;1018:17;1005:50;1099:1;1092:4;1087:2;1079:6;1075:15;1071:26;1064:37;1120:6;1110:16;;;;;;;1145:48;1187:4;1176:9;1172:20;1145:48;:::i;:::-;1135:58;;170:1029;;;;;:::o;1204:276::-;1262:6;1315:2;1303:9;1294:7;1290:23;1286:32;1283:52;;;1331:1;1328;1321:12;1283:52;1370:9;1357:23;1420:10;1413:5;1409:22;1402:5;1399:33;1389:61;;1446:1;1443;1436:12;1389:61;1469:5;1204:276;-1:-1:-1;;;1204:276:15:o;1485:472::-;1527:3;1565:5;1559:12;1592:6;1587:3;1580:19;1617:1;1627:162;1641:6;1638:1;1635:13;1627:162;;;1703:4;1759:13;;;1755:22;;1749:29;1731:11;;;1727:20;;1720:59;1656:12;1627:162;;;1807:6;1804:1;1801:13;1798:87;;;1873:1;1866:4;1857:6;1852:3;1848:16;1844:27;1837:38;1798:87;-1:-1:-1;1939:2:15;1918:15;-1:-1:-1;;1914:29:15;1905:39;;;;1946:4;1901:50;;1485:472;-1:-1:-1;;1485:472:15:o;1962:317::-;-1:-1:-1;;;;;2139:32:15;;2121:51;;2208:2;2203;2188:18;;2181:30;;;-1:-1:-1;;2228:45:15;;2254:18;;2246:6;2228:45;:::i;:::-;2220:53;1962:317;-1:-1:-1;;;;1962:317:15:o;2284:457::-;2474:2;2463:9;2456:21;2437:4;2494:45;2535:2;2524:9;2520:18;2512:6;2494:45;:::i;:::-;2486:53;;2569:1;2561:6;2558:13;2548:144;;2614:10;2609:3;2605:20;2602:1;2595:31;2649:4;2646:1;2639:15;2677:4;2674:1;2667:15;2548:144;2728:6;2723:2;2712:9;2708:18;2701:34;2284:457;;;;;:::o;2928:127::-;2989:10;2984:3;2980:20;2977:1;2970:31;3020:4;3017:1;3010:15;3044:4;3041:1;3034:15;3060:127;3121:10;3116:3;3112:20;3109:1;3102:31;3152:4;3149:1;3142:15;3176:4;3173:1;3166:15",
|
98
|
+
"sourcePath": "/Users/elijahhampton/git/opportunity-core/src/contracts/market/MarketFactory.sol",
|
99
|
+
"compiler": {
|
100
|
+
"name": "solc",
|
101
|
+
"version": "0.8.7+commit.e28d00a7"
|
102
|
+
},
|
103
|
+
"ast": {
|
104
|
+
"absolutePath": "/Users/elijahhampton/git/opportunity-core/src/contracts/market/MarketFactory.sol",
|
105
|
+
"exportedSymbols": {
|
106
|
+
"Context": [
|
107
|
+
217
|
108
|
+
],
|
109
|
+
"Controllable": [
|
110
|
+
304
|
111
|
+
],
|
112
|
+
"DaiEscrow": [
|
113
|
+
771
|
114
|
+
],
|
115
|
+
"DaiToken": [
|
116
|
+
381
|
117
|
+
],
|
118
|
+
"Evaluation": [
|
119
|
+
1199
|
120
|
+
],
|
121
|
+
"IUserSummary": [
|
122
|
+
1996
|
123
|
+
],
|
124
|
+
"Market": [
|
125
|
+
1676
|
126
|
+
],
|
127
|
+
"MarketFactory": [
|
128
|
+
1773
|
129
|
+
],
|
130
|
+
"MarketLib": [
|
131
|
+
1208
|
132
|
+
],
|
133
|
+
"Ownable": [
|
134
|
+
103
|
135
|
+
],
|
136
|
+
"Pausable": [
|
137
|
+
195
|
138
|
+
],
|
139
|
+
"StringUtils": [
|
140
|
+
1449
|
141
|
+
],
|
142
|
+
"User": [
|
143
|
+
1469
|
144
|
+
],
|
145
|
+
"UserSummary": [
|
146
|
+
1938
|
147
|
+
],
|
148
|
+
"WorkExchange": [
|
149
|
+
798
|
150
|
+
],
|
151
|
+
"WorkRelationship": [
|
152
|
+
1183
|
153
|
+
]
|
154
|
+
},
|
155
|
+
"id": 1774,
|
156
|
+
"license": "MIT",
|
157
|
+
"nodeType": "SourceUnit",
|
158
|
+
"nodes": [
|
159
|
+
{
|
160
|
+
"id": 1678,
|
161
|
+
"literals": [
|
162
|
+
"solidity",
|
163
|
+
"0.8",
|
164
|
+
".7"
|
165
|
+
],
|
166
|
+
"nodeType": "PragmaDirective",
|
167
|
+
"src": "33:22:12"
|
168
|
+
},
|
169
|
+
{
|
170
|
+
"absolutePath": "/Users/elijahhampton/git/opportunity-core/src/contracts/market/Market.sol",
|
171
|
+
"file": "./Market.sol",
|
172
|
+
"id": 1679,
|
173
|
+
"nameLocation": "-1:-1:-1",
|
174
|
+
"nodeType": "ImportDirective",
|
175
|
+
"scope": 1774,
|
176
|
+
"sourceUnit": 1677,
|
177
|
+
"src": "57:22:12",
|
178
|
+
"symbolAliases": [],
|
179
|
+
"unitAlias": ""
|
180
|
+
},
|
181
|
+
{
|
182
|
+
"absolutePath": "/Users/elijahhampton/git/opportunity-core/src/contracts/libraries/MarketLib.sol",
|
183
|
+
"file": "../libraries/MarketLib.sol",
|
184
|
+
"id": 1680,
|
185
|
+
"nameLocation": "-1:-1:-1",
|
186
|
+
"nodeType": "ImportDirective",
|
187
|
+
"scope": 1774,
|
188
|
+
"sourceUnit": 1209,
|
189
|
+
"src": "80:36:12",
|
190
|
+
"symbolAliases": [],
|
191
|
+
"unitAlias": ""
|
192
|
+
},
|
193
|
+
{
|
194
|
+
"abstract": false,
|
195
|
+
"baseContracts": [],
|
196
|
+
"contractDependencies": [
|
197
|
+
1676
|
198
|
+
],
|
199
|
+
"contractKind": "contract",
|
200
|
+
"fullyImplemented": true,
|
201
|
+
"id": 1773,
|
202
|
+
"linearizedBaseContracts": [
|
203
|
+
1773
|
204
|
+
],
|
205
|
+
"name": "MarketFactory",
|
206
|
+
"nameLocation": "127:13:12",
|
207
|
+
"nodeType": "ContractDefinition",
|
208
|
+
"nodes": [
|
209
|
+
{
|
210
|
+
"anonymous": false,
|
211
|
+
"id": 1690,
|
212
|
+
"name": "MarketCreated",
|
213
|
+
"nameLocation": "153:13:12",
|
214
|
+
"nodeType": "EventDefinition",
|
215
|
+
"parameters": {
|
216
|
+
"id": 1689,
|
217
|
+
"nodeType": "ParameterList",
|
218
|
+
"parameters": [
|
219
|
+
{
|
220
|
+
"constant": false,
|
221
|
+
"id": 1682,
|
222
|
+
"indexed": true,
|
223
|
+
"mutability": "mutable",
|
224
|
+
"name": "_market",
|
225
|
+
"nameLocation": "183:7:12",
|
226
|
+
"nodeType": "VariableDeclaration",
|
227
|
+
"scope": 1690,
|
228
|
+
"src": "167:23:12",
|
229
|
+
"stateVariable": false,
|
230
|
+
"storageLocation": "default",
|
231
|
+
"typeDescriptions": {
|
232
|
+
"typeIdentifier": "t_address",
|
233
|
+
"typeString": "address"
|
234
|
+
},
|
235
|
+
"typeName": {
|
236
|
+
"id": 1681,
|
237
|
+
"name": "address",
|
238
|
+
"nodeType": "ElementaryTypeName",
|
239
|
+
"src": "167:7:12",
|
240
|
+
"stateMutability": "nonpayable",
|
241
|
+
"typeDescriptions": {
|
242
|
+
"typeIdentifier": "t_address",
|
243
|
+
"typeString": "address"
|
244
|
+
}
|
245
|
+
},
|
246
|
+
"visibility": "internal"
|
247
|
+
},
|
248
|
+
{
|
249
|
+
"constant": false,
|
250
|
+
"id": 1684,
|
251
|
+
"indexed": true,
|
252
|
+
"mutability": "mutable",
|
253
|
+
"name": "index",
|
254
|
+
"nameLocation": "208:5:12",
|
255
|
+
"nodeType": "VariableDeclaration",
|
256
|
+
"scope": 1690,
|
257
|
+
"src": "192:21:12",
|
258
|
+
"stateVariable": false,
|
259
|
+
"storageLocation": "default",
|
260
|
+
"typeDescriptions": {
|
261
|
+
"typeIdentifier": "t_uint256",
|
262
|
+
"typeString": "uint256"
|
263
|
+
},
|
264
|
+
"typeName": {
|
265
|
+
"id": 1683,
|
266
|
+
"name": "uint256",
|
267
|
+
"nodeType": "ElementaryTypeName",
|
268
|
+
"src": "192:7:12",
|
269
|
+
"typeDescriptions": {
|
270
|
+
"typeIdentifier": "t_uint256",
|
271
|
+
"typeString": "uint256"
|
272
|
+
}
|
273
|
+
},
|
274
|
+
"visibility": "internal"
|
275
|
+
},
|
276
|
+
{
|
277
|
+
"constant": false,
|
278
|
+
"id": 1686,
|
279
|
+
"indexed": false,
|
280
|
+
"mutability": "mutable",
|
281
|
+
"name": "owner",
|
282
|
+
"nameLocation": "223:5:12",
|
283
|
+
"nodeType": "VariableDeclaration",
|
284
|
+
"scope": 1690,
|
285
|
+
"src": "215:13:12",
|
286
|
+
"stateVariable": false,
|
287
|
+
"storageLocation": "default",
|
288
|
+
"typeDescriptions": {
|
289
|
+
"typeIdentifier": "t_address",
|
290
|
+
"typeString": "address"
|
291
|
+
},
|
292
|
+
"typeName": {
|
293
|
+
"id": 1685,
|
294
|
+
"name": "address",
|
295
|
+
"nodeType": "ElementaryTypeName",
|
296
|
+
"src": "215:7:12",
|
297
|
+
"stateMutability": "nonpayable",
|
298
|
+
"typeDescriptions": {
|
299
|
+
"typeIdentifier": "t_address",
|
300
|
+
"typeString": "address"
|
301
|
+
}
|
302
|
+
},
|
303
|
+
"visibility": "internal"
|
304
|
+
},
|
305
|
+
{
|
306
|
+
"constant": false,
|
307
|
+
"id": 1688,
|
308
|
+
"indexed": false,
|
309
|
+
"mutability": "mutable",
|
310
|
+
"name": "marketName",
|
311
|
+
"nameLocation": "246:10:12",
|
312
|
+
"nodeType": "VariableDeclaration",
|
313
|
+
"scope": 1690,
|
314
|
+
"src": "239:17:12",
|
315
|
+
"stateVariable": false,
|
316
|
+
"storageLocation": "default",
|
317
|
+
"typeDescriptions": {
|
318
|
+
"typeIdentifier": "t_string_memory_ptr",
|
319
|
+
"typeString": "string"
|
320
|
+
},
|
321
|
+
"typeName": {
|
322
|
+
"id": 1687,
|
323
|
+
"name": "string",
|
324
|
+
"nodeType": "ElementaryTypeName",
|
325
|
+
"src": "239:6:12",
|
326
|
+
"typeDescriptions": {
|
327
|
+
"typeIdentifier": "t_string_storage_ptr",
|
328
|
+
"typeString": "string"
|
329
|
+
}
|
330
|
+
},
|
331
|
+
"visibility": "internal"
|
332
|
+
}
|
333
|
+
],
|
334
|
+
"src": "166:91:12"
|
335
|
+
},
|
336
|
+
"src": "147:111:12"
|
337
|
+
},
|
338
|
+
{
|
339
|
+
"anonymous": false,
|
340
|
+
"id": 1694,
|
341
|
+
"name": "MarketDestroyed",
|
342
|
+
"nameLocation": "269:15:12",
|
343
|
+
"nodeType": "EventDefinition",
|
344
|
+
"parameters": {
|
345
|
+
"id": 1693,
|
346
|
+
"nodeType": "ParameterList",
|
347
|
+
"parameters": [
|
348
|
+
{
|
349
|
+
"constant": false,
|
350
|
+
"id": 1692,
|
351
|
+
"indexed": true,
|
352
|
+
"mutability": "mutable",
|
353
|
+
"name": "_marketAddress",
|
354
|
+
"nameLocation": "301:14:12",
|
355
|
+
"nodeType": "VariableDeclaration",
|
356
|
+
"scope": 1694,
|
357
|
+
"src": "285:30:12",
|
358
|
+
"stateVariable": false,
|
359
|
+
"storageLocation": "default",
|
360
|
+
"typeDescriptions": {
|
361
|
+
"typeIdentifier": "t_address",
|
362
|
+
"typeString": "address"
|
363
|
+
},
|
364
|
+
"typeName": {
|
365
|
+
"id": 1691,
|
366
|
+
"name": "address",
|
367
|
+
"nodeType": "ElementaryTypeName",
|
368
|
+
"src": "285:7:12",
|
369
|
+
"stateMutability": "nonpayable",
|
370
|
+
"typeDescriptions": {
|
371
|
+
"typeIdentifier": "t_address",
|
372
|
+
"typeString": "address"
|
373
|
+
}
|
374
|
+
},
|
375
|
+
"visibility": "internal"
|
376
|
+
}
|
377
|
+
],
|
378
|
+
"src": "284:32:12"
|
379
|
+
},
|
380
|
+
"src": "263:54:12"
|
381
|
+
},
|
382
|
+
{
|
383
|
+
"constant": false,
|
384
|
+
"id": 1698,
|
385
|
+
"mutability": "mutable",
|
386
|
+
"name": "_createdMarkets",
|
387
|
+
"nameLocation": "340:15:12",
|
388
|
+
"nodeType": "VariableDeclaration",
|
389
|
+
"scope": 1773,
|
390
|
+
"src": "323:32:12",
|
391
|
+
"stateVariable": true,
|
392
|
+
"storageLocation": "default",
|
393
|
+
"typeDescriptions": {
|
394
|
+
"typeIdentifier": "t_array$_t_contract$_Market_$1676_$dyn_storage",
|
395
|
+
"typeString": "contract Market[]"
|
396
|
+
},
|
397
|
+
"typeName": {
|
398
|
+
"baseType": {
|
399
|
+
"id": 1696,
|
400
|
+
"nodeType": "UserDefinedTypeName",
|
401
|
+
"pathNode": {
|
402
|
+
"id": 1695,
|
403
|
+
"name": "Market",
|
404
|
+
"nodeType": "IdentifierPath",
|
405
|
+
"referencedDeclaration": 1676,
|
406
|
+
"src": "323:6:12"
|
407
|
+
},
|
408
|
+
"referencedDeclaration": 1676,
|
409
|
+
"src": "323:6:12",
|
410
|
+
"typeDescriptions": {
|
411
|
+
"typeIdentifier": "t_contract$_Market_$1676",
|
412
|
+
"typeString": "contract Market"
|
413
|
+
}
|
414
|
+
},
|
415
|
+
"id": 1697,
|
416
|
+
"nodeType": "ArrayTypeName",
|
417
|
+
"src": "323:8:12",
|
418
|
+
"typeDescriptions": {
|
419
|
+
"typeIdentifier": "t_array$_t_contract$_Market_$1676_$dyn_storage_ptr",
|
420
|
+
"typeString": "contract Market[]"
|
421
|
+
}
|
422
|
+
},
|
423
|
+
"visibility": "private"
|
424
|
+
},
|
425
|
+
{
|
426
|
+
"constant": false,
|
427
|
+
"id": 1703,
|
428
|
+
"mutability": "mutable",
|
429
|
+
"name": "idsToMarkets",
|
430
|
+
"nameLocation": "387:12:12",
|
431
|
+
"nodeType": "VariableDeclaration",
|
432
|
+
"scope": 1773,
|
433
|
+
"src": "361:38:12",
|
434
|
+
"stateVariable": true,
|
435
|
+
"storageLocation": "default",
|
436
|
+
"typeDescriptions": {
|
437
|
+
"typeIdentifier": "t_mapping$_t_string_memory_ptr_$_t_contract$_Market_$1676_$",
|
438
|
+
"typeString": "mapping(string => contract Market)"
|
439
|
+
},
|
440
|
+
"typeName": {
|
441
|
+
"id": 1702,
|
442
|
+
"keyType": {
|
443
|
+
"id": 1699,
|
444
|
+
"name": "string",
|
445
|
+
"nodeType": "ElementaryTypeName",
|
446
|
+
"src": "369:6:12",
|
447
|
+
"typeDescriptions": {
|
448
|
+
"typeIdentifier": "t_string_storage_ptr",
|
449
|
+
"typeString": "string"
|
450
|
+
}
|
451
|
+
},
|
452
|
+
"nodeType": "Mapping",
|
453
|
+
"src": "361:25:12",
|
454
|
+
"typeDescriptions": {
|
455
|
+
"typeIdentifier": "t_mapping$_t_string_memory_ptr_$_t_contract$_Market_$1676_$",
|
456
|
+
"typeString": "mapping(string => contract Market)"
|
457
|
+
},
|
458
|
+
"valueType": {
|
459
|
+
"id": 1701,
|
460
|
+
"nodeType": "UserDefinedTypeName",
|
461
|
+
"pathNode": {
|
462
|
+
"id": 1700,
|
463
|
+
"name": "Market",
|
464
|
+
"nodeType": "IdentifierPath",
|
465
|
+
"referencedDeclaration": 1676,
|
466
|
+
"src": "379:6:12"
|
467
|
+
},
|
468
|
+
"referencedDeclaration": 1676,
|
469
|
+
"src": "379:6:12",
|
470
|
+
"typeDescriptions": {
|
471
|
+
"typeIdentifier": "t_contract$_Market_$1676",
|
472
|
+
"typeString": "contract Market"
|
473
|
+
}
|
474
|
+
}
|
475
|
+
},
|
476
|
+
"visibility": "internal"
|
477
|
+
},
|
478
|
+
{
|
479
|
+
"body": {
|
480
|
+
"id": 1740,
|
481
|
+
"nodeType": "Block",
|
482
|
+
"src": "661:267:12",
|
483
|
+
"statements": [
|
484
|
+
{
|
485
|
+
"assignments": [
|
486
|
+
1714
|
487
|
+
],
|
488
|
+
"declarations": [
|
489
|
+
{
|
490
|
+
"constant": false,
|
491
|
+
"id": 1714,
|
492
|
+
"mutability": "mutable",
|
493
|
+
"name": "createdMarket",
|
494
|
+
"nameLocation": "678:13:12",
|
495
|
+
"nodeType": "VariableDeclaration",
|
496
|
+
"scope": 1740,
|
497
|
+
"src": "671:20:12",
|
498
|
+
"stateVariable": false,
|
499
|
+
"storageLocation": "default",
|
500
|
+
"typeDescriptions": {
|
501
|
+
"typeIdentifier": "t_contract$_Market_$1676",
|
502
|
+
"typeString": "contract Market"
|
503
|
+
},
|
504
|
+
"typeName": {
|
505
|
+
"id": 1713,
|
506
|
+
"nodeType": "UserDefinedTypeName",
|
507
|
+
"pathNode": {
|
508
|
+
"id": 1712,
|
509
|
+
"name": "Market",
|
510
|
+
"nodeType": "IdentifierPath",
|
511
|
+
"referencedDeclaration": 1676,
|
512
|
+
"src": "671:6:12"
|
513
|
+
},
|
514
|
+
"referencedDeclaration": 1676,
|
515
|
+
"src": "671:6:12",
|
516
|
+
"typeDescriptions": {
|
517
|
+
"typeIdentifier": "t_contract$_Market_$1676",
|
518
|
+
"typeString": "contract Market"
|
519
|
+
}
|
520
|
+
},
|
521
|
+
"visibility": "internal"
|
522
|
+
}
|
523
|
+
],
|
524
|
+
"id": 1721,
|
525
|
+
"initialValue": {
|
526
|
+
"arguments": [
|
527
|
+
{
|
528
|
+
"id": 1718,
|
529
|
+
"name": "marketName",
|
530
|
+
"nodeType": "Identifier",
|
531
|
+
"overloadedDeclarations": [],
|
532
|
+
"referencedDeclaration": 1706,
|
533
|
+
"src": "705:10:12",
|
534
|
+
"typeDescriptions": {
|
535
|
+
"typeIdentifier": "t_string_memory_ptr",
|
536
|
+
"typeString": "string memory"
|
537
|
+
}
|
538
|
+
},
|
539
|
+
{
|
540
|
+
"id": 1719,
|
541
|
+
"name": "marketType",
|
542
|
+
"nodeType": "Identifier",
|
543
|
+
"overloadedDeclarations": [],
|
544
|
+
"referencedDeclaration": 1709,
|
545
|
+
"src": "717:10:12",
|
546
|
+
"typeDescriptions": {
|
547
|
+
"typeIdentifier": "t_enum$_MarketType_$1204",
|
548
|
+
"typeString": "enum MarketLib.MarketType"
|
549
|
+
}
|
550
|
+
}
|
551
|
+
],
|
552
|
+
"expression": {
|
553
|
+
"argumentTypes": [
|
554
|
+
{
|
555
|
+
"typeIdentifier": "t_string_memory_ptr",
|
556
|
+
"typeString": "string memory"
|
557
|
+
},
|
558
|
+
{
|
559
|
+
"typeIdentifier": "t_enum$_MarketType_$1204",
|
560
|
+
"typeString": "enum MarketLib.MarketType"
|
561
|
+
}
|
562
|
+
],
|
563
|
+
"id": 1717,
|
564
|
+
"isConstant": false,
|
565
|
+
"isLValue": false,
|
566
|
+
"isPure": false,
|
567
|
+
"lValueRequested": false,
|
568
|
+
"nodeType": "NewExpression",
|
569
|
+
"src": "694:10:12",
|
570
|
+
"typeDescriptions": {
|
571
|
+
"typeIdentifier": "t_function_creation_nonpayable$_t_string_memory_ptr_$_t_enum$_MarketType_$1204_$returns$_t_contract$_Market_$1676_$",
|
572
|
+
"typeString": "function (string memory,enum MarketLib.MarketType) returns (contract Market)"
|
573
|
+
},
|
574
|
+
"typeName": {
|
575
|
+
"id": 1716,
|
576
|
+
"nodeType": "UserDefinedTypeName",
|
577
|
+
"pathNode": {
|
578
|
+
"id": 1715,
|
579
|
+
"name": "Market",
|
580
|
+
"nodeType": "IdentifierPath",
|
581
|
+
"referencedDeclaration": 1676,
|
582
|
+
"src": "698:6:12"
|
583
|
+
},
|
584
|
+
"referencedDeclaration": 1676,
|
585
|
+
"src": "698:6:12",
|
586
|
+
"typeDescriptions": {
|
587
|
+
"typeIdentifier": "t_contract$_Market_$1676",
|
588
|
+
"typeString": "contract Market"
|
589
|
+
}
|
590
|
+
}
|
591
|
+
},
|
592
|
+
"id": 1720,
|
593
|
+
"isConstant": false,
|
594
|
+
"isLValue": false,
|
595
|
+
"isPure": false,
|
596
|
+
"kind": "functionCall",
|
597
|
+
"lValueRequested": false,
|
598
|
+
"names": [],
|
599
|
+
"nodeType": "FunctionCall",
|
600
|
+
"src": "694:34:12",
|
601
|
+
"tryCall": false,
|
602
|
+
"typeDescriptions": {
|
603
|
+
"typeIdentifier": "t_contract$_Market_$1676",
|
604
|
+
"typeString": "contract Market"
|
605
|
+
}
|
606
|
+
},
|
607
|
+
"nodeType": "VariableDeclarationStatement",
|
608
|
+
"src": "671:57:12"
|
609
|
+
},
|
610
|
+
{
|
611
|
+
"expression": {
|
612
|
+
"arguments": [
|
613
|
+
{
|
614
|
+
"id": 1725,
|
615
|
+
"name": "createdMarket",
|
616
|
+
"nodeType": "Identifier",
|
617
|
+
"overloadedDeclarations": [],
|
618
|
+
"referencedDeclaration": 1714,
|
619
|
+
"src": "807:13:12",
|
620
|
+
"typeDescriptions": {
|
621
|
+
"typeIdentifier": "t_contract$_Market_$1676",
|
622
|
+
"typeString": "contract Market"
|
623
|
+
}
|
624
|
+
}
|
625
|
+
],
|
626
|
+
"expression": {
|
627
|
+
"argumentTypes": [
|
628
|
+
{
|
629
|
+
"typeIdentifier": "t_contract$_Market_$1676",
|
630
|
+
"typeString": "contract Market"
|
631
|
+
}
|
632
|
+
],
|
633
|
+
"expression": {
|
634
|
+
"id": 1722,
|
635
|
+
"name": "_createdMarkets",
|
636
|
+
"nodeType": "Identifier",
|
637
|
+
"overloadedDeclarations": [],
|
638
|
+
"referencedDeclaration": 1698,
|
639
|
+
"src": "786:15:12",
|
640
|
+
"typeDescriptions": {
|
641
|
+
"typeIdentifier": "t_array$_t_contract$_Market_$1676_$dyn_storage",
|
642
|
+
"typeString": "contract Market[] storage ref"
|
643
|
+
}
|
644
|
+
},
|
645
|
+
"id": 1724,
|
646
|
+
"isConstant": false,
|
647
|
+
"isLValue": false,
|
648
|
+
"isPure": false,
|
649
|
+
"lValueRequested": false,
|
650
|
+
"memberName": "push",
|
651
|
+
"nodeType": "MemberAccess",
|
652
|
+
"src": "786:20:12",
|
653
|
+
"typeDescriptions": {
|
654
|
+
"typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_contract$_Market_$1676_$dyn_storage_ptr_$_t_contract$_Market_$1676_$returns$__$bound_to$_t_array$_t_contract$_Market_$1676_$dyn_storage_ptr_$",
|
655
|
+
"typeString": "function (contract Market[] storage pointer,contract Market)"
|
656
|
+
}
|
657
|
+
},
|
658
|
+
"id": 1726,
|
659
|
+
"isConstant": false,
|
660
|
+
"isLValue": false,
|
661
|
+
"isPure": false,
|
662
|
+
"kind": "functionCall",
|
663
|
+
"lValueRequested": false,
|
664
|
+
"names": [],
|
665
|
+
"nodeType": "FunctionCall",
|
666
|
+
"src": "786:35:12",
|
667
|
+
"tryCall": false,
|
668
|
+
"typeDescriptions": {
|
669
|
+
"typeIdentifier": "t_tuple$__$",
|
670
|
+
"typeString": "tuple()"
|
671
|
+
}
|
672
|
+
},
|
673
|
+
"id": 1727,
|
674
|
+
"nodeType": "ExpressionStatement",
|
675
|
+
"src": "786:35:12"
|
676
|
+
},
|
677
|
+
{
|
678
|
+
"eventCall": {
|
679
|
+
"arguments": [
|
680
|
+
{
|
681
|
+
"arguments": [
|
682
|
+
{
|
683
|
+
"id": 1731,
|
684
|
+
"name": "createdMarket",
|
685
|
+
"nodeType": "Identifier",
|
686
|
+
"overloadedDeclarations": [],
|
687
|
+
"referencedDeclaration": 1714,
|
688
|
+
"src": "858:13:12",
|
689
|
+
"typeDescriptions": {
|
690
|
+
"typeIdentifier": "t_contract$_Market_$1676",
|
691
|
+
"typeString": "contract Market"
|
692
|
+
}
|
693
|
+
}
|
694
|
+
],
|
695
|
+
"expression": {
|
696
|
+
"argumentTypes": [
|
697
|
+
{
|
698
|
+
"typeIdentifier": "t_contract$_Market_$1676",
|
699
|
+
"typeString": "contract Market"
|
700
|
+
}
|
701
|
+
],
|
702
|
+
"id": 1730,
|
703
|
+
"isConstant": false,
|
704
|
+
"isLValue": false,
|
705
|
+
"isPure": true,
|
706
|
+
"lValueRequested": false,
|
707
|
+
"nodeType": "ElementaryTypeNameExpression",
|
708
|
+
"src": "850:7:12",
|
709
|
+
"typeDescriptions": {
|
710
|
+
"typeIdentifier": "t_type$_t_address_$",
|
711
|
+
"typeString": "type(address)"
|
712
|
+
},
|
713
|
+
"typeName": {
|
714
|
+
"id": 1729,
|
715
|
+
"name": "address",
|
716
|
+
"nodeType": "ElementaryTypeName",
|
717
|
+
"src": "850:7:12",
|
718
|
+
"typeDescriptions": {}
|
719
|
+
}
|
720
|
+
},
|
721
|
+
"id": 1732,
|
722
|
+
"isConstant": false,
|
723
|
+
"isLValue": false,
|
724
|
+
"isPure": false,
|
725
|
+
"kind": "typeConversion",
|
726
|
+
"lValueRequested": false,
|
727
|
+
"names": [],
|
728
|
+
"nodeType": "FunctionCall",
|
729
|
+
"src": "850:22:12",
|
730
|
+
"tryCall": false,
|
731
|
+
"typeDescriptions": {
|
732
|
+
"typeIdentifier": "t_address",
|
733
|
+
"typeString": "address"
|
734
|
+
}
|
735
|
+
},
|
736
|
+
{
|
737
|
+
"expression": {
|
738
|
+
"id": 1733,
|
739
|
+
"name": "_createdMarkets",
|
740
|
+
"nodeType": "Identifier",
|
741
|
+
"overloadedDeclarations": [],
|
742
|
+
"referencedDeclaration": 1698,
|
743
|
+
"src": "874:15:12",
|
744
|
+
"typeDescriptions": {
|
745
|
+
"typeIdentifier": "t_array$_t_contract$_Market_$1676_$dyn_storage",
|
746
|
+
"typeString": "contract Market[] storage ref"
|
747
|
+
}
|
748
|
+
},
|
749
|
+
"id": 1734,
|
750
|
+
"isConstant": false,
|
751
|
+
"isLValue": false,
|
752
|
+
"isPure": false,
|
753
|
+
"lValueRequested": false,
|
754
|
+
"memberName": "length",
|
755
|
+
"nodeType": "MemberAccess",
|
756
|
+
"src": "874:22:12",
|
757
|
+
"typeDescriptions": {
|
758
|
+
"typeIdentifier": "t_uint256",
|
759
|
+
"typeString": "uint256"
|
760
|
+
}
|
761
|
+
},
|
762
|
+
{
|
763
|
+
"expression": {
|
764
|
+
"id": 1735,
|
765
|
+
"name": "msg",
|
766
|
+
"nodeType": "Identifier",
|
767
|
+
"overloadedDeclarations": [],
|
768
|
+
"referencedDeclaration": 4294967281,
|
769
|
+
"src": "898:3:12",
|
770
|
+
"typeDescriptions": {
|
771
|
+
"typeIdentifier": "t_magic_message",
|
772
|
+
"typeString": "msg"
|
773
|
+
}
|
774
|
+
},
|
775
|
+
"id": 1736,
|
776
|
+
"isConstant": false,
|
777
|
+
"isLValue": false,
|
778
|
+
"isPure": false,
|
779
|
+
"lValueRequested": false,
|
780
|
+
"memberName": "sender",
|
781
|
+
"nodeType": "MemberAccess",
|
782
|
+
"src": "898:10:12",
|
783
|
+
"typeDescriptions": {
|
784
|
+
"typeIdentifier": "t_address",
|
785
|
+
"typeString": "address"
|
786
|
+
}
|
787
|
+
},
|
788
|
+
{
|
789
|
+
"id": 1737,
|
790
|
+
"name": "marketName",
|
791
|
+
"nodeType": "Identifier",
|
792
|
+
"overloadedDeclarations": [],
|
793
|
+
"referencedDeclaration": 1706,
|
794
|
+
"src": "910:10:12",
|
795
|
+
"typeDescriptions": {
|
796
|
+
"typeIdentifier": "t_string_memory_ptr",
|
797
|
+
"typeString": "string memory"
|
798
|
+
}
|
799
|
+
}
|
800
|
+
],
|
801
|
+
"expression": {
|
802
|
+
"argumentTypes": [
|
803
|
+
{
|
804
|
+
"typeIdentifier": "t_address",
|
805
|
+
"typeString": "address"
|
806
|
+
},
|
807
|
+
{
|
808
|
+
"typeIdentifier": "t_uint256",
|
809
|
+
"typeString": "uint256"
|
810
|
+
},
|
811
|
+
{
|
812
|
+
"typeIdentifier": "t_address",
|
813
|
+
"typeString": "address"
|
814
|
+
},
|
815
|
+
{
|
816
|
+
"typeIdentifier": "t_string_memory_ptr",
|
817
|
+
"typeString": "string memory"
|
818
|
+
}
|
819
|
+
],
|
820
|
+
"id": 1728,
|
821
|
+
"name": "MarketCreated",
|
822
|
+
"nodeType": "Identifier",
|
823
|
+
"overloadedDeclarations": [],
|
824
|
+
"referencedDeclaration": 1690,
|
825
|
+
"src": "836:13:12",
|
826
|
+
"typeDescriptions": {
|
827
|
+
"typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_string_memory_ptr_$returns$__$",
|
828
|
+
"typeString": "function (address,uint256,address,string memory)"
|
829
|
+
}
|
830
|
+
},
|
831
|
+
"id": 1738,
|
832
|
+
"isConstant": false,
|
833
|
+
"isLValue": false,
|
834
|
+
"isPure": false,
|
835
|
+
"kind": "functionCall",
|
836
|
+
"lValueRequested": false,
|
837
|
+
"names": [],
|
838
|
+
"nodeType": "FunctionCall",
|
839
|
+
"src": "836:85:12",
|
840
|
+
"tryCall": false,
|
841
|
+
"typeDescriptions": {
|
842
|
+
"typeIdentifier": "t_tuple$__$",
|
843
|
+
"typeString": "tuple()"
|
844
|
+
}
|
845
|
+
},
|
846
|
+
"id": 1739,
|
847
|
+
"nodeType": "EmitStatement",
|
848
|
+
"src": "831:90:12"
|
849
|
+
}
|
850
|
+
]
|
851
|
+
},
|
852
|
+
"documentation": {
|
853
|
+
"id": 1704,
|
854
|
+
"nodeType": "StructuredDocumentation",
|
855
|
+
"src": "406:159:12",
|
856
|
+
"text": " Creates a Market contract based on the market name and type. The market contract will generate and assign\n a unique id to the market."
|
857
|
+
},
|
858
|
+
"functionSelector": "c2ca748b",
|
859
|
+
"id": 1741,
|
860
|
+
"implemented": true,
|
861
|
+
"kind": "function",
|
862
|
+
"modifiers": [],
|
863
|
+
"name": "createMarket",
|
864
|
+
"nameLocation": "580:12:12",
|
865
|
+
"nodeType": "FunctionDefinition",
|
866
|
+
"parameters": {
|
867
|
+
"id": 1710,
|
868
|
+
"nodeType": "ParameterList",
|
869
|
+
"parameters": [
|
870
|
+
{
|
871
|
+
"constant": false,
|
872
|
+
"id": 1706,
|
873
|
+
"mutability": "mutable",
|
874
|
+
"name": "marketName",
|
875
|
+
"nameLocation": "607:10:12",
|
876
|
+
"nodeType": "VariableDeclaration",
|
877
|
+
"scope": 1741,
|
878
|
+
"src": "593:24:12",
|
879
|
+
"stateVariable": false,
|
880
|
+
"storageLocation": "memory",
|
881
|
+
"typeDescriptions": {
|
882
|
+
"typeIdentifier": "t_string_memory_ptr",
|
883
|
+
"typeString": "string"
|
884
|
+
},
|
885
|
+
"typeName": {
|
886
|
+
"id": 1705,
|
887
|
+
"name": "string",
|
888
|
+
"nodeType": "ElementaryTypeName",
|
889
|
+
"src": "593:6:12",
|
890
|
+
"typeDescriptions": {
|
891
|
+
"typeIdentifier": "t_string_storage_ptr",
|
892
|
+
"typeString": "string"
|
893
|
+
}
|
894
|
+
},
|
895
|
+
"visibility": "internal"
|
896
|
+
},
|
897
|
+
{
|
898
|
+
"constant": false,
|
899
|
+
"id": 1709,
|
900
|
+
"mutability": "mutable",
|
901
|
+
"name": "marketType",
|
902
|
+
"nameLocation": "640:10:12",
|
903
|
+
"nodeType": "VariableDeclaration",
|
904
|
+
"scope": 1741,
|
905
|
+
"src": "619:31:12",
|
906
|
+
"stateVariable": false,
|
907
|
+
"storageLocation": "default",
|
908
|
+
"typeDescriptions": {
|
909
|
+
"typeIdentifier": "t_enum$_MarketType_$1204",
|
910
|
+
"typeString": "enum MarketLib.MarketType"
|
911
|
+
},
|
912
|
+
"typeName": {
|
913
|
+
"id": 1708,
|
914
|
+
"nodeType": "UserDefinedTypeName",
|
915
|
+
"pathNode": {
|
916
|
+
"id": 1707,
|
917
|
+
"name": "MarketLib.MarketType",
|
918
|
+
"nodeType": "IdentifierPath",
|
919
|
+
"referencedDeclaration": 1204,
|
920
|
+
"src": "619:20:12"
|
921
|
+
},
|
922
|
+
"referencedDeclaration": 1204,
|
923
|
+
"src": "619:20:12",
|
924
|
+
"typeDescriptions": {
|
925
|
+
"typeIdentifier": "t_enum$_MarketType_$1204",
|
926
|
+
"typeString": "enum MarketLib.MarketType"
|
927
|
+
}
|
928
|
+
},
|
929
|
+
"visibility": "internal"
|
930
|
+
}
|
931
|
+
],
|
932
|
+
"src": "592:59:12"
|
933
|
+
},
|
934
|
+
"returnParameters": {
|
935
|
+
"id": 1711,
|
936
|
+
"nodeType": "ParameterList",
|
937
|
+
"parameters": [],
|
938
|
+
"src": "661:0:12"
|
939
|
+
},
|
940
|
+
"scope": 1773,
|
941
|
+
"src": "571:357:12",
|
942
|
+
"stateMutability": "nonpayable",
|
943
|
+
"virtual": false,
|
944
|
+
"visibility": "external"
|
945
|
+
},
|
946
|
+
{
|
947
|
+
"body": {
|
948
|
+
"id": 1761,
|
949
|
+
"nodeType": "Block",
|
950
|
+
"src": "1022:109:12",
|
951
|
+
"statements": [
|
952
|
+
{
|
953
|
+
"expression": {
|
954
|
+
"id": 1750,
|
955
|
+
"isConstant": false,
|
956
|
+
"isLValue": false,
|
957
|
+
"isPure": false,
|
958
|
+
"lValueRequested": false,
|
959
|
+
"nodeType": "UnaryOperation",
|
960
|
+
"operator": "delete",
|
961
|
+
"prefix": true,
|
962
|
+
"src": "1032:29:12",
|
963
|
+
"subExpression": {
|
964
|
+
"baseExpression": {
|
965
|
+
"id": 1747,
|
966
|
+
"name": "_createdMarkets",
|
967
|
+
"nodeType": "Identifier",
|
968
|
+
"overloadedDeclarations": [],
|
969
|
+
"referencedDeclaration": 1698,
|
970
|
+
"src": "1039:15:12",
|
971
|
+
"typeDescriptions": {
|
972
|
+
"typeIdentifier": "t_array$_t_contract$_Market_$1676_$dyn_storage",
|
973
|
+
"typeString": "contract Market[] storage ref"
|
974
|
+
}
|
975
|
+
},
|
976
|
+
"id": 1749,
|
977
|
+
"indexExpression": {
|
978
|
+
"id": 1748,
|
979
|
+
"name": "index",
|
980
|
+
"nodeType": "Identifier",
|
981
|
+
"overloadedDeclarations": [],
|
982
|
+
"referencedDeclaration": 1744,
|
983
|
+
"src": "1055:5:12",
|
984
|
+
"typeDescriptions": {
|
985
|
+
"typeIdentifier": "t_uint32",
|
986
|
+
"typeString": "uint32"
|
987
|
+
}
|
988
|
+
},
|
989
|
+
"isConstant": false,
|
990
|
+
"isLValue": true,
|
991
|
+
"isPure": false,
|
992
|
+
"lValueRequested": true,
|
993
|
+
"nodeType": "IndexAccess",
|
994
|
+
"src": "1039:22:12",
|
995
|
+
"typeDescriptions": {
|
996
|
+
"typeIdentifier": "t_contract$_Market_$1676",
|
997
|
+
"typeString": "contract Market"
|
998
|
+
}
|
999
|
+
},
|
1000
|
+
"typeDescriptions": {
|
1001
|
+
"typeIdentifier": "t_tuple$__$",
|
1002
|
+
"typeString": "tuple()"
|
1003
|
+
}
|
1004
|
+
},
|
1005
|
+
"id": 1751,
|
1006
|
+
"nodeType": "ExpressionStatement",
|
1007
|
+
"src": "1032:29:12"
|
1008
|
+
},
|
1009
|
+
{
|
1010
|
+
"eventCall": {
|
1011
|
+
"arguments": [
|
1012
|
+
{
|
1013
|
+
"arguments": [
|
1014
|
+
{
|
1015
|
+
"baseExpression": {
|
1016
|
+
"id": 1755,
|
1017
|
+
"name": "_createdMarkets",
|
1018
|
+
"nodeType": "Identifier",
|
1019
|
+
"overloadedDeclarations": [],
|
1020
|
+
"referencedDeclaration": 1698,
|
1021
|
+
"src": "1100:15:12",
|
1022
|
+
"typeDescriptions": {
|
1023
|
+
"typeIdentifier": "t_array$_t_contract$_Market_$1676_$dyn_storage",
|
1024
|
+
"typeString": "contract Market[] storage ref"
|
1025
|
+
}
|
1026
|
+
},
|
1027
|
+
"id": 1757,
|
1028
|
+
"indexExpression": {
|
1029
|
+
"id": 1756,
|
1030
|
+
"name": "index",
|
1031
|
+
"nodeType": "Identifier",
|
1032
|
+
"overloadedDeclarations": [],
|
1033
|
+
"referencedDeclaration": 1744,
|
1034
|
+
"src": "1116:5:12",
|
1035
|
+
"typeDescriptions": {
|
1036
|
+
"typeIdentifier": "t_uint32",
|
1037
|
+
"typeString": "uint32"
|
1038
|
+
}
|
1039
|
+
},
|
1040
|
+
"isConstant": false,
|
1041
|
+
"isLValue": true,
|
1042
|
+
"isPure": false,
|
1043
|
+
"lValueRequested": false,
|
1044
|
+
"nodeType": "IndexAccess",
|
1045
|
+
"src": "1100:22:12",
|
1046
|
+
"typeDescriptions": {
|
1047
|
+
"typeIdentifier": "t_contract$_Market_$1676",
|
1048
|
+
"typeString": "contract Market"
|
1049
|
+
}
|
1050
|
+
}
|
1051
|
+
],
|
1052
|
+
"expression": {
|
1053
|
+
"argumentTypes": [
|
1054
|
+
{
|
1055
|
+
"typeIdentifier": "t_contract$_Market_$1676",
|
1056
|
+
"typeString": "contract Market"
|
1057
|
+
}
|
1058
|
+
],
|
1059
|
+
"id": 1754,
|
1060
|
+
"isConstant": false,
|
1061
|
+
"isLValue": false,
|
1062
|
+
"isPure": true,
|
1063
|
+
"lValueRequested": false,
|
1064
|
+
"nodeType": "ElementaryTypeNameExpression",
|
1065
|
+
"src": "1092:7:12",
|
1066
|
+
"typeDescriptions": {
|
1067
|
+
"typeIdentifier": "t_type$_t_address_$",
|
1068
|
+
"typeString": "type(address)"
|
1069
|
+
},
|
1070
|
+
"typeName": {
|
1071
|
+
"id": 1753,
|
1072
|
+
"name": "address",
|
1073
|
+
"nodeType": "ElementaryTypeName",
|
1074
|
+
"src": "1092:7:12",
|
1075
|
+
"typeDescriptions": {}
|
1076
|
+
}
|
1077
|
+
},
|
1078
|
+
"id": 1758,
|
1079
|
+
"isConstant": false,
|
1080
|
+
"isLValue": false,
|
1081
|
+
"isPure": false,
|
1082
|
+
"kind": "typeConversion",
|
1083
|
+
"lValueRequested": false,
|
1084
|
+
"names": [],
|
1085
|
+
"nodeType": "FunctionCall",
|
1086
|
+
"src": "1092:31:12",
|
1087
|
+
"tryCall": false,
|
1088
|
+
"typeDescriptions": {
|
1089
|
+
"typeIdentifier": "t_address",
|
1090
|
+
"typeString": "address"
|
1091
|
+
}
|
1092
|
+
}
|
1093
|
+
],
|
1094
|
+
"expression": {
|
1095
|
+
"argumentTypes": [
|
1096
|
+
{
|
1097
|
+
"typeIdentifier": "t_address",
|
1098
|
+
"typeString": "address"
|
1099
|
+
}
|
1100
|
+
],
|
1101
|
+
"id": 1752,
|
1102
|
+
"name": "MarketDestroyed",
|
1103
|
+
"nodeType": "Identifier",
|
1104
|
+
"overloadedDeclarations": [],
|
1105
|
+
"referencedDeclaration": 1694,
|
1106
|
+
"src": "1076:15:12",
|
1107
|
+
"typeDescriptions": {
|
1108
|
+
"typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$",
|
1109
|
+
"typeString": "function (address)"
|
1110
|
+
}
|
1111
|
+
},
|
1112
|
+
"id": 1759,
|
1113
|
+
"isConstant": false,
|
1114
|
+
"isLValue": false,
|
1115
|
+
"isPure": false,
|
1116
|
+
"kind": "functionCall",
|
1117
|
+
"lValueRequested": false,
|
1118
|
+
"names": [],
|
1119
|
+
"nodeType": "FunctionCall",
|
1120
|
+
"src": "1076:48:12",
|
1121
|
+
"tryCall": false,
|
1122
|
+
"typeDescriptions": {
|
1123
|
+
"typeIdentifier": "t_tuple$__$",
|
1124
|
+
"typeString": "tuple()"
|
1125
|
+
}
|
1126
|
+
},
|
1127
|
+
"id": 1760,
|
1128
|
+
"nodeType": "EmitStatement",
|
1129
|
+
"src": "1071:53:12"
|
1130
|
+
}
|
1131
|
+
]
|
1132
|
+
},
|
1133
|
+
"documentation": {
|
1134
|
+
"id": 1742,
|
1135
|
+
"nodeType": "StructuredDocumentation",
|
1136
|
+
"src": "934:37:12",
|
1137
|
+
"text": " Destroys a market."
|
1138
|
+
},
|
1139
|
+
"functionSelector": "94542cd6",
|
1140
|
+
"id": 1762,
|
1141
|
+
"implemented": true,
|
1142
|
+
"kind": "function",
|
1143
|
+
"modifiers": [],
|
1144
|
+
"name": "destroyMarket",
|
1145
|
+
"nameLocation": "985:13:12",
|
1146
|
+
"nodeType": "FunctionDefinition",
|
1147
|
+
"parameters": {
|
1148
|
+
"id": 1745,
|
1149
|
+
"nodeType": "ParameterList",
|
1150
|
+
"parameters": [
|
1151
|
+
{
|
1152
|
+
"constant": false,
|
1153
|
+
"id": 1744,
|
1154
|
+
"mutability": "mutable",
|
1155
|
+
"name": "index",
|
1156
|
+
"nameLocation": "1006:5:12",
|
1157
|
+
"nodeType": "VariableDeclaration",
|
1158
|
+
"scope": 1762,
|
1159
|
+
"src": "999:12:12",
|
1160
|
+
"stateVariable": false,
|
1161
|
+
"storageLocation": "default",
|
1162
|
+
"typeDescriptions": {
|
1163
|
+
"typeIdentifier": "t_uint32",
|
1164
|
+
"typeString": "uint32"
|
1165
|
+
},
|
1166
|
+
"typeName": {
|
1167
|
+
"id": 1743,
|
1168
|
+
"name": "uint32",
|
1169
|
+
"nodeType": "ElementaryTypeName",
|
1170
|
+
"src": "999:6:12",
|
1171
|
+
"typeDescriptions": {
|
1172
|
+
"typeIdentifier": "t_uint32",
|
1173
|
+
"typeString": "uint32"
|
1174
|
+
}
|
1175
|
+
},
|
1176
|
+
"visibility": "internal"
|
1177
|
+
}
|
1178
|
+
],
|
1179
|
+
"src": "998:14:12"
|
1180
|
+
},
|
1181
|
+
"returnParameters": {
|
1182
|
+
"id": 1746,
|
1183
|
+
"nodeType": "ParameterList",
|
1184
|
+
"parameters": [],
|
1185
|
+
"src": "1022:0:12"
|
1186
|
+
},
|
1187
|
+
"scope": 1773,
|
1188
|
+
"src": "976:155:12",
|
1189
|
+
"stateMutability": "nonpayable",
|
1190
|
+
"virtual": false,
|
1191
|
+
"visibility": "external"
|
1192
|
+
},
|
1193
|
+
{
|
1194
|
+
"body": {
|
1195
|
+
"id": 1771,
|
1196
|
+
"nodeType": "Block",
|
1197
|
+
"src": "1255:48:12",
|
1198
|
+
"statements": [
|
1199
|
+
{
|
1200
|
+
"expression": {
|
1201
|
+
"expression": {
|
1202
|
+
"id": 1768,
|
1203
|
+
"name": "_createdMarkets",
|
1204
|
+
"nodeType": "Identifier",
|
1205
|
+
"overloadedDeclarations": [],
|
1206
|
+
"referencedDeclaration": 1698,
|
1207
|
+
"src": "1273:15:12",
|
1208
|
+
"typeDescriptions": {
|
1209
|
+
"typeIdentifier": "t_array$_t_contract$_Market_$1676_$dyn_storage",
|
1210
|
+
"typeString": "contract Market[] storage ref"
|
1211
|
+
}
|
1212
|
+
},
|
1213
|
+
"id": 1769,
|
1214
|
+
"isConstant": false,
|
1215
|
+
"isLValue": false,
|
1216
|
+
"isPure": false,
|
1217
|
+
"lValueRequested": false,
|
1218
|
+
"memberName": "length",
|
1219
|
+
"nodeType": "MemberAccess",
|
1220
|
+
"src": "1273:22:12",
|
1221
|
+
"typeDescriptions": {
|
1222
|
+
"typeIdentifier": "t_uint256",
|
1223
|
+
"typeString": "uint256"
|
1224
|
+
}
|
1225
|
+
},
|
1226
|
+
"functionReturnParameters": 1767,
|
1227
|
+
"id": 1770,
|
1228
|
+
"nodeType": "Return",
|
1229
|
+
"src": "1266:29:12"
|
1230
|
+
}
|
1231
|
+
]
|
1232
|
+
},
|
1233
|
+
"documentation": {
|
1234
|
+
"id": 1763,
|
1235
|
+
"nodeType": "StructuredDocumentation",
|
1236
|
+
"src": "1137:57:12",
|
1237
|
+
"text": " Returns the number of markets created."
|
1238
|
+
},
|
1239
|
+
"functionSelector": "295c39a5",
|
1240
|
+
"id": 1772,
|
1241
|
+
"implemented": true,
|
1242
|
+
"kind": "function",
|
1243
|
+
"modifiers": [],
|
1244
|
+
"name": "getNumMarkets",
|
1245
|
+
"nameLocation": "1209:13:12",
|
1246
|
+
"nodeType": "FunctionDefinition",
|
1247
|
+
"parameters": {
|
1248
|
+
"id": 1764,
|
1249
|
+
"nodeType": "ParameterList",
|
1250
|
+
"parameters": [],
|
1251
|
+
"src": "1222:2:12"
|
1252
|
+
},
|
1253
|
+
"returnParameters": {
|
1254
|
+
"id": 1767,
|
1255
|
+
"nodeType": "ParameterList",
|
1256
|
+
"parameters": [
|
1257
|
+
{
|
1258
|
+
"constant": false,
|
1259
|
+
"id": 1766,
|
1260
|
+
"mutability": "mutable",
|
1261
|
+
"name": "",
|
1262
|
+
"nameLocation": "-1:-1:-1",
|
1263
|
+
"nodeType": "VariableDeclaration",
|
1264
|
+
"scope": 1772,
|
1265
|
+
"src": "1246:7:12",
|
1266
|
+
"stateVariable": false,
|
1267
|
+
"storageLocation": "default",
|
1268
|
+
"typeDescriptions": {
|
1269
|
+
"typeIdentifier": "t_uint256",
|
1270
|
+
"typeString": "uint256"
|
1271
|
+
},
|
1272
|
+
"typeName": {
|
1273
|
+
"id": 1765,
|
1274
|
+
"name": "uint256",
|
1275
|
+
"nodeType": "ElementaryTypeName",
|
1276
|
+
"src": "1246:7:12",
|
1277
|
+
"typeDescriptions": {
|
1278
|
+
"typeIdentifier": "t_uint256",
|
1279
|
+
"typeString": "uint256"
|
1280
|
+
}
|
1281
|
+
},
|
1282
|
+
"visibility": "internal"
|
1283
|
+
}
|
1284
|
+
],
|
1285
|
+
"src": "1245:9:12"
|
1286
|
+
},
|
1287
|
+
"scope": 1773,
|
1288
|
+
"src": "1200:103:12",
|
1289
|
+
"stateMutability": "view",
|
1290
|
+
"virtual": false,
|
1291
|
+
"visibility": "public"
|
1292
|
+
}
|
1293
|
+
],
|
1294
|
+
"scope": 1774,
|
1295
|
+
"src": "118:1187:12",
|
1296
|
+
"usedErrors": []
|
1297
|
+
}
|
1298
|
+
],
|
1299
|
+
"src": "33:1273:12"
|
1300
|
+
},
|
1301
|
+
"functionHashes": {
|
1302
|
+
"createMarket(string,uint8)": "c2ca748b",
|
1303
|
+
"destroyMarket(uint32)": "94542cd6",
|
1304
|
+
"getNumMarkets()": "295c39a5"
|
1305
|
+
},
|
1306
|
+
"gasEstimates": {
|
1307
|
+
"creation": {
|
1308
|
+
"codeDepositCost": "2699800",
|
1309
|
+
"executionCost": "2930",
|
1310
|
+
"totalCost": "2702730"
|
1311
|
+
},
|
1312
|
+
"external": {
|
1313
|
+
"createMarket(string,uint8)": "infinite",
|
1314
|
+
"destroyMarket(uint32)": "32132",
|
1315
|
+
"getNumMarkets()": "2246"
|
1316
|
+
}
|
1317
|
+
}
|
1318
|
+
}
|