UNPKG

87.5 kBJSONView Raw
1{
2 "abi": [
3 {
4 "inputs": [
5 {
6 "internalType": "address",
7 "name": "factory",
8 "type": "address"
9 },
10 {
11 "internalType": "address",
12 "name": "tokenA",
13 "type": "address"
14 },
15 {
16 "internalType": "address",
17 "name": "tokenB",
18 "type": "address"
19 }
20 ],
21 "stateMutability": "nonpayable",
22 "type": "constructor"
23 },
24 {
25 "inputs": [],
26 "name": "PERIOD",
27 "outputs": [
28 {
29 "internalType": "uint256",
30 "name": "",
31 "type": "uint256"
32 }
33 ],
34 "stateMutability": "view",
35 "type": "function"
36 },
37 {
38 "inputs": [],
39 "name": "blockTimestampLast",
40 "outputs": [
41 {
42 "internalType": "uint32",
43 "name": "",
44 "type": "uint32"
45 }
46 ],
47 "stateMutability": "view",
48 "type": "function"
49 },
50 {
51 "inputs": [
52 {
53 "internalType": "address",
54 "name": "token",
55 "type": "address"
56 },
57 {
58 "internalType": "uint256",
59 "name": "amountIn",
60 "type": "uint256"
61 }
62 ],
63 "name": "consult",
64 "outputs": [
65 {
66 "internalType": "uint256",
67 "name": "amountOut",
68 "type": "uint256"
69 }
70 ],
71 "stateMutability": "view",
72 "type": "function"
73 },
74 {
75 "inputs": [],
76 "name": "price0Average",
77 "outputs": [
78 {
79 "internalType": "uint224",
80 "name": "_x",
81 "type": "uint224"
82 }
83 ],
84 "stateMutability": "view",
85 "type": "function"
86 },
87 {
88 "inputs": [],
89 "name": "price0CumulativeLast",
90 "outputs": [
91 {
92 "internalType": "uint256",
93 "name": "",
94 "type": "uint256"
95 }
96 ],
97 "stateMutability": "view",
98 "type": "function"
99 },
100 {
101 "inputs": [],
102 "name": "price1Average",
103 "outputs": [
104 {
105 "internalType": "uint224",
106 "name": "_x",
107 "type": "uint224"
108 }
109 ],
110 "stateMutability": "view",
111 "type": "function"
112 },
113 {
114 "inputs": [],
115 "name": "price1CumulativeLast",
116 "outputs": [
117 {
118 "internalType": "uint256",
119 "name": "",
120 "type": "uint256"
121 }
122 ],
123 "stateMutability": "view",
124 "type": "function"
125 },
126 {
127 "inputs": [],
128 "name": "token0",
129 "outputs": [
130 {
131 "internalType": "address",
132 "name": "",
133 "type": "address"
134 }
135 ],
136 "stateMutability": "view",
137 "type": "function"
138 },
139 {
140 "inputs": [],
141 "name": "token1",
142 "outputs": [
143 {
144 "internalType": "address",
145 "name": "",
146 "type": "address"
147 }
148 ],
149 "stateMutability": "view",
150 "type": "function"
151 },
152 {
153 "inputs": [],
154 "name": "update",
155 "outputs": [],
156 "stateMutability": "nonpayable",
157 "type": "function"
158 }
159 ],
160 "evm": {
161 "bytecode": {
162 "linkReferences": {},
163 "object": "60e06040523480156200001157600080fd5b50604051620015af380380620015af8339810160408190526200003491620004b1565b60006200004e8484846200037160201b62000b861760201c565b9050806001600160a01b03166080816001600160a01b031660601b81525050806001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b158015620000a757600080fd5b505afa158015620000bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000e2919062000481565b6001600160a01b031660a0816001600160a01b031660601b81525050806001600160a01b031663d21220a76040518163ffffffff1660e01b815260040160206040518083038186803b1580156200013857600080fd5b505afa1580156200014d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000173919062000481565b6001600160a01b031660c0816001600160a01b031660601b81525050806001600160a01b0316635909c0d56040518163ffffffff1660e01b815260040160206040518083038186803b158015620001c957600080fd5b505afa158015620001de573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000204919062000553565b600081905550806001600160a01b0316635a3d54936040518163ffffffff1660e01b815260040160206040518083038186803b1580156200024457600080fd5b505afa15801562000259573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200027f919062000553565b600181905550600080826001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b158015620002c257600080fd5b505afa158015620002d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002fd919062000504565b6002805463ffffffff191663ffffffff9290921691909117905590925090506001600160701b038216158015906200033d57506001600160701b03811615155b620003655760405162461bcd60e51b81526004016200035c906200063c565b60405180910390fd5b505050505050620006d7565b600080806200038a85856001600160e01b03620003ef16565b91509150858282604051602001620003a49291906200056c565b60405160208183030381529060405280519060200120604051602001620003cd9291906200058e565b60408051601f1981840301815291905280516020909101209695505050505050565b600080826001600160a01b0316846001600160a01b03161415620004275760405162461bcd60e51b81526004016200035c90620005f7565b826001600160a01b0316846001600160a01b031610620004495782846200044c565b83835b90925090506001600160a01b0382166200047a5760405162461bcd60e51b81526004016200035c9062000671565b9250929050565b60006020828403121562000493578081fd5b81516001600160a01b0381168114620004aa578182fd5b9392505050565b600080600060608486031215620004c6578182fd5b8351620004d381620006a8565b6020850151909350620004e681620006a8565b6040850151909250620004f981620006a8565b809150509250925092565b60008060006060848603121562000519578283fd5b83516200052681620006c1565b60208501519093506200053981620006c1565b604085015190925063ffffffff81168114620004f9578182fd5b60006020828403121562000565578081fd5b5051919050565b6001600160601b0319606093841b811682529190921b16601482015260280190565b7fff00000000000000000000000000000000000000000000000000000000000000815260609290921b6001600160601b031916600183015260158201527fab428a35b38b4307862d79ae79c6ec58b221c049532ba8b17045f4499da215f9603582015260550190565b60208082526025908201527f556e697377617056324c6962726172793a204944454e544943414c5f41444452604082015264455353455360d81b606082015260800190565b6020808252818101527f4578616d706c654f7261636c6553696d706c653a204e4f5f5245534552564553604082015260600190565b6020808252601e908201527f556e697377617056324c6962726172793a205a45524f5f414444524553530000604082015260600190565b6001600160a01b0381168114620006be57600080fd5b50565b6001600160701b0381168114620006be57600080fd5b60805160601c60a05160601c60c05160601c610e98620007176000398061023b528061053752508061015f52806101855250806103605250610e986000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c8063a2e6204511610076578063b4d1d7951161005b578063b4d1d79514610138578063c5700a0214610140578063d21220a714610155576100be565b8063a2e6204514610126578063a6bb453914610130576100be565b80635909c0d5116100a75780635909c0d5146101015780635a3d5493146101095780635e6aaf2c14610111576100be565b80630dfe1681146100c35780633ddac953146100e1575b600080fd5b6100cb61015d565b6040516100d891906109b5565b60405180910390f35b6100f46100ef366004610906565b610181565b6040516100d89190610b4d565b6100f4610326565b6100f461032c565b610119610332565b6040516100d89190610b24565b61012e610356565b005b6101196104fe565b6100f4610522565b610148610529565b6040516100d89190610b56565b6100cb610535565b7f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156102395760408051602081019091526003547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16815261021e90610219908463ffffffff61055916565b6105e7565b71ffffffffffffffffffffffffffffffffffff169050610320565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146102c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be906109d6565b60405180910390fd5b60408051602081019091526004547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16815261030990610219908463ffffffff61055916565b71ffffffffffffffffffffffffffffffffffff1690505b92915050565b60005481565b60015481565b6004547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1681565b60008060006103847f00000000000000000000000000000000000000000000000000000000000000006105ee565b600254929550909350915063ffffffff9081168203906201518090821610156103d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be90610a33565b60405180602001604052808263ffffffff166000548703816103f757fe5b047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff9081169091529051600380547fffffffff0000000000000000000000000000000000000000000000000000000016919092161790556040805160208101909152600154819063ffffffff84169086038161046b57fe5b047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff9081169091529051600480547fffffffff00000000000000000000000000000000000000000000000000000000169190921617905550600092909255600155600280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000001663ffffffff909216919091179055565b6003547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1681565b6201518081565b60025463ffffffff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b6105616108e1565b600082158061059c57505082517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff168281029083828161059957fe5b04145b6105d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be90610a90565b60408051602081019091529081529392505050565b5160701c90565b60008060006105fb610814565b90508373ffffffffffffffffffffffffffffffffffffffff16635909c0d56040518163ffffffff1660e01b815260040160206040518083038186803b15801561064357600080fd5b505afa158015610657573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067b919061099d565b92508373ffffffffffffffffffffffffffffffffffffffff16635a3d54936040518163ffffffff1660e01b815260040160206040518083038186803b1580156106c357600080fd5b505afa1580156106d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106fb919061099d565b915060008060008673ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561074857600080fd5b505afa15801561075c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107809190610949565b9250925092508363ffffffff168163ffffffff161461080a5780840363ffffffff81166107ad848661081e565b517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1602969096019563ffffffff81166107e3858561081e565b517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16029590950194505b5050509193909250565b63ffffffff421690565b6108266108f4565b6000826dffffffffffffffffffffffffffff1611610870576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be90610aed565b6040805160208101909152806dffffffffffffffffffffffffffff84167bffffffffffffffffffffffffffff0000000000000000000000000000607087901b16816108b757fe5b047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16815250905092915050565b6040518060200160405280600081525090565b60408051602081019091526000815290565b60008060408385031215610918578182fd5b823573ffffffffffffffffffffffffffffffffffffffff8116811461093b578283fd5b946020939093013593505050565b60008060006060848603121561095d578081fd5b835161096881610b67565b602085015190935061097981610b67565b604085015190925063ffffffff81168114610992578182fd5b809150509250925092565b6000602082840312156109ae578081fd5b5051919050565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b60208082526022908201527f4578616d706c654f7261636c6553696d706c653a20494e56414c49445f544f4b60408201527f454e000000000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526027908201527f4578616d706c654f7261636c6553696d706c653a20504552494f445f4e4f545f60408201527f454c415053454400000000000000000000000000000000000000000000000000606082015260800190565b60208082526023908201527f4669786564506f696e743a204d554c5449504c49434154494f4e5f4f5645524660408201527f4c4f570000000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526017908201527f4669786564506f696e743a204449565f42595f5a45524f000000000000000000604082015260600190565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff91909116815260200190565b90815260200190565b63ffffffff91909116815260200190565b6dffffffffffffffffffffffffffff81168114610b8357600080fd5b50565b6000806000610b958585610c14565b91509150858282604051602001610bad929190610d13565b60405160208183030381529060405280519060200120604051602001610bd4929190610d4d565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905280516020909101209695505050505050565b6000808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610c7d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be90610dce565b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1610610cb7578284610cba565b83835b909250905073ffffffffffffffffffffffffffffffffffffffff8216610d0c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be90610e2b565b9250929050565b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606093841b811682529190921b16601482015260280190565b7fff00000000000000000000000000000000000000000000000000000000000000815260609290921b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016600183015260158201527fab428a35b38b4307862d79ae79c6ec58b221c049532ba8b17045f4499da215f9603582015260550190565b60208082526025908201527f556e697377617056324c6962726172793a204944454e544943414c5f4144445260408201527f4553534553000000000000000000000000000000000000000000000000000000606082015260800190565b6020808252601e908201527f556e697377617056324c6962726172793a205a45524f5f41444452455353000060408201526060019056fea2646970667358221220f7b5feb631fb221dca4b753631e511b077bdc4fd5d10a5e51dff3168983e173764736f6c63430006060033",
164 "opcodes": "PUSH1 0xE0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x15AF CODESIZE SUB DUP1 PUSH3 0x15AF DUP4 CODECOPY DUP2 ADD PUSH1 0x40 DUP2 SWAP1 MSTORE PUSH3 0x34 SWAP2 PUSH3 0x4B1 JUMP JUMPDEST PUSH1 0x0 PUSH3 0x4E DUP5 DUP5 DUP5 PUSH3 0x371 PUSH1 0x20 SHL PUSH3 0xB86 OR PUSH1 0x20 SHR JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x80 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x60 SHL DUP2 MSTORE POP POP DUP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xDFE1681 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH3 0xA7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH3 0xBC JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH3 0xE2 SWAP2 SWAP1 PUSH3 0x481 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0xA0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x60 SHL DUP2 MSTORE POP POP DUP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xD21220A7 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH3 0x138 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH3 0x14D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH3 0x173 SWAP2 SWAP1 PUSH3 0x481 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0xC0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x60 SHL DUP2 MSTORE POP POP DUP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x5909C0D5 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH3 0x1C9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH3 0x1DE JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH3 0x204 SWAP2 SWAP1 PUSH3 0x553 JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x5A3D5493 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH3 0x244 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH3 0x259 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH3 0x27F SWAP2 SWAP1 PUSH3 0x553 JUMP JUMPDEST PUSH1 0x1 DUP2 SWAP1 SSTORE POP PUSH1 0x0 DUP1 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x902F1AC PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH3 0x2C2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH3 0x2D7 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH3 0x2FD SWAP2 SWAP1 PUSH3 0x504 JUMP JUMPDEST PUSH1 0x2 DUP1 SLOAD PUSH4 0xFFFFFFFF NOT AND PUSH4 0xFFFFFFFF SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE SWAP1 SWAP3 POP SWAP1 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB DUP3 AND ISZERO DUP1 ISZERO SWAP1 PUSH3 0x33D JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB DUP2 AND ISZERO ISZERO JUMPDEST PUSH3 0x365 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x35C SWAP1 PUSH3 0x63C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP PUSH3 0x6D7 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH3 0x38A DUP6 DUP6 PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB PUSH3 0x3EF AND JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP6 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH3 0x3A4 SWAP3 SWAP2 SWAP1 PUSH3 0x56C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH3 0x3CD SWAP3 SWAP2 SWAP1 PUSH3 0x58E JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1F NOT DUP2 DUP5 SUB ADD DUP2 MSTORE SWAP2 SWAP1 MSTORE DUP1 MLOAD PUSH1 0x20 SWAP1 SWAP2 ADD KECCAK256 SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ ISZERO PUSH3 0x427 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x35C SWAP1 PUSH3 0x5F7 JUMP JUMPDEST DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND LT PUSH3 0x449 JUMPI DUP3 DUP5 PUSH3 0x44C JUMP JUMPDEST DUP4 DUP4 JUMPDEST SWAP1 SWAP3 POP SWAP1 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH3 0x47A JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x35C SWAP1 PUSH3 0x671 JUMP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0x493 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH3 0x4AA JUMPI DUP2 DUP3 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH3 0x4C6 JUMPI DUP2 DUP3 REVERT JUMPDEST DUP4 MLOAD PUSH3 0x4D3 DUP2 PUSH3 0x6A8 JUMP JUMPDEST PUSH1 0x20 DUP6 ADD MLOAD SWAP1 SWAP4 POP PUSH3 0x4E6 DUP2 PUSH3 0x6A8 JUMP JUMPDEST PUSH1 0x40 DUP6 ADD MLOAD SWAP1 SWAP3 POP PUSH3 0x4F9 DUP2 PUSH3 0x6A8 JUMP JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH3 0x519 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP4 MLOAD PUSH3 0x526 DUP2 PUSH3 0x6C1 JUMP JUMPDEST PUSH1 0x20 DUP6 ADD MLOAD SWAP1 SWAP4 POP PUSH3 0x539 DUP2 PUSH3 0x6C1 JUMP JUMPDEST PUSH1 0x40 DUP6 ADD MLOAD SWAP1 SWAP3 POP PUSH4 0xFFFFFFFF DUP2 AND DUP2 EQ PUSH3 0x4F9 JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0x565 JUMPI DUP1 DUP2 REVERT JUMPDEST POP MLOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x60 SHL SUB NOT PUSH1 0x60 SWAP4 DUP5 SHL DUP2 AND DUP3 MSTORE SWAP2 SWAP1 SWAP3 SHL AND PUSH1 0x14 DUP3 ADD MSTORE PUSH1 0x28 ADD SWAP1 JUMP JUMPDEST PUSH32 0xFF00000000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x60 SWAP3 SWAP1 SWAP3 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x60 SHL SUB NOT AND PUSH1 0x1 DUP4 ADD MSTORE PUSH1 0x15 DUP3 ADD MSTORE PUSH32 0xAB428A35B38B4307862D79AE79C6EC58B221C049532BA8B17045F4499DA215F9 PUSH1 0x35 DUP3 ADD MSTORE PUSH1 0x55 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x25 SWAP1 DUP3 ADD MSTORE PUSH32 0x556E697377617056324C6962726172793A204944454E544943414C5F41444452 PUSH1 0x40 DUP3 ADD MSTORE PUSH5 0x4553534553 PUSH1 0xD8 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE DUP2 DUP2 ADD MSTORE PUSH32 0x4578616D706C654F7261636C6553696D706C653A204E4F5F5245534552564553 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x1E SWAP1 DUP3 ADD MSTORE PUSH32 0x556E697377617056324C6962726172793A205A45524F5F414444524553530000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH3 0x6BE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB DUP2 AND DUP2 EQ PUSH3 0x6BE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x80 MLOAD PUSH1 0x60 SHR PUSH1 0xA0 MLOAD PUSH1 0x60 SHR PUSH1 0xC0 MLOAD PUSH1 0x60 SHR PUSH2 0xE98 PUSH3 0x717 PUSH1 0x0 CODECOPY DUP1 PUSH2 0x23B MSTORE DUP1 PUSH2 0x537 MSTORE POP DUP1 PUSH2 0x15F MSTORE DUP1 PUSH2 0x185 MSTORE POP DUP1 PUSH2 0x360 MSTORE POP PUSH2 0xE98 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xBE JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA2E62045 GT PUSH2 0x76 JUMPI DUP1 PUSH4 0xB4D1D795 GT PUSH2 0x5B JUMPI DUP1 PUSH4 0xB4D1D795 EQ PUSH2 0x138 JUMPI DUP1 PUSH4 0xC5700A02 EQ PUSH2 0x140 JUMPI DUP1 PUSH4 0xD21220A7 EQ PUSH2 0x155 JUMPI PUSH2 0xBE JUMP JUMPDEST DUP1 PUSH4 0xA2E62045 EQ PUSH2 0x126 JUMPI DUP1 PUSH4 0xA6BB4539 EQ PUSH2 0x130 JUMPI PUSH2 0xBE JUMP JUMPDEST DUP1 PUSH4 0x5909C0D5 GT PUSH2 0xA7 JUMPI DUP1 PUSH4 0x5909C0D5 EQ PUSH2 0x101 JUMPI DUP1 PUSH4 0x5A3D5493 EQ PUSH2 0x109 JUMPI DUP1 PUSH4 0x5E6AAF2C EQ PUSH2 0x111 JUMPI PUSH2 0xBE JUMP JUMPDEST DUP1 PUSH4 0xDFE1681 EQ PUSH2 0xC3 JUMPI DUP1 PUSH4 0x3DDAC953 EQ PUSH2 0xE1 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xCB PUSH2 0x15D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD8 SWAP2 SWAP1 PUSH2 0x9B5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xF4 PUSH2 0xEF CALLDATASIZE PUSH1 0x4 PUSH2 0x906 JUMP JUMPDEST PUSH2 0x181 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD8 SWAP2 SWAP1 PUSH2 0xB4D JUMP JUMPDEST PUSH2 0xF4 PUSH2 0x326 JUMP JUMPDEST PUSH2 0xF4 PUSH2 0x32C JUMP JUMPDEST PUSH2 0x119 PUSH2 0x332 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD8 SWAP2 SWAP1 PUSH2 0xB24 JUMP JUMPDEST PUSH2 0x12E PUSH2 0x356 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x119 PUSH2 0x4FE JUMP JUMPDEST PUSH2 0xF4 PUSH2 0x522 JUMP JUMPDEST PUSH2 0x148 PUSH2 0x529 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD8 SWAP2 SWAP1 PUSH2 0xB56 JUMP JUMPDEST PUSH2 0xCB PUSH2 0x535 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x239 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP2 ADD SWAP1 SWAP2 MSTORE PUSH1 0x3 SLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH2 0x21E SWAP1 PUSH2 0x219 SWAP1 DUP5 PUSH4 0xFFFFFFFF PUSH2 0x559 AND JUMP JUMPDEST PUSH2 0x5E7 JUMP JUMPDEST PUSH18 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH2 0x320 JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2C7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2BE SWAP1 PUSH2 0x9D6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP2 ADD SWAP1 SWAP2 MSTORE PUSH1 0x4 SLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH2 0x309 SWAP1 PUSH2 0x219 SWAP1 DUP5 PUSH4 0xFFFFFFFF PUSH2 0x559 AND JUMP JUMPDEST PUSH18 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x4 SLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x384 PUSH32 0x0 PUSH2 0x5EE JUMP JUMPDEST PUSH1 0x2 SLOAD SWAP3 SWAP6 POP SWAP1 SWAP4 POP SWAP2 POP PUSH4 0xFFFFFFFF SWAP1 DUP2 AND DUP3 SUB SWAP1 PUSH3 0x15180 SWAP1 DUP3 AND LT ISZERO PUSH2 0x3D9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2BE SWAP1 PUSH2 0xA33 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0x0 SLOAD DUP8 SUB DUP2 PUSH2 0x3F7 JUMPI INVALID JUMPDEST DIV PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP1 SWAP2 MSTORE SWAP1 MLOAD PUSH1 0x3 DUP1 SLOAD PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 AND SWAP2 SWAP1 SWAP3 AND OR SWAP1 SSTORE PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP2 ADD SWAP1 SWAP2 MSTORE PUSH1 0x1 SLOAD DUP2 SWAP1 PUSH4 0xFFFFFFFF DUP5 AND SWAP1 DUP7 SUB DUP2 PUSH2 0x46B JUMPI INVALID JUMPDEST DIV PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP1 SWAP2 MSTORE SWAP1 MLOAD PUSH1 0x4 DUP1 SLOAD PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 AND SWAP2 SWAP1 SWAP3 AND OR SWAP1 SSTORE POP PUSH1 0x0 SWAP3 SWAP1 SWAP3 SSTORE PUSH1 0x1 SSTORE PUSH1 0x2 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000 AND PUSH4 0xFFFFFFFF SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x3 SLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH3 0x15180 DUP2 JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH4 0xFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH2 0x561 PUSH2 0x8E1 JUMP JUMPDEST PUSH1 0x0 DUP3 ISZERO DUP1 PUSH2 0x59C JUMPI POP POP DUP3 MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 DUP2 MUL SWAP1 DUP4 DUP3 DUP2 PUSH2 0x599 JUMPI INVALID JUMPDEST DIV EQ JUMPDEST PUSH2 0x5D2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2BE SWAP1 PUSH2 0xA90 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP2 ADD SWAP1 SWAP2 MSTORE SWAP1 DUP2 MSTORE SWAP4 SWAP3 POP POP POP JUMP JUMPDEST MLOAD PUSH1 0x70 SHR SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x5FB PUSH2 0x814 JUMP JUMPDEST SWAP1 POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5909C0D5 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x643 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x657 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x67B SWAP2 SWAP1 PUSH2 0x99D JUMP JUMPDEST SWAP3 POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5A3D5493 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x6C3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x6D7 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x6FB SWAP2 SWAP1 PUSH2 0x99D JUMP JUMPDEST SWAP2 POP PUSH1 0x0 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x902F1AC PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x748 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x75C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x780 SWAP2 SWAP1 PUSH2 0x949 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP DUP4 PUSH4 0xFFFFFFFF AND DUP2 PUSH4 0xFFFFFFFF AND EQ PUSH2 0x80A JUMPI DUP1 DUP5 SUB PUSH4 0xFFFFFFFF DUP2 AND PUSH2 0x7AD DUP5 DUP7 PUSH2 0x81E JUMP JUMPDEST MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL SWAP7 SWAP1 SWAP7 ADD SWAP6 PUSH4 0xFFFFFFFF DUP2 AND PUSH2 0x7E3 DUP6 DUP6 PUSH2 0x81E JUMP JUMPDEST MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL SWAP6 SWAP1 SWAP6 ADD SWAP5 POP JUMPDEST POP POP POP SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH4 0xFFFFFFFF TIMESTAMP AND SWAP1 JUMP JUMPDEST PUSH2 0x826 PUSH2 0x8F4 JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH14 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND GT PUSH2 0x870 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2BE SWAP1 PUSH2 0xAED JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP2 ADD SWAP1 SWAP2 MSTORE DUP1 PUSH14 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP5 AND PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000 PUSH1 0x70 DUP8 SWAP1 SHL AND DUP2 PUSH2 0x8B7 JUMPI INVALID JUMPDEST DIV PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP2 ADD SWAP1 SWAP2 MSTORE PUSH1 0x0 DUP2 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x918 JUMPI DUP2 DUP3 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x93B JUMPI DUP3 DUP4 REVERT JUMPDEST SWAP5 PUSH1 0x20 SWAP4 SWAP1 SWAP4 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x95D JUMPI DUP1 DUP2 REVERT JUMPDEST DUP4 MLOAD PUSH2 0x968 DUP2 PUSH2 0xB67 JUMP JUMPDEST PUSH1 0x20 DUP6 ADD MLOAD SWAP1 SWAP4 POP PUSH2 0x979 DUP2 PUSH2 0xB67 JUMP JUMPDEST PUSH1 0x40 DUP6 ADD MLOAD SWAP1 SWAP3 POP PUSH4 0xFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x992 JUMPI DUP2 DUP3 REVERT JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x9AE JUMPI DUP1 DUP2 REVERT JUMPDEST POP MLOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x22 SWAP1 DUP3 ADD MSTORE PUSH32 0x4578616D706C654F7261636C6553696D706C653A20494E56414C49445F544F4B PUSH1 0x40 DUP3 ADD MSTORE PUSH32 0x454E000000000000000000000000000000000000000000000000000000000000 PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x27 SWAP1 DUP3 ADD MSTORE PUSH32 0x4578616D706C654F7261636C6553696D706C653A20504552494F445F4E4F545F PUSH1 0x40 DUP3 ADD MSTORE PUSH32 0x454C415053454400000000000000000000000000000000000000000000000000 PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x23 SWAP1 DUP3 ADD MSTORE PUSH32 0x4669786564506F696E743A204D554C5449504C49434154494F4E5F4F56455246 PUSH1 0x40 DUP3 ADD MSTORE PUSH32 0x4C4F570000000000000000000000000000000000000000000000000000000000 PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x17 SWAP1 DUP3 ADD MSTORE PUSH32 0x4669786564506F696E743A204449565F42595F5A45524F000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH4 0xFFFFFFFF SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH14 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0xB83 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0xB95 DUP6 DUP6 PUSH2 0xC14 JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP6 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xBAD SWAP3 SWAP2 SWAP1 PUSH2 0xD13 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xBD4 SWAP3 SWAP2 SWAP1 PUSH2 0xD4D JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP2 DUP5 SUB ADD DUP2 MSTORE SWAP2 SWAP1 MSTORE DUP1 MLOAD PUSH1 0x20 SWAP1 SWAP2 ADD KECCAK256 SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xC7D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2BE SWAP1 PUSH2 0xDCE JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND LT PUSH2 0xCB7 JUMPI DUP3 DUP5 PUSH2 0xCBA JUMP JUMPDEST DUP4 DUP4 JUMPDEST SWAP1 SWAP3 POP SWAP1 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND PUSH2 0xD0C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2BE SWAP1 PUSH2 0xE2B JUMP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000 PUSH1 0x60 SWAP4 DUP5 SHL DUP2 AND DUP3 MSTORE SWAP2 SWAP1 SWAP3 SHL AND PUSH1 0x14 DUP3 ADD MSTORE PUSH1 0x28 ADD SWAP1 JUMP JUMPDEST PUSH32 0xFF00000000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x60 SWAP3 SWAP1 SWAP3 SHL PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000 AND PUSH1 0x1 DUP4 ADD MSTORE PUSH1 0x15 DUP3 ADD MSTORE PUSH32 0xAB428A35B38B4307862D79AE79C6EC58B221C049532BA8B17045F4499DA215F9 PUSH1 0x35 DUP3 ADD MSTORE PUSH1 0x55 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x25 SWAP1 DUP3 ADD MSTORE PUSH32 0x556E697377617056324C6962726172793A204944454E544943414C5F41444452 PUSH1 0x40 DUP3 ADD MSTORE PUSH32 0x4553534553000000000000000000000000000000000000000000000000000000 PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x1E SWAP1 DUP3 ADD MSTORE PUSH32 0x556E697377617056324C6962726172793A205A45524F5F414444524553530000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xF7 0xB5 INVALID 0xB6 BALANCE 0xFB 0x22 SAR 0xCA 0x4B PUSH22 0x3631E511B077BDC4FD5D10A5E51DFF3168983E173764 PUSH20 0x6F6C634300060600330000000000000000000000 ",
165 "sourceMap": "571:2638:11:-:0;;;1006:743;5:9:-1;2:2;;;27:1;24;17:12;2:2;1006:743:11;;;;;;;;;;;;;;;;;;;;;1084:20;1122:49;1147:7;1156:6;1164;1122:24;;;;;:49;;:::i;:::-;1084:88;;1189:5;-1:-1:-1;;;;;1182:12:11;;;-1:-1:-1;;;;;1182:12:11;;;;;;;1213:5;-1:-1:-1;;;;;1213:12:11;;:14;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1213:14:11;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1213:14:11;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;1213:14:11;;;;;;;;;-1:-1:-1;;;;;1204:23:11;;;-1:-1:-1;;;;;1204:23:11;;;;;;;1246:5;-1:-1:-1;;;;;1246:12:11;;:14;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1246:14:11;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1246:14:11;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;1246:14:11;;;;;;;;;-1:-1:-1;;;;;1237:23:11;;;-1:-1:-1;;;;;1237:23:11;;;;;;;1293:5;-1:-1:-1;;;;;1293:26:11;;:28;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1293:28:11;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1293:28:11;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;1293:28:11;;;;;;;;;1270:20;:51;;;;1407:5;-1:-1:-1;;;;;1407:26:11;;:28;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1407:28:11;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1407:28:11;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;1407:28:11;;;;;;;;;1384:20;:51;;;;1498:16;1524;1593:5;-1:-1:-1;;;;;1593:17:11;;:19;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1593:19:11;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1593:19:11;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;1593:19:11;;;;;;;;;1571:18;1550:62;;-1:-1:-1;;1550:62:11;;;;;;;;;;;;;;-1:-1:-1;1550:62:11;-1:-1:-1;;;;;;1630:13:11;;;;;;:30;;-1:-1:-1;;;;;;1647:13:11;;;;1630:30;1622:75;;;;-1:-1:-1;;;1622:75:11;;;;;;;;;;;;;;;;;1006:743;;;;;;571:2638;;754:470:23;843:12;;;902:26;913:6;921;-1:-1:-1;;;;;902:10:23;:26;:::i;:::-;867:61;;;;1027:7;1079:6;1087;1062:32;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1062:32:23;;;1052:43;;;;;;968:246;;;;;;;;;;;;;;-1:-1:-1;;26:21;;;22:32;6:49;;968:246:23;;;958:257;;49:4:-1;958:257:23;;;;;754:470;-1:-1:-1;;;;;;754:470:23:o;320:345::-;395:14;411;455:6;-1:-1:-1;;;;;445:16:23;:6;-1:-1:-1;;;;;445:16:23;;;437:66;;;;-1:-1:-1;;;437:66:23;;;;;;;;;541:6;-1:-1:-1;;;;;532:15:23;:6;-1:-1:-1;;;;;532:15:23;;:53;;570:6;578;532:53;;;551:6;559;532:53;513:72;;-1:-1:-1;513:72:23;-1:-1:-1;;;;;;603:20:23;;595:63;;;;-1:-1:-1;;;595:63:23;;;;;;;;;320:345;;;;;:::o;567:263:-1:-;;682:2;670:9;661:7;657:23;653:32;650:2;;;-1:-1;;688:12;650:2;83:13;;-1:-1;;;;;7623:54;;8303:35;;8293:2;;-1:-1;;8342:12;8293:2;740:74;644:186;-1:-1;;;644:186;837:535;;;;986:2;974:9;965:7;961:23;957:32;954:2;;;-1:-1;;992:12;954:2;89:6;83:13;101:33;128:5;101:33;;;1155:2;1205:22;;83:13;1044:74;;-1:-1;101:33;83:13;101:33;;;1274:2;1324:22;;83:13;1163:74;;-1:-1;101:33;83:13;101:33;;;1282:74;;;;948:424;;;;;;1379:533;;;;1527:2;1515:9;1506:7;1502:23;1498:32;1495:2;;;-1:-1;;1533:12;1495:2;230:6;224:13;242:33;269:5;242:33;;;1696:2;1746:22;;224:13;1585:74;;-1:-1;242:33;224:13;242:33;;;1815:2;1864:22;;505:13;1704:74;;-1:-1;7840:10;7829:22;;8674:34;;8664:2;;-1:-1;;8712:12;1919:263;;2034:2;2022:9;2013:7;2009:23;2005:32;2002:2;;;-1:-1;;2040:12;2002:2;-1:-1;365:13;;1996:186;-1:-1;1996:186;4386:383;-1:-1;;;;;;8212:14;;;;;;2278:58;;8212:14;;;;;4630:2;4621:12;;2278:58;4732:12;;;4521:248;4776:917;3936:66;3916:87;;8212:14;;;;;-1:-1;;;;;;8212:14;7634:42;4022:11;;2278:58;5379:12;;;2437:58;3528:66;5490:12;;;3508:87;3614:12;;;5113:580;5700:407;5891:2;5905:47;;;2732:2;5876:18;;;7046:19;2768:34;7086:14;;;2748:55;-1:-1;;;2823:12;;;2816:29;2864:12;;;5862:245;6114:407;6305:2;6319:47;;;6290:18;;;7046:19;3151:34;7086:14;;;3131:55;3205:12;;;6276:245;6528:407;6719:2;6733:47;;;4272:2;6704:18;;;7046:19;4308:32;7086:14;;;4288:53;4360:12;;;6690:245;8244:117;-1:-1;;;;;7623:54;;8303:35;;8293:2;;8352:1;;8342:12;8293:2;8287:74;;8368:117;-1:-1;;;;;7507:42;;8427:35;;8417:2;;8476:1;;8466:12;8411:74;571:2638:11;;;;;;;;;;;;;;;;;;;;;"
166 },
167 "deployedBytecode": {
168 "immutableReferences": {
169 "6742": [
170 {
171 "length": 32,
172 "start": 864
173 }
174 ],
175 "6744": [
176 {
177 "length": 32,
178 "start": 351
179 },
180 {
181 "length": 32,
182 "start": 389
183 }
184 ],
185 "6746": [
186 {
187 "length": 32,
188 "start": 571
189 },
190 {
191 "length": 32,
192 "start": 1335
193 }
194 ]
195 },
196 "linkReferences": {},
197 "object": "608060405234801561001057600080fd5b50600436106100be5760003560e01c8063a2e6204511610076578063b4d1d7951161005b578063b4d1d79514610138578063c5700a0214610140578063d21220a714610155576100be565b8063a2e6204514610126578063a6bb453914610130576100be565b80635909c0d5116100a75780635909c0d5146101015780635a3d5493146101095780635e6aaf2c14610111576100be565b80630dfe1681146100c35780633ddac953146100e1575b600080fd5b6100cb61015d565b6040516100d891906109b5565b60405180910390f35b6100f46100ef366004610906565b610181565b6040516100d89190610b4d565b6100f4610326565b6100f461032c565b610119610332565b6040516100d89190610b24565b61012e610356565b005b6101196104fe565b6100f4610522565b610148610529565b6040516100d89190610b56565b6100cb610535565b7f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156102395760408051602081019091526003547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16815261021e90610219908463ffffffff61055916565b6105e7565b71ffffffffffffffffffffffffffffffffffff169050610320565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146102c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be906109d6565b60405180910390fd5b60408051602081019091526004547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16815261030990610219908463ffffffff61055916565b71ffffffffffffffffffffffffffffffffffff1690505b92915050565b60005481565b60015481565b6004547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1681565b60008060006103847f00000000000000000000000000000000000000000000000000000000000000006105ee565b600254929550909350915063ffffffff9081168203906201518090821610156103d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be90610a33565b60405180602001604052808263ffffffff166000548703816103f757fe5b047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff9081169091529051600380547fffffffff0000000000000000000000000000000000000000000000000000000016919092161790556040805160208101909152600154819063ffffffff84169086038161046b57fe5b047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff9081169091529051600480547fffffffff00000000000000000000000000000000000000000000000000000000169190921617905550600092909255600155600280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000001663ffffffff909216919091179055565b6003547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1681565b6201518081565b60025463ffffffff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b6105616108e1565b600082158061059c57505082517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff168281029083828161059957fe5b04145b6105d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be90610a90565b60408051602081019091529081529392505050565b5160701c90565b60008060006105fb610814565b90508373ffffffffffffffffffffffffffffffffffffffff16635909c0d56040518163ffffffff1660e01b815260040160206040518083038186803b15801561064357600080fd5b505afa158015610657573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067b919061099d565b92508373ffffffffffffffffffffffffffffffffffffffff16635a3d54936040518163ffffffff1660e01b815260040160206040518083038186803b1580156106c357600080fd5b505afa1580156106d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106fb919061099d565b915060008060008673ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561074857600080fd5b505afa15801561075c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107809190610949565b9250925092508363ffffffff168163ffffffff161461080a5780840363ffffffff81166107ad848661081e565b517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1602969096019563ffffffff81166107e3858561081e565b517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16029590950194505b5050509193909250565b63ffffffff421690565b6108266108f4565b6000826dffffffffffffffffffffffffffff1611610870576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be90610aed565b6040805160208101909152806dffffffffffffffffffffffffffff84167bffffffffffffffffffffffffffff0000000000000000000000000000607087901b16816108b757fe5b047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16815250905092915050565b6040518060200160405280600081525090565b60408051602081019091526000815290565b60008060408385031215610918578182fd5b823573ffffffffffffffffffffffffffffffffffffffff8116811461093b578283fd5b946020939093013593505050565b60008060006060848603121561095d578081fd5b835161096881610b67565b602085015190935061097981610b67565b604085015190925063ffffffff81168114610992578182fd5b809150509250925092565b6000602082840312156109ae578081fd5b5051919050565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b60208082526022908201527f4578616d706c654f7261636c6553696d706c653a20494e56414c49445f544f4b60408201527f454e000000000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526027908201527f4578616d706c654f7261636c6553696d706c653a20504552494f445f4e4f545f60408201527f454c415053454400000000000000000000000000000000000000000000000000606082015260800190565b60208082526023908201527f4669786564506f696e743a204d554c5449504c49434154494f4e5f4f5645524660408201527f4c4f570000000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526017908201527f4669786564506f696e743a204449565f42595f5a45524f000000000000000000604082015260600190565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff91909116815260200190565b90815260200190565b63ffffffff91909116815260200190565b6dffffffffffffffffffffffffffff81168114610b8357600080fd5b50565b6000806000610b958585610c14565b91509150858282604051602001610bad929190610d13565b60405160208183030381529060405280519060200120604051602001610bd4929190610d4d565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905280516020909101209695505050505050565b6000808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610c7d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be90610dce565b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1610610cb7578284610cba565b83835b909250905073ffffffffffffffffffffffffffffffffffffffff8216610d0c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be90610e2b565b9250929050565b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606093841b811682529190921b16601482015260280190565b7fff00000000000000000000000000000000000000000000000000000000000000815260609290921b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016600183015260158201527fab428a35b38b4307862d79ae79c6ec58b221c049532ba8b17045f4499da215f9603582015260550190565b60208082526025908201527f556e697377617056324c6962726172793a204944454e544943414c5f4144445260408201527f4553534553000000000000000000000000000000000000000000000000000000606082015260800190565b6020808252601e908201527f556e697377617056324c6962726172793a205a45524f5f41444452455353000060408201526060019056fea2646970667358221220f7b5feb631fb221dca4b753631e511b077bdc4fd5d10a5e51dff3168983e173764736f6c63430006060033",
198 "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xBE JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA2E62045 GT PUSH2 0x76 JUMPI DUP1 PUSH4 0xB4D1D795 GT PUSH2 0x5B JUMPI DUP1 PUSH4 0xB4D1D795 EQ PUSH2 0x138 JUMPI DUP1 PUSH4 0xC5700A02 EQ PUSH2 0x140 JUMPI DUP1 PUSH4 0xD21220A7 EQ PUSH2 0x155 JUMPI PUSH2 0xBE JUMP JUMPDEST DUP1 PUSH4 0xA2E62045 EQ PUSH2 0x126 JUMPI DUP1 PUSH4 0xA6BB4539 EQ PUSH2 0x130 JUMPI PUSH2 0xBE JUMP JUMPDEST DUP1 PUSH4 0x5909C0D5 GT PUSH2 0xA7 JUMPI DUP1 PUSH4 0x5909C0D5 EQ PUSH2 0x101 JUMPI DUP1 PUSH4 0x5A3D5493 EQ PUSH2 0x109 JUMPI DUP1 PUSH4 0x5E6AAF2C EQ PUSH2 0x111 JUMPI PUSH2 0xBE JUMP JUMPDEST DUP1 PUSH4 0xDFE1681 EQ PUSH2 0xC3 JUMPI DUP1 PUSH4 0x3DDAC953 EQ PUSH2 0xE1 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xCB PUSH2 0x15D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD8 SWAP2 SWAP1 PUSH2 0x9B5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xF4 PUSH2 0xEF CALLDATASIZE PUSH1 0x4 PUSH2 0x906 JUMP JUMPDEST PUSH2 0x181 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD8 SWAP2 SWAP1 PUSH2 0xB4D JUMP JUMPDEST PUSH2 0xF4 PUSH2 0x326 JUMP JUMPDEST PUSH2 0xF4 PUSH2 0x32C JUMP JUMPDEST PUSH2 0x119 PUSH2 0x332 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD8 SWAP2 SWAP1 PUSH2 0xB24 JUMP JUMPDEST PUSH2 0x12E PUSH2 0x356 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x119 PUSH2 0x4FE JUMP JUMPDEST PUSH2 0xF4 PUSH2 0x522 JUMP JUMPDEST PUSH2 0x148 PUSH2 0x529 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD8 SWAP2 SWAP1 PUSH2 0xB56 JUMP JUMPDEST PUSH2 0xCB PUSH2 0x535 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x239 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP2 ADD SWAP1 SWAP2 MSTORE PUSH1 0x3 SLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH2 0x21E SWAP1 PUSH2 0x219 SWAP1 DUP5 PUSH4 0xFFFFFFFF PUSH2 0x559 AND JUMP JUMPDEST PUSH2 0x5E7 JUMP JUMPDEST PUSH18 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH2 0x320 JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2C7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2BE SWAP1 PUSH2 0x9D6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP2 ADD SWAP1 SWAP2 MSTORE PUSH1 0x4 SLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH2 0x309 SWAP1 PUSH2 0x219 SWAP1 DUP5 PUSH4 0xFFFFFFFF PUSH2 0x559 AND JUMP JUMPDEST PUSH18 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x4 SLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x384 PUSH32 0x0 PUSH2 0x5EE JUMP JUMPDEST PUSH1 0x2 SLOAD SWAP3 SWAP6 POP SWAP1 SWAP4 POP SWAP2 POP PUSH4 0xFFFFFFFF SWAP1 DUP2 AND DUP3 SUB SWAP1 PUSH3 0x15180 SWAP1 DUP3 AND LT ISZERO PUSH2 0x3D9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2BE SWAP1 PUSH2 0xA33 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0x0 SLOAD DUP8 SUB DUP2 PUSH2 0x3F7 JUMPI INVALID JUMPDEST DIV PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP1 SWAP2 MSTORE SWAP1 MLOAD PUSH1 0x3 DUP1 SLOAD PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 AND SWAP2 SWAP1 SWAP3 AND OR SWAP1 SSTORE PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP2 ADD SWAP1 SWAP2 MSTORE PUSH1 0x1 SLOAD DUP2 SWAP1 PUSH4 0xFFFFFFFF DUP5 AND SWAP1 DUP7 SUB DUP2 PUSH2 0x46B JUMPI INVALID JUMPDEST DIV PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 DUP2 AND SWAP1 SWAP2 MSTORE SWAP1 MLOAD PUSH1 0x4 DUP1 SLOAD PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 AND SWAP2 SWAP1 SWAP3 AND OR SWAP1 SSTORE POP PUSH1 0x0 SWAP3 SWAP1 SWAP3 SSTORE PUSH1 0x1 SSTORE PUSH1 0x2 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000 AND PUSH4 0xFFFFFFFF SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x3 SLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH3 0x15180 DUP2 JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH4 0xFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH2 0x561 PUSH2 0x8E1 JUMP JUMPDEST PUSH1 0x0 DUP3 ISZERO DUP1 PUSH2 0x59C JUMPI POP POP DUP3 MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 DUP2 MUL SWAP1 DUP4 DUP3 DUP2 PUSH2 0x599 JUMPI INVALID JUMPDEST DIV EQ JUMPDEST PUSH2 0x5D2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2BE SWAP1 PUSH2 0xA90 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP2 ADD SWAP1 SWAP2 MSTORE SWAP1 DUP2 MSTORE SWAP4 SWAP3 POP POP POP JUMP JUMPDEST MLOAD PUSH1 0x70 SHR SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x5FB PUSH2 0x814 JUMP JUMPDEST SWAP1 POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5909C0D5 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x643 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x657 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x67B SWAP2 SWAP1 PUSH2 0x99D JUMP JUMPDEST SWAP3 POP DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5A3D5493 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x6C3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x6D7 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x6FB SWAP2 SWAP1 PUSH2 0x99D JUMP JUMPDEST SWAP2 POP PUSH1 0x0 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x902F1AC PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x748 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x75C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x780 SWAP2 SWAP1 PUSH2 0x949 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP DUP4 PUSH4 0xFFFFFFFF AND DUP2 PUSH4 0xFFFFFFFF AND EQ PUSH2 0x80A JUMPI DUP1 DUP5 SUB PUSH4 0xFFFFFFFF DUP2 AND PUSH2 0x7AD DUP5 DUP7 PUSH2 0x81E JUMP JUMPDEST MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL SWAP7 SWAP1 SWAP7 ADD SWAP6 PUSH4 0xFFFFFFFF DUP2 AND PUSH2 0x7E3 DUP6 DUP6 PUSH2 0x81E JUMP JUMPDEST MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL SWAP6 SWAP1 SWAP6 ADD SWAP5 POP JUMPDEST POP POP POP SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH4 0xFFFFFFFF TIMESTAMP AND SWAP1 JUMP JUMPDEST PUSH2 0x826 PUSH2 0x8F4 JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH14 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND GT PUSH2 0x870 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2BE SWAP1 PUSH2 0xAED JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP2 ADD SWAP1 SWAP2 MSTORE DUP1 PUSH14 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP5 AND PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000 PUSH1 0x70 DUP8 SWAP1 SHL AND DUP2 PUSH2 0x8B7 JUMPI INVALID JUMPDEST DIV PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP2 ADD SWAP1 SWAP2 MSTORE PUSH1 0x0 DUP2 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x918 JUMPI DUP2 DUP3 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x93B JUMPI DUP3 DUP4 REVERT JUMPDEST SWAP5 PUSH1 0x20 SWAP4 SWAP1 SWAP4 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x95D JUMPI DUP1 DUP2 REVERT JUMPDEST DUP4 MLOAD PUSH2 0x968 DUP2 PUSH2 0xB67 JUMP JUMPDEST PUSH1 0x20 DUP6 ADD MLOAD SWAP1 SWAP4 POP PUSH2 0x979 DUP2 PUSH2 0xB67 JUMP JUMPDEST PUSH1 0x40 DUP6 ADD MLOAD SWAP1 SWAP3 POP PUSH4 0xFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x992 JUMPI DUP2 DUP3 REVERT JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x9AE JUMPI DUP1 DUP2 REVERT JUMPDEST POP MLOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x22 SWAP1 DUP3 ADD MSTORE PUSH32 0x4578616D706C654F7261636C6553696D706C653A20494E56414C49445F544F4B PUSH1 0x40 DUP3 ADD MSTORE PUSH32 0x454E000000000000000000000000000000000000000000000000000000000000 PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x27 SWAP1 DUP3 ADD MSTORE PUSH32 0x4578616D706C654F7261636C6553696D706C653A20504552494F445F4E4F545F PUSH1 0x40 DUP3 ADD MSTORE PUSH32 0x454C415053454400000000000000000000000000000000000000000000000000 PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x23 SWAP1 DUP3 ADD MSTORE PUSH32 0x4669786564506F696E743A204D554C5449504C49434154494F4E5F4F56455246 PUSH1 0x40 DUP3 ADD MSTORE PUSH32 0x4C4F570000000000000000000000000000000000000000000000000000000000 PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x17 SWAP1 DUP3 ADD MSTORE PUSH32 0x4669786564506F696E743A204449565F42595F5A45524F000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH4 0xFFFFFFFF SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH14 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0xB83 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0xB95 DUP6 DUP6 PUSH2 0xC14 JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP6 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xBAD SWAP3 SWAP2 SWAP1 PUSH2 0xD13 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xBD4 SWAP3 SWAP2 SWAP1 PUSH2 0xD4D JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP2 DUP5 SUB ADD DUP2 MSTORE SWAP2 SWAP1 MSTORE DUP1 MLOAD PUSH1 0x20 SWAP1 SWAP2 ADD KECCAK256 SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xC7D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2BE SWAP1 PUSH2 0xDCE JUMP JUMPDEST DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND LT PUSH2 0xCB7 JUMPI DUP3 DUP5 PUSH2 0xCBA JUMP JUMPDEST DUP4 DUP4 JUMPDEST SWAP1 SWAP3 POP SWAP1 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND PUSH2 0xD0C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2BE SWAP1 PUSH2 0xE2B JUMP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000 PUSH1 0x60 SWAP4 DUP5 SHL DUP2 AND DUP3 MSTORE SWAP2 SWAP1 SWAP3 SHL AND PUSH1 0x14 DUP3 ADD MSTORE PUSH1 0x28 ADD SWAP1 JUMP JUMPDEST PUSH32 0xFF00000000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x60 SWAP3 SWAP1 SWAP3 SHL PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000 AND PUSH1 0x1 DUP4 ADD MSTORE PUSH1 0x15 DUP3 ADD MSTORE PUSH32 0xAB428A35B38B4307862D79AE79C6EC58B221C049532BA8B17045F4499DA215F9 PUSH1 0x35 DUP3 ADD MSTORE PUSH1 0x55 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x25 SWAP1 DUP3 ADD MSTORE PUSH32 0x556E697377617056324C6962726172793A204944454E544943414C5F41444452 PUSH1 0x40 DUP3 ADD MSTORE PUSH32 0x4553534553000000000000000000000000000000000000000000000000000000 PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x1E SWAP1 DUP3 ADD MSTORE PUSH32 0x556E697377617056324C6962726172793A205A45524F5F414444524553530000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xF7 0xB5 INVALID 0xB6 BALANCE 0xFB 0x22 SAR 0xCA 0x4B PUSH22 0x3631E511B077BDC4FD5D10A5E51DFF3168983E173764 PUSH20 0x6F6C634300060600330000000000000000000000 ",
199 "sourceMap": "571:2638:11:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;571:2638:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12:1:-1;9;2:12;715:31:11;;;:::i;:::-;;;;;;;;;;;;;;;;2850:357;;;;;;;;;:::i;:::-;;;;;;;;790:35;;;:::i;831:::-;;;:::i;958:41::-;;;:::i;:::-;;;;;;;;1755:988;;;:::i;:::-;;911:41;;;:::i;635:38::-;;;:::i;872:33::-;;;:::i;:::-;;;;;;;;752:31;;;:::i;715:::-;;;:::o;2850:357::-;2920:14;2959:6;2950:15;;:5;:15;;;2946:255;;;2993:17;;;;;;;;;:13;:17;;;;;:39;;:27;;3011:8;2993:27;:17;:27;:::i;:::-;:37;:39::i;:::-;2981:51;;;;2946:255;;;3080:6;3071:15;;:5;:15;;;3063:62;;;;;;;;;;;;;;;;;;;;;;3151:17;;;;;;;;;:13;:17;;;;;:39;;:27;;3169:8;3151:27;:17;:27;:::i;:39::-;3139:51;;;;2946:255;2850:357;;;;:::o;790:35::-;;;;:::o;831:::-;;;;:::o;958:41::-;;;;;;:::o;1755:988::-;1793:21;1816;1839;1876:61;1931:4;1876:46;:61::i;:::-;1985:18;;1792:145;;-1:-1:-1;1792:145:11;;-1:-1:-1;1792:145:11;-1:-1:-1;1985:18:11;;;;1968:35;;;665:8;2126:21;;;;;2118:73;;;;;;;;;;;;;;2394:86;;;;;;;;2467:11;2423:55;;2443:20;;2424:16;:39;2423:55;;;;;;2394:86;;;;;;;2378:102;;:13;:102;;;;;;;;;;;2506:86;;;;;;;;;-1:-1:-1;2555:20:11;2506:86;;2535:55;;;;2536:39;;2535:55;;;;;;2506:86;;;;;;;2490:102;;:13;:102;;;;;;;;;;;-1:-1:-1;;2603:39:11;;;;-1:-1:-1;2652:39:11;2701:18;:35;;;;;;;;;;;;;;1755:988::o;911:41::-;;;;;;:::o;635:38::-;665:8;635:38;:::o;872:33::-;;;;;;:::o;752:31::-;;;:::o;1116:249:4:-;1183:16;;:::i;:::-;1211:6;1235;;;:54;;-1:-1:-1;;1281:7:4;;1276:13;;1250:17;;;;1271:1;1250:17;1271:1;1245:27;;;;;:44;1235:54;1227:102;;;;;;;;;;;;;;1346:12;;;;;;;;;;;;;1116:249;-1:-1:-1;;;1116:249:4:o;2051:128::-;2150:7;407:3;2150:21;;2051:128::o;686:1040:24:-;770:21;793;816;866:23;:21;:23::i;:::-;849:40;;933:4;918:41;;;:43;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;918:43:24;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;918:43:24;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;918:43:24;;;;;;;;;899:62;;1005:4;990:41;;;:43;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;990:43:24;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;990:43:24;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;990:43:24;;;;;;;;;971:62;;1145:16;1163;1181:25;1225:4;1210:32;;;:34;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1210:34:24;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1210:34:24;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;1210:34:24;;;;;;;;;1144:100;;;;;;1280:14;1258:36;;:18;:36;;;1254:466;;1378:35;;;1521:62;;;1526:39;1546:8;1556;1526:19;:39::i;:::-;:42;1521:48;;:62;1501:82;;;;;1647:62;;;1652:39;1672:8;1682;1652:19;:39::i;:::-;:42;1647:48;;:62;1627:82;;;;;-1:-1:-1;1254:466:24;686:1040;;;;;;;;:::o;462:121::-;550:25;:15;:25;;462:121::o;1517:243:4:-;1598:16;;:::i;:::-;1648:1;1634:11;:15;;;1626:51;;;;;;;;;;;;;;1694:59;;;;;;;;;;1704:48;;;1705:32;407:3;1705:32;;;;1704:48;;;;;;1694:59;;;;;1687:66;;1517:243;;;;:::o;571:2638:11:-;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;-1:-1:-1;571:2638:11;;;:::o;700:366:-1:-;;;821:2;809:9;800:7;796:23;792:32;789:2;;;-1:-1;;827:12;789:2;85:6;72:20;6829:42;7289:5;6818:54;7264:5;7261:35;7251:2;;-1:-1;;7300:12;7251:2;879:63;979:2;1018:22;;;;350:20;;-1:-1;;;783:283;1073:533;;;;1221:2;1209:9;1200:7;1196:23;1192:32;1189:2;;;-1:-1;;1227:12;1189:2;226:6;220:13;238:33;265:5;238:33;;;1390:2;1440:22;;220:13;1279:74;;-1:-1;238:33;220:13;238:33;;;1509:2;1558:22;;638:13;1398:74;;-1:-1;7179:10;7168:22;;7632:34;;7622:2;;-1:-1;;7670:12;7622:2;1517:73;;;;1183:423;;;;;;1613:263;;1728:2;1716:9;1707:7;1703:23;1699:32;1696:2;;;-1:-1;;1734:12;1696:2;-1:-1;498:13;;1690:186;-1:-1;1690:186;3838:213;6829:42;6818:54;;;;1954:37;;3956:2;3941:18;;3927:124;4058:407;4249:2;4263:47;;;2228:2;4234:18;;;6474:19;2264:34;6514:14;;;2244:55;2333:4;2319:12;;;2312:26;2357:12;;;4220:245;4472:407;4663:2;4677:47;;;2608:2;4648:18;;;6474:19;2644:34;6514:14;;;2624:55;2713:9;2699:12;;;2692:31;2742:12;;;4634:245;4886:407;5077:2;5091:47;;;2993:2;5062:18;;;6474:19;3029:34;6514:14;;;3009:55;3098:5;3084:12;;;3077:27;3123:12;;;5048:245;5300:407;5491:2;5505:47;;;3374:2;5476:18;;;6474:19;3410:25;6514:14;;;3390:46;3455:12;;;5462:245;5714:213;6957:58;6946:70;;;;3552:37;;5832:2;5817:18;;5803:124;5934:213;3672:37;;;6052:2;6037:18;;6023:124;6154:209;7179:10;7168:22;;;;3790:36;;6270:2;6255:18;;6241:122;7326:117;6713:30;7413:5;6702:42;7388:5;7385:35;7375:2;;7434:1;;7424:12;7375:2;7369:74;;;843:12:23;868:14;884;902:26;913:6;921;902:10;:26::i;:::-;867:61;;;;1027:7;1079:6;1087;1062:32;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1062:32:23;;;1052:43;;;;;;968:246;;;;;;;;;;;;;;22:32:-1;26:21;;;22:32;6:49;;968:246:23;;;958:257;;49:4:-1;958:257:23;;;;;754:470;-1:-1:-1;;;;;;754:470:23:o;320:345::-;395:14;411;455:6;445:16;;:6;:16;;;;437:66;;;;;;;;;;;;;;541:6;532:15;;:6;:15;;;:53;;570:6;578;532:53;;;551:6;559;532:53;513:72;;-1:-1:-1;513:72:23;-1:-1:-1;603:20:23;;;595:63;;;;;;;;;;;;;;320:345;;;;;:::o;1861:383:-1:-;4983:14;4987:2;4983:14;;;;;94:58;;4983:14;;;;;2105:2;2096:12;;94:58;2207:12;;;1996:248;2251:917;1411:66;1391:87;;4987:2;4983:14;;;;;;1376:1;1497:11;;94:58;2854:12;;;253:58;1003:66;2965:12;;;983:87;1089:12;;;2588:580;3175:407;3366:2;3380:47;;;548:2;3351:18;;;4107:19;584:34;4147:14;;;564:55;653:7;639:12;;;632:29;680:12;;;3337:245;3589:407;3780:2;3794:47;;;1747:2;3765:18;;;4107:19;1783:32;4147:14;;;1763:53;1835:12;;;3751:245"
200 }
201 },
202 "metadata": "{\"compiler\":{\"version\":\"0.6.6+commit.6c089d02\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"factory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenA\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenB\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"PERIOD\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"blockTimestampLast\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amountIn\",\"type\":\"uint256\"}],\"name\":\"consult\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOut\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"price0Average\",\"outputs\":[{\"internalType\":\"uint224\",\"name\":\"_x\",\"type\":\"uint224\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"price0CumulativeLast\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"price1Average\",\"outputs\":[{\"internalType\":\"uint224\",\"name\":\"_x\",\"type\":\"uint224\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"price1CumulativeLast\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"token0\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"token1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"update\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"contracts/examples/ExampleOracleSimple.sol\":\"ExampleOracleSimple\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":999999},\"remappings\":[]},\"sources\":{\"@daofi/uniswap-v2-core/contracts/interfaces/IUniswapV2Factory.sol\":{\"keccak256\":\"0xc3035318ad416580fb83ffbf32e0faa9d159435a07cc60a09d7d8c3a463497e5\",\"urls\":[\"bzz-raw://bdd6a93cae87d6773877a3ed519be73b9e3f849312ca210f04ce92d1fc8907d5\",\"dweb:/ipfs/QmYh1DG3XpSYSxMdxwQ2Epjms6tMtcLX794Eba78z2LPtW\"]},\"@daofi/uniswap-v2-core/contracts/interfaces/IUniswapV2Pair.sol\":{\"keccak256\":\"0x67a5d298b477d96f82c91282e5ffd11b525a215c3d2a290843455b04d9bf6556\",\"urls\":[\"bzz-raw://f77b9a6ec90fcfc33b80cc728619bd166260d5389818ae529f64fe0beca7a14a\",\"dweb:/ipfs/QmS1xwUSizor92CpgLsBiCaUVrgwMvg27dPcLdVhyNDC5U\"]},\"@uniswap/lib/contracts/libraries/FixedPoint.sol\":{\"keccak256\":\"0xc671208d030ea70032b9fe0ac9c05d7dcd3ef2593a1a36e7e7f03bf25c2997c4\",\"urls\":[\"bzz-raw://5d5fac757d514b276ae2954b28048cc854dfbeed20706b784a0c2d3efa6af752\",\"dweb:/ipfs/QmVmSgZ8yN9wqV8wHWj8KhHYbi2LoK6pdPK1i1pBqFKcUc\"]},\"contracts/examples/ExampleOracleSimple.sol\":{\"keccak256\":\"0x908cd41f068306174129327735ef419731ba1b6066d3281ba8198be8636c1042\",\"urls\":[\"bzz-raw://a12b65158bc8c5fe8e2df362a962dd21e7306cd1c2f3320ac137fc588ff61dda\",\"dweb:/ipfs/QmYwDeN6deUT4TDzmtrqzzJF7fmvWarUfi26a8tvLXaKJU\"]},\"contracts/libraries/SafeMath.sol\":{\"keccak256\":\"0x456ce938ef2994db6d8299bec615d4ef9811f61332718899a6fc26ca831d4052\",\"urls\":[\"bzz-raw://5841eacf0214e990faa02d5875e4ec5d12da55e82d741b48770e132a5149d074\",\"dweb:/ipfs/QmfAVKusuPTx82ejY8fYcxipgmX4v8aSVoSoizwojzqaqP\"]},\"contracts/libraries/UniswapV2Library.sol\":{\"keccak256\":\"0x903f64efd7c821cd21b49ffb33c8135cf99332394389041bf8e083b3c98b7d96\",\"urls\":[\"bzz-raw://0b8ca7baaef9dc1cf9a6d635e8e4d6605ec32808cd5f96358c4d018a68691bbb\",\"dweb:/ipfs/QmRou1qfoXZ56erPkWmNzmkJQ5TnJheU67sKfjfVm78rbV\"]},\"contracts/libraries/UniswapV2OracleLibrary.sol\":{\"keccak256\":\"0xb7a4c2a4e6d727370f2593b55b36dc95d9d8370d17d6ed1c8522d9f113ecfa7c\",\"urls\":[\"bzz-raw://f079b5a6eea305e14b9a0edd110659b100dd5873fd794861f4cd2af96661fe17\",\"dweb:/ipfs/QmeZorjdcZm97gv1MdBLu3v1n9hrDpda997WeespNNsBMt\"]}},\"version\":1}",
203 "interface": [
204 {
205 "inputs": [
206 {
207 "internalType": "address",
208 "name": "factory",
209 "type": "address"
210 },
211 {
212 "internalType": "address",
213 "name": "tokenA",
214 "type": "address"
215 },
216 {
217 "internalType": "address",
218 "name": "tokenB",
219 "type": "address"
220 }
221 ],
222 "stateMutability": "nonpayable",
223 "type": "constructor"
224 },
225 {
226 "inputs": [],
227 "name": "PERIOD",
228 "outputs": [
229 {
230 "internalType": "uint256",
231 "name": "",
232 "type": "uint256"
233 }
234 ],
235 "stateMutability": "view",
236 "type": "function"
237 },
238 {
239 "inputs": [],
240 "name": "blockTimestampLast",
241 "outputs": [
242 {
243 "internalType": "uint32",
244 "name": "",
245 "type": "uint32"
246 }
247 ],
248 "stateMutability": "view",
249 "type": "function"
250 },
251 {
252 "inputs": [
253 {
254 "internalType": "address",
255 "name": "token",
256 "type": "address"
257 },
258 {
259 "internalType": "uint256",
260 "name": "amountIn",
261 "type": "uint256"
262 }
263 ],
264 "name": "consult",
265 "outputs": [
266 {
267 "internalType": "uint256",
268 "name": "amountOut",
269 "type": "uint256"
270 }
271 ],
272 "stateMutability": "view",
273 "type": "function"
274 },
275 {
276 "inputs": [],
277 "name": "price0Average",
278 "outputs": [
279 {
280 "internalType": "uint224",
281 "name": "_x",
282 "type": "uint224"
283 }
284 ],
285 "stateMutability": "view",
286 "type": "function"
287 },
288 {
289 "inputs": [],
290 "name": "price0CumulativeLast",
291 "outputs": [
292 {
293 "internalType": "uint256",
294 "name": "",
295 "type": "uint256"
296 }
297 ],
298 "stateMutability": "view",
299 "type": "function"
300 },
301 {
302 "inputs": [],
303 "name": "price1Average",
304 "outputs": [
305 {
306 "internalType": "uint224",
307 "name": "_x",
308 "type": "uint224"
309 }
310 ],
311 "stateMutability": "view",
312 "type": "function"
313 },
314 {
315 "inputs": [],
316 "name": "price1CumulativeLast",
317 "outputs": [
318 {
319 "internalType": "uint256",
320 "name": "",
321 "type": "uint256"
322 }
323 ],
324 "stateMutability": "view",
325 "type": "function"
326 },
327 {
328 "inputs": [],
329 "name": "token0",
330 "outputs": [
331 {
332 "internalType": "address",
333 "name": "",
334 "type": "address"
335 }
336 ],
337 "stateMutability": "view",
338 "type": "function"
339 },
340 {
341 "inputs": [],
342 "name": "token1",
343 "outputs": [
344 {
345 "internalType": "address",
346 "name": "",
347 "type": "address"
348 }
349 ],
350 "stateMutability": "view",
351 "type": "function"
352 },
353 {
354 "inputs": [],
355 "name": "update",
356 "outputs": [],
357 "stateMutability": "nonpayable",
358 "type": "function"
359 }
360 ],
361 "bytecode": "60e06040523480156200001157600080fd5b50604051620015af380380620015af8339810160408190526200003491620004b1565b60006200004e8484846200037160201b62000b861760201c565b9050806001600160a01b03166080816001600160a01b031660601b81525050806001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b158015620000a757600080fd5b505afa158015620000bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000e2919062000481565b6001600160a01b031660a0816001600160a01b031660601b81525050806001600160a01b031663d21220a76040518163ffffffff1660e01b815260040160206040518083038186803b1580156200013857600080fd5b505afa1580156200014d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000173919062000481565b6001600160a01b031660c0816001600160a01b031660601b81525050806001600160a01b0316635909c0d56040518163ffffffff1660e01b815260040160206040518083038186803b158015620001c957600080fd5b505afa158015620001de573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000204919062000553565b600081905550806001600160a01b0316635a3d54936040518163ffffffff1660e01b815260040160206040518083038186803b1580156200024457600080fd5b505afa15801562000259573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200027f919062000553565b600181905550600080826001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b158015620002c257600080fd5b505afa158015620002d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002fd919062000504565b6002805463ffffffff191663ffffffff9290921691909117905590925090506001600160701b038216158015906200033d57506001600160701b03811615155b620003655760405162461bcd60e51b81526004016200035c906200063c565b60405180910390fd5b505050505050620006d7565b600080806200038a85856001600160e01b03620003ef16565b91509150858282604051602001620003a49291906200056c565b60405160208183030381529060405280519060200120604051602001620003cd9291906200058e565b60408051601f1981840301815291905280516020909101209695505050505050565b600080826001600160a01b0316846001600160a01b03161415620004275760405162461bcd60e51b81526004016200035c90620005f7565b826001600160a01b0316846001600160a01b031610620004495782846200044c565b83835b90925090506001600160a01b0382166200047a5760405162461bcd60e51b81526004016200035c9062000671565b9250929050565b60006020828403121562000493578081fd5b81516001600160a01b0381168114620004aa578182fd5b9392505050565b600080600060608486031215620004c6578182fd5b8351620004d381620006a8565b6020850151909350620004e681620006a8565b6040850151909250620004f981620006a8565b809150509250925092565b60008060006060848603121562000519578283fd5b83516200052681620006c1565b60208501519093506200053981620006c1565b604085015190925063ffffffff81168114620004f9578182fd5b60006020828403121562000565578081fd5b5051919050565b6001600160601b0319606093841b811682529190921b16601482015260280190565b7fff00000000000000000000000000000000000000000000000000000000000000815260609290921b6001600160601b031916600183015260158201527fab428a35b38b4307862d79ae79c6ec58b221c049532ba8b17045f4499da215f9603582015260550190565b60208082526025908201527f556e697377617056324c6962726172793a204944454e544943414c5f41444452604082015264455353455360d81b606082015260800190565b6020808252818101527f4578616d706c654f7261636c6553696d706c653a204e4f5f5245534552564553604082015260600190565b6020808252601e908201527f556e697377617056324c6962726172793a205a45524f5f414444524553530000604082015260600190565b6001600160a01b0381168114620006be57600080fd5b50565b6001600160701b0381168114620006be57600080fd5b60805160601c60a05160601c60c05160601c610e98620007176000398061023b528061053752508061015f52806101855250806103605250610e986000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c8063a2e6204511610076578063b4d1d7951161005b578063b4d1d79514610138578063c5700a0214610140578063d21220a714610155576100be565b8063a2e6204514610126578063a6bb453914610130576100be565b80635909c0d5116100a75780635909c0d5146101015780635a3d5493146101095780635e6aaf2c14610111576100be565b80630dfe1681146100c35780633ddac953146100e1575b600080fd5b6100cb61015d565b6040516100d891906109b5565b60405180910390f35b6100f46100ef366004610906565b610181565b6040516100d89190610b4d565b6100f4610326565b6100f461032c565b610119610332565b6040516100d89190610b24565b61012e610356565b005b6101196104fe565b6100f4610522565b610148610529565b6040516100d89190610b56565b6100cb610535565b7f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156102395760408051602081019091526003547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16815261021e90610219908463ffffffff61055916565b6105e7565b71ffffffffffffffffffffffffffffffffffff169050610320565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146102c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be906109d6565b60405180910390fd5b60408051602081019091526004547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16815261030990610219908463ffffffff61055916565b71ffffffffffffffffffffffffffffffffffff1690505b92915050565b60005481565b60015481565b6004547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1681565b60008060006103847f00000000000000000000000000000000000000000000000000000000000000006105ee565b600254929550909350915063ffffffff9081168203906201518090821610156103d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be90610a33565b60405180602001604052808263ffffffff166000548703816103f757fe5b047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff9081169091529051600380547fffffffff0000000000000000000000000000000000000000000000000000000016919092161790556040805160208101909152600154819063ffffffff84169086038161046b57fe5b047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff9081169091529051600480547fffffffff00000000000000000000000000000000000000000000000000000000169190921617905550600092909255600155600280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000001663ffffffff909216919091179055565b6003547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1681565b6201518081565b60025463ffffffff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b6105616108e1565b600082158061059c57505082517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff168281029083828161059957fe5b04145b6105d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be90610a90565b60408051602081019091529081529392505050565b5160701c90565b60008060006105fb610814565b90508373ffffffffffffffffffffffffffffffffffffffff16635909c0d56040518163ffffffff1660e01b815260040160206040518083038186803b15801561064357600080fd5b505afa158015610657573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067b919061099d565b92508373ffffffffffffffffffffffffffffffffffffffff16635a3d54936040518163ffffffff1660e01b815260040160206040518083038186803b1580156106c357600080fd5b505afa1580156106d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106fb919061099d565b915060008060008673ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561074857600080fd5b505afa15801561075c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107809190610949565b9250925092508363ffffffff168163ffffffff161461080a5780840363ffffffff81166107ad848661081e565b517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1602969096019563ffffffff81166107e3858561081e565b517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16029590950194505b5050509193909250565b63ffffffff421690565b6108266108f4565b6000826dffffffffffffffffffffffffffff1611610870576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be90610aed565b6040805160208101909152806dffffffffffffffffffffffffffff84167bffffffffffffffffffffffffffff0000000000000000000000000000607087901b16816108b757fe5b047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16815250905092915050565b6040518060200160405280600081525090565b60408051602081019091526000815290565b60008060408385031215610918578182fd5b823573ffffffffffffffffffffffffffffffffffffffff8116811461093b578283fd5b946020939093013593505050565b60008060006060848603121561095d578081fd5b835161096881610b67565b602085015190935061097981610b67565b604085015190925063ffffffff81168114610992578182fd5b809150509250925092565b6000602082840312156109ae578081fd5b5051919050565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b60208082526022908201527f4578616d706c654f7261636c6553696d706c653a20494e56414c49445f544f4b60408201527f454e000000000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526027908201527f4578616d706c654f7261636c6553696d706c653a20504552494f445f4e4f545f60408201527f454c415053454400000000000000000000000000000000000000000000000000606082015260800190565b60208082526023908201527f4669786564506f696e743a204d554c5449504c49434154494f4e5f4f5645524660408201527f4c4f570000000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526017908201527f4669786564506f696e743a204449565f42595f5a45524f000000000000000000604082015260600190565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff91909116815260200190565b90815260200190565b63ffffffff91909116815260200190565b6dffffffffffffffffffffffffffff81168114610b8357600080fd5b50565b6000806000610b958585610c14565b91509150858282604051602001610bad929190610d13565b60405160208183030381529060405280519060200120604051602001610bd4929190610d4d565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905280516020909101209695505050505050565b6000808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610c7d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be90610dce565b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1610610cb7578284610cba565b83835b909250905073ffffffffffffffffffffffffffffffffffffffff8216610d0c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102be90610e2b565b9250929050565b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606093841b811682529190921b16601482015260280190565b7fff00000000000000000000000000000000000000000000000000000000000000815260609290921b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016600183015260158201527fab428a35b38b4307862d79ae79c6ec58b221c049532ba8b17045f4499da215f9603582015260550190565b60208082526025908201527f556e697377617056324c6962726172793a204944454e544943414c5f4144445260408201527f4553534553000000000000000000000000000000000000000000000000000000606082015260800190565b6020808252601e908201527f556e697377617056324c6962726172793a205a45524f5f41444452455353000060408201526060019056fea2646970667358221220f7b5feb631fb221dca4b753631e511b077bdc4fd5d10a5e51dff3168983e173764736f6c63430006060033"
362}
\No newline at end of file