Skip to content

Instantly share code, notes, and snippets.

@NiklasKunkel
Created November 5, 2020 17:55
Show Gist options
  • Save NiklasKunkel/26b7a7499be4dc761ac23260c526ff42 to your computer and use it in GitHub Desktop.
Save NiklasKunkel/26b7a7499be4dc761ac23260c526ff42 to your computer and use it in GitHub Desktop.
DappSolJSON-OSM
{"contracts":{"lib/ds-stop/lib/ds-auth/src/auth.sol:DSAuth":{"abi":"[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"authority\",\"type\":\"address\"}],\"name\":\"LogSetAuthority\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"LogSetOwner\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"authority\",\"outputs\":[{\"internalType\":\"contract DSAuthority\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract DSAuthority\",\"name\":\"authority_\",\"type\":\"address\"}],\"name\":\"setAuthority\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner_\",\"type\":\"address\"}],\"name\":\"setOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]","bin":"608060405234801561001057600080fd5b5033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a26106d7806100a46000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806313af4035146100515780637a9e5e4b146100955780638da5cb5b146100d9578063bf7e214f14610123575b600080fd5b6100936004803603602081101561006757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061016d565b005b6100d7600480360360208110156100ab57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506102b6565b005b6100e16103fd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61012b610423565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61019b336000357fffffffff0000000000000000000000000000000000000000000000000000000016610448565b61020d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b6102e4336000357fffffffff0000000000000000000000000000000000000000000000000000000016610448565b610356576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610487576001905061069b565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156104e6576001905061069b565b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610545576000905061069b565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b70096138430856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001935050505060206040518083038186803b15801561065d57600080fd5b505afa158015610671573d6000803e3d6000fd5b505050506040513d602081101561068757600080fd5b810190808051906020019092919050505090505b9291505056fea26469706673582212202d447d49771680c7673fc34f0f05f18f9d0dfbe34ed7a114f0304f6b905bdb8c64736f6c63430006070033","bin-runtime":"608060405234801561001057600080fd5b506004361061004c5760003560e01c806313af4035146100515780637a9e5e4b146100955780638da5cb5b146100d9578063bf7e214f14610123575b600080fd5b6100936004803603602081101561006757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061016d565b005b6100d7600480360360208110156100ab57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506102b6565b005b6100e16103fd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61012b610423565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61019b336000357fffffffff0000000000000000000000000000000000000000000000000000000016610448565b61020d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b6102e4336000357fffffffff0000000000000000000000000000000000000000000000000000000016610448565b610356576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610487576001905061069b565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156104e6576001905061069b565b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610545576000905061069b565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b70096138430856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001935050505060206040518083038186803b15801561065d57600080fd5b505afa158015610671573d6000803e3d6000fd5b505050506040513d602081101561068757600080fd5b810190808051906020019092919050505090505b9291505056fea26469706673582212202d447d49771680c7673fc34f0f05f18f9d0dfbe34ed7a114f0304f6b905bdb8c64736f6c63430006070033","metadata":"{\"compiler\":{\"version\":\"0.6.7+commit.b8d736ae\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"authority\",\"type\":\"address\"}],\"name\":\"LogSetAuthority\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"LogSetOwner\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"authority\",\"outputs\":[{\"internalType\":\"contract DSAuthority\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract DSAuthority\",\"name\":\"authority_\",\"type\":\"address\"}],\"name\":\"setAuthority\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner_\",\"type\":\"address\"}],\"name\":\"setOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"lib/ds-stop/lib/ds-auth/src/auth.sol\":\"DSAuth\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[\":/=/\",\":ds-auth/=lib/ds-stop/lib/ds-auth/src/\",\":ds-auth=lib/ds-stop/lib/ds-auth/src/index.sol\",\":ds-math/=lib/ds-value/lib/ds-thing/lib/ds-math/src/\",\":ds-math=lib/ds-value/lib/ds-thing/lib/ds-math/src/index.sol\",\":ds-note/=lib/ds-stop/lib/ds-note/src/\",\":ds-note=lib/ds-stop/lib/ds-note/src/index.sol\",\":ds-stop/=lib/ds-stop/src/\",\":ds-stop=lib/ds-stop/src/index.sol\",\":ds-test/=lib/ds-test/src/\",\":ds-test=lib/ds-test/src/index.sol\",\":ds-thing/=lib/ds-value/lib/ds-thing/src/\",\":ds-thing=lib/ds-value/lib/ds-thing/src/index.sol\",\":ds-value/=lib/ds-value/src/\",\":ds-value=lib/ds-value/src/index.sol\"]},\"sources\":{\"lib/ds-stop/lib/ds-auth/src/auth.sol\":{\"keccak256\":\"0x15b5e480ce445d0d81b5b1a070f9736247b731d7fcff22b1e28b34a5a4d82f13\",\"urls\":[\"bzz-raw://082a7116140d327d21a72199b255e0b9de3cfab8838a34a8f44a27c11b3a83b5\",\"dweb:/ipfs/QmXXjzPY7BQUZXS4qfaBLn1MmnTKhCwtrMWZb9caDzrrca\"]}},\"version\":1}","srcmap":"933:1002:0:-:0;;;1040:94;5:9:-1;2:2;;;27:1;24;17:12;2:2;1040:94:0;1079:10;1071:5;;:18;;;;;;;;;;;;;;;;;;1116:10;1104:23;;;;;;;;;;;;933:1002;;;;;;","srcmap-runtime":"933:1002:0:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;933:1002:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12:1:-1;9;2:12;1140:130:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;1140:130:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;1276:167;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;1276:167:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;1007:26;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;971:30;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1140:130;1481:33;1494:10;1506:7;;;;1481:12;:33::i;:::-;1473:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1224:6:::1;1216:5;;:14;;;;;;;;;;;;;;;;;;1257:5;;;;;;;;;;;1245:18;;;;;;;;;;;;1140:130:::0;:::o;1276:167::-;1481:33;1494:10;1506:7;;;;1481:12;:33::i;:::-;1473:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1376:10:::1;1364:9;::::0;:22:::1;;;;;;;;;;;;;;;;;;1425:9;::::0;::::1;;;;;;;;;1401:35;;;;;;;;;;;;1276:167:::0;:::o;1007:26::-;;;;;;;;;;;;;:::o;971:30::-;;;;;;;;;;;;;:::o;1563:370::-;1633:4;1668;1653:20;;:3;:20;;;1649:278;;;1696:4;1689:11;;;;1649:278;1728:5;;;;;;;;;;;1721:12;;:3;:12;;;1717:210;;;1756:4;1749:11;;;;1717:210;1806:1;1781:27;;:9;;;;;;;;;;;:27;;;1777:150;;;1831:5;1824:12;;;;1777:150;1874:9;;;;;;;;;;;:17;;;1892:3;1905:4;1912:3;1874:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1874:42:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1874:42:0;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;1874:42:0;;;;;;;;;;;;;;;;1867:49;;1563:370;;;;;:::o"},"lib/ds-stop/lib/ds-auth/src/auth.sol:DSAuthEvents":{"abi":"[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"authority\",\"type\":\"address\"}],\"name\":\"LogSetAuthority\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"LogSetOwner\",\"type\":\"event\"}]","bin":"6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea26469706673582212204a5038bb7f7a544cc61b4f49cfa1b73cd4e8aa4c327f0082e3a7d17125dc54e964736f6c63430006070033","bin-runtime":"6080604052600080fdfea26469706673582212204a5038bb7f7a544cc61b4f49cfa1b73cd4e8aa4c327f0082e3a7d17125dc54e964736f6c63430006070033","metadata":"{\"compiler\":{\"version\":\"0.6.7+commit.b8d736ae\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"authority\",\"type\":\"address\"}],\"name\":\"LogSetAuthority\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"LogSetOwner\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"lib/ds-stop/lib/ds-auth/src/auth.sol\":\"DSAuthEvents\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[\":/=/\",\":ds-auth/=lib/ds-stop/lib/ds-auth/src/\",\":ds-auth=lib/ds-stop/lib/ds-auth/src/index.sol\",\":ds-math/=lib/ds-value/lib/ds-thing/lib/ds-math/src/\",\":ds-math=lib/ds-value/lib/ds-thing/lib/ds-math/src/index.sol\",\":ds-note/=lib/ds-stop/lib/ds-note/src/\",\":ds-note=lib/ds-stop/lib/ds-note/src/index.sol\",\":ds-stop/=lib/ds-stop/src/\",\":ds-stop=lib/ds-stop/src/index.sol\",\":ds-test/=lib/ds-test/src/\",\":ds-test=lib/ds-test/src/index.sol\",\":ds-thing/=lib/ds-value/lib/ds-thing/src/\",\":ds-thing=lib/ds-value/lib/ds-thing/src/index.sol\",\":ds-value/=lib/ds-value/src/\",\":ds-value=lib/ds-value/src/index.sol\"]},\"sources\":{\"lib/ds-stop/lib/ds-auth/src/auth.sol\":{\"keccak256\":\"0x15b5e480ce445d0d81b5b1a070f9736247b731d7fcff22b1e28b34a5a4d82f13\",\"urls\":[\"bzz-raw://082a7116140d327d21a72199b255e0b9de3cfab8838a34a8f44a27c11b3a83b5\",\"dweb:/ipfs/QmXXjzPY7BQUZXS4qfaBLn1MmnTKhCwtrMWZb9caDzrrca\"]}},\"version\":1}","srcmap":"800:131:0:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;800:131:0;;;;;;;","srcmap-runtime":"800:131:0:-:0;;;12:1:-1;9;2:12"},"lib/ds-stop/lib/ds-auth/src/auth.sol:DSAuthority":{"abi":"[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"src\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"dst\",\"type\":\"address\"},{\"internalType\":\"bytes4\",\"name\":\"sig\",\"type\":\"bytes4\"}],\"name\":\"canCall\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]","bin":"","bin-runtime":"","metadata":"{\"compiler\":{\"version\":\"0.6.7+commit.b8d736ae\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"src\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"dst\",\"type\":\"address\"},{\"internalType\":\"bytes4\",\"name\":\"sig\",\"type\":\"bytes4\"}],\"name\":\"canCall\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"lib/ds-stop/lib/ds-auth/src/auth.sol\":\"DSAuthority\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[\":/=/\",\":ds-auth/=lib/ds-stop/lib/ds-auth/src/\",\":ds-auth=lib/ds-stop/lib/ds-auth/src/index.sol\",\":ds-math/=lib/ds-value/lib/ds-thing/lib/ds-math/src/\",\":ds-math=lib/ds-value/lib/ds-thing/lib/ds-math/src/index.sol\",\":ds-note/=lib/ds-stop/lib/ds-note/src/\",\":ds-note=lib/ds-stop/lib/ds-note/src/index.sol\",\":ds-stop/=lib/ds-stop/src/\",\":ds-stop=lib/ds-stop/src/index.sol\",\":ds-test/=lib/ds-test/src/\",\":ds-test=lib/ds-test/src/index.sol\",\":ds-thing/=lib/ds-value/lib/ds-thing/src/\",\":ds-thing=lib/ds-value/lib/ds-thing/src/index.sol\",\":ds-value/=lib/ds-value/src/\",\":ds-value=lib/ds-value/src/index.sol\"]},\"sources\":{\"lib/ds-stop/lib/ds-auth/src/auth.sol\":{\"keccak256\":\"0x15b5e480ce445d0d81b5b1a070f9736247b731d7fcff22b1e28b34a5a4d82f13\",\"urls\":[\"bzz-raw://082a7116140d327d21a72199b255e0b9de3cfab8838a34a8f44a27c11b3a83b5\",\"dweb:/ipfs/QmXXjzPY7BQUZXS4qfaBLn1MmnTKhCwtrMWZb9caDzrrca\"]}},\"version\":1}","srcmap":"","srcmap-runtime":""},"lib/ds-stop/lib/ds-note/src/note.sol:DSNote":{"abi":"[{\"anonymous\":true,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"sig\",\"type\":\"bytes4\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"guy\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"foo\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"bar\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"fax\",\"type\":\"bytes\"}],\"name\":\"LogNote\",\"type\":\"event\"}]","bin":"6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea26469706673582212208e8523043143150cb457400d4aa71beef10548030a92fe0ac059e3b7213acdef64736f6c63430006070033","bin-runtime":"6080604052600080fdfea26469706673582212208e8523043143150cb457400d4aa71beef10548030a92fe0ac059e3b7213acdef64736f6c63430006070033","metadata":"{\"compiler\":{\"version\":\"0.6.7+commit.b8d736ae\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":true,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"sig\",\"type\":\"bytes4\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"guy\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"foo\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"bar\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"fax\",\"type\":\"bytes\"}],\"name\":\"LogNote\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"lib/ds-stop/lib/ds-note/src/note.sol\":\"DSNote\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[\":/=/\",\":ds-auth/=lib/ds-stop/lib/ds-auth/src/\",\":ds-auth=lib/ds-stop/lib/ds-auth/src/index.sol\",\":ds-math/=lib/ds-value/lib/ds-thing/lib/ds-math/src/\",\":ds-math=lib/ds-value/lib/ds-thing/lib/ds-math/src/index.sol\",\":ds-note/=lib/ds-stop/lib/ds-note/src/\",\":ds-note=lib/ds-stop/lib/ds-note/src/index.sol\",\":ds-stop/=lib/ds-stop/src/\",\":ds-stop=lib/ds-stop/src/index.sol\",\":ds-test/=lib/ds-test/src/\",\":ds-test=lib/ds-test/src/index.sol\",\":ds-thing/=lib/ds-value/lib/ds-thing/src/\",\":ds-thing=lib/ds-value/lib/ds-thing/src/index.sol\",\":ds-value/=lib/ds-value/src/\",\":ds-value=lib/ds-value/src/index.sol\"]},\"sources\":{\"lib/ds-stop/lib/ds-note/src/note.sol\":{\"keccak256\":\"0xc6aed2fade2d8b560dadf645b76f5d55a09d4cffb062fa2a1065642835abcf90\",\"urls\":[\"bzz-raw://0bf91088dce5fec1db422465dcc63f78c7e7acfc17aad40f745901baaca41ce2\",\"dweb:/ipfs/QmWqAVcNa7WRzLQhhNMxLzBeZ2zkpHfKx2AYvhkvJL8QJW\"]}},\"version\":1}","srcmap":"736:543:1:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;736:543:1;;;;;;;","srcmap-runtime":"736:543:1:-:0;;;12:1:-1;9;2:12"},"lib/ds-test/src/test.sol:DSTest":{"abi":"[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"exact\",\"type\":\"bool\"}],\"name\":\"eventListener\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]","bin":"","bin-runtime":"","metadata":"{\"compiler\":{\"version\":\"0.6.7+commit.b8d736ae\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"exact\",\"type\":\"bool\"}],\"name\":\"eventListener\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"lib/ds-test/src/test.sol\":\"DSTest\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[\":/=/\",\":ds-auth/=lib/ds-stop/lib/ds-auth/src/\",\":ds-auth=lib/ds-stop/lib/ds-auth/src/index.sol\",\":ds-math/=lib/ds-value/lib/ds-thing/lib/ds-math/src/\",\":ds-math=lib/ds-value/lib/ds-thing/lib/ds-math/src/index.sol\",\":ds-note/=lib/ds-stop/lib/ds-note/src/\",\":ds-note=lib/ds-stop/lib/ds-note/src/index.sol\",\":ds-stop/=lib/ds-stop/src/\",\":ds-stop=lib/ds-stop/src/index.sol\",\":ds-test/=lib/ds-test/src/\",\":ds-test=lib/ds-test/src/index.sol\",\":ds-thing/=lib/ds-value/lib/ds-thing/src/\",\":ds-thing=lib/ds-value/lib/ds-thing/src/index.sol\",\":ds-value/=lib/ds-value/src/\",\":ds-value=lib/ds-value/src/index.sol\"]},\"sources\":{\"lib/ds-test/src/test.sol\":{\"keccak256\":\"0x992abcdf10dca07fcbe53a55032a14f3550d184506f2c33191d783469866979a\",\"urls\":[\"bzz-raw://b386086fcd19e9cf2fd8cabec76463f804ed3afe4566202d881eccc15f5542b1\",\"dweb:/ipfs/Qmf1ei8rEh4nJbhFJyGqpM7GnYAiPE3BU8LRoMSDUEqdey\"]}},\"version\":1}","srcmap":"","srcmap-runtime":""},"lib/ds-value/lib/ds-thing/lib/ds-math/src/math.sol:DSMath":{"abi":"[]","bin":"6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea26469706673582212207ea9c0d0fd4c4cbdd8a39d3319c012023697c92ca2bf7658bb22f976946e8db164736f6c63430006070033","bin-runtime":"6080604052600080fdfea26469706673582212207ea9c0d0fd4c4cbdd8a39d3319c012023697c92ca2bf7658bb22f976946e8db164736f6c63430006070033","metadata":"{\"compiler\":{\"version\":\"0.6.7+commit.b8d736ae\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"lib/ds-value/lib/ds-thing/lib/ds-math/src/math.sol\":\"DSMath\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[\":/=/\",\":ds-auth/=lib/ds-stop/lib/ds-auth/src/\",\":ds-auth=lib/ds-stop/lib/ds-auth/src/index.sol\",\":ds-math/=lib/ds-value/lib/ds-thing/lib/ds-math/src/\",\":ds-math=lib/ds-value/lib/ds-thing/lib/ds-math/src/index.sol\",\":ds-note/=lib/ds-stop/lib/ds-note/src/\",\":ds-note=lib/ds-stop/lib/ds-note/src/index.sol\",\":ds-stop/=lib/ds-stop/src/\",\":ds-stop=lib/ds-stop/src/index.sol\",\":ds-test/=lib/ds-test/src/\",\":ds-test=lib/ds-test/src/index.sol\",\":ds-thing/=lib/ds-value/lib/ds-thing/src/\",\":ds-thing=lib/ds-value/lib/ds-thing/src/index.sol\",\":ds-value/=lib/ds-value/src/\",\":ds-value=lib/ds-value/src/index.sol\"]},\"sources\":{\"lib/ds-value/lib/ds-thing/lib/ds-math/src/math.sol\":{\"keccak256\":\"0x40f4c3c2f6fa0f498d709dd48d9df4cbf64562bce100d954beff90c97e404e99\",\"urls\":[\"bzz-raw://549d20d0e611fe317dd6d94ee68f2dd9bb771d00fbc833017ae86368e5f656fd\",\"dweb:/ipfs/QmVaAgnJvQpKFJM6xgttyJYxNqqVkYNNvn5KcutMr8sb9s\"]}},\"version\":1}","srcmap":"722:2338:3:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;722:2338:3;;;;;;;","srcmap-runtime":"722:2338:3:-:0;;;12:1:-1;9;2:12"},"lib/ds-value/lib/ds-thing/src/thing.sol:DSThing":{"abi":"[{\"anonymous\":true,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"sig\",\"type\":\"bytes4\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"guy\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"foo\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"bar\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"fax\",\"type\":\"bytes\"}],\"name\":\"LogNote\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"authority\",\"type\":\"address\"}],\"name\":\"LogSetAuthority\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"LogSetOwner\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"authority\",\"outputs\":[{\"internalType\":\"contract DSAuthority\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract DSAuthority\",\"name\":\"authority_\",\"type\":\"address\"}],\"name\":\"setAuthority\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner_\",\"type\":\"address\"}],\"name\":\"setOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]","bin":"608060405233600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a26106d7806100976000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806313af4035146100515780637a9e5e4b146100955780638da5cb5b146100d9578063bf7e214f14610123575b600080fd5b6100936004803603602081101561006757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061016d565b005b6100d7600480360360208110156100ab57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506102b6565b005b6100e16103fd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61012b610423565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61019b336000357fffffffff0000000000000000000000000000000000000000000000000000000016610448565b61020d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b6102e4336000357fffffffff0000000000000000000000000000000000000000000000000000000016610448565b610356576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610487576001905061069b565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156104e6576001905061069b565b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610545576000905061069b565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b70096138430856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001935050505060206040518083038186803b15801561065d57600080fd5b505afa158015610671573d6000803e3d6000fd5b505050506040513d602081101561068757600080fd5b810190808051906020019092919050505090505b9291505056fea26469706673582212208afcfe7fa91a8271b949d618109e0f5148dca11da257bc6279f80d0778461d0864736f6c63430006070033","bin-runtime":"608060405234801561001057600080fd5b506004361061004c5760003560e01c806313af4035146100515780637a9e5e4b146100955780638da5cb5b146100d9578063bf7e214f14610123575b600080fd5b6100936004803603602081101561006757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061016d565b005b6100d7600480360360208110156100ab57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506102b6565b005b6100e16103fd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61012b610423565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61019b336000357fffffffff0000000000000000000000000000000000000000000000000000000016610448565b61020d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b6102e4336000357fffffffff0000000000000000000000000000000000000000000000000000000016610448565b610356576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610487576001905061069b565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156104e6576001905061069b565b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610545576000905061069b565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b70096138430856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001935050505060206040518083038186803b15801561065d57600080fd5b505afa158015610671573d6000803e3d6000fd5b505050506040513d602081101561068757600080fd5b810190808051906020019092919050505090505b9291505056fea26469706673582212208afcfe7fa91a8271b949d618109e0f5148dca11da257bc6279f80d0778461d0864736f6c63430006070033","metadata":"{\"compiler\":{\"version\":\"0.6.7+commit.b8d736ae\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":true,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"sig\",\"type\":\"bytes4\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"guy\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"foo\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"bar\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"fax\",\"type\":\"bytes\"}],\"name\":\"LogNote\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"authority\",\"type\":\"address\"}],\"name\":\"LogSetAuthority\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"LogSetOwner\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"authority\",\"outputs\":[{\"internalType\":\"contract DSAuthority\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract DSAuthority\",\"name\":\"authority_\",\"type\":\"address\"}],\"name\":\"setAuthority\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner_\",\"type\":\"address\"}],\"name\":\"setOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"lib/ds-value/lib/ds-thing/src/thing.sol\":\"DSThing\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[\":/=/\",\":ds-auth/=lib/ds-stop/lib/ds-auth/src/\",\":ds-auth=lib/ds-stop/lib/ds-auth/src/index.sol\",\":ds-math/=lib/ds-value/lib/ds-thing/lib/ds-math/src/\",\":ds-math=lib/ds-value/lib/ds-thing/lib/ds-math/src/index.sol\",\":ds-note/=lib/ds-stop/lib/ds-note/src/\",\":ds-note=lib/ds-stop/lib/ds-note/src/index.sol\",\":ds-stop/=lib/ds-stop/src/\",\":ds-stop=lib/ds-stop/src/index.sol\",\":ds-test/=lib/ds-test/src/\",\":ds-test=lib/ds-test/src/index.sol\",\":ds-thing/=lib/ds-value/lib/ds-thing/src/\",\":ds-thing=lib/ds-value/lib/ds-thing/src/index.sol\",\":ds-value/=lib/ds-value/src/\",\":ds-value=lib/ds-value/src/index.sol\"]},\"sources\":{\"lib/ds-stop/lib/ds-auth/src/auth.sol\":{\"keccak256\":\"0x15b5e480ce445d0d81b5b1a070f9736247b731d7fcff22b1e28b34a5a4d82f13\",\"urls\":[\"bzz-raw://082a7116140d327d21a72199b255e0b9de3cfab8838a34a8f44a27c11b3a83b5\",\"dweb:/ipfs/QmXXjzPY7BQUZXS4qfaBLn1MmnTKhCwtrMWZb9caDzrrca\"]},\"lib/ds-stop/lib/ds-note/src/note.sol\":{\"keccak256\":\"0xc6aed2fade2d8b560dadf645b76f5d55a09d4cffb062fa2a1065642835abcf90\",\"urls\":[\"bzz-raw://0bf91088dce5fec1db422465dcc63f78c7e7acfc17aad40f745901baaca41ce2\",\"dweb:/ipfs/QmWqAVcNa7WRzLQhhNMxLzBeZ2zkpHfKx2AYvhkvJL8QJW\"]},\"lib/ds-value/lib/ds-thing/lib/ds-math/src/math.sol\":{\"keccak256\":\"0x40f4c3c2f6fa0f498d709dd48d9df4cbf64562bce100d954beff90c97e404e99\",\"urls\":[\"bzz-raw://549d20d0e611fe317dd6d94ee68f2dd9bb771d00fbc833017ae86368e5f656fd\",\"dweb:/ipfs/QmVaAgnJvQpKFJM6xgttyJYxNqqVkYNNvn5KcutMr8sb9s\"]},\"lib/ds-value/lib/ds-thing/src/thing.sol\":{\"keccak256\":\"0x964650c4e3bbdcd52d6bc6b88a4c6b631a53fc445ef7e37b462b94f9f2d3c953\",\"urls\":[\"bzz-raw://043d0ca0c92f3902197aed9ca5f41c220082184a0fe6afeb7e236da99dd0bec4\",\"dweb:/ipfs/QmTgyLLX4kcpKjcWXSCbJo3VFJrNmWczpY6NhGVhFogg6L\"]}},\"version\":1}","srcmap":"862:173:4:-:0;;;1079:10:0;1071:5;;:18;;;;;;;;;;;;;;;;;;1116:10;1104:23;;;;;;;;;;;;862:173:4;;;;;;","srcmap-runtime":"862:173:4:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;862:173:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12:1:-1;9;2:12;1140:130:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;1140:130:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;1276:167;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;1276:167:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;1007:26;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;971:30;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1140:130;1481:33;1494:10;1506:7;;;;1481:12;:33::i;:::-;1473:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1224:6:::1;1216:5;;:14;;;;;;;;;;;;;;;;;;1257:5;;;;;;;;;;;1245:18;;;;;;;;;;;;1140:130:::0;:::o;1276:167::-;1481:33;1494:10;1506:7;;;;1481:12;:33::i;:::-;1473:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1376:10:::1;1364:9;::::0;:22:::1;;;;;;;;;;;;;;;;;;1425:9;::::0;::::1;;;;;;;;;1401:35;;;;;;;;;;;;1276:167:::0;:::o;1007:26::-;;;;;;;;;;;;;:::o;971:30::-;;;;;;;;;;;;;:::o;1563:370::-;1633:4;1668;1653:20;;:3;:20;;;1649:278;;;1696:4;1689:11;;;;1649:278;1728:5;;;;;;;;;;;1721:12;;:3;:12;;;1717:210;;;1756:4;1749:11;;;;1717:210;1806:1;1781:27;;:9;;;;;;;;;;;:27;;;1777:150;;;1831:5;1824:12;;;;1777:150;1874:9;;;;;;;;;;;:17;;;1892:3;1905:4;1912:3;1874:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1874:42:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1874:42:0;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;1874:42:0;;;;;;;;;;;;;;;;1867:49;;1563:370;;;;;:::o"},"lib/ds-value/src/value.sol:DSValue":{"abi":"[{\"anonymous\":true,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"sig\",\"type\":\"bytes4\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"guy\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"foo\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"bar\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"fax\",\"type\":\"bytes\"}],\"name\":\"LogNote\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"authority\",\"type\":\"address\"}],\"name\":\"LogSetAuthority\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"LogSetOwner\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"authority\",\"outputs\":[{\"internalType\":\"contract DSAuthority\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"peek\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"wut\",\"type\":\"bytes32\"}],\"name\":\"poke\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"read\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract DSAuthority\",\"name\":\"authority_\",\"type\":\"address\"}],\"name\":\"setAuthority\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner_\",\"type\":\"address\"}],\"name\":\"setOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"void\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]","bin":"608060405233600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a2610b3b806100976000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c80637a9e5e4b1161005b5780637a9e5e4b146101465780638da5cb5b1461018a578063ac4c25b2146101d4578063bf7e214f146101de57610088565b806313af40351461008d5780631504460f146100d157806357de26a4146100ff57806359e02dd71461011d575b600080fd5b6100cf600480360360208110156100a357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610228565b005b6100fd600480360360208110156100e757600080fd5b8101908080359060200190929190505050610371565b005b6101076104f2565b6040518082815260200191505060405180910390f35b610125610582565b60405180838152602001821515151581526020019250505060405180910390f35b6101886004803603602081101561015c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105a0565b005b6101926106e7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101dc61070d565b005b6101e6610887565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610256336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b6102c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b6000806000600435925060243591503490506103b1336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b610423576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b8360028190555060018060146101000a81548160ff02191690831515021790555081833373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168460003660405180848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505094505050505060405180910390a450505050565b60008060006104ff610582565b80925081935050508061057a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260078152602001807f68617a2d6e6f740000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b819250505090565b600080600254600160149054906101000a900460ff16915091509091565b6105ce336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b610640576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060006004359250602435915034905061074d336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b6107bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b6000600160146101000a81548160ff02191690831515021790555081833373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168460003660405180848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505094505050505060405180910390a4505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156108eb5760019050610aff565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561094a5760019050610aff565b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156109a95760009050610aff565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b70096138430856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001935050505060206040518083038186803b158015610ac157600080fd5b505afa158015610ad5573d6000803e3d6000fd5b505050506040513d6020811015610aeb57600080fd5b810190808051906020019092919050505090505b9291505056fea264697066735822122025b7fd437fc140a28b6d0f09016bd24068908ef03f82974849baefee31fb546764736f6c63430006070033","bin-runtime":"608060405234801561001057600080fd5b50600436106100885760003560e01c80637a9e5e4b1161005b5780637a9e5e4b146101465780638da5cb5b1461018a578063ac4c25b2146101d4578063bf7e214f146101de57610088565b806313af40351461008d5780631504460f146100d157806357de26a4146100ff57806359e02dd71461011d575b600080fd5b6100cf600480360360208110156100a357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610228565b005b6100fd600480360360208110156100e757600080fd5b8101908080359060200190929190505050610371565b005b6101076104f2565b6040518082815260200191505060405180910390f35b610125610582565b60405180838152602001821515151581526020019250505060405180910390f35b6101886004803603602081101561015c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105a0565b005b6101926106e7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101dc61070d565b005b6101e6610887565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610256336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b6102c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b6000806000600435925060243591503490506103b1336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b610423576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b8360028190555060018060146101000a81548160ff02191690831515021790555081833373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168460003660405180848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505094505050505060405180910390a450505050565b60008060006104ff610582565b80925081935050508061057a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260078152602001807f68617a2d6e6f740000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b819250505090565b600080600254600160149054906101000a900460ff16915091509091565b6105ce336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b610640576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060006004359250602435915034905061074d336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b6107bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b6000600160146101000a81548160ff02191690831515021790555081833373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168460003660405180848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505094505050505060405180910390a4505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156108eb5760019050610aff565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561094a5760019050610aff565b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156109a95760009050610aff565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b70096138430856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001935050505060206040518083038186803b158015610ac157600080fd5b505afa158015610ad5573d6000803e3d6000fd5b505050506040513d6020811015610aeb57600080fd5b810190808051906020019092919050505090505b9291505056fea264697066735822122025b7fd437fc140a28b6d0f09016bd24068908ef03f82974849baefee31fb546764736f6c63430006070033","metadata":"{\"compiler\":{\"version\":\"0.6.7+commit.b8d736ae\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":true,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"sig\",\"type\":\"bytes4\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"guy\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"foo\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"bar\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"fax\",\"type\":\"bytes\"}],\"name\":\"LogNote\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"authority\",\"type\":\"address\"}],\"name\":\"LogSetAuthority\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"LogSetOwner\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"authority\",\"outputs\":[{\"internalType\":\"contract DSAuthority\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"peek\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"wut\",\"type\":\"bytes32\"}],\"name\":\"poke\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"read\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract DSAuthority\",\"name\":\"authority_\",\"type\":\"address\"}],\"name\":\"setAuthority\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner_\",\"type\":\"address\"}],\"name\":\"setOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"void\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"lib/ds-value/src/value.sol\":\"DSValue\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[\":/=/\",\":ds-auth/=lib/ds-stop/lib/ds-auth/src/\",\":ds-auth=lib/ds-stop/lib/ds-auth/src/index.sol\",\":ds-math/=lib/ds-value/lib/ds-thing/lib/ds-math/src/\",\":ds-math=lib/ds-value/lib/ds-thing/lib/ds-math/src/index.sol\",\":ds-note/=lib/ds-stop/lib/ds-note/src/\",\":ds-note=lib/ds-stop/lib/ds-note/src/index.sol\",\":ds-stop/=lib/ds-stop/src/\",\":ds-stop=lib/ds-stop/src/index.sol\",\":ds-test/=lib/ds-test/src/\",\":ds-test=lib/ds-test/src/index.sol\",\":ds-thing/=lib/ds-value/lib/ds-thing/src/\",\":ds-thing=lib/ds-value/lib/ds-thing/src/index.sol\",\":ds-value/=lib/ds-value/src/\",\":ds-value=lib/ds-value/src/index.sol\"]},\"sources\":{\"lib/ds-stop/lib/ds-auth/src/auth.sol\":{\"keccak256\":\"0x15b5e480ce445d0d81b5b1a070f9736247b731d7fcff22b1e28b34a5a4d82f13\",\"urls\":[\"bzz-raw://082a7116140d327d21a72199b255e0b9de3cfab8838a34a8f44a27c11b3a83b5\",\"dweb:/ipfs/QmXXjzPY7BQUZXS4qfaBLn1MmnTKhCwtrMWZb9caDzrrca\"]},\"lib/ds-stop/lib/ds-note/src/note.sol\":{\"keccak256\":\"0xc6aed2fade2d8b560dadf645b76f5d55a09d4cffb062fa2a1065642835abcf90\",\"urls\":[\"bzz-raw://0bf91088dce5fec1db422465dcc63f78c7e7acfc17aad40f745901baaca41ce2\",\"dweb:/ipfs/QmWqAVcNa7WRzLQhhNMxLzBeZ2zkpHfKx2AYvhkvJL8QJW\"]},\"lib/ds-value/lib/ds-thing/lib/ds-math/src/math.sol\":{\"keccak256\":\"0x40f4c3c2f6fa0f498d709dd48d9df4cbf64562bce100d954beff90c97e404e99\",\"urls\":[\"bzz-raw://549d20d0e611fe317dd6d94ee68f2dd9bb771d00fbc833017ae86368e5f656fd\",\"dweb:/ipfs/QmVaAgnJvQpKFJM6xgttyJYxNqqVkYNNvn5KcutMr8sb9s\"]},\"lib/ds-value/lib/ds-thing/src/thing.sol\":{\"keccak256\":\"0x964650c4e3bbdcd52d6bc6b88a4c6b631a53fc445ef7e37b462b94f9f2d3c953\",\"urls\":[\"bzz-raw://043d0ca0c92f3902197aed9ca5f41c220082184a0fe6afeb7e236da99dd0bec4\",\"dweb:/ipfs/QmTgyLLX4kcpKjcWXSCbJo3VFJrNmWczpY6NhGVhFogg6L\"]},\"lib/ds-value/src/value.sol\":{\"keccak256\":\"0x9aa469ab8084563a32f715192f13ded8c7947ad3606976a91e0632021c2b0c4e\",\"urls\":[\"bzz-raw://c403ea1b97727458a3ff0adf036df9d88813a92c2cc9e00b49e45f574302a8f0\",\"dweb:/ipfs/Qma3e3e91TPzGiNC8Kre5cSBWRUjb3qJrfB7iabi8yHjGP\"]}},\"version\":1}","srcmap":"803:507:5:-:0;;;1079:10:0;1071:5;;:18;;;;;;;;;;;;;;;;;;1116:10;1104:23;;;;;;;;;;;;803:507:5;;;;;;","srcmap-runtime":"803:507:5:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;803:507:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12:1:-1;9;2:12;1140:130:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;1140:130:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;1132:90:5;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;1132:90:5;;;;;;;;;;;;;;;;;:::i;:::-;;961:166;;;:::i;:::-;;;;;;;;;;;;;;;;;;;871:85;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1276:167:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;1276:167:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;1007:26;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1227:81:5;;;:::i;:::-;;971:30:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1140:130;1481:33;1494:10;1506:7;;;;1481:12;:33::i;:::-;1473:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1224:6:::1;1216:5;;:14;;;;;;;;;;;;;;;;;;1257:5;;;;;;;;;;;1245:18;;;;;;;;;;;;1140:130:::0;:::o;1132:90:5:-;1004:11:1;1025;1046;1111:1;1098:15;1091:22;;1146:2;1133:16;1126:23;;1169:11;1162:18;;1481:33:0::1;1494:10;1506:7;;;;1481:12;:33::i;:::-;1473:66;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;1192:3:5::2;1186;:9;;;;1211:4;1205:3:::0;::::2;:10;;;;;;;;;;;;;;;;;;1251:3:1::0;1246;1234:10;1217:53;;1225:7;;;;1217:53;;;1256:3;1261:8;;1217:53;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;1217:53:1;;;;;;;;;;;;;;;1132:90:5;;;;:::o;961:166::-;998:7;1017:11;1030:8;1061:6;:4;:6::i;:::-;1048:19;;;;;;;;1085:3;1077:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1117:3;1110:10;;;;961:166;:::o;871:85::-;908:7;917:4;941:3;;945;;;;;;;;;;;933:16;;;;871:85;;:::o;1276:167:0:-;1481:33;1494:10;1506:7;;;;1481:12;:33::i;:::-;1473:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1376:10:::1;1364:9;::::0;:22:::1;;;;;;;;;;;;;;;;;;1425:9;::::0;::::1;;;;;;;;;1401:35;;;;;;;;;;;;1276:167:::0;:::o;1007:26::-;;;;;;;;;;;;;:::o;1227:81:5:-;1004:11:1;1025;1046;1111:1;1098:15;1091:22;;1146:2;1133:16;1126:23;;1169:11;1162:18;;1481:33:0::1;1494:10;1506:7;;;;1481:12;:33::i;:::-;1473:66;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;1296:5:5::2;1290:3;;:11;;;;;;;;;;;;;;;;;;1251:3:1::0;1246;1234:10;1217:53;;1225:7;;;;1217:53;;;1256:3;1261:8;;1217:53;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;1217:53:1;;;;;;;;;;;;;;;1227:81:5;;;:::o;971:30:0:-;;;;;;;;;;;;;:::o;1563:370::-;1633:4;1668;1653:20;;:3;:20;;;1649:278;;;1696:4;1689:11;;;;1649:278;1728:5;;;;;;;;;;;1721:12;;:3;:12;;;1717:210;;;1756:4;1749:11;;;;1717:210;1806:1;1781:27;;:9;;;;;;;;;;;:27;;;1777:150;;;1831:5;1824:12;;;;1777:150;1874:9;;;;;;;;;;;:17;;;1892:3;1905:4;1912:3;1874:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1874:42:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1874:42:0;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;1874:42:0;;;;;;;;;;;;;;;;1867:49;;1563:370;;;;;:::o"},"src/osm.sol:LibNote":{"abi":"[{\"anonymous\":true,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"sig\",\"type\":\"bytes4\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"usr\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"arg1\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"arg2\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"LogNote\",\"type\":\"event\"}]","bin":"6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea264697066735822122012788614208a08aec5539bb40a4cde84936266335345448df3316b9255f53d0a64736f6c63430006070033","bin-runtime":"6080604052600080fdfea264697066735822122012788614208a08aec5539bb40a4cde84936266335345448df3316b9255f53d0a64736f6c63430006070033","metadata":"{\"compiler\":{\"version\":\"0.6.7+commit.b8d736ae\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":true,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"sig\",\"type\":\"bytes4\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"usr\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"arg1\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"arg2\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"LogNote\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"src/osm.sol\":\"LibNote\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[\":/=/\",\":ds-auth/=lib/ds-stop/lib/ds-auth/src/\",\":ds-auth=lib/ds-stop/lib/ds-auth/src/index.sol\",\":ds-math/=lib/ds-value/lib/ds-thing/lib/ds-math/src/\",\":ds-math=lib/ds-value/lib/ds-thing/lib/ds-math/src/index.sol\",\":ds-note/=lib/ds-stop/lib/ds-note/src/\",\":ds-note=lib/ds-stop/lib/ds-note/src/index.sol\",\":ds-stop/=lib/ds-stop/src/\",\":ds-stop=lib/ds-stop/src/index.sol\",\":ds-test/=lib/ds-test/src/\",\":ds-test=lib/ds-test/src/index.sol\",\":ds-thing/=lib/ds-value/lib/ds-thing/src/\",\":ds-thing=lib/ds-value/lib/ds-thing/src/index.sol\",\":ds-value/=lib/ds-value/src/\",\":ds-value=lib/ds-value/src/index.sol\"]},\"sources\":{\"lib/ds-stop/lib/ds-auth/src/auth.sol\":{\"keccak256\":\"0x15b5e480ce445d0d81b5b1a070f9736247b731d7fcff22b1e28b34a5a4d82f13\",\"urls\":[\"bzz-raw://082a7116140d327d21a72199b255e0b9de3cfab8838a34a8f44a27c11b3a83b5\",\"dweb:/ipfs/QmXXjzPY7BQUZXS4qfaBLn1MmnTKhCwtrMWZb9caDzrrca\"]},\"lib/ds-stop/lib/ds-note/src/note.sol\":{\"keccak256\":\"0xc6aed2fade2d8b560dadf645b76f5d55a09d4cffb062fa2a1065642835abcf90\",\"urls\":[\"bzz-raw://0bf91088dce5fec1db422465dcc63f78c7e7acfc17aad40f745901baaca41ce2\",\"dweb:/ipfs/QmWqAVcNa7WRzLQhhNMxLzBeZ2zkpHfKx2AYvhkvJL8QJW\"]},\"lib/ds-value/lib/ds-thing/lib/ds-math/src/math.sol\":{\"keccak256\":\"0x40f4c3c2f6fa0f498d709dd48d9df4cbf64562bce100d954beff90c97e404e99\",\"urls\":[\"bzz-raw://549d20d0e611fe317dd6d94ee68f2dd9bb771d00fbc833017ae86368e5f656fd\",\"dweb:/ipfs/QmVaAgnJvQpKFJM6xgttyJYxNqqVkYNNvn5KcutMr8sb9s\"]},\"lib/ds-value/lib/ds-thing/src/thing.sol\":{\"keccak256\":\"0x964650c4e3bbdcd52d6bc6b88a4c6b631a53fc445ef7e37b462b94f9f2d3c953\",\"urls\":[\"bzz-raw://043d0ca0c92f3902197aed9ca5f41c220082184a0fe6afeb7e236da99dd0bec4\",\"dweb:/ipfs/QmTgyLLX4kcpKjcWXSCbJo3VFJrNmWczpY6NhGVhFogg6L\"]},\"lib/ds-value/src/value.sol\":{\"keccak256\":\"0x9aa469ab8084563a32f715192f13ded8c7947ad3606976a91e0632021c2b0c4e\",\"urls\":[\"bzz-raw://c403ea1b97727458a3ff0adf036df9d88813a92c2cc9e00b49e45f574302a8f0\",\"dweb:/ipfs/Qma3e3e91TPzGiNC8Kre5cSBWRUjb3qJrfB7iabi8yHjGP\"]},\"src/osm.sol\":{\"keccak256\":\"0x5d762f832a34b9b00f91483295746983953beb4f3c89762fea27fe957b5e93c5\",\"urls\":[\"bzz-raw://339d104a414987963e59e9d781a07eaf571793da9d23dfa5a51415d4e7ae552e\",\"dweb:/ipfs/Qmdabyk7swH3kyceC4ZgxC91TchBSioiUzh2ESpLqLfVyv\"]}},\"version\":1}","srcmap":"805:1165:6:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;805:1165:6;;;;;;;","srcmap-runtime":"805:1165:6:-:0;;;12:1:-1;9;2:12"},"src/osm.sol:OSM":{"abi":"[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"src_\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":true,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"sig\",\"type\":\"bytes4\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"usr\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"arg1\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"arg2\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"LogNote\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"LogValue\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"bud\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"src_\",\"type\":\"address\"}],\"name\":\"change\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"usr\",\"type\":\"address\"}],\"name\":\"deny\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"a\",\"type\":\"address[]\"}],\"name\":\"diss\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"a\",\"type\":\"address\"}],\"name\":\"diss\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hop\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"a\",\"type\":\"address[]\"}],\"name\":\"kiss\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"a\",\"type\":\"address\"}],\"name\":\"kiss\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pass\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"ok\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"peek\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"peep\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"poke\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"read\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"usr\",\"type\":\"address\"}],\"name\":\"rely\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"src\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"start\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint16\",\"name\":\"ts\",\"type\":\"uint16\"}],\"name\":\"step\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stop\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stopped\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"void\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"wards\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"zzz\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]","bin":"6080604052610e10600260146101000a81548161ffff021916908361ffff16021790555034801561002f57600080fd5b506040516120ae3803806120ae8339818101604052602081101561005257600080fd5b810190808051906020019092919050505060016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611fb6806100f86000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c806365fae35e116100b8578063ac4c25b21161007c578063ac4c25b2146104e1578063b0b8579b146104eb578063be9a655514610511578063bf353dbb1461051b578063e38e2cfb14610573578063f29c29c4146105a557610142565b806365fae35e146103e757806375f12b211461042b5780639c52a7f114610449578063a4dff0a21461048d578063a7a1ed72146104bf57610142565b80632e7dc6af1161010a5780632e7dc6af1461024157806346d4577d1461028b5780634fce7a2a1461030457806357de26a41461035c57806359e02dd71461037a57806365c4ce7a146103a357610142565b806307da68f5146101475780630e5a6c7014610151578063181783581461017a5780631b25b65f146101845780631e77933e146101fd575b600080fd5b61014f6105e9565b005b6101596106d9565b60405180838152602001821515151581526020019250505060405180910390f35b610182610807565b005b6101fb6004803603602081101561019a57600080fd5b81019080803590602001906401000000008111156101b757600080fd5b8201836020820111156101c957600080fd5b803590602001918460208302840111640100000000831117156101eb57600080fd5b9091929391929390505050610c0c565b005b61023f6004803603602081101561021357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e4e565b005b610249610f79565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610302600480360360208110156102a157600080fd5b81019080803590602001906401000000008111156102be57600080fd5b8201836020820111156102d057600080fd5b803590602001918460208302840111640100000000831117156102f257600080fd5b9091929391929390505050610f9f565b005b6103466004803603602081101561031a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611116565b6040518082815260200191505060405180910390f35b61036461112e565b6040518082815260200191505060405180910390f35b6103826112ca565b60405180838152602001821515151581526020019250505060405180910390f35b6103e5600480360360208110156103b957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113f8565b005b610429600480360360208110156103fd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611527565b005b610433611655565b6040518082815260200191505060405180910390f35b61048b6004803603602081101561045f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061165b565b005b610495611789565b604051808267ffffffffffffffff1667ffffffffffffffff16815260200191505060405180910390f35b6104c76117a3565b604051808215151515815260200191505060405180910390f35b6104e96117f2565b005b6104f3611a5a565b604051808261ffff1661ffff16815260200191505060405180910390f35b610519611a6e565b005b61055d6004803603602081101561053157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b5f565b6040518082815260200191505060405180910390f35b6105a36004803603602081101561058957600080fd5b81019080803561ffff169060200190929190505050611b77565b005b6105e7600480360360208110156105bb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611cc5565b005b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461069d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b600180819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b6000806001600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610791576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4f534d2f636f6e74726163742d6e6f742d77686974656c69737465640000000081525060200191505060405180910390fd5b600460000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b6001600460000160109054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1614915091509091565b60006001541461087f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4f534d2f69732d73746f7070656400000000000000000000000000000000000081525060200191505060405180910390fd5b6108876117a3565b6108f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4f534d2f6e6f742d70617373656400000000000000000000000000000000000081525060200191505060405180910390fd5b600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b15801561096357600080fd5b505afa158015610977573d6000803e3d6000fd5b505050506040513d604081101561098d57600080fd5b810190808051906020019092919080519060200190929190505050915091508015610bd557600460036000820160009054906101000a90046fffffffffffffffffffffffffffffffff168160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055506000820160109054906101000a90046fffffffffffffffffffffffffffffffff168160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff16021790555090505060405180604001604052808360001c6fffffffffffffffffffffffffffffffff16815260200160016fffffffffffffffffffffffffffffffff16815250600460008201518160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff16021790555060208201518160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550905050610b3f610b3a611e97565b611e9f565b600260166101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507f296ba4ca62c6c21c95e828080cb8aec7481b71390585605300a8a76f9e95b527600360000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b6040518082815260200191505060405180910390a15b50505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610cc0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008090505b82829050811015610e1657600073ffffffffffffffffffffffffffffffffffffffff16838383818110610cf557fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610d9c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4f534d2f6e6f2d636f6e74726163742d3000000000000000000000000000000081525060200191505060405180910390fd5b600160056000858585818110610dae57fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508080600101915050610cc6565b505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a4505050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610f02576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611053576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008090505b828290508110156110de5760006005600085858581811061107657fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508080600101915050611059565b505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a4505050565b60056020528060005260406000206000915090505481565b60006001600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146111e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4f534d2f636f6e74726163742d6e6f742d77686974656c69737465640000000081525060200191505060405180910390fd5b6001600360000160109054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff161461128e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f4f534d2f6e6f2d63757272656e742d76616c756500000000000000000000000081525060200191505060405180910390fd5b600360000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b905090565b6000806001600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611382576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4f534d2f636f6e74726163742d6e6f742d77686974656c69737465640000000081525060200191505060405180910390fd5b600360000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b6001600360000160109054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1614915091509091565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146114ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146115db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60016000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60015481565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461170f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b600260169054906101000a900467ffffffffffffffff1681565b60006117d9600260169054906101000a900467ffffffffffffffff16600260149054906101000a900461ffff1661ffff16611f52565b67ffffffffffffffff166117eb611e97565b1015905090565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146118a6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b604051806040016040528060006fffffffffffffffffffffffffffffffff16815260200160006fffffffffffffffffffffffffffffffff16815250600460008201518160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff16021790555060208201518160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550905060036000820160009054906101000a90046fffffffffffffffffffffffffffffffff168160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055506000820160109054906101000a90046fffffffffffffffffffffffffffffffff168160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550905050600180819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b600260149054906101000a900461ffff1681565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611b22576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60006001819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b60006020528060005260406000206000915090505481565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611c2b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008161ffff1611611ca5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4f534d2f74732d69732d7a65726f00000000000000000000000000000000000081525060200191505060405180910390fd5b80600260146101000a81548161ffff021916908361ffff16021790555050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611d79576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611e1c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4f534d2f6e6f2d636f6e74726163742d3000000000000000000000000000000081525060200191505060405180910390fd5b6001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b600042905090565b600080600260149054906101000a900461ffff1661ffff161415611f2b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f4f534d2f686f702d69732d7a65726f000000000000000000000000000000000081525060200191505060405180910390fd5b600260149054906101000a900461ffff1661ffff168281611f4857fe5b0682039050919050565b600081830190508267ffffffffffffffff168167ffffffffffffffff161015611f7a57600080fd5b9291505056fea264697066735822122040678294d2c29b012c17f87199abbdc68525f7c7cb1d865db8b52552071d03f564736f6c63430006070033","bin-runtime":"608060405234801561001057600080fd5b50600436106101425760003560e01c806365fae35e116100b8578063ac4c25b21161007c578063ac4c25b2146104e1578063b0b8579b146104eb578063be9a655514610511578063bf353dbb1461051b578063e38e2cfb14610573578063f29c29c4146105a557610142565b806365fae35e146103e757806375f12b211461042b5780639c52a7f114610449578063a4dff0a21461048d578063a7a1ed72146104bf57610142565b80632e7dc6af1161010a5780632e7dc6af1461024157806346d4577d1461028b5780634fce7a2a1461030457806357de26a41461035c57806359e02dd71461037a57806365c4ce7a146103a357610142565b806307da68f5146101475780630e5a6c7014610151578063181783581461017a5780631b25b65f146101845780631e77933e146101fd575b600080fd5b61014f6105e9565b005b6101596106d9565b60405180838152602001821515151581526020019250505060405180910390f35b610182610807565b005b6101fb6004803603602081101561019a57600080fd5b81019080803590602001906401000000008111156101b757600080fd5b8201836020820111156101c957600080fd5b803590602001918460208302840111640100000000831117156101eb57600080fd5b9091929391929390505050610c0c565b005b61023f6004803603602081101561021357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e4e565b005b610249610f79565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610302600480360360208110156102a157600080fd5b81019080803590602001906401000000008111156102be57600080fd5b8201836020820111156102d057600080fd5b803590602001918460208302840111640100000000831117156102f257600080fd5b9091929391929390505050610f9f565b005b6103466004803603602081101561031a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611116565b6040518082815260200191505060405180910390f35b61036461112e565b6040518082815260200191505060405180910390f35b6103826112ca565b60405180838152602001821515151581526020019250505060405180910390f35b6103e5600480360360208110156103b957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113f8565b005b610429600480360360208110156103fd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611527565b005b610433611655565b6040518082815260200191505060405180910390f35b61048b6004803603602081101561045f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061165b565b005b610495611789565b604051808267ffffffffffffffff1667ffffffffffffffff16815260200191505060405180910390f35b6104c76117a3565b604051808215151515815260200191505060405180910390f35b6104e96117f2565b005b6104f3611a5a565b604051808261ffff1661ffff16815260200191505060405180910390f35b610519611a6e565b005b61055d6004803603602081101561053157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b5f565b6040518082815260200191505060405180910390f35b6105a36004803603602081101561058957600080fd5b81019080803561ffff169060200190929190505050611b77565b005b6105e7600480360360208110156105bb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611cc5565b005b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461069d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b600180819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b6000806001600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610791576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4f534d2f636f6e74726163742d6e6f742d77686974656c69737465640000000081525060200191505060405180910390fd5b600460000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b6001600460000160109054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1614915091509091565b60006001541461087f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4f534d2f69732d73746f7070656400000000000000000000000000000000000081525060200191505060405180910390fd5b6108876117a3565b6108f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4f534d2f6e6f742d70617373656400000000000000000000000000000000000081525060200191505060405180910390fd5b600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b15801561096357600080fd5b505afa158015610977573d6000803e3d6000fd5b505050506040513d604081101561098d57600080fd5b810190808051906020019092919080519060200190929190505050915091508015610bd557600460036000820160009054906101000a90046fffffffffffffffffffffffffffffffff168160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055506000820160109054906101000a90046fffffffffffffffffffffffffffffffff168160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff16021790555090505060405180604001604052808360001c6fffffffffffffffffffffffffffffffff16815260200160016fffffffffffffffffffffffffffffffff16815250600460008201518160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff16021790555060208201518160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550905050610b3f610b3a611e97565b611e9f565b600260166101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507f296ba4ca62c6c21c95e828080cb8aec7481b71390585605300a8a76f9e95b527600360000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b6040518082815260200191505060405180910390a15b50505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610cc0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008090505b82829050811015610e1657600073ffffffffffffffffffffffffffffffffffffffff16838383818110610cf557fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610d9c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4f534d2f6e6f2d636f6e74726163742d3000000000000000000000000000000081525060200191505060405180910390fd5b600160056000858585818110610dae57fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508080600101915050610cc6565b505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a4505050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610f02576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611053576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008090505b828290508110156110de5760006005600085858581811061107657fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508080600101915050611059565b505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a4505050565b60056020528060005260406000206000915090505481565b60006001600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146111e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4f534d2f636f6e74726163742d6e6f742d77686974656c69737465640000000081525060200191505060405180910390fd5b6001600360000160109054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff161461128e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f4f534d2f6e6f2d63757272656e742d76616c756500000000000000000000000081525060200191505060405180910390fd5b600360000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b905090565b6000806001600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611382576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4f534d2f636f6e74726163742d6e6f742d77686974656c69737465640000000081525060200191505060405180910390fd5b600360000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b6001600360000160109054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1614915091509091565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146114ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146115db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60016000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60015481565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461170f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b600260169054906101000a900467ffffffffffffffff1681565b60006117d9600260169054906101000a900467ffffffffffffffff16600260149054906101000a900461ffff1661ffff16611f52565b67ffffffffffffffff166117eb611e97565b1015905090565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146118a6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b604051806040016040528060006fffffffffffffffffffffffffffffffff16815260200160006fffffffffffffffffffffffffffffffff16815250600460008201518160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff16021790555060208201518160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550905060036000820160009054906101000a90046fffffffffffffffffffffffffffffffff168160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055506000820160109054906101000a90046fffffffffffffffffffffffffffffffff168160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550905050600180819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b600260149054906101000a900461ffff1681565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611b22576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60006001819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b60006020528060005260406000206000915090505481565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611c2b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008161ffff1611611ca5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4f534d2f74732d69732d7a65726f00000000000000000000000000000000000081525060200191505060405180910390fd5b80600260146101000a81548161ffff021916908361ffff16021790555050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611d79576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611e1c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4f534d2f6e6f2d636f6e74726163742d3000000000000000000000000000000081525060200191505060405180910390fd5b6001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b600042905090565b600080600260149054906101000a900461ffff1661ffff161415611f2b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f4f534d2f686f702d69732d7a65726f000000000000000000000000000000000081525060200191505060405180910390fd5b600260149054906101000a900461ffff1661ffff168281611f4857fe5b0682039050919050565b600081830190508267ffffffffffffffff168167ffffffffffffffff161015611f7a57600080fd5b9291505056fea264697066735822122040678294d2c29b012c17f87199abbdc68525f7c7cb1d865db8b52552071d03f564736f6c63430006070033","metadata":"{\"compiler\":{\"version\":\"0.6.7+commit.b8d736ae\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"src_\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":true,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"sig\",\"type\":\"bytes4\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"usr\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"arg1\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"arg2\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"LogNote\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"LogValue\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"bud\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"src_\",\"type\":\"address\"}],\"name\":\"change\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"usr\",\"type\":\"address\"}],\"name\":\"deny\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"a\",\"type\":\"address[]\"}],\"name\":\"diss\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"a\",\"type\":\"address\"}],\"name\":\"diss\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hop\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"a\",\"type\":\"address[]\"}],\"name\":\"kiss\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"a\",\"type\":\"address\"}],\"name\":\"kiss\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pass\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"ok\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"peek\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"peep\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"poke\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"read\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"usr\",\"type\":\"address\"}],\"name\":\"rely\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"src\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"start\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint16\",\"name\":\"ts\",\"type\":\"uint16\"}],\"name\":\"step\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stop\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stopped\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"void\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"wards\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"zzz\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"src/osm.sol\":\"OSM\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[\":/=/\",\":ds-auth/=lib/ds-stop/lib/ds-auth/src/\",\":ds-auth=lib/ds-stop/lib/ds-auth/src/index.sol\",\":ds-math/=lib/ds-value/lib/ds-thing/lib/ds-math/src/\",\":ds-math=lib/ds-value/lib/ds-thing/lib/ds-math/src/index.sol\",\":ds-note/=lib/ds-stop/lib/ds-note/src/\",\":ds-note=lib/ds-stop/lib/ds-note/src/index.sol\",\":ds-stop/=lib/ds-stop/src/\",\":ds-stop=lib/ds-stop/src/index.sol\",\":ds-test/=lib/ds-test/src/\",\":ds-test=lib/ds-test/src/index.sol\",\":ds-thing/=lib/ds-value/lib/ds-thing/src/\",\":ds-thing=lib/ds-value/lib/ds-thing/src/index.sol\",\":ds-value/=lib/ds-value/src/\",\":ds-value=lib/ds-value/src/index.sol\"]},\"sources\":{\"lib/ds-stop/lib/ds-auth/src/auth.sol\":{\"keccak256\":\"0x15b5e480ce445d0d81b5b1a070f9736247b731d7fcff22b1e28b34a5a4d82f13\",\"urls\":[\"bzz-raw://082a7116140d327d21a72199b255e0b9de3cfab8838a34a8f44a27c11b3a83b5\",\"dweb:/ipfs/QmXXjzPY7BQUZXS4qfaBLn1MmnTKhCwtrMWZb9caDzrrca\"]},\"lib/ds-stop/lib/ds-note/src/note.sol\":{\"keccak256\":\"0xc6aed2fade2d8b560dadf645b76f5d55a09d4cffb062fa2a1065642835abcf90\",\"urls\":[\"bzz-raw://0bf91088dce5fec1db422465dcc63f78c7e7acfc17aad40f745901baaca41ce2\",\"dweb:/ipfs/QmWqAVcNa7WRzLQhhNMxLzBeZ2zkpHfKx2AYvhkvJL8QJW\"]},\"lib/ds-value/lib/ds-thing/lib/ds-math/src/math.sol\":{\"keccak256\":\"0x40f4c3c2f6fa0f498d709dd48d9df4cbf64562bce100d954beff90c97e404e99\",\"urls\":[\"bzz-raw://549d20d0e611fe317dd6d94ee68f2dd9bb771d00fbc833017ae86368e5f656fd\",\"dweb:/ipfs/QmVaAgnJvQpKFJM6xgttyJYxNqqVkYNNvn5KcutMr8sb9s\"]},\"lib/ds-value/lib/ds-thing/src/thing.sol\":{\"keccak256\":\"0x964650c4e3bbdcd52d6bc6b88a4c6b631a53fc445ef7e37b462b94f9f2d3c953\",\"urls\":[\"bzz-raw://043d0ca0c92f3902197aed9ca5f41c220082184a0fe6afeb7e236da99dd0bec4\",\"dweb:/ipfs/QmTgyLLX4kcpKjcWXSCbJo3VFJrNmWczpY6NhGVhFogg6L\"]},\"lib/ds-value/src/value.sol\":{\"keccak256\":\"0x9aa469ab8084563a32f715192f13ded8c7947ad3606976a91e0632021c2b0c4e\",\"urls\":[\"bzz-raw://c403ea1b97727458a3ff0adf036df9d88813a92c2cc9e00b49e45f574302a8f0\",\"dweb:/ipfs/Qma3e3e91TPzGiNC8Kre5cSBWRUjb3qJrfB7iabi8yHjGP\"]},\"src/osm.sol\":{\"keccak256\":\"0x5d762f832a34b9b00f91483295746983953beb4f3c89762fea27fe957b5e93c5\",\"urls\":[\"bzz-raw://339d104a414987963e59e9d781a07eaf571793da9d23dfa5a51415d4e7ae552e\",\"dweb:/ipfs/Qmdabyk7swH3kyceC4ZgxC91TchBSioiUzh2ESpLqLfVyv\"]}},\"version\":1}","srcmap":"1972:3224:6:-:0;;;2630:4;2641:29;;;;;;;;;;;;;;;;;;;;3011:92;5:9:-1;2:2;;;27:1;24;17:12;2:2;3011:92:6;;;;;;;;;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;3011:92:6;;;;;;;;;;;;;;;;3075:1;3055:5;:17;3061:10;3055:17;;;;;;;;;;;;;;;:21;;;;3092:4;3086:3;;:10;;;;;;;;;;;;;;;;;;3011:92;1972:3224;;;;;;","srcmap-runtime":"1972:3224:6:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1972:3224:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12:1:-1;9;2:12;3109:63:6;;;:::i;:::-;;4339:120;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3883:324;;;:::i;:::-;;4838:206;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;4838:206:6;;;;;;;;;;27:11:-1;14;11:28;8:2;;;52:1;49;42:12;8:2;4838:206:6;;41:9:-1;34:4;18:14;14:25;11:40;8:2;;;64:1;61;54:12;8:2;4838:206:6;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;4838:206:6;;;;;;;;;;;;:::i;:::-;;3247:76;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;3247:76:6;;;;;;;;;;;;;;;;;;;:::i;:::-;;2571:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5050:144;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;5050:144:6;;;;;;;;;;27:11:-1;14;11:28;8:2;;;52:1;49;42:12;8:2;5050:144:6;;41:9:-1;34:4;18:14;14:25;11:40;8:2;;;64:1;61;54:12;8:2;5050:144:6;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;5050:144:6;;;;;;;;;;;;:::i;:::-;;2842:39;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;2842:39:6;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4465:156;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4213:120;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4761:71;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;4761:71:6;;;;;;;;;;;;;;;;;;;:::i;:::-;;2067:65;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;2067:65:6;;;;;;;;;;;;;;;;;;;:::i;:::-;;2328:22;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2137:65;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;2137:65:6;;;;;;;;;;;;;;;;;;;:::i;:::-;;2676:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3785:92;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3684:95;;;:::i;:::-;;2641:29;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3177:64;;;:::i;:::-;;2023:38;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;2023:38:6;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3571:107;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;3571:107:6;;;;;;;;;;;;;;;;;;;:::i;:::-;;4629:126;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;4629:126:6;;;;;;;;;;;;;;;;;;;:::i;:::-;;3109:63;2260:1:::1;2239:5;:17:::0;2245:10:::1;2239:17;;;;;;;;;;;;;;;;:22;2231:53;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;3164:1:::2;3154:7:::0;:11:::2;;;;1240:7:::0;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;1726:1;1713:15;1708:3;1704:25;1699:3;1695:35;1635:3;1629:4;1624:328;1066:896;:::o;4339:120::-;4383:7;4391:4;2931:1;2912:3;:15;2916:10;2912:15;;;;;;;;;;;;;;;;:20;2904:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4428:3:::1;:7;;;;;;;;;;;;4423:13;;4415:22;;4450:1;4439:3;:7;;;;;;;;;;;;:12;;;4407:45;;;;4339:120:::0;;:::o;3883:324::-;2396:1:::1;2385:7;;:12;2377:39;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;3941:6:::2;:4;:6::i;:::-;3933:33;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;3977:11;3990:7:::0;4009:3:::2;;;;;;;;;;;4001:17;;;:19;;;;;;;;;;;;::::0;::::2;;;;;;;;;5:9:-1;2:2;;;27:1;24::::0;17:12:::2;2:2;4001:19:6;;;;8:9:-1;5:2;;;45:16;42:1;39::::0;24:38:::2;77:16;74:1;67:27;5:2;4001:19:6;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28::::0;21:12:::2;4:2;4001:19:6;;;;;;;;;;;;;;;;;;;;;;;;;3976:44;;;;4034:2;4030:171;;;4058:3;4052;:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4081:27;;;;;;;;4099:3;4094:9;;4081:27;;;;;;4106:1;4081:27;;;;::::0;4075:3:::2;:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4128:11;4133:5;:3;:5::i;:::-;4128:4;:11::i;:::-;4122:3;;:17;;;;;;;;;;;;;;;;;;4158:32;4180:3;:7;;;;;;;;;;;;4175:13;;4167:22;;4158:32;;;;;;;;;;;;;;;;;;4030:171;2418:1;;1240:7:::0;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;1726:1;1713:15;1708:3;1704:25;1699:3;1695:35;1635:3;1629:4;1624:328;1066:896;:::o;4838:206::-;2260:1:::1;2239:5;:17:::0;2245:10:::1;2239:17;;;;;;;;;;;;;;;;:22;2231:53;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;4907:6:::2;4916:1:::0;4907:10:::2;;4903:135;4923:1;;:8;;4919:1;:12;4903:135;;;4976:1;4960:18;;:1;;4962;4960:4;;;;;;;;;;;;;;;:18;;;;4952:48;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;5026:1;5014:3;:9;5018:1;;5020;5018:4;;;;;;;;;;;;;;;5014:9;;;;;;;;;;;;;;;:13;;;;4933:3;;;;;;;4903:135;;;;1240:7:::0;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;1726:1;1713:15;1708:3;1704:25;1699:3;1695:35;1635:3;1629:4;1624:328;1066:896;;;:::o;3247:76::-;2260:1:::1;2239:5;:17:::0;2245:10:::1;2239:17;;;;;;;;;;;;;;;;:22;2231:53;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;3312:4:::2;3306:3;;:10;;;;;;;;;;;;;;;;;;1240:7:::0;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;1726:1;1713:15;1708:3;1704:25;1699:3;1695:35;1635:3;1629:4;1624:328;1066:896;;:::o;2571:18::-;;;;;;;;;;;;;:::o;5050:144::-;2260:1:::1;2239:5;:17:::0;2245:10:::1;2239:17;;;;;;;;;;;;;;;;:22;2231:53;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;5119:6:::2;5128:1:::0;5119:10:::2;;5115:73;5135:1;;:8;;5131:1;:12;5115:73;;;5176:1;5164:3;:9;5168:1;;5170;5168:4;;;;;;;;;;;;;;;5164:9;;;;;;;;;;;;;;;:13;;;;5145:3;;;;;;;5115:73;;;;1240:7:::0;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;1726:1;1713:15;1708:3;1704:25;1699:3;1695:35;1635:3;1629:4;1624:328;1066:896;;;:::o;2842:39::-;;;;;;;;;;;;;;;;;:::o;4465:156::-;4509:7;2931:1;2912:3;:15;2916:10;2912:15;;;;;;;;;;;;;;;;:20;2904:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4547:1:::1;4536:3;:7;;;;;;;;;;;;:12;;;4528:45;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;4604:3;:7;;;;;;;;;;;;4599:13;;4591:22;;4583:31;;4465:156:::0;:::o;4213:120::-;4257:7;4265:4;2931:1;2912:3;:15;2916:10;2912:15;;;;;;;;;;;;;;;;:20;2904:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4302:3:::1;:7;;;;;;;;;;;;4297:13;;4289:22;;4324:1;4313:3;:7;;;;;;;;;;;;:12;;;4281:45;;;;4213:120:::0;;:::o;4761:71::-;2260:1:::1;2239:5;:17:::0;2245:10:::1;2239:17;;;;;;;;;;;;;;;;:22;2231:53;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;4824:1:::2;4815:3;:6;4819:1;4815:6;;;;;;;;;;;;;;;:10;;;;1240:7:::0;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;1726:1;1713:15;1708:3;1704:25;1699:3;1695:35;1635:3;1629:4;1624:328;1066:896;;:::o;2067:65::-;2260:1:::1;2239:5;:17:::0;2245:10:::1;2239:17;;;;;;;;;;;;;;;;:22;2231:53;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;2128:1:::2;2115:5;:10:::0;2121:3:::2;2115:10;;;;;;;;;;;;;;;:14;;;;1240:7:::0;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;1726:1;1713:15;1708:3;1704:25;1699:3;1695:35;1635:3;1629:4;1624:328;1066:896;;:::o;2328:22::-;;;;:::o;2137:65::-;2260:1:::1;2239:5;:17:::0;2245:10:::1;2239:17;;;;;;;;;;;;;;;;:22;2231:53;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;2198:1:::2;2185:5:::0;:10:::2;2191:3;2185:10;;;;;;;;;;;;;;;:14;;;;1240:7:::0;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;1726:1;1713:15;1708:3;1704:25;1699:3;1695:35;1635:3;1629:4;1624:328;1066:896;;:::o;2676:18::-;;;;;;;;;;;;;:::o;3785:92::-;3822:7;3857:13;3861:3;;;;;;;;;;;3866;;;;;;;;;;;3857:13;;:3;:13::i;:::-;3848:22;;:5;:3;:5::i;:::-;:22;;3841:29;;3785:92;:::o;3684:95::-;2260:1:::1;2239:5;:17:::0;2245:10:::1;2239:17;;;;;;;;;;;;;;;;:22;2231:53;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;3741:10:::2;;;;;;;;3746:1;3741:10;;;;;;3749:1;3741:10;;;;::::0;3735:3:::2;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3729:3;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3771:1;3761:7:::0;:11:::2;;;;1240:7:::0;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;1726:1;1713:15;1708:3;1704:25;1699:3;1695:35;1635:3;1629:4;1624:328;1066:896;:::o;2641:29::-;;;;;;;;;;;;;:::o;3177:64::-;2260:1:::1;2239:5;:17:::0;2245:10:::1;2239:17;;;;;;;;;;;;;;;;:22;2231:53;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;3233:1:::2;3223:7;:11;;;;1240:7:::0;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;1726:1;1713:15;1708:3;1704:25;1699:3;1695:35;1635:3;1629:4;1624:328;1066:896;:::o;2023:38::-;;;;;;;;;;;;;;;;;:::o;3571:107::-;2260:1;2239:5;:17;2245:10;2239:17;;;;;;;;;;;;;;;;:22;2231:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3633:1:::1;3628:2;:6;;;3620:33;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;3669:2;3663:3;;:8;;;;;;;;;;;;;;;;;;3571:107:::0;:::o;4629:126::-;2260:1:::1;2239:5;:17:::0;2245:10:::1;2239:17;;;;;;;;;;;;;;;;:22;2231:53;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;4704:1:::2;4691:15;;:1;:15;;;;4683:45;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;4747:1;4738:3;:6;4742:1;4738:6;;;;;;;;;;;;;;;:10;;;;1240:7:::0;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;1726:1;1713:15;1708:3;1704:25;1699:3;1695:35;1635:3;1629:4;1624:328;1066:896;;:::o;3329:83::-;3367:4;3390:15;3383:22;;3329:83;:::o;3418:147::-;3464:6;3497:1;3490:3;;;;;;;;;;;:8;;;;3482:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3553:3;;;;;;;;;;;3548:8;;:2;:8;;;;;;3542:2;:15;3528:30;;3418:147;;;:::o;2448:117::-;2504:8;2532:1;2528;:5;2524:9;;2556:1;2551:6;;:1;:6;;;;2543:15;;12:1:-1;9;2:12;2543:15:6;2448:117;;;;:::o"},"src/osm.t.sol:Hevm":{"abi":"[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"warp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]","bin":"","bin-runtime":"","metadata":"{\"compiler\":{\"version\":\"0.6.7+commit.b8d736ae\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"warp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"src/osm.t.sol\":\"Hevm\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[\":/=/\",\":ds-auth/=lib/ds-stop/lib/ds-auth/src/\",\":ds-auth=lib/ds-stop/lib/ds-auth/src/index.sol\",\":ds-math/=lib/ds-value/lib/ds-thing/lib/ds-math/src/\",\":ds-math=lib/ds-value/lib/ds-thing/lib/ds-math/src/index.sol\",\":ds-note/=lib/ds-stop/lib/ds-note/src/\",\":ds-note=lib/ds-stop/lib/ds-note/src/index.sol\",\":ds-stop/=lib/ds-stop/src/\",\":ds-stop=lib/ds-stop/src/index.sol\",\":ds-test/=lib/ds-test/src/\",\":ds-test=lib/ds-test/src/index.sol\",\":ds-thing/=lib/ds-value/lib/ds-thing/src/\",\":ds-thing=lib/ds-value/lib/ds-thing/src/index.sol\",\":ds-value/=lib/ds-value/src/\",\":ds-value=lib/ds-value/src/index.sol\"]},\"sources\":{\"lib/ds-stop/lib/ds-auth/src/auth.sol\":{\"keccak256\":\"0x15b5e480ce445d0d81b5b1a070f9736247b731d7fcff22b1e28b34a5a4d82f13\",\"urls\":[\"bzz-raw://082a7116140d327d21a72199b255e0b9de3cfab8838a34a8f44a27c11b3a83b5\",\"dweb:/ipfs/QmXXjzPY7BQUZXS4qfaBLn1MmnTKhCwtrMWZb9caDzrrca\"]},\"lib/ds-stop/lib/ds-note/src/note.sol\":{\"keccak256\":\"0xc6aed2fade2d8b560dadf645b76f5d55a09d4cffb062fa2a1065642835abcf90\",\"urls\":[\"bzz-raw://0bf91088dce5fec1db422465dcc63f78c7e7acfc17aad40f745901baaca41ce2\",\"dweb:/ipfs/QmWqAVcNa7WRzLQhhNMxLzBeZ2zkpHfKx2AYvhkvJL8QJW\"]},\"lib/ds-test/src/test.sol\":{\"keccak256\":\"0x992abcdf10dca07fcbe53a55032a14f3550d184506f2c33191d783469866979a\",\"urls\":[\"bzz-raw://b386086fcd19e9cf2fd8cabec76463f804ed3afe4566202d881eccc15f5542b1\",\"dweb:/ipfs/Qmf1ei8rEh4nJbhFJyGqpM7GnYAiPE3BU8LRoMSDUEqdey\"]},\"lib/ds-value/lib/ds-thing/lib/ds-math/src/math.sol\":{\"keccak256\":\"0x40f4c3c2f6fa0f498d709dd48d9df4cbf64562bce100d954beff90c97e404e99\",\"urls\":[\"bzz-raw://549d20d0e611fe317dd6d94ee68f2dd9bb771d00fbc833017ae86368e5f656fd\",\"dweb:/ipfs/QmVaAgnJvQpKFJM6xgttyJYxNqqVkYNNvn5KcutMr8sb9s\"]},\"lib/ds-value/lib/ds-thing/src/thing.sol\":{\"keccak256\":\"0x964650c4e3bbdcd52d6bc6b88a4c6b631a53fc445ef7e37b462b94f9f2d3c953\",\"urls\":[\"bzz-raw://043d0ca0c92f3902197aed9ca5f41c220082184a0fe6afeb7e236da99dd0bec4\",\"dweb:/ipfs/QmTgyLLX4kcpKjcWXSCbJo3VFJrNmWczpY6NhGVhFogg6L\"]},\"lib/ds-value/src/value.sol\":{\"keccak256\":\"0x9aa469ab8084563a32f715192f13ded8c7947ad3606976a91e0632021c2b0c4e\",\"urls\":[\"bzz-raw://c403ea1b97727458a3ff0adf036df9d88813a92c2cc9e00b49e45f574302a8f0\",\"dweb:/ipfs/Qma3e3e91TPzGiNC8Kre5cSBWRUjb3qJrfB7iabi8yHjGP\"]},\"src/osm.sol\":{\"keccak256\":\"0x5d762f832a34b9b00f91483295746983953beb4f3c89762fea27fe957b5e93c5\",\"urls\":[\"bzz-raw://339d104a414987963e59e9d781a07eaf571793da9d23dfa5a51415d4e7ae552e\",\"dweb:/ipfs/Qmdabyk7swH3kyceC4ZgxC91TchBSioiUzh2ESpLqLfVyv\"]},\"src/osm.t.sol\":{\"keccak256\":\"0x63ff53c4a862d8a22c135ecd7a024a8a66db5479e8c5cc30ebfe77dd00b1e570\",\"urls\":[\"bzz-raw://49406e8b81486b6f94029eaac3fe5a408f20c6606cd19c6deb7236953bcbaa5c\",\"dweb:/ipfs/QmYcsXV1DNd8QyFSMr1UFZFhzP8cHz3RuZaJeSXTGYXzEs\"]}},\"version\":1}","srcmap":"","srcmap-runtime":""},"src/osm.t.sol:OSMTest":{"abi":"[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"exact\",\"type\":\"bool\"}],\"name\":\"eventListener\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setUp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testChangeValue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testDiss\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testFailPoke\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testFailSetHopZero\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testFailWhitelistPeek\",\"outputs\":[],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testFailWhitelistPeep\",\"outputs\":[],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testKiss\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testPoke\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testSetHop\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testVoid\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testWhitelistPeek\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testWhitelistPeep\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]","bin":"608060405260016000806101000a81548160ff0219169083151502179055506157438061002d6000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c8063ba414fa611610097578063dd8ae96211610066578063dd8ae96214610180578063ef0ba8ba1461018a578063f30dcb0314610194578063fa7626d41461019e576100f5565b8063ba414fa614610140578063bdf1e2d614610162578063cbbc5d5f1461016c578063d492dec314610176576100f5565b806387935f0b116100d357806387935f0b1461011857806390e892dd14610122578063a21412bc1461012c578063a896b29f14610136576100f5565b80630a9254e4146100fa578063477b860d14610104578063554cf19c1461010e575b600080fd5b6101026101c0565b005b61010c6105d1565b005b61011661075c565b005b610120610959565b005b61012a610cdb565b005b610134610d73565b005b61013e610e23565b005b610148611078565b604051808215151515815260200191505060405180910390f35b61016a61108b565b005b6101746117ea565b005b61017e611a91565b005b610188611b41565b005b6101926122f2565b005b61019c612555565b005b6101a6612706565b604051808215151515815260200191505060405180910390f35b6040516101cc90612a73565b604051809103906000f0801580156101e8573d6000803e3d6000fd5b50600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631504460f68056bc75e2d6310000060001b6040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b1580156102aa57600080fd5b505af11580156102be573d6000803e3d6000fd5b50505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040516102f190612a80565b808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050604051809103906000f080158015610343573d6000803e3d6000fd5b50600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550737109709ecfa91a80626ff3989d68f67f5b1dd12d600060026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e5d6bf02600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b0b8579b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561047f57600080fd5b505afa158015610493573d6000803e3d6000fd5b505050506040513d60208110156104a957600080fd5b810190808051906020019092919050505061ffff166040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b1580156104f457600080fd5b505af1158015610508573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663181783586040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561057657600080fd5b505af115801561058a573d6000803e3d6000fd5b5050505030600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f29c29c4600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b15801561069457600080fd5b505af11580156106a8573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b15801561071357600080fd5b505afa158015610727573d6000803e3d6000fd5b505050506040513d604081101561073d57600080fd5b8101908080519060200190929190805190602001909291905050505050565b61080e600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b0b8579b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156107c757600080fd5b505afa1580156107db573d6000803e3d6000fd5b505050506040513d60208110156107f157600080fd5b810190808051906020019092919050505061ffff16610e10612718565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e38e2cfb611c206040518263ffffffff1660e01b8152600401808261ffff1661ffff168152602001915050600060405180830381600087803b15801561088d57600080fd5b505af11580156108a1573d6000803e3d6000fd5b50505050610957600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b0b8579b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561091057600080fd5b505afa158015610924573d6000803e3d6000fd5b505050506040513d602081101561093a57600080fd5b810190808051906020019092919050505061ffff16611c20612718565b565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f29c29c4600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b158015610a1c57600080fd5b505af1158015610a30573d6000803e3d6000fd5b50505050610b196001600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634fce7a2a306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610ad857600080fd5b505afa158015610aec573d6000803e3d6000fd5b505050506040513d6020811015610b0257600080fd5b810190808051906020019092919050505014612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166365c4ce7a600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b158015610bdc57600080fd5b505af1158015610bf0573d6000803e3d6000fd5b50505050610cd96000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634fce7a2a306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610c9857600080fd5b505afa158015610cac573d6000803e3d6000fd5b505050506040513d6020811015610cc257600080fd5b810190808051906020019092919050505014612841565b565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e38e2cfb60006040518263ffffffff1660e01b8152600401808261ffff1661ffff168152602001915050600060405180830381600087803b158015610d5957600080fd5b505af1158015610d6d573d6000803e3d6000fd5b50505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b158015610dda57600080fd5b505afa158015610dee573d6000803e3d6000fd5b505050506040513d6040811015610e0457600080fd5b8101908080519060200190929190805190602001909291905050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631504460f680579a814e10a74000060001b6040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b158015610ea457600080fd5b505af1158015610eb8573d6000803e3d6000fd5b50505050600060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e5d6bf02600160028060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b0b8579b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f6557600080fd5b505afa158015610f79573d6000803e3d6000fd5b505050506040513d6020811015610f8f57600080fd5b8101908080519060200190929190505050020361ffff166040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b158015610fdc57600080fd5b505af1158015610ff0573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663181783586040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561105e57600080fd5b505af1158015611072573d6000803e3d6000fd5b50505050565b600060019054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631504460f680579a814e10a74000060001b6040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561110c57600080fd5b505af1158015611120573d6000803e3d6000fd5b50505050600060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e5d6bf0260028060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b0b8579b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156111cb57600080fd5b505afa1580156111df573d6000803e3d6000fd5b505050506040513d60208110156111f557600080fd5b81019080805190602001909291905050500261ffff166040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561124157600080fd5b505af1158015611255573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663181783586040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156112c357600080fd5b505af11580156112d7573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f29c29c4600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b15801561139e57600080fd5b505af11580156113b2573d6000803e3d6000fd5b50505050600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b15801561142057600080fd5b505afa158015611434573d6000803e3d6000fd5b505050506040513d604081101561144a57600080fd5b8101908080519060200190929190805190602001909291905050509150915061147f8260001c68056bc75e2d63100000612718565b61148881612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630e5a6c706040518163ffffffff1660e01b8152600401604080518083038186803b1580156114ef57600080fd5b505afa158015611503573d6000803e3d6000fd5b505050506040513d604081101561151957600080fd5b81019080805190602001909291908051906020019092919050505080925081935050506115528260001c680579a814e10a740000612718565b61155b81612841565b600060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e5d6bf026003600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b0b8579b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561160357600080fd5b505afa158015611617573d6000803e3d6000fd5b505050506040513d602081101561162d57600080fd5b81019080805190602001909291905050500261ffff166040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561167957600080fd5b505af115801561168d573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663181783586040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156116fb57600080fd5b505af115801561170f573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b15801561177a57600080fd5b505afa15801561178e573d6000803e3d6000fd5b505050506040513d60408110156117a457600080fd5b81019080805190602001909291908051906020019092919050505080925081935050506117dd8260001c680579a814e10a740000612718565b6117e681612841565b5050565b6118cf6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634fce7a2a306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561188e57600080fd5b505afa1580156118a2573d6000803e3d6000fd5b505050506040513d60208110156118b857600080fd5b810190808051906020019092919050505014612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f29c29c4600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b15801561199257600080fd5b505af11580156119a6573d6000803e3d6000fd5b50505050611a8f6001600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634fce7a2a306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015611a4e57600080fd5b505afa158015611a62573d6000803e3d6000fd5b505050506040513d6020811015611a7857600080fd5b810190808051906020019092919050505014612841565b565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630e5a6c706040518163ffffffff1660e01b8152600401604080518083038186803b158015611af857600080fd5b505afa158015611b0c573d6000803e3d6000fd5b505050506040513d6040811015611b2257600080fd5b8101908080519060200190929190805190602001909291905050505050565b611bef6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166375f12b216040518163ffffffff1660e01b815260040160206040518083038186803b158015611bae57600080fd5b505afa158015611bc2573d6000803e3d6000fd5b505050506040513d6020811015611bd857600080fd5b810190808051906020019092919050505014612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f29c29c4600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b158015611cb257600080fd5b505af1158015611cc6573d6000803e3d6000fd5b50505050600060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e5d6bf0260028060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b0b8579b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611d7157600080fd5b505afa158015611d85573d6000803e3d6000fd5b505050506040513d6020811015611d9b57600080fd5b81019080805190602001909291905050500261ffff166040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b158015611de757600080fd5b505af1158015611dfb573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663181783586040518163ffffffff1660e01b8152600401600060405180830381600087803b158015611e6957600080fd5b505af1158015611e7d573d6000803e3d6000fd5b50505050600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b158015611eeb57600080fd5b505afa158015611eff573d6000803e3d6000fd5b505050506040513d6040811015611f1557600080fd5b81019080805190602001909291908051906020019092919050505091509150611f4a8260001c68056bc75e2d63100000612718565b611f5381612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630e5a6c706040518163ffffffff1660e01b8152600401604080518083038186803b158015611fba57600080fd5b505afa158015611fce573d6000803e3d6000fd5b505050506040513d6040811015611fe457600080fd5b810190808051906020019092919080519060200190929190505050809250819350505061201d8260001c68056bc75e2d63100000612718565b61202681612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ac4c25b26040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561209057600080fd5b505af11580156120a4573d6000803e3d6000fd5b505050506121566001600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166375f12b216040518163ffffffff1660e01b815260040160206040518083038186803b15801561211557600080fd5b505afa158015612129573d6000803e3d6000fd5b505050506040513d602081101561213f57600080fd5b810190808051906020019092919050505014612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b1580156121bd57600080fd5b505afa1580156121d1573d6000803e3d6000fd5b505050506040513d60408110156121e757600080fd5b81019080805190602001909291908051906020019092919050505080925081935050506122188260001c6000612718565b6122228115612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630e5a6c706040518163ffffffff1660e01b8152600401604080518083038186803b15801561228957600080fd5b505afa15801561229d573d6000803e3d6000fd5b505050506040513d60408110156122b357600080fd5b81019080805190602001909291908051906020019092919050505080925081935050506122e48260001c6000612718565b6122ee8115612841565b5050565b6123c0600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632e7dc6af6040518163ffffffff1660e01b815260040160206040518083038186803b15801561235d57600080fd5b505afa158015612371573d6000803e3d6000fd5b505050506040513d602081101561238757600080fd5b8101908080519060200190929190505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166128a9565b60006040516123ce90612a73565b604051809103906000f0801580156123ea573d6000803e3d6000fd5b509050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631e77933e826040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b15801561248e57600080fd5b505af11580156124a2573d6000803e3d6000fd5b50505050612552600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632e7dc6af6040518163ffffffff1660e01b815260040160206040518083038186803b15801561251157600080fd5b505afa158015612525573d6000803e3d6000fd5b505050506040513d602081101561253b57600080fd5b8101908080519060200190929190505050826128a9565b50565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f29c29c4600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b15801561261857600080fd5b505af115801561262c573d6000803e3d6000fd5b50505050600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630e5a6c706040518163ffffffff1660e01b8152600401604080518083038186803b15801561269a57600080fd5b505afa1580156126ae573d6000803e3d6000fd5b505050506040513d60408110156126c457600080fd5b810190808051906020019092919080519060200190929190505050915091506126f98260001c68056bc75e2d63100000612718565b61270281612841565b5050565b6000809054906101000a900460ff1681565b80821461283d577fe81699b85113eea1c73e10588b2b035e55893369632173afd43feb192fac64e360405180807f4572726f723a2057726f6e67206075696e74272076616c756500000000000000815250602001905060405180910390a17ff10e10fc613faff13ec2fbf0480c452e8ba6ea153d935c216544c8e9c6aa5bd78160405180807f202045787065637465640000000000000000000000000000000000000000000081525060200182815260200191505060405180910390a17ff10e10fc613faff13ec2fbf0480c452e8ba6ea153d935c216544c8e9c6aa5bd78260405180807f2020202041637475616c0000000000000000000000000000000000000000000081525060200182815260200191505060405180910390a161283c612a56565b5b5050565b806128a6577fe81699b85113eea1c73e10588b2b035e55893369632173afd43feb192fac64e360405180807f417373657274696f6e206661696c656400000000000000000000000000000000815250602001905060405180910390a16128a5612a56565b5b50565b8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614612a52577fe81699b85113eea1c73e10588b2b035e55893369632173afd43feb192fac64e360405180807f4572726f723a2057726f6e67206061646472657373272076616c756500000000815250602001905060405180910390a17f8d36e7ebd93d5a3d297284536b02d332820c817009f34e03dd18727ace0b18258160405180807f20204578706563746564000000000000000000000000000000000000000000008152506020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a17f8d36e7ebd93d5a3d297284536b02d332820c817009f34e03dd18727ace0b18258260405180807f2020202041637475616c000000000000000000000000000000000000000000008152506020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1612a51612a56565b5b5050565b6001600060016101000a81548160ff021916908315150217905550565b610bd280612a8e83390190565b6120ae806136608339019056fe608060405233600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a2610b3b806100976000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c80637a9e5e4b1161005b5780637a9e5e4b146101465780638da5cb5b1461018a578063ac4c25b2146101d4578063bf7e214f146101de57610088565b806313af40351461008d5780631504460f146100d157806357de26a4146100ff57806359e02dd71461011d575b600080fd5b6100cf600480360360208110156100a357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610228565b005b6100fd600480360360208110156100e757600080fd5b8101908080359060200190929190505050610371565b005b6101076104f2565b6040518082815260200191505060405180910390f35b610125610582565b60405180838152602001821515151581526020019250505060405180910390f35b6101886004803603602081101561015c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105a0565b005b6101926106e7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101dc61070d565b005b6101e6610887565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610256336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b6102c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b6000806000600435925060243591503490506103b1336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b610423576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b8360028190555060018060146101000a81548160ff02191690831515021790555081833373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168460003660405180848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505094505050505060405180910390a450505050565b60008060006104ff610582565b80925081935050508061057a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260078152602001807f68617a2d6e6f740000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b819250505090565b600080600254600160149054906101000a900460ff16915091509091565b6105ce336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b610640576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060006004359250602435915034905061074d336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b6107bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b6000600160146101000a81548160ff02191690831515021790555081833373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168460003660405180848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505094505050505060405180910390a4505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156108eb5760019050610aff565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561094a5760019050610aff565b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156109a95760009050610aff565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b70096138430856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001935050505060206040518083038186803b158015610ac157600080fd5b505afa158015610ad5573d6000803e3d6000fd5b505050506040513d6020811015610aeb57600080fd5b810190808051906020019092919050505090505b9291505056fea264697066735822122025b7fd437fc140a28b6d0f09016bd24068908ef03f82974849baefee31fb546764736f6c634300060700336080604052610e10600260146101000a81548161ffff021916908361ffff16021790555034801561002f57600080fd5b506040516120ae3803806120ae8339818101604052602081101561005257600080fd5b810190808051906020019092919050505060016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611fb6806100f86000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c806365fae35e116100b8578063ac4c25b21161007c578063ac4c25b2146104e1578063b0b8579b146104eb578063be9a655514610511578063bf353dbb1461051b578063e38e2cfb14610573578063f29c29c4146105a557610142565b806365fae35e146103e757806375f12b211461042b5780639c52a7f114610449578063a4dff0a21461048d578063a7a1ed72146104bf57610142565b80632e7dc6af1161010a5780632e7dc6af1461024157806346d4577d1461028b5780634fce7a2a1461030457806357de26a41461035c57806359e02dd71461037a57806365c4ce7a146103a357610142565b806307da68f5146101475780630e5a6c7014610151578063181783581461017a5780631b25b65f146101845780631e77933e146101fd575b600080fd5b61014f6105e9565b005b6101596106d9565b60405180838152602001821515151581526020019250505060405180910390f35b610182610807565b005b6101fb6004803603602081101561019a57600080fd5b81019080803590602001906401000000008111156101b757600080fd5b8201836020820111156101c957600080fd5b803590602001918460208302840111640100000000831117156101eb57600080fd5b9091929391929390505050610c0c565b005b61023f6004803603602081101561021357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e4e565b005b610249610f79565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610302600480360360208110156102a157600080fd5b81019080803590602001906401000000008111156102be57600080fd5b8201836020820111156102d057600080fd5b803590602001918460208302840111640100000000831117156102f257600080fd5b9091929391929390505050610f9f565b005b6103466004803603602081101561031a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611116565b6040518082815260200191505060405180910390f35b61036461112e565b6040518082815260200191505060405180910390f35b6103826112ca565b60405180838152602001821515151581526020019250505060405180910390f35b6103e5600480360360208110156103b957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113f8565b005b610429600480360360208110156103fd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611527565b005b610433611655565b6040518082815260200191505060405180910390f35b61048b6004803603602081101561045f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061165b565b005b610495611789565b604051808267ffffffffffffffff1667ffffffffffffffff16815260200191505060405180910390f35b6104c76117a3565b604051808215151515815260200191505060405180910390f35b6104e96117f2565b005b6104f3611a5a565b604051808261ffff1661ffff16815260200191505060405180910390f35b610519611a6e565b005b61055d6004803603602081101561053157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b5f565b6040518082815260200191505060405180910390f35b6105a36004803603602081101561058957600080fd5b81019080803561ffff169060200190929190505050611b77565b005b6105e7600480360360208110156105bb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611cc5565b005b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461069d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b600180819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b6000806001600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610791576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4f534d2f636f6e74726163742d6e6f742d77686974656c69737465640000000081525060200191505060405180910390fd5b600460000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b6001600460000160109054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1614915091509091565b60006001541461087f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4f534d2f69732d73746f7070656400000000000000000000000000000000000081525060200191505060405180910390fd5b6108876117a3565b6108f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4f534d2f6e6f742d70617373656400000000000000000000000000000000000081525060200191505060405180910390fd5b600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b15801561096357600080fd5b505afa158015610977573d6000803e3d6000fd5b505050506040513d604081101561098d57600080fd5b810190808051906020019092919080519060200190929190505050915091508015610bd557600460036000820160009054906101000a90046fffffffffffffffffffffffffffffffff168160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055506000820160109054906101000a90046fffffffffffffffffffffffffffffffff168160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff16021790555090505060405180604001604052808360001c6fffffffffffffffffffffffffffffffff16815260200160016fffffffffffffffffffffffffffffffff16815250600460008201518160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff16021790555060208201518160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550905050610b3f610b3a611e97565b611e9f565b600260166101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507f296ba4ca62c6c21c95e828080cb8aec7481b71390585605300a8a76f9e95b527600360000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b6040518082815260200191505060405180910390a15b50505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610cc0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008090505b82829050811015610e1657600073ffffffffffffffffffffffffffffffffffffffff16838383818110610cf557fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610d9c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4f534d2f6e6f2d636f6e74726163742d3000000000000000000000000000000081525060200191505060405180910390fd5b600160056000858585818110610dae57fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508080600101915050610cc6565b505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a4505050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610f02576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611053576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008090505b828290508110156110de5760006005600085858581811061107657fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508080600101915050611059565b505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a4505050565b60056020528060005260406000206000915090505481565b60006001600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146111e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4f534d2f636f6e74726163742d6e6f742d77686974656c69737465640000000081525060200191505060405180910390fd5b6001600360000160109054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff161461128e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f4f534d2f6e6f2d63757272656e742d76616c756500000000000000000000000081525060200191505060405180910390fd5b600360000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b905090565b6000806001600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611382576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4f534d2f636f6e74726163742d6e6f742d77686974656c69737465640000000081525060200191505060405180910390fd5b600360000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b6001600360000160109054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1614915091509091565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146114ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146115db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60016000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60015481565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461170f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b600260169054906101000a900467ffffffffffffffff1681565b60006117d9600260169054906101000a900467ffffffffffffffff16600260149054906101000a900461ffff1661ffff16611f52565b67ffffffffffffffff166117eb611e97565b1015905090565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146118a6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b604051806040016040528060006fffffffffffffffffffffffffffffffff16815260200160006fffffffffffffffffffffffffffffffff16815250600460008201518160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff16021790555060208201518160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550905060036000820160009054906101000a90046fffffffffffffffffffffffffffffffff168160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055506000820160109054906101000a90046fffffffffffffffffffffffffffffffff168160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550905050600180819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b600260149054906101000a900461ffff1681565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611b22576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60006001819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b60006020528060005260406000206000915090505481565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611c2b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008161ffff1611611ca5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4f534d2f74732d69732d7a65726f00000000000000000000000000000000000081525060200191505060405180910390fd5b80600260146101000a81548161ffff021916908361ffff16021790555050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611d79576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611e1c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4f534d2f6e6f2d636f6e74726163742d3000000000000000000000000000000081525060200191505060405180910390fd5b6001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b600042905090565b600080600260149054906101000a900461ffff1661ffff161415611f2b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f4f534d2f686f702d69732d7a65726f000000000000000000000000000000000081525060200191505060405180910390fd5b600260149054906101000a900461ffff1661ffff168281611f4857fe5b0682039050919050565b600081830190508267ffffffffffffffff168167ffffffffffffffff161015611f7a57600080fd5b9291505056fea264697066735822122040678294d2c29b012c17f87199abbdc68525f7c7cb1d865db8b52552071d03f564736f6c63430006070033a2646970667358221220392383381510d575f545e33b610151c992aa3a16cf1d976106130d529581dea064736f6c63430006070033","bin-runtime":"608060405234801561001057600080fd5b50600436106100f55760003560e01c8063ba414fa611610097578063dd8ae96211610066578063dd8ae96214610180578063ef0ba8ba1461018a578063f30dcb0314610194578063fa7626d41461019e576100f5565b8063ba414fa614610140578063bdf1e2d614610162578063cbbc5d5f1461016c578063d492dec314610176576100f5565b806387935f0b116100d357806387935f0b1461011857806390e892dd14610122578063a21412bc1461012c578063a896b29f14610136576100f5565b80630a9254e4146100fa578063477b860d14610104578063554cf19c1461010e575b600080fd5b6101026101c0565b005b61010c6105d1565b005b61011661075c565b005b610120610959565b005b61012a610cdb565b005b610134610d73565b005b61013e610e23565b005b610148611078565b604051808215151515815260200191505060405180910390f35b61016a61108b565b005b6101746117ea565b005b61017e611a91565b005b610188611b41565b005b6101926122f2565b005b61019c612555565b005b6101a6612706565b604051808215151515815260200191505060405180910390f35b6040516101cc90612a73565b604051809103906000f0801580156101e8573d6000803e3d6000fd5b50600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631504460f68056bc75e2d6310000060001b6040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b1580156102aa57600080fd5b505af11580156102be573d6000803e3d6000fd5b50505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040516102f190612a80565b808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050604051809103906000f080158015610343573d6000803e3d6000fd5b50600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550737109709ecfa91a80626ff3989d68f67f5b1dd12d600060026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e5d6bf02600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b0b8579b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561047f57600080fd5b505afa158015610493573d6000803e3d6000fd5b505050506040513d60208110156104a957600080fd5b810190808051906020019092919050505061ffff166040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b1580156104f457600080fd5b505af1158015610508573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663181783586040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561057657600080fd5b505af115801561058a573d6000803e3d6000fd5b5050505030600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f29c29c4600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b15801561069457600080fd5b505af11580156106a8573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b15801561071357600080fd5b505afa158015610727573d6000803e3d6000fd5b505050506040513d604081101561073d57600080fd5b8101908080519060200190929190805190602001909291905050505050565b61080e600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b0b8579b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156107c757600080fd5b505afa1580156107db573d6000803e3d6000fd5b505050506040513d60208110156107f157600080fd5b810190808051906020019092919050505061ffff16610e10612718565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e38e2cfb611c206040518263ffffffff1660e01b8152600401808261ffff1661ffff168152602001915050600060405180830381600087803b15801561088d57600080fd5b505af11580156108a1573d6000803e3d6000fd5b50505050610957600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b0b8579b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561091057600080fd5b505afa158015610924573d6000803e3d6000fd5b505050506040513d602081101561093a57600080fd5b810190808051906020019092919050505061ffff16611c20612718565b565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f29c29c4600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b158015610a1c57600080fd5b505af1158015610a30573d6000803e3d6000fd5b50505050610b196001600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634fce7a2a306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610ad857600080fd5b505afa158015610aec573d6000803e3d6000fd5b505050506040513d6020811015610b0257600080fd5b810190808051906020019092919050505014612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166365c4ce7a600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b158015610bdc57600080fd5b505af1158015610bf0573d6000803e3d6000fd5b50505050610cd96000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634fce7a2a306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610c9857600080fd5b505afa158015610cac573d6000803e3d6000fd5b505050506040513d6020811015610cc257600080fd5b810190808051906020019092919050505014612841565b565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e38e2cfb60006040518263ffffffff1660e01b8152600401808261ffff1661ffff168152602001915050600060405180830381600087803b158015610d5957600080fd5b505af1158015610d6d573d6000803e3d6000fd5b50505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b158015610dda57600080fd5b505afa158015610dee573d6000803e3d6000fd5b505050506040513d6040811015610e0457600080fd5b8101908080519060200190929190805190602001909291905050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631504460f680579a814e10a74000060001b6040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b158015610ea457600080fd5b505af1158015610eb8573d6000803e3d6000fd5b50505050600060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e5d6bf02600160028060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b0b8579b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f6557600080fd5b505afa158015610f79573d6000803e3d6000fd5b505050506040513d6020811015610f8f57600080fd5b8101908080519060200190929190505050020361ffff166040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b158015610fdc57600080fd5b505af1158015610ff0573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663181783586040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561105e57600080fd5b505af1158015611072573d6000803e3d6000fd5b50505050565b600060019054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631504460f680579a814e10a74000060001b6040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561110c57600080fd5b505af1158015611120573d6000803e3d6000fd5b50505050600060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e5d6bf0260028060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b0b8579b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156111cb57600080fd5b505afa1580156111df573d6000803e3d6000fd5b505050506040513d60208110156111f557600080fd5b81019080805190602001909291905050500261ffff166040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561124157600080fd5b505af1158015611255573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663181783586040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156112c357600080fd5b505af11580156112d7573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f29c29c4600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b15801561139e57600080fd5b505af11580156113b2573d6000803e3d6000fd5b50505050600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b15801561142057600080fd5b505afa158015611434573d6000803e3d6000fd5b505050506040513d604081101561144a57600080fd5b8101908080519060200190929190805190602001909291905050509150915061147f8260001c68056bc75e2d63100000612718565b61148881612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630e5a6c706040518163ffffffff1660e01b8152600401604080518083038186803b1580156114ef57600080fd5b505afa158015611503573d6000803e3d6000fd5b505050506040513d604081101561151957600080fd5b81019080805190602001909291908051906020019092919050505080925081935050506115528260001c680579a814e10a740000612718565b61155b81612841565b600060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e5d6bf026003600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b0b8579b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561160357600080fd5b505afa158015611617573d6000803e3d6000fd5b505050506040513d602081101561162d57600080fd5b81019080805190602001909291905050500261ffff166040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561167957600080fd5b505af115801561168d573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663181783586040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156116fb57600080fd5b505af115801561170f573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b15801561177a57600080fd5b505afa15801561178e573d6000803e3d6000fd5b505050506040513d60408110156117a457600080fd5b81019080805190602001909291908051906020019092919050505080925081935050506117dd8260001c680579a814e10a740000612718565b6117e681612841565b5050565b6118cf6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634fce7a2a306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561188e57600080fd5b505afa1580156118a2573d6000803e3d6000fd5b505050506040513d60208110156118b857600080fd5b810190808051906020019092919050505014612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f29c29c4600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b15801561199257600080fd5b505af11580156119a6573d6000803e3d6000fd5b50505050611a8f6001600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634fce7a2a306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015611a4e57600080fd5b505afa158015611a62573d6000803e3d6000fd5b505050506040513d6020811015611a7857600080fd5b810190808051906020019092919050505014612841565b565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630e5a6c706040518163ffffffff1660e01b8152600401604080518083038186803b158015611af857600080fd5b505afa158015611b0c573d6000803e3d6000fd5b505050506040513d6040811015611b2257600080fd5b8101908080519060200190929190805190602001909291905050505050565b611bef6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166375f12b216040518163ffffffff1660e01b815260040160206040518083038186803b158015611bae57600080fd5b505afa158015611bc2573d6000803e3d6000fd5b505050506040513d6020811015611bd857600080fd5b810190808051906020019092919050505014612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f29c29c4600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b158015611cb257600080fd5b505af1158015611cc6573d6000803e3d6000fd5b50505050600060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e5d6bf0260028060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b0b8579b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611d7157600080fd5b505afa158015611d85573d6000803e3d6000fd5b505050506040513d6020811015611d9b57600080fd5b81019080805190602001909291905050500261ffff166040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b158015611de757600080fd5b505af1158015611dfb573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663181783586040518163ffffffff1660e01b8152600401600060405180830381600087803b158015611e6957600080fd5b505af1158015611e7d573d6000803e3d6000fd5b50505050600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b158015611eeb57600080fd5b505afa158015611eff573d6000803e3d6000fd5b505050506040513d6040811015611f1557600080fd5b81019080805190602001909291908051906020019092919050505091509150611f4a8260001c68056bc75e2d63100000612718565b611f5381612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630e5a6c706040518163ffffffff1660e01b8152600401604080518083038186803b158015611fba57600080fd5b505afa158015611fce573d6000803e3d6000fd5b505050506040513d6040811015611fe457600080fd5b810190808051906020019092919080519060200190929190505050809250819350505061201d8260001c68056bc75e2d63100000612718565b61202681612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ac4c25b26040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561209057600080fd5b505af11580156120a4573d6000803e3d6000fd5b505050506121566001600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166375f12b216040518163ffffffff1660e01b815260040160206040518083038186803b15801561211557600080fd5b505afa158015612129573d6000803e3d6000fd5b505050506040513d602081101561213f57600080fd5b810190808051906020019092919050505014612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b1580156121bd57600080fd5b505afa1580156121d1573d6000803e3d6000fd5b505050506040513d60408110156121e757600080fd5b81019080805190602001909291908051906020019092919050505080925081935050506122188260001c6000612718565b6122228115612841565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630e5a6c706040518163ffffffff1660e01b8152600401604080518083038186803b15801561228957600080fd5b505afa15801561229d573d6000803e3d6000fd5b505050506040513d60408110156122b357600080fd5b81019080805190602001909291908051906020019092919050505080925081935050506122e48260001c6000612718565b6122ee8115612841565b5050565b6123c0600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632e7dc6af6040518163ffffffff1660e01b815260040160206040518083038186803b15801561235d57600080fd5b505afa158015612371573d6000803e3d6000fd5b505050506040513d602081101561238757600080fd5b8101908080519060200190929190505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166128a9565b60006040516123ce90612a73565b604051809103906000f0801580156123ea573d6000803e3d6000fd5b509050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631e77933e826040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b15801561248e57600080fd5b505af11580156124a2573d6000803e3d6000fd5b50505050612552600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632e7dc6af6040518163ffffffff1660e01b815260040160206040518083038186803b15801561251157600080fd5b505afa158015612525573d6000803e3d6000fd5b505050506040513d602081101561253b57600080fd5b8101908080519060200190929190505050826128a9565b50565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f29c29c4600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b15801561261857600080fd5b505af115801561262c573d6000803e3d6000fd5b50505050600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630e5a6c706040518163ffffffff1660e01b8152600401604080518083038186803b15801561269a57600080fd5b505afa1580156126ae573d6000803e3d6000fd5b505050506040513d60408110156126c457600080fd5b810190808051906020019092919080519060200190929190505050915091506126f98260001c68056bc75e2d63100000612718565b61270281612841565b5050565b6000809054906101000a900460ff1681565b80821461283d577fe81699b85113eea1c73e10588b2b035e55893369632173afd43feb192fac64e360405180807f4572726f723a2057726f6e67206075696e74272076616c756500000000000000815250602001905060405180910390a17ff10e10fc613faff13ec2fbf0480c452e8ba6ea153d935c216544c8e9c6aa5bd78160405180807f202045787065637465640000000000000000000000000000000000000000000081525060200182815260200191505060405180910390a17ff10e10fc613faff13ec2fbf0480c452e8ba6ea153d935c216544c8e9c6aa5bd78260405180807f2020202041637475616c0000000000000000000000000000000000000000000081525060200182815260200191505060405180910390a161283c612a56565b5b5050565b806128a6577fe81699b85113eea1c73e10588b2b035e55893369632173afd43feb192fac64e360405180807f417373657274696f6e206661696c656400000000000000000000000000000000815250602001905060405180910390a16128a5612a56565b5b50565b8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614612a52577fe81699b85113eea1c73e10588b2b035e55893369632173afd43feb192fac64e360405180807f4572726f723a2057726f6e67206061646472657373272076616c756500000000815250602001905060405180910390a17f8d36e7ebd93d5a3d297284536b02d332820c817009f34e03dd18727ace0b18258160405180807f20204578706563746564000000000000000000000000000000000000000000008152506020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a17f8d36e7ebd93d5a3d297284536b02d332820c817009f34e03dd18727ace0b18258260405180807f2020202041637475616c000000000000000000000000000000000000000000008152506020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1612a51612a56565b5b5050565b6001600060016101000a81548160ff021916908315150217905550565b610bd280612a8e83390190565b6120ae806136608339019056fe608060405233600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a2610b3b806100976000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c80637a9e5e4b1161005b5780637a9e5e4b146101465780638da5cb5b1461018a578063ac4c25b2146101d4578063bf7e214f146101de57610088565b806313af40351461008d5780631504460f146100d157806357de26a4146100ff57806359e02dd71461011d575b600080fd5b6100cf600480360360208110156100a357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610228565b005b6100fd600480360360208110156100e757600080fd5b8101908080359060200190929190505050610371565b005b6101076104f2565b6040518082815260200191505060405180910390f35b610125610582565b60405180838152602001821515151581526020019250505060405180910390f35b6101886004803603602081101561015c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105a0565b005b6101926106e7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101dc61070d565b005b6101e6610887565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610256336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b6102c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b6000806000600435925060243591503490506103b1336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b610423576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b8360028190555060018060146101000a81548160ff02191690831515021790555081833373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168460003660405180848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505094505050505060405180910390a450505050565b60008060006104ff610582565b80925081935050508061057a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260078152602001807f68617a2d6e6f740000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b819250505090565b600080600254600160149054906101000a900460ff16915091509091565b6105ce336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b610640576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060006004359250602435915034905061074d336000357fffffffff00000000000000000000000000000000000000000000000000000000166108ac565b6107bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d617574682d756e617574686f72697a656400000000000000000000000081525060200191505060405180910390fd5b6000600160146101000a81548160ff02191690831515021790555081833373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168460003660405180848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505094505050505060405180910390a4505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156108eb5760019050610aff565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561094a5760019050610aff565b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156109a95760009050610aff565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b70096138430856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001935050505060206040518083038186803b158015610ac157600080fd5b505afa158015610ad5573d6000803e3d6000fd5b505050506040513d6020811015610aeb57600080fd5b810190808051906020019092919050505090505b9291505056fea264697066735822122025b7fd437fc140a28b6d0f09016bd24068908ef03f82974849baefee31fb546764736f6c634300060700336080604052610e10600260146101000a81548161ffff021916908361ffff16021790555034801561002f57600080fd5b506040516120ae3803806120ae8339818101604052602081101561005257600080fd5b810190808051906020019092919050505060016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611fb6806100f86000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c806365fae35e116100b8578063ac4c25b21161007c578063ac4c25b2146104e1578063b0b8579b146104eb578063be9a655514610511578063bf353dbb1461051b578063e38e2cfb14610573578063f29c29c4146105a557610142565b806365fae35e146103e757806375f12b211461042b5780639c52a7f114610449578063a4dff0a21461048d578063a7a1ed72146104bf57610142565b80632e7dc6af1161010a5780632e7dc6af1461024157806346d4577d1461028b5780634fce7a2a1461030457806357de26a41461035c57806359e02dd71461037a57806365c4ce7a146103a357610142565b806307da68f5146101475780630e5a6c7014610151578063181783581461017a5780631b25b65f146101845780631e77933e146101fd575b600080fd5b61014f6105e9565b005b6101596106d9565b60405180838152602001821515151581526020019250505060405180910390f35b610182610807565b005b6101fb6004803603602081101561019a57600080fd5b81019080803590602001906401000000008111156101b757600080fd5b8201836020820111156101c957600080fd5b803590602001918460208302840111640100000000831117156101eb57600080fd5b9091929391929390505050610c0c565b005b61023f6004803603602081101561021357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e4e565b005b610249610f79565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610302600480360360208110156102a157600080fd5b81019080803590602001906401000000008111156102be57600080fd5b8201836020820111156102d057600080fd5b803590602001918460208302840111640100000000831117156102f257600080fd5b9091929391929390505050610f9f565b005b6103466004803603602081101561031a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611116565b6040518082815260200191505060405180910390f35b61036461112e565b6040518082815260200191505060405180910390f35b6103826112ca565b60405180838152602001821515151581526020019250505060405180910390f35b6103e5600480360360208110156103b957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113f8565b005b610429600480360360208110156103fd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611527565b005b610433611655565b6040518082815260200191505060405180910390f35b61048b6004803603602081101561045f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061165b565b005b610495611789565b604051808267ffffffffffffffff1667ffffffffffffffff16815260200191505060405180910390f35b6104c76117a3565b604051808215151515815260200191505060405180910390f35b6104e96117f2565b005b6104f3611a5a565b604051808261ffff1661ffff16815260200191505060405180910390f35b610519611a6e565b005b61055d6004803603602081101561053157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b5f565b6040518082815260200191505060405180910390f35b6105a36004803603602081101561058957600080fd5b81019080803561ffff169060200190929190505050611b77565b005b6105e7600480360360208110156105bb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611cc5565b005b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461069d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b600180819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b6000806001600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610791576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4f534d2f636f6e74726163742d6e6f742d77686974656c69737465640000000081525060200191505060405180910390fd5b600460000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b6001600460000160109054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1614915091509091565b60006001541461087f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4f534d2f69732d73746f7070656400000000000000000000000000000000000081525060200191505060405180910390fd5b6108876117a3565b6108f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4f534d2f6e6f742d70617373656400000000000000000000000000000000000081525060200191505060405180910390fd5b600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b15801561096357600080fd5b505afa158015610977573d6000803e3d6000fd5b505050506040513d604081101561098d57600080fd5b810190808051906020019092919080519060200190929190505050915091508015610bd557600460036000820160009054906101000a90046fffffffffffffffffffffffffffffffff168160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055506000820160109054906101000a90046fffffffffffffffffffffffffffffffff168160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff16021790555090505060405180604001604052808360001c6fffffffffffffffffffffffffffffffff16815260200160016fffffffffffffffffffffffffffffffff16815250600460008201518160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff16021790555060208201518160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550905050610b3f610b3a611e97565b611e9f565b600260166101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507f296ba4ca62c6c21c95e828080cb8aec7481b71390585605300a8a76f9e95b527600360000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b6040518082815260200191505060405180910390a15b50505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610cc0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008090505b82829050811015610e1657600073ffffffffffffffffffffffffffffffffffffffff16838383818110610cf557fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610d9c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4f534d2f6e6f2d636f6e74726163742d3000000000000000000000000000000081525060200191505060405180910390fd5b600160056000858585818110610dae57fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508080600101915050610cc6565b505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a4505050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610f02576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611053576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008090505b828290508110156110de5760006005600085858581811061107657fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508080600101915050611059565b505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a4505050565b60056020528060005260406000206000915090505481565b60006001600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146111e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4f534d2f636f6e74726163742d6e6f742d77686974656c69737465640000000081525060200191505060405180910390fd5b6001600360000160109054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff161461128e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f4f534d2f6e6f2d63757272656e742d76616c756500000000000000000000000081525060200191505060405180910390fd5b600360000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b905090565b6000806001600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611382576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4f534d2f636f6e74726163742d6e6f742d77686974656c69737465640000000081525060200191505060405180910390fd5b600360000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1660001b6001600360000160109054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1614915091509091565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146114ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146115db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60016000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60015481565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461170f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b600260169054906101000a900467ffffffffffffffff1681565b60006117d9600260169054906101000a900467ffffffffffffffff16600260149054906101000a900461ffff1661ffff16611f52565b67ffffffffffffffff166117eb611e97565b1015905090565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146118a6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b604051806040016040528060006fffffffffffffffffffffffffffffffff16815260200160006fffffffffffffffffffffffffffffffff16815250600460008201518160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff16021790555060208201518160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550905060036000820160009054906101000a90046fffffffffffffffffffffffffffffffff168160000160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055506000820160109054906101000a90046fffffffffffffffffffffffffffffffff168160000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550905050600180819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b600260149054906101000a900461ffff1681565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611b22576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60006001819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b60006020528060005260406000206000915090505481565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611c2b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b60008161ffff1611611ca5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4f534d2f74732d69732d7a65726f00000000000000000000000000000000000081525060200191505060405180910390fd5b80600260146101000a81548161ffff021916908361ffff16021790555050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611d79576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4f534d2f6e6f742d617574686f72697a6564000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611e1c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4f534d2f6e6f2d636f6e74726163742d3000000000000000000000000000000081525060200191505060405180910390fd5b6001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b600042905090565b600080600260149054906101000a900461ffff1661ffff161415611f2b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f4f534d2f686f702d69732d7a65726f000000000000000000000000000000000081525060200191505060405180910390fd5b600260149054906101000a900461ffff1661ffff168281611f4857fe5b0682039050919050565b600081830190508267ffffffffffffffff168167ffffffffffffffff161015611f7a57600080fd5b9291505056fea264697066735822122040678294d2c29b012c17f87199abbdc68525f7c7cb1d865db8b52552071d03f564736f6c63430006070033a2646970667358221220392383381510d575f545e33b610151c992aa3a16cf1d976106130d529581dea064736f6c63430006070033","metadata":"{\"compiler\":{\"version\":\"0.6.7+commit.b8d736ae\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"exact\",\"type\":\"bool\"}],\"name\":\"eventListener\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setUp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testChangeValue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testDiss\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testFailPoke\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testFailSetHopZero\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testFailWhitelistPeek\",\"outputs\":[],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testFailWhitelistPeep\",\"outputs\":[],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testKiss\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testPoke\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testSetHop\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testVoid\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testWhitelistPeek\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"testWhitelistPeep\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"src/osm.t.sol\":\"OSMTest\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[\":/=/\",\":ds-auth/=lib/ds-stop/lib/ds-auth/src/\",\":ds-auth=lib/ds-stop/lib/ds-auth/src/index.sol\",\":ds-math/=lib/ds-value/lib/ds-thing/lib/ds-math/src/\",\":ds-math=lib/ds-value/lib/ds-thing/lib/ds-math/src/index.sol\",\":ds-note/=lib/ds-stop/lib/ds-note/src/\",\":ds-note=lib/ds-stop/lib/ds-note/src/index.sol\",\":ds-stop/=lib/ds-stop/src/\",\":ds-stop=lib/ds-stop/src/index.sol\",\":ds-test/=lib/ds-test/src/\",\":ds-test=lib/ds-test/src/index.sol\",\":ds-thing/=lib/ds-value/lib/ds-thing/src/\",\":ds-thing=lib/ds-value/lib/ds-thing/src/index.sol\",\":ds-value/=lib/ds-value/src/\",\":ds-value=lib/ds-value/src/index.sol\"]},\"sources\":{\"lib/ds-stop/lib/ds-auth/src/auth.sol\":{\"keccak256\":\"0x15b5e480ce445d0d81b5b1a070f9736247b731d7fcff22b1e28b34a5a4d82f13\",\"urls\":[\"bzz-raw://082a7116140d327d21a72199b255e0b9de3cfab8838a34a8f44a27c11b3a83b5\",\"dweb:/ipfs/QmXXjzPY7BQUZXS4qfaBLn1MmnTKhCwtrMWZb9caDzrrca\"]},\"lib/ds-stop/lib/ds-note/src/note.sol\":{\"keccak256\":\"0xc6aed2fade2d8b560dadf645b76f5d55a09d4cffb062fa2a1065642835abcf90\",\"urls\":[\"bzz-raw://0bf91088dce5fec1db422465dcc63f78c7e7acfc17aad40f745901baaca41ce2\",\"dweb:/ipfs/QmWqAVcNa7WRzLQhhNMxLzBeZ2zkpHfKx2AYvhkvJL8QJW\"]},\"lib/ds-test/src/test.sol\":{\"keccak256\":\"0x992abcdf10dca07fcbe53a55032a14f3550d184506f2c33191d783469866979a\",\"urls\":[\"bzz-raw://b386086fcd19e9cf2fd8cabec76463f804ed3afe4566202d881eccc15f5542b1\",\"dweb:/ipfs/Qmf1ei8rEh4nJbhFJyGqpM7GnYAiPE3BU8LRoMSDUEqdey\"]},\"lib/ds-value/lib/ds-thing/lib/ds-math/src/math.sol\":{\"keccak256\":\"0x40f4c3c2f6fa0f498d709dd48d9df4cbf64562bce100d954beff90c97e404e99\",\"urls\":[\"bzz-raw://549d20d0e611fe317dd6d94ee68f2dd9bb771d00fbc833017ae86368e5f656fd\",\"dweb:/ipfs/QmVaAgnJvQpKFJM6xgttyJYxNqqVkYNNvn5KcutMr8sb9s\"]},\"lib/ds-value/lib/ds-thing/src/thing.sol\":{\"keccak256\":\"0x964650c4e3bbdcd52d6bc6b88a4c6b631a53fc445ef7e37b462b94f9f2d3c953\",\"urls\":[\"bzz-raw://043d0ca0c92f3902197aed9ca5f41c220082184a0fe6afeb7e236da99dd0bec4\",\"dweb:/ipfs/QmTgyLLX4kcpKjcWXSCbJo3VFJrNmWczpY6NhGVhFogg6L\"]},\"lib/ds-value/src/value.sol\":{\"keccak256\":\"0x9aa469ab8084563a32f715192f13ded8c7947ad3606976a91e0632021c2b0c4e\",\"urls\":[\"bzz-raw://c403ea1b97727458a3ff0adf036df9d88813a92c2cc9e00b49e45f574302a8f0\",\"dweb:/ipfs/Qma3e3e91TPzGiNC8Kre5cSBWRUjb3qJrfB7iabi8yHjGP\"]},\"src/osm.sol\":{\"keccak256\":\"0x5d762f832a34b9b00f91483295746983953beb4f3c89762fea27fe957b5e93c5\",\"urls\":[\"bzz-raw://339d104a414987963e59e9d781a07eaf571793da9d23dfa5a51415d4e7ae552e\",\"dweb:/ipfs/Qmdabyk7swH3kyceC4ZgxC91TchBSioiUzh2ESpLqLfVyv\"]},\"src/osm.t.sol\":{\"keccak256\":\"0x63ff53c4a862d8a22c135ecd7a024a8a66db5479e8c5cc30ebfe77dd00b1e570\",\"urls\":[\"bzz-raw://49406e8b81486b6f94029eaac3fe5a408f20c6606cd19c6deb7236953bcbaa5c\",\"dweb:/ipfs/QmYcsXV1DNd8QyFSMr1UFZFhzP8cHz3RuZaJeSXTGYXzEs\"]}},\"version\":1}","srcmap":"187:6679:7:-:0;;;1377:4:2;1367:7;;:14;;;;;;;;;;;;;;;;;;187:6679:7;;;;;;","srcmap-runtime":"187:6679:7:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;187:6679:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12:1:-1;9;2:12;285:623:7;;;:::i;:::-;;5959:206;;;:::i;:::-;;1327:314;;;:::i;:::-;;6478:386;;;:::i;:::-;;1647:142;;;:::i;:::-;;5801:152;;;:::i;:::-;;4890:340;;;:::i;:::-;;1309:18:2;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3472:1412:7;;;:::i;:::-;;6171:301;;;:::i;:::-;;5236:149;;;:::i;:::-;;1795:1671;;;:::i;:::-;;914:407;;;:::i;:::-;;5391:404;;;:::i;:::-;;1284:19:2;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;285:623:7;326:13;;;;;:::i;:::-;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;326:13:7;319:4;;:20;;;;;;;;;;;;;;;;;;401:4;;;;;;;;;;;:9;;;424;411:24;;401:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;401:35:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;401:35:7;;;;505:4;;;;;;;;;;;489:22;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;489:22:7;483:3;;:28;;;;;;;;;;;;;;;;;;591:42;579:4;;:55;;;;;;;;;;;;;;;;;;663:4;;;;;;;;;;;:9;;;678:3;;;;;;;;;;;:7;;;:9;;;;;;;;;;;;;;;;;;;;;;5::-1;2:2;;;27:1;24;17:12;2:2;678:9:7;;;;8::-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;678:9:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;678:9:7;;;;;;;;;;;;;;;;673:15;;663:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;663:26:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;663:26:7;;;;740:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;740:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;740:10:7;;;;843:4;829:3;;:19;;;;;;;;;;;;;;;;;;285:623::o;5959:206::-;6005:3;;;;;;;;;;;:8;;;6014:3;;;;;;;;;;;6005:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6005:13:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6005:13:7;;;;6078:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6078:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6078:10:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;6078:10:7;;;;;;;;;;;;;;;;;;;;;;;;;;;5959:206::o;1327:314::-;1366:31;1380:3;;;;;;;;;;;:7;;;:9;;;;;;;;;;;;;;;;;;;;;;5::-1;2:2;;;27:1;24;17:12;2:2;1380:9:7;;;;8::-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1380:9:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;1380:9:7;;;;;;;;;;;;;;;;1375:15;;1392:4;1366:8;:31::i;:::-;1458:3;;;;;;;;;;;:8;;;1474:4;1458:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1458:22:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1458:22:7;;;;1551:31;1565:3;;;;;;;;;;;:7;;;:9;;;;;;;;;;;;;;;;;;;;;;5::-1;2:2;;;27:1;24;17:12;2:2;1565:9:7;;;;8::-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1565:9:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;1565:9:7;;;;;;;;;;;;;;;;1560:15;;1577:4;1551:8;:31::i;:::-;1327:314::o;6478:386::-;6515:3;;;;;;;;;;;:8;;;6524:3;;;;;;;;;;;6515:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6515:13:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6515:13:7;;;;6588:39;6625:1;6599:3;;;;;;;;;;;:7;;;6615:4;6599:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6599:22:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6599:22:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;6599:22:7;;;;;;;;;;;;;;;;:27;6588:10;:39::i;:::-;6683:3;;;;;;;;;;;:8;;;6692:3;;;;;;;;;;;6683:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6683:13:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6683:13:7;;;;6768:39;6805:1;6779:3;;;;;;;;;;;:7;;;6795:4;6779:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6779:22:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6779:22:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;6779:22:7;;;;;;;;;;;;;;;;:27;6768:10;:39::i;:::-;6478:386::o;1647:142::-;1694:3;;;;;;;;;;;:8;;;1710:1;1694:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1694:19:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1694:19:7;;;;1647:142::o;5801:152::-;5856:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;5856:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5856:10:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;5856:10:7;;;;;;;;;;;;;;;;;;;;;;;;;;;5801:152::o;4890:340::-;4931:4;;;;;;;;;;;:9;;;4954;4941:24;;4931:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;4931:35:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4931:35:7;;;;5032:4;;;;;;;;;;;:9;;;5063:1;5059;5047:3;;;;;;;;;;;:7;;;:9;;;;;;;;;;;;;;;;;;;;;;5::-1;2:2;;;27:1;24;17:12;2:2;5047:9:7;;;;8::-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5047:9:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;5047:9:7;;;;;;;;;;;;;;;;:13;:17;5042:23;;5032:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;5032:34:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5032:34:7;;;;5121:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;5121:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5121:10:7;;;;4890:340::o;1309:18:2:-;;;;;;;;;;;;;:::o;3472:1412:7:-;3509:4;;;;;;;;;;;:9;;;3532;3519:24;;3509:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;3509:35:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3509:35:7;;;;3594:4;;;;;;;;;;;:9;;;3621:1;3609:3;;;;;;;;;;;:7;;;:9;;;;;;;;;;;;;;;;;;;;;;5::-1;2:2;;;27:1;24;17:12;2:2;3609:9:7;;;;8::-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3609:9:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;3609:9:7;;;;;;;;;;;;;;;;:13;3604:19;;3594:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;3594:30:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3594:30:7;;;;3672:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;3672:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3672:10:7;;;;3773:3;;;;;;;;;;;:8;;;3782:3;;;;;;;;;;;3773:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;3773:13:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3773:13:7;;;;3857:11;3870:8;3882:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;3882:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3882:10:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;3882:10:7;;;;;;;;;;;;;;;;;;;;;;;;;3856:36;;;;3945:30;3959:3;3954:9;;3965;3945:8;:30::i;:::-;4043:15;4054:3;4043:10;:15::i;:::-;4156:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;4156:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4156:10:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;4156:10:7;;;;;;;;;;;;;;;;;;;;;;;;;4143:23;;;;;;;;4229:30;4243:3;4238:9;;4249;4229:8;:30::i;:::-;4324:15;4335:3;4324:10;:15::i;:::-;4421:4;;;;;;;;;;;:9;;;4448:1;4436:3;;;;;;;;;;;:7;;;:9;;;;;;;;;;;;;;;;;;;;;;5::-1;2:2;;;27:1;24;17:12;2:2;4436:9:7;;;;8::-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4436:9:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;4436:9:7;;;;;;;;;;;;;;;;:13;4431:19;;4421:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;4421:30:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4421:30:7;;;;4499:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;4499:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4499:10:7;;;;4613:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;4613:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4613:10:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;4613:10:7;;;;;;;;;;;;;;;;;;;;;;;;;4600:23;;;;;;;;4689:30;4703:3;4698:9;;4709;4689:8;:30::i;:::-;4787:15;4798:3;4787:10;:15::i;:::-;3472:1412;;:::o;6171:301::-;6208:39;6245:1;6219:3;;;;;;;;;;;:7;;;6235:4;6219:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6219:22:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6219:22:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;6219:22:7;;;;;;;;;;;;;;;;:27;6208:10;:39::i;:::-;6307:3;;;;;;;;;;;:8;;;6316:3;;;;;;;;;;;6307:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6307:13:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6307:13:7;;;;6380:39;6417:1;6391:3;;;;;;;;;;;:7;;;6407:4;6391:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6391:22:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6391:22:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;6391:22:7;;;;;;;;;;;;;;;;:27;6380:10;:39::i;:::-;6171:301::o;5236:149::-;5291:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;5291:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5291:10:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;5291:10:7;;;;;;;;;;;;;;;;;;;;;;;;;;;5236:149::o;1795:1671::-;1832:30;1860:1;1843:3;;;;;;;;;;;:11;;;:13;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1843:13:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1843:13:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;1843:13:7;;;;;;;;;;;;;;;;:18;1832:10;:30::i;:::-;1919:3;;;;;;;;;;;:8;;;1928:3;;;;;;;;;;;1919:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1919:13:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1919:13:7;;;;2002:4;;;;;;;;;;;:9;;;2029:1;2017:3;;;;;;;;;;;:7;;;:9;;;;;;;;;;;;;;;;;;;;;;5::-1;2:2;;;27:1;24;17:12;2:2;2017:9:7;;;;8::-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2017:9:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;2017:9:7;;;;;;;;;;;;;;;;:13;2012:19;;2002:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2002:30:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2002:30:7;;;;2080:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2080:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2080:10:7;;;;2181:11;2194:8;2206:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2206:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2206:10:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;2206:10:7;;;;;;;;;;;;;;;;;;;;;;;;;2180:36;;;;2269:30;2283:3;2278:9;;2289;2269:8;:30::i;:::-;2359:15;2370:3;2359:10;:15::i;:::-;2464:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2464:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2464:10:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;2464:10:7;;;;;;;;;;;;;;;;;;;;;;;;;2451:23;;;;;;;;2537:30;2551:3;2546:9;;2557;2537:8;:30::i;:::-;2632:15;2643:3;2632:10;:15::i;:::-;2729:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2729:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2729:10:7;;;;2815:30;2843:1;2826:3;;;;;;;;;;;:11;;;:13;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2826:13:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2826:13:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;2826:13:7;;;;;;;;;;;;;;;;:18;2815:10;:30::i;:::-;2917:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;2917:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2917:10:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;2917:10:7;;;;;;;;;;;;;;;;;;;;;;;;;2904:23;;;;;;;;2993:22;3007:3;3002:9;;3013:1;2993:8;:22::i;:::-;3089:16;3101:3;3100:4;3089:10;:16::i;:::-;3204:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;3204:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3204:10:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;3204:10:7;;;;;;;;;;;;;;;;;;;;;;;;;3191:23;;;;;;;;3277:22;3291:3;3286:9;;3297:1;3277:8;:22::i;:::-;3370:16;3382:3;3381:4;3370:10;:16::i;:::-;1795:1671;;:::o;914:407::-;958:34;967:3;;;;;;;;;;;:7;;;:9;;;;;;;;;;;;;;;;;;;;;;5::-1;2:2;;;27:1;24;17:12;2:2;967:9:7;;;;8::-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;967:9:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;967:9:7;;;;;;;;;;;;;;;;986:4;;;;;;;;;;;958:8;:34::i;:::-;1050:13;1066;;;;;:::i;:::-;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1066:13:7;1050:29;;1132:3;;;;;;;;;;;:10;;;1151:5;1132:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;1132:26:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1132:26:7;;;;1228:35;1237:3;;;;;;;;;;;:7;;;:9;;;;;;;;;;;;;;;;;;;;;;5::-1;2:2;;;27:1;24;17:12;2:2;1237:9:7;;;;8::-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1237:9:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;1237:9:7;;;;;;;;;;;;;;;;1256:5;1228:8;:35::i;:::-;914:407;:::o;5391:404::-;5437:3;;;;;;;;;;;:8;;;5446:3;;;;;;;;;;;5437:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;5437:13:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5437:13:7;;;;5521:11;5534:8;5546:3;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;5546:10:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5546:10:7;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;5546:10:7;;;;;;;;;;;;;;;;;;;;;;;;;5520:36;;;;5606:30;5620:3;5615:9;;5626;5606:8;:30::i;:::-;5701:15;5712:3;5701:10;:15::i;:::-;5391:404;;:::o;1284:19:2:-;;;;;;;;;;;;;:::o;3467:261::-;3529:1;3524;:6;3520:202;;3551:40;;;;;;;;;;;;;;;;;;;;3610:31;3639:1;3610:31;;;;;;;;;;;;;;;;;;;;;;;;;3660;3689:1;3660:31;;;;;;;;;;;;;;;;;;;;;;;;;3705:6;:4;:6::i;:::-;3520:202;3467:261;;:::o;1729:158::-;1789:9;1784:97;;1819:31;;;;;;;;;;;;;;;;;;;;1864:6;:4;:6::i;:::-;1784:97;1729:158;:::o;1893:276::-;1961:1;1956:6;;:1;:6;;;1952:211;;1983:43;;;;;;;;;;;;;;;;;;;;2045:34;2077:1;2045:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2098;2130:1;2098:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2146:6;:4;:6::i;:::-;1952:211;1893:276;;:::o;1394:55::-;1438:4;1429:6;;:13;;;;;;;;;;;;;;;;;;1394:55::o;187:6679:7:-;;;;;;;;:::o;:::-;;;;;;;;:::o"},"src/value.sol:Value":{"abi":"[{\"inputs\":[],\"name\":\"peek\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]","bin":"6080604052348015600f57600080fd5b5060a78061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806359e02dd714602d575b600080fd5b60336054565b60405180838152602001821515151581526020019250505060405180910390f35b6000806001546000809054906101000a900460ff1691509150909156fea26469706673582212209232ca868ebd48266d3cfa24cda1f678aefb12756d311a70f607a1234cc637a064736f6c63430006070033","bin-runtime":"6080604052348015600f57600080fd5b506004361060285760003560e01c806359e02dd714602d575b600080fd5b60336054565b60405180838152602001821515151581526020019250505060405180910390f35b6000806001546000809054906101000a900460ff1691509150909156fea26469706673582212209232ca868ebd48266d3cfa24cda1f678aefb12756d311a70f607a1234cc637a064736f6c63430006070033","metadata":"{\"compiler\":{\"version\":\"0.6.7+commit.b8d736ae\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"peek\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"src/value.sol\":\"Value\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[\":/=/\",\":ds-auth/=lib/ds-stop/lib/ds-auth/src/\",\":ds-auth=lib/ds-stop/lib/ds-auth/src/index.sol\",\":ds-math/=lib/ds-value/lib/ds-thing/lib/ds-math/src/\",\":ds-math=lib/ds-value/lib/ds-thing/lib/ds-math/src/index.sol\",\":ds-note/=lib/ds-stop/lib/ds-note/src/\",\":ds-note=lib/ds-stop/lib/ds-note/src/index.sol\",\":ds-stop/=lib/ds-stop/src/\",\":ds-stop=lib/ds-stop/src/index.sol\",\":ds-test/=lib/ds-test/src/\",\":ds-test=lib/ds-test/src/index.sol\",\":ds-thing/=lib/ds-value/lib/ds-thing/src/\",\":ds-thing=lib/ds-value/lib/ds-thing/src/index.sol\",\":ds-value/=lib/ds-value/src/\",\":ds-value=lib/ds-value/src/index.sol\"]},\"sources\":{\"src/value.sol\":{\"keccak256\":\"0x25c1e66a737b352b2ff1c60a051cbed3d35ec14b2cc5c2444c6fea24b522aab8\",\"urls\":[\"bzz-raw://7e20d3bd6e8ebc1040e02465de824ceaf87432093916f5fd72385a64fb392114\",\"dweb:/ipfs/QmPmWKR84ks1qu847hvKT6iRR1bZcMvmr34hmwMTbu1GDh\"]}},\"version\":1}","srcmap":"736:143:8:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;736:143:8;;;;;;;","srcmap-runtime":"736:143:8:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;736:143:8;;;;;;;;;;;;;;;;12:1:-1;9;2:12;792:85:8;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;829:7;838:4;862:3;;866;;;;;;;;;;;854:16;;;;792:85;;:::o"}},"sourceList":["lib/ds-stop/lib/ds-auth/src/auth.sol","lib/ds-stop/lib/ds-note/src/note.sol","lib/ds-test/src/test.sol","lib/ds-value/lib/ds-thing/lib/ds-math/src/math.sol","lib/ds-value/lib/ds-thing/src/thing.sol","lib/ds-value/src/value.sol","src/osm.sol","src/osm.t.sol","src/value.sol"],"sources":{"lib/ds-stop/lib/ds-auth/src/auth.sol":{"AST":{"attributes":{"absolutePath":"lib/ds-stop/lib/ds-auth/src/auth.sol","exportedSymbols":{"DSAuth":[1852],"DSAuthEvents":[1735],"DSAuthority":[1726]}},"children":[{"attributes":{"literals":["solidity",">=","0.4",".23"]},"id":1714,"name":"PragmaDirective","src":"643:25:0"},{"attributes":{"abstract":false,"baseContracts":[null],"contractDependencies":[null],"contractKind":"interface","documentation":null,"fullyImplemented":false,"linearizedBaseContracts":[1726],"name":"DSAuthority","scope":1853},"children":[{"attributes":{"body":null,"documentation":null,"functionSelector":"b7009613","implemented":false,"isConstructor":false,"kind":"function","modifiers":[null],"name":"canCall","overrides":null,"scope":1726,"stateMutability":"view","virtual":false,"visibility":"external"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"src","overrides":null,"scope":1725,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":1715,"name":"ElementaryTypeName","src":"724:7:0"}],"id":1716,"name":"VariableDeclaration","src":"724:11:0"},{"attributes":{"constant":false,"mutability":"mutable","name":"dst","overrides":null,"scope":1725,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":1717,"name":"ElementaryTypeName","src":"737:7:0"}],"id":1718,"name":"VariableDeclaration","src":"737:11:0"},{"attributes":{"constant":false,"mutability":"mutable","name":"sig","overrides":null,"scope":1725,"stateVariable":false,"storageLocation":"default","type":"bytes4","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes4","type":"bytes4"},"id":1719,"name":"ElementaryTypeName","src":"750:6:0"}],"id":1720,"name":"VariableDeclaration","src":"750:10:0"}],"id":1721,"name":"ParameterList","src":"714:52:0"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":1725,"stateVariable":false,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":1722,"name":"ElementaryTypeName","src":"790:4:0"}],"id":1723,"name":"VariableDeclaration","src":"790:4:0"}],"id":1724,"name":"ParameterList","src":"789:6:0"}],"id":1725,"name":"FunctionDefinition","src":"698:98:0"}],"id":1726,"name":"ContractDefinition","src":"670:128:0"},{"attributes":{"abstract":false,"baseContracts":[null],"contractDependencies":[null],"contractKind":"contract","documentation":null,"fullyImplemented":true,"linearizedBaseContracts":[1735],"name":"DSAuthEvents","scope":1853},"children":[{"attributes":{"anonymous":false,"documentation":null,"name":"LogSetAuthority"},"children":[{"children":[{"attributes":{"constant":false,"indexed":true,"mutability":"mutable","name":"authority","overrides":null,"scope":1730,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":1727,"name":"ElementaryTypeName","src":"851:7:0"}],"id":1728,"name":"VariableDeclaration","src":"851:25:0"}],"id":1729,"name":"ParameterList","src":"850:27:0"}],"id":1730,"name":"EventDefinition","src":"828:50:0"},{"attributes":{"anonymous":false,"documentation":null,"name":"LogSetOwner"},"children":[{"children":[{"attributes":{"constant":false,"indexed":true,"mutability":"mutable","name":"owner","overrides":null,"scope":1734,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":1731,"name":"ElementaryTypeName","src":"906:7:0"}],"id":1732,"name":"VariableDeclaration","src":"906:21:0"}],"id":1733,"name":"ParameterList","src":"905:23:0"}],"id":1734,"name":"EventDefinition","src":"883:46:0"}],"id":1735,"name":"ContractDefinition","src":"800:131:0"},{"attributes":{"abstract":false,"contractDependencies":[1735],"contractKind":"contract","documentation":null,"fullyImplemented":true,"linearizedBaseContracts":[1852,1735],"name":"DSAuth","scope":1853},"children":[{"attributes":{"arguments":null},"children":[{"attributes":{"contractScope":null,"name":"DSAuthEvents","referencedDeclaration":1735,"type":"contract DSAuthEvents"},"id":1736,"name":"UserDefinedTypeName","src":"952:12:0"}],"id":1737,"name":"InheritanceSpecifier","src":"952:12:0"},{"attributes":{"constant":false,"functionSelector":"bf7e214f","mutability":"mutable","name":"authority","overrides":null,"scope":1852,"stateVariable":true,"storageLocation":"default","type":"contract DSAuthority","value":null,"visibility":"public"},"children":[{"attributes":{"contractScope":null,"name":"DSAuthority","referencedDeclaration":1726,"type":"contract DSAuthority"},"id":1738,"name":"UserDefinedTypeName","src":"971:11:0"}],"id":1739,"name":"VariableDeclaration","src":"971:30:0"},{"attributes":{"constant":false,"functionSelector":"8da5cb5b","mutability":"mutable","name":"owner","overrides":null,"scope":1852,"stateVariable":true,"storageLocation":"default","type":"address","value":null,"visibility":"public"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":1740,"name":"ElementaryTypeName","src":"1007:7:0"}],"id":1741,"name":"VariableDeclaration","src":"1007:26:0"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":true,"kind":"constructor","modifiers":[null],"name":"","overrides":null,"scope":1852,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1742,"name":"ParameterList","src":"1051:2:0"},{"attributes":{"parameters":[null]},"children":[],"id":1743,"name":"ParameterList","src":"1061:0:0"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"address"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1741,"type":"address","value":"owner"},"id":1744,"name":"Identifier","src":"1071:5:0"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"sender","referencedDeclaration":null,"type":"address payable"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-15,"type":"msg","value":"msg"},"id":1745,"name":"Identifier","src":"1079:3:0"}],"id":1746,"name":"MemberAccess","src":"1079:10:0"}],"id":1747,"name":"Assignment","src":"1071:18:0"}],"id":1748,"name":"ExpressionStatement","src":"1071:18:0"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"overloadedDeclarations":[null],"referencedDeclaration":1734,"type":"function (address)","value":"LogSetOwner"},"id":1749,"name":"Identifier","src":"1104:11:0"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"sender","referencedDeclaration":null,"type":"address payable"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-15,"type":"msg","value":"msg"},"id":1750,"name":"Identifier","src":"1116:3:0"}],"id":1751,"name":"MemberAccess","src":"1116:10:0"}],"id":1752,"name":"FunctionCall","src":"1104:23:0"}],"id":1753,"name":"EmitStatement","src":"1099:28:0"}],"id":1754,"name":"Block","src":"1061:73:0"}],"id":1755,"name":"FunctionDefinition","src":"1040:94:0"},{"attributes":{"documentation":null,"functionSelector":"13af4035","implemented":true,"isConstructor":false,"kind":"function","name":"setOwner","overrides":null,"scope":1852,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"owner_","overrides":null,"scope":1771,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":1756,"name":"ElementaryTypeName","src":"1158:7:0"}],"id":1757,"name":"VariableDeclaration","src":"1158:14:0"}],"id":1758,"name":"ParameterList","src":"1157:16:0"},{"attributes":{"parameters":[null]},"children":[],"id":1761,"name":"ParameterList","src":"1206:0:0"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1804,"type":"modifier ()","value":"auth"},"id":1759,"name":"Identifier","src":"1197:4:0"}],"id":1760,"name":"ModifierInvocation","src":"1197:4:0"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"address"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1741,"type":"address","value":"owner"},"id":1762,"name":"Identifier","src":"1216:5:0"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1757,"type":"address","value":"owner_"},"id":1763,"name":"Identifier","src":"1224:6:0"}],"id":1764,"name":"Assignment","src":"1216:14:0"}],"id":1765,"name":"ExpressionStatement","src":"1216:14:0"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"overloadedDeclarations":[null],"referencedDeclaration":1734,"type":"function (address)","value":"LogSetOwner"},"id":1766,"name":"Identifier","src":"1245:11:0"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1741,"type":"address","value":"owner"},"id":1767,"name":"Identifier","src":"1257:5:0"}],"id":1768,"name":"FunctionCall","src":"1245:18:0"}],"id":1769,"name":"EmitStatement","src":"1240:23:0"}],"id":1770,"name":"Block","src":"1206:64:0"}],"id":1771,"name":"FunctionDefinition","src":"1140:130:0"},{"attributes":{"documentation":null,"functionSelector":"7a9e5e4b","implemented":true,"isConstructor":false,"kind":"function","name":"setAuthority","overrides":null,"scope":1852,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"authority_","overrides":null,"scope":1790,"stateVariable":false,"storageLocation":"default","type":"contract DSAuthority","value":null,"visibility":"internal"},"children":[{"attributes":{"contractScope":null,"name":"DSAuthority","referencedDeclaration":1726,"type":"contract DSAuthority"},"id":1772,"name":"UserDefinedTypeName","src":"1298:11:0"}],"id":1773,"name":"VariableDeclaration","src":"1298:22:0"}],"id":1774,"name":"ParameterList","src":"1297:24:0"},{"attributes":{"parameters":[null]},"children":[],"id":1777,"name":"ParameterList","src":"1354:0:0"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1804,"type":"modifier ()","value":"auth"},"id":1775,"name":"Identifier","src":"1345:4:0"}],"id":1776,"name":"ModifierInvocation","src":"1345:4:0"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"contract DSAuthority"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1739,"type":"contract DSAuthority","value":"authority"},"id":1778,"name":"Identifier","src":"1364:9:0"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1773,"type":"contract DSAuthority","value":"authority_"},"id":1779,"name":"Identifier","src":"1376:10:0"}],"id":1780,"name":"Assignment","src":"1364:22:0"}],"id":1781,"name":"ExpressionStatement","src":"1364:22:0"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"overloadedDeclarations":[null],"referencedDeclaration":1730,"type":"function (address)","value":"LogSetAuthority"},"id":1782,"name":"Identifier","src":"1401:15:0"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_contract$_DSAuthority_$1726","typeString":"contract DSAuthority"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(address)"},"children":[{"attributes":{"name":"address","type":null},"id":1783,"name":"ElementaryTypeName","src":"1417:7:0"}],"id":1784,"name":"ElementaryTypeNameExpression","src":"1417:7:0"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1739,"type":"contract DSAuthority","value":"authority"},"id":1785,"name":"Identifier","src":"1425:9:0"}],"id":1786,"name":"FunctionCall","src":"1417:18:0"}],"id":1787,"name":"FunctionCall","src":"1401:35:0"}],"id":1788,"name":"EmitStatement","src":"1396:40:0"}],"id":1789,"name":"Block","src":"1354:89:0"}],"id":1790,"name":"FunctionDefinition","src":"1276:167:0"},{"attributes":{"documentation":null,"name":"auth","overrides":null,"virtual":false,"visibility":"internal"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1791,"name":"ParameterList","src":"1463:0:0"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_166b1fe4059d096071443d23428666de4ceaca5dfeecf186a801a33a4cdbddd9","typeString":"literal_string \"ds-auth-unauthorized\""}],"overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"type":"function (bool,string memory) pure","value":"require"},"id":1792,"name":"Identifier","src":"1473:7:0"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bool","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"},{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"overloadedDeclarations":[null],"referencedDeclaration":1851,"type":"function (address,bytes4) view returns (bool)","value":"isAuthorized"},"id":1793,"name":"Identifier","src":"1481:12:0"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"sender","referencedDeclaration":null,"type":"address payable"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-15,"type":"msg","value":"msg"},"id":1794,"name":"Identifier","src":"1494:3:0"}],"id":1795,"name":"MemberAccess","src":"1494:10:0"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"sig","referencedDeclaration":null,"type":"bytes4"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-15,"type":"msg","value":"msg"},"id":1796,"name":"Identifier","src":"1506:3:0"}],"id":1797,"name":"MemberAccess","src":"1506:7:0"}],"id":1798,"name":"FunctionCall","src":"1481:33:0"},{"attributes":{"argumentTypes":null,"hexvalue":"64732d617574682d756e617574686f72697a6564","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"ds-auth-unauthorized\"","value":"ds-auth-unauthorized"},"id":1799,"name":"Literal","src":"1516:22:0"}],"id":1800,"name":"FunctionCall","src":"1473:66:0"}],"id":1801,"name":"ExpressionStatement","src":"1473:66:0"},{"id":1802,"name":"PlaceholderStatement","src":"1549:1:0"}],"id":1803,"name":"Block","src":"1463:94:0"}],"id":1804,"name":"ModifierDefinition","src":"1449:108:0"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"isAuthorized","overrides":null,"scope":1852,"stateMutability":"view","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"src","overrides":null,"scope":1851,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":1805,"name":"ElementaryTypeName","src":"1585:7:0"}],"id":1806,"name":"VariableDeclaration","src":"1585:11:0"},{"attributes":{"constant":false,"mutability":"mutable","name":"sig","overrides":null,"scope":1851,"stateVariable":false,"storageLocation":"default","type":"bytes4","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes4","type":"bytes4"},"id":1807,"name":"ElementaryTypeName","src":"1598:6:0"}],"id":1808,"name":"VariableDeclaration","src":"1598:10:0"}],"id":1809,"name":"ParameterList","src":"1584:25:0"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":1851,"stateVariable":false,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":1810,"name":"ElementaryTypeName","src":"1633:4:0"}],"id":1811,"name":"VariableDeclaration","src":"1633:4:0"}],"id":1812,"name":"ParameterList","src":"1632:6:0"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_address","typeString":"address"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1806,"type":"address","value":"src"},"id":1813,"name":"Identifier","src":"1653:3:0"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_contract$_DSAuth_$1852","typeString":"contract DSAuth"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(address)"},"children":[{"attributes":{"name":"address","type":null},"id":1814,"name":"ElementaryTypeName","src":"1660:7:0"}],"id":1815,"name":"ElementaryTypeNameExpression","src":"1660:7:0"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-28,"type":"contract DSAuth","value":"this"},"id":1816,"name":"Identifier","src":"1668:4:0"}],"id":1817,"name":"FunctionCall","src":"1660:13:0"}],"id":1818,"name":"BinaryOperation","src":"1653:20:0"},{"children":[{"attributes":{"functionReturnParameters":1812},"children":[{"attributes":{"argumentTypes":null,"hexvalue":"74727565","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"bool","type":"bool","value":"true"},"id":1819,"name":"Literal","src":"1696:4:0"}],"id":1820,"name":"Return","src":"1689:11:0"}],"id":1821,"name":"Block","src":"1675:36:0"},{"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_address","typeString":"address"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1806,"type":"address","value":"src"},"id":1822,"name":"Identifier","src":"1721:3:0"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1741,"type":"address","value":"owner"},"id":1823,"name":"Identifier","src":"1728:5:0"}],"id":1824,"name":"BinaryOperation","src":"1721:12:0"},{"children":[{"attributes":{"functionReturnParameters":1812},"children":[{"attributes":{"argumentTypes":null,"hexvalue":"74727565","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"bool","type":"bool","value":"true"},"id":1825,"name":"Literal","src":"1756:4:0"}],"id":1826,"name":"Return","src":"1749:11:0"}],"id":1827,"name":"Block","src":"1735:36:0"},{"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_contract$_DSAuthority_$1726","typeString":"contract DSAuthority"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1739,"type":"contract DSAuthority","value":"authority"},"id":1828,"name":"Identifier","src":"1781:9:0"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":true,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"contract DSAuthority","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"overloadedDeclarations":[null],"referencedDeclaration":1726,"type":"type(contract DSAuthority)","value":"DSAuthority"},"id":1829,"name":"Identifier","src":"1794:11:0"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":1830,"name":"Literal","src":"1806:1:0"}],"id":1831,"name":"FunctionCall","src":"1794:14:0"}],"id":1832,"name":"BinaryOperation","src":"1781:27:0"},{"children":[{"attributes":{"functionReturnParameters":1812},"children":[{"attributes":{"argumentTypes":null,"hexvalue":"66616c7365","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"bool","type":"bool","value":"false"},"id":1833,"name":"Literal","src":"1831:5:0"}],"id":1834,"name":"Return","src":"1824:12:0"}],"id":1835,"name":"Block","src":"1810:37:0"},{"children":[{"attributes":{"functionReturnParameters":1812},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bool","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"canCall","referencedDeclaration":1725,"type":"function (address,address,bytes4) view external returns (bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1739,"type":"contract DSAuthority","value":"authority"},"id":1836,"name":"Identifier","src":"1874:9:0"}],"id":1837,"name":"MemberAccess","src":"1874:17:0"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1806,"type":"address","value":"src"},"id":1838,"name":"Identifier","src":"1892:3:0"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_contract$_DSAuth_$1852","typeString":"contract DSAuth"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(address)"},"children":[{"attributes":{"name":"address","type":null},"id":1839,"name":"ElementaryTypeName","src":"1897:7:0"}],"id":1840,"name":"ElementaryTypeNameExpression","src":"1897:7:0"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-28,"type":"contract DSAuth","value":"this"},"id":1841,"name":"Identifier","src":"1905:4:0"}],"id":1842,"name":"FunctionCall","src":"1897:13:0"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1808,"type":"bytes4","value":"sig"},"id":1843,"name":"Identifier","src":"1912:3:0"}],"id":1844,"name":"FunctionCall","src":"1874:42:0"}],"id":1845,"name":"Return","src":"1867:49:0"}],"id":1846,"name":"Block","src":"1853:74:0"}],"id":1847,"name":"IfStatement","src":"1777:150:0"}],"id":1848,"name":"IfStatement","src":"1717:210:0"}],"id":1849,"name":"IfStatement","src":"1649:278:0"}],"id":1850,"name":"Block","src":"1639:294:0"}],"id":1851,"name":"FunctionDefinition","src":"1563:370:0"}],"id":1852,"name":"ContractDefinition","src":"933:1002:0"}],"id":1853,"name":"SourceUnit","src":"643:1293:0"}},"lib/ds-stop/lib/ds-note/src/note.sol":{"AST":{"attributes":{"absolutePath":"lib/ds-stop/lib/ds-note/src/note.sol","exportedSymbols":{"DSNote":[1895]}},"children":[{"attributes":{"literals":["solidity",">=","0.4",".23"]},"id":1854,"name":"PragmaDirective","src":"709:25:1"},{"attributes":{"abstract":false,"baseContracts":[null],"contractDependencies":[null],"contractKind":"contract","documentation":null,"fullyImplemented":true,"linearizedBaseContracts":[1895],"name":"DSNote","scope":1896},"children":[{"attributes":{"anonymous":true,"documentation":null,"name":"LogNote"},"children":[{"children":[{"attributes":{"constant":false,"indexed":true,"mutability":"mutable","name":"sig","overrides":null,"scope":1868,"stateVariable":false,"storageLocation":"default","type":"bytes4","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes4","type":"bytes4"},"id":1855,"name":"ElementaryTypeName","src":"781:6:1"}],"id":1856,"name":"VariableDeclaration","src":"781:21:1"},{"attributes":{"constant":false,"indexed":true,"mutability":"mutable","name":"guy","overrides":null,"scope":1868,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":1857,"name":"ElementaryTypeName","src":"812:7:1"}],"id":1858,"name":"VariableDeclaration","src":"812:21:1"},{"attributes":{"constant":false,"indexed":true,"mutability":"mutable","name":"foo","overrides":null,"scope":1868,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1859,"name":"ElementaryTypeName","src":"843:7:1"}],"id":1860,"name":"VariableDeclaration","src":"843:21:1"},{"attributes":{"constant":false,"indexed":true,"mutability":"mutable","name":"bar","overrides":null,"scope":1868,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1861,"name":"ElementaryTypeName","src":"874:7:1"}],"id":1862,"name":"VariableDeclaration","src":"874:21:1"},{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"wad","overrides":null,"scope":1868,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint256","type":"uint256"},"id":1863,"name":"ElementaryTypeName","src":"905:7:1"}],"id":1864,"name":"VariableDeclaration","src":"905:21:1"},{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"fax","overrides":null,"scope":1868,"stateVariable":false,"storageLocation":"default","type":"bytes","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes","type":"bytes"},"id":1865,"name":"ElementaryTypeName","src":"936:5:1"}],"id":1866,"name":"VariableDeclaration","src":"936:21:1"}],"id":1867,"name":"ParameterList","src":"771:192:1"}],"id":1868,"name":"EventDefinition","src":"758:216:1"},{"attributes":{"documentation":null,"name":"note","overrides":null,"virtual":false,"visibility":"internal"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1869,"name":"ParameterList","src":"994:0:1"},{"children":[{"attributes":{"assignments":[1871],"initialValue":null},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"foo","overrides":null,"scope":1893,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1870,"name":"ElementaryTypeName","src":"1004:7:1"}],"id":1871,"name":"VariableDeclaration","src":"1004:11:1"}],"id":1872,"name":"VariableDeclarationStatement","src":"1004:11:1"},{"attributes":{"assignments":[1874],"initialValue":null},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"bar","overrides":null,"scope":1893,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1873,"name":"ElementaryTypeName","src":"1025:7:1"}],"id":1874,"name":"VariableDeclaration","src":"1025:11:1"}],"id":1875,"name":"VariableDeclarationStatement","src":"1025:11:1"},{"attributes":{"assignments":[1877],"initialValue":null},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"wad","overrides":null,"scope":1893,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint256","type":"uint256"},"id":1876,"name":"ElementaryTypeName","src":"1046:7:1"}],"id":1877,"name":"VariableDeclaration","src":"1046:11:1"}],"id":1878,"name":"VariableDeclarationStatement","src":"1046:11:1"},{"attributes":{"evmVersion":"istanbul","externalReferences":[{"declaration":1874,"isOffset":false,"isSlot":false,"src":"1126:3:1","valueSize":1},{"declaration":1871,"isOffset":false,"isSlot":false,"src":"1091:3:1","valueSize":1},{"declaration":1877,"isOffset":false,"isSlot":false,"src":"1162:3:1","valueSize":1}],"operations":"{\n foo := calldataload(4)\n bar := calldataload(36)\n wad := callvalue()\n}"},"children":[],"id":1879,"name":"InlineAssembly","src":"1068:122:1"},{"id":1880,"name":"PlaceholderStatement","src":"1200:1:1"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address_payable","typeString":"address payable"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"overloadedDeclarations":[null],"referencedDeclaration":1868,"type":"function (bytes4,address,bytes32,bytes32,uint256,bytes memory)","value":"LogNote"},"id":1881,"name":"Identifier","src":"1217:7:1"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"sig","referencedDeclaration":null,"type":"bytes4"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-15,"type":"msg","value":"msg"},"id":1882,"name":"Identifier","src":"1225:3:1"}],"id":1883,"name":"MemberAccess","src":"1225:7:1"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"sender","referencedDeclaration":null,"type":"address payable"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-15,"type":"msg","value":"msg"},"id":1884,"name":"Identifier","src":"1234:3:1"}],"id":1885,"name":"MemberAccess","src":"1234:10:1"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1871,"type":"bytes32","value":"foo"},"id":1886,"name":"Identifier","src":"1246:3:1"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1874,"type":"bytes32","value":"bar"},"id":1887,"name":"Identifier","src":"1251:3:1"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1877,"type":"uint256","value":"wad"},"id":1888,"name":"Identifier","src":"1256:3:1"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"data","referencedDeclaration":null,"type":"bytes calldata"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-15,"type":"msg","value":"msg"},"id":1889,"name":"Identifier","src":"1261:3:1"}],"id":1890,"name":"MemberAccess","src":"1261:8:1"}],"id":1891,"name":"FunctionCall","src":"1217:53:1"}],"id":1892,"name":"EmitStatement","src":"1212:58:1"}],"id":1893,"name":"Block","src":"994:283:1"}],"id":1894,"name":"ModifierDefinition","src":"980:297:1"}],"id":1895,"name":"ContractDefinition","src":"736:543:1"}],"id":1896,"name":"SourceUnit","src":"709:571:1"}},"lib/ds-test/src/test.sol":{"AST":{"attributes":{"absolutePath":"lib/ds-test/src/test.sol","exportedSymbols":{"DSTest":[1682]}},"children":[{"attributes":{"literals":["solidity",">=","0.4",".23"]},"id":1240,"name":"PragmaDirective","src":"643:25:2"},{"attributes":{"abstract":false,"baseContracts":[null],"contractDependencies":[null],"contractKind":"contract","documentation":null,"fullyImplemented":true,"linearizedBaseContracts":[1682],"name":"DSTest","scope":1683},"children":[{"attributes":{"anonymous":false,"documentation":null,"name":"eventListener"},"children":[{"children":[{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"target","overrides":null,"scope":1246,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":1241,"name":"ElementaryTypeName","src":"722:7:2"}],"id":1242,"name":"VariableDeclaration","src":"722:14:2"},{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"exact","overrides":null,"scope":1246,"stateVariable":false,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":1243,"name":"ElementaryTypeName","src":"738:4:2"}],"id":1244,"name":"VariableDeclaration","src":"738:10:2"}],"id":1245,"name":"ParameterList","src":"721:28:2"}],"id":1246,"name":"EventDefinition","src":"692:58:2"},{"attributes":{"anonymous":false,"documentation":null,"name":"logs"},"children":[{"children":[{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"","overrides":null,"scope":1250,"stateVariable":false,"storageLocation":"default","type":"bytes","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes","type":"bytes"},"id":1247,"name":"ElementaryTypeName","src":"785:5:2"}],"id":1248,"name":"VariableDeclaration","src":"785:5:2"}],"id":1249,"name":"ParameterList","src":"784:7:2"}],"id":1250,"name":"EventDefinition","src":"755:37:2"},{"attributes":{"anonymous":false,"documentation":null,"name":"log_bytes32"},"children":[{"children":[{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"","overrides":null,"scope":1254,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1251,"name":"ElementaryTypeName","src":"827:7:2"}],"id":1252,"name":"VariableDeclaration","src":"827:7:2"}],"id":1253,"name":"ParameterList","src":"826:9:2"}],"id":1254,"name":"EventDefinition","src":"797:39:2"},{"attributes":{"anonymous":false,"documentation":null,"name":"log_named_address"},"children":[{"children":[{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"key","overrides":null,"scope":1260,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1255,"name":"ElementaryTypeName","src":"871:7:2"}],"id":1256,"name":"VariableDeclaration","src":"871:11:2"},{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"val","overrides":null,"scope":1260,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":1257,"name":"ElementaryTypeName","src":"884:7:2"}],"id":1258,"name":"VariableDeclaration","src":"884:11:2"}],"id":1259,"name":"ParameterList","src":"870:26:2"}],"id":1260,"name":"EventDefinition","src":"841:56:2"},{"attributes":{"anonymous":false,"documentation":null,"name":"log_named_bytes32"},"children":[{"children":[{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"key","overrides":null,"scope":1266,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1261,"name":"ElementaryTypeName","src":"932:7:2"}],"id":1262,"name":"VariableDeclaration","src":"932:11:2"},{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"val","overrides":null,"scope":1266,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1263,"name":"ElementaryTypeName","src":"945:7:2"}],"id":1264,"name":"VariableDeclaration","src":"945:11:2"}],"id":1265,"name":"ParameterList","src":"931:26:2"}],"id":1266,"name":"EventDefinition","src":"902:56:2"},{"attributes":{"anonymous":false,"documentation":null,"name":"log_named_decimal_int"},"children":[{"children":[{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"key","overrides":null,"scope":1274,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1267,"name":"ElementaryTypeName","src":"993:7:2"}],"id":1268,"name":"VariableDeclaration","src":"993:11:2"},{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"val","overrides":null,"scope":1274,"stateVariable":false,"storageLocation":"default","type":"int256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"int","type":"int256"},"id":1269,"name":"ElementaryTypeName","src":"1006:3:2"}],"id":1270,"name":"VariableDeclaration","src":"1006:7:2"},{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"decimals","overrides":null,"scope":1274,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1271,"name":"ElementaryTypeName","src":"1015:4:2"}],"id":1272,"name":"VariableDeclaration","src":"1015:13:2"}],"id":1273,"name":"ParameterList","src":"992:37:2"}],"id":1274,"name":"EventDefinition","src":"963:67:2"},{"attributes":{"anonymous":false,"documentation":null,"name":"log_named_decimal_uint"},"children":[{"children":[{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"key","overrides":null,"scope":1282,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1275,"name":"ElementaryTypeName","src":"1065:7:2"}],"id":1276,"name":"VariableDeclaration","src":"1065:11:2"},{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"val","overrides":null,"scope":1282,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1277,"name":"ElementaryTypeName","src":"1078:4:2"}],"id":1278,"name":"VariableDeclaration","src":"1078:8:2"},{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"decimals","overrides":null,"scope":1282,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1279,"name":"ElementaryTypeName","src":"1088:4:2"}],"id":1280,"name":"VariableDeclaration","src":"1088:13:2"}],"id":1281,"name":"ParameterList","src":"1064:38:2"}],"id":1282,"name":"EventDefinition","src":"1035:68:2"},{"attributes":{"anonymous":false,"documentation":null,"name":"log_named_int"},"children":[{"children":[{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"key","overrides":null,"scope":1288,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1283,"name":"ElementaryTypeName","src":"1138:7:2"}],"id":1284,"name":"VariableDeclaration","src":"1138:11:2"},{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"val","overrides":null,"scope":1288,"stateVariable":false,"storageLocation":"default","type":"int256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"int","type":"int256"},"id":1285,"name":"ElementaryTypeName","src":"1151:3:2"}],"id":1286,"name":"VariableDeclaration","src":"1151:7:2"}],"id":1287,"name":"ParameterList","src":"1137:22:2"}],"id":1288,"name":"EventDefinition","src":"1108:52:2"},{"attributes":{"anonymous":false,"documentation":null,"name":"log_named_uint"},"children":[{"children":[{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"key","overrides":null,"scope":1294,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1289,"name":"ElementaryTypeName","src":"1195:7:2"}],"id":1290,"name":"VariableDeclaration","src":"1195:11:2"},{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"val","overrides":null,"scope":1294,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1291,"name":"ElementaryTypeName","src":"1208:4:2"}],"id":1292,"name":"VariableDeclaration","src":"1208:8:2"}],"id":1293,"name":"ParameterList","src":"1194:23:2"}],"id":1294,"name":"EventDefinition","src":"1165:53:2"},{"attributes":{"anonymous":false,"documentation":null,"name":"log_named_string"},"children":[{"children":[{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"key","overrides":null,"scope":1300,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1295,"name":"ElementaryTypeName","src":"1253:7:2"}],"id":1296,"name":"VariableDeclaration","src":"1253:11:2"},{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"val","overrides":null,"scope":1300,"stateVariable":false,"storageLocation":"default","type":"string","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"string","type":"string"},"id":1297,"name":"ElementaryTypeName","src":"1266:6:2"}],"id":1298,"name":"VariableDeclaration","src":"1266:10:2"}],"id":1299,"name":"ParameterList","src":"1252:25:2"}],"id":1300,"name":"EventDefinition","src":"1223:55:2"},{"attributes":{"constant":false,"functionSelector":"fa7626d4","mutability":"mutable","name":"IS_TEST","overrides":null,"scope":1682,"stateVariable":true,"storageLocation":"default","type":"bool","value":null,"visibility":"public"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":1301,"name":"ElementaryTypeName","src":"1284:4:2"}],"id":1302,"name":"VariableDeclaration","src":"1284:19:2"},{"attributes":{"constant":false,"functionSelector":"ba414fa6","mutability":"mutable","name":"failed","overrides":null,"scope":1682,"stateVariable":true,"storageLocation":"default","type":"bool","value":null,"visibility":"public"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":1303,"name":"ElementaryTypeName","src":"1309:4:2"}],"id":1304,"name":"VariableDeclaration","src":"1309:18:2"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":true,"kind":"constructor","modifiers":[null],"name":"","overrides":null,"scope":1682,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1305,"name":"ParameterList","src":"1345:2:2"},{"attributes":{"parameters":[null]},"children":[],"id":1306,"name":"ParameterList","src":"1357:0:2"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1302,"type":"bool","value":"IS_TEST"},"id":1307,"name":"Identifier","src":"1367:7:2"},{"attributes":{"argumentTypes":null,"hexvalue":"74727565","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"bool","type":"bool","value":"true"},"id":1308,"name":"Literal","src":"1377:4:2"}],"id":1309,"name":"Assignment","src":"1367:14:2"}],"id":1310,"name":"ExpressionStatement","src":"1367:14:2"}],"id":1311,"name":"Block","src":"1357:31:2"}],"id":1312,"name":"FunctionDefinition","src":"1334:54:2"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"fail","overrides":null,"scope":1682,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1313,"name":"ParameterList","src":"1407:2:2"},{"attributes":{"parameters":[null]},"children":[],"id":1314,"name":"ParameterList","src":"1419:0:2"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1304,"type":"bool","value":"failed"},"id":1315,"name":"Identifier","src":"1429:6:2"},{"attributes":{"argumentTypes":null,"hexvalue":"74727565","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"bool","type":"bool","value":"true"},"id":1316,"name":"Literal","src":"1438:4:2"}],"id":1317,"name":"Assignment","src":"1429:13:2"}],"id":1318,"name":"ExpressionStatement","src":"1429:13:2"}],"id":1319,"name":"Block","src":"1419:30:2"}],"id":1320,"name":"FunctionDefinition","src":"1394:55:2"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"expectEventsExact","overrides":null,"scope":1682,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"target","overrides":null,"scope":1331,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":1321,"name":"ElementaryTypeName","src":"1482:7:2"}],"id":1322,"name":"VariableDeclaration","src":"1482:14:2"}],"id":1323,"name":"ParameterList","src":"1481:16:2"},{"attributes":{"parameters":[null]},"children":[],"id":1324,"name":"ParameterList","src":"1507:0:2"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[null],"referencedDeclaration":1246,"type":"function (address,bool)","value":"eventListener"},"id":1325,"name":"Identifier","src":"1522:13:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1322,"type":"address","value":"target"},"id":1326,"name":"Identifier","src":"1536:6:2"},{"attributes":{"argumentTypes":null,"hexvalue":"74727565","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"bool","type":"bool","value":"true"},"id":1327,"name":"Literal","src":"1544:4:2"}],"id":1328,"name":"FunctionCall","src":"1522:27:2"}],"id":1329,"name":"EmitStatement","src":"1517:32:2"}],"id":1330,"name":"Block","src":"1507:49:2"}],"id":1331,"name":"FunctionDefinition","src":"1455:101:2"},{"attributes":{"documentation":null,"name":"logs_gas","overrides":null,"virtual":false,"visibility":"internal"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1332,"name":"ParameterList","src":"1579:2:2"},{"children":[{"attributes":{"assignments":[1334]},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"startGas","overrides":null,"scope":1351,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1333,"name":"ElementaryTypeName","src":"1592:4:2"}],"id":1334,"name":"VariableDeclaration","src":"1592:13:2"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"overloadedDeclarations":[null],"referencedDeclaration":-7,"type":"function () view returns (uint256)","value":"gasleft"},"id":1335,"name":"Identifier","src":"1608:7:2"}],"id":1336,"name":"FunctionCall","src":"1608:9:2"}],"id":1337,"name":"VariableDeclarationStatement","src":"1592:25:2"},{"id":1338,"name":"PlaceholderStatement","src":"1627:1:2"},{"attributes":{"assignments":[1340]},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"endGas","overrides":null,"scope":1351,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1339,"name":"ElementaryTypeName","src":"1638:4:2"}],"id":1340,"name":"VariableDeclaration","src":"1638:11:2"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"overloadedDeclarations":[null],"referencedDeclaration":-7,"type":"function () view returns (uint256)","value":"gasleft"},"id":1341,"name":"Identifier","src":"1652:7:2"}],"id":1342,"name":"FunctionCall","src":"1652:9:2"}],"id":1343,"name":"VariableDeclarationStatement","src":"1638:23:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_4498c2139ad6cf2beef3ae7bec34c4856d471c8680dfd28d553f117df74df6b7","typeString":"literal_string \"gas\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":1294,"type":"function (bytes32,uint256)","value":"log_named_uint"},"id":1344,"name":"Identifier","src":"1676:14:2"},{"attributes":{"argumentTypes":null,"hexvalue":"676173","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"gas\"","value":"gas"},"id":1345,"name":"Literal","src":"1691:5:2"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"-","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1334,"type":"uint256","value":"startGas"},"id":1346,"name":"Identifier","src":"1698:8:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1340,"type":"uint256","value":"endGas"},"id":1347,"name":"Identifier","src":"1709:6:2"}],"id":1348,"name":"BinaryOperation","src":"1698:17:2"}],"id":1349,"name":"FunctionCall","src":"1676:40:2"}],"id":1350,"name":"EmitStatement","src":"1671:45:2"}],"id":1351,"name":"Block","src":"1582:141:2"}],"id":1352,"name":"ModifierDefinition","src":"1562:161:2"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"assertTrue","overrides":null,"scope":1682,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"condition","overrides":null,"scope":1369,"stateVariable":false,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":1353,"name":"ElementaryTypeName","src":"1749:4:2"}],"id":1354,"name":"VariableDeclaration","src":"1749:14:2"}],"id":1355,"name":"ParameterList","src":"1748:16:2"},{"attributes":{"parameters":[null]},"children":[],"id":1356,"name":"ParameterList","src":"1774:0:2"},{"children":[{"attributes":{"falseBody":null},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!","prefix":true,"type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1354,"type":"bool","value":"condition"},"id":1357,"name":"Identifier","src":"1789:9:2"}],"id":1358,"name":"UnaryOperation","src":"1788:10:2"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_ede1f90ce497dfbddc2cf77d840cc7d29246a1b516a68ce6ebf2ce12d4a6e2e3","typeString":"literal_string \"Assertion failed\""}],"overloadedDeclarations":[null],"referencedDeclaration":1254,"type":"function (bytes32)","value":"log_bytes32"},"id":1359,"name":"Identifier","src":"1819:11:2"},{"attributes":{"argumentTypes":null,"hexvalue":"417373657274696f6e206661696c6564","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"Assertion failed\"","value":"Assertion failed"},"id":1360,"name":"Literal","src":"1831:18:2"}],"id":1361,"name":"FunctionCall","src":"1819:31:2"}],"id":1362,"name":"EmitStatement","src":"1814:36:2"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"overloadedDeclarations":[null],"referencedDeclaration":1320,"type":"function ()","value":"fail"},"id":1363,"name":"Identifier","src":"1864:4:2"}],"id":1364,"name":"FunctionCall","src":"1864:6:2"}],"id":1365,"name":"ExpressionStatement","src":"1864:6:2"}],"id":1366,"name":"Block","src":"1800:81:2"}],"id":1367,"name":"IfStatement","src":"1784:97:2"}],"id":1368,"name":"Block","src":"1774:113:2"}],"id":1369,"name":"FunctionDefinition","src":"1729:158:2"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"assertEq","overrides":null,"scope":1682,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"a","overrides":null,"scope":1399,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":1370,"name":"ElementaryTypeName","src":"1911:7:2"}],"id":1371,"name":"VariableDeclaration","src":"1911:9:2"},{"attributes":{"constant":false,"mutability":"mutable","name":"b","overrides":null,"scope":1399,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":1372,"name":"ElementaryTypeName","src":"1922:7:2"}],"id":1373,"name":"VariableDeclaration","src":"1922:9:2"}],"id":1374,"name":"ParameterList","src":"1910:22:2"},{"attributes":{"parameters":[null]},"children":[],"id":1375,"name":"ParameterList","src":"1942:0:2"},{"children":[{"attributes":{"falseBody":null},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_address","typeString":"address"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1371,"type":"address","value":"a"},"id":1376,"name":"Identifier","src":"1956:1:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1373,"type":"address","value":"b"},"id":1377,"name":"Identifier","src":"1961:1:2"}],"id":1378,"name":"BinaryOperation","src":"1956:6:2"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0683fdcecd7ea554c482acf92a0f1fdf00e7500cf6d859b38e57e7c328d27a83","typeString":"literal_string \"Error: Wrong `address' value\""}],"overloadedDeclarations":[null],"referencedDeclaration":1254,"type":"function (bytes32)","value":"log_bytes32"},"id":1379,"name":"Identifier","src":"1983:11:2"},{"attributes":{"argumentTypes":null,"hexvalue":"4572726f723a2057726f6e67206061646472657373272076616c7565","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"Error: Wrong `address' value\"","value":"Error: Wrong `address' value"},"id":1380,"name":"Literal","src":"1995:30:2"}],"id":1381,"name":"FunctionCall","src":"1983:43:2"}],"id":1382,"name":"EmitStatement","src":"1978:48:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \" Expected\""},{"typeIdentifier":"t_address","typeString":"address"}],"overloadedDeclarations":[null],"referencedDeclaration":1260,"type":"function (bytes32,address)","value":"log_named_address"},"id":1383,"name":"Identifier","src":"2045:17:2"},{"attributes":{"argumentTypes":null,"hexvalue":"20204578706563746564","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Expected\"","value":" Expected"},"id":1384,"name":"Literal","src":"2063:12:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1373,"type":"address","value":"b"},"id":1385,"name":"Identifier","src":"2077:1:2"}],"id":1386,"name":"FunctionCall","src":"2045:34:2"}],"id":1387,"name":"EmitStatement","src":"2040:39:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \" Actual\""},{"typeIdentifier":"t_address","typeString":"address"}],"overloadedDeclarations":[null],"referencedDeclaration":1260,"type":"function (bytes32,address)","value":"log_named_address"},"id":1388,"name":"Identifier","src":"2098:17:2"},{"attributes":{"argumentTypes":null,"hexvalue":"2020202041637475616c","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Actual\"","value":" Actual"},"id":1389,"name":"Literal","src":"2116:12:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1371,"type":"address","value":"a"},"id":1390,"name":"Identifier","src":"2130:1:2"}],"id":1391,"name":"FunctionCall","src":"2098:34:2"}],"id":1392,"name":"EmitStatement","src":"2093:39:2"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"overloadedDeclarations":[null],"referencedDeclaration":1320,"type":"function ()","value":"fail"},"id":1393,"name":"Identifier","src":"2146:4:2"}],"id":1394,"name":"FunctionCall","src":"2146:6:2"}],"id":1395,"name":"ExpressionStatement","src":"2146:6:2"}],"id":1396,"name":"Block","src":"1964:199:2"}],"id":1397,"name":"IfStatement","src":"1952:211:2"}],"id":1398,"name":"Block","src":"1942:227:2"}],"id":1399,"name":"FunctionDefinition","src":"1893:276:2"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"assertEq32","overrides":null,"scope":1682,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"a","overrides":null,"scope":1412,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1400,"name":"ElementaryTypeName","src":"2195:7:2"}],"id":1401,"name":"VariableDeclaration","src":"2195:9:2"},{"attributes":{"constant":false,"mutability":"mutable","name":"b","overrides":null,"scope":1412,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1402,"name":"ElementaryTypeName","src":"2206:7:2"}],"id":1403,"name":"VariableDeclaration","src":"2206:9:2"}],"id":1404,"name":"ParameterList","src":"2194:22:2"},{"attributes":{"parameters":[null]},"children":[],"id":1405,"name":"ParameterList","src":"2226:0:2"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"overloadedDeclarations":[1399,1442,1540,1570,1610],"referencedDeclaration":1442,"type":"function (bytes32,bytes32)","value":"assertEq"},"id":1406,"name":"Identifier","src":"2236:8:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1401,"type":"bytes32","value":"a"},"id":1407,"name":"Identifier","src":"2245:1:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1403,"type":"bytes32","value":"b"},"id":1408,"name":"Identifier","src":"2248:1:2"}],"id":1409,"name":"FunctionCall","src":"2236:14:2"}],"id":1410,"name":"ExpressionStatement","src":"2236:14:2"}],"id":1411,"name":"Block","src":"2226:31:2"}],"id":1412,"name":"FunctionDefinition","src":"2175:82:2"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"assertEq","overrides":null,"scope":1682,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"a","overrides":null,"scope":1442,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1413,"name":"ElementaryTypeName","src":"2281:7:2"}],"id":1414,"name":"VariableDeclaration","src":"2281:9:2"},{"attributes":{"constant":false,"mutability":"mutable","name":"b","overrides":null,"scope":1442,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1415,"name":"ElementaryTypeName","src":"2292:7:2"}],"id":1416,"name":"VariableDeclaration","src":"2292:9:2"}],"id":1417,"name":"ParameterList","src":"2280:22:2"},{"attributes":{"parameters":[null]},"children":[],"id":1418,"name":"ParameterList","src":"2312:0:2"},{"children":[{"attributes":{"falseBody":null},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1414,"type":"bytes32","value":"a"},"id":1419,"name":"Identifier","src":"2326:1:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1416,"type":"bytes32","value":"b"},"id":1420,"name":"Identifier","src":"2331:1:2"}],"id":1421,"name":"BinaryOperation","src":"2326:6:2"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_4692831fb71a6c15ae5c8368fb0b2d1551127a5550d21ad1554fd4ea230f9dc0","typeString":"literal_string \"Error: Wrong `bytes32' value\""}],"overloadedDeclarations":[null],"referencedDeclaration":1254,"type":"function (bytes32)","value":"log_bytes32"},"id":1422,"name":"Identifier","src":"2353:11:2"},{"attributes":{"argumentTypes":null,"hexvalue":"4572726f723a2057726f6e67206062797465733332272076616c7565","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"Error: Wrong `bytes32' value\"","value":"Error: Wrong `bytes32' value"},"id":1423,"name":"Literal","src":"2365:30:2"}],"id":1424,"name":"FunctionCall","src":"2353:43:2"}],"id":1425,"name":"EmitStatement","src":"2348:48:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \" Expected\""},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"overloadedDeclarations":[null],"referencedDeclaration":1266,"type":"function (bytes32,bytes32)","value":"log_named_bytes32"},"id":1426,"name":"Identifier","src":"2415:17:2"},{"attributes":{"argumentTypes":null,"hexvalue":"20204578706563746564","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Expected\"","value":" Expected"},"id":1427,"name":"Literal","src":"2433:12:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1416,"type":"bytes32","value":"b"},"id":1428,"name":"Identifier","src":"2447:1:2"}],"id":1429,"name":"FunctionCall","src":"2415:34:2"}],"id":1430,"name":"EmitStatement","src":"2410:39:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \" Actual\""},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"overloadedDeclarations":[null],"referencedDeclaration":1266,"type":"function (bytes32,bytes32)","value":"log_named_bytes32"},"id":1431,"name":"Identifier","src":"2468:17:2"},{"attributes":{"argumentTypes":null,"hexvalue":"2020202041637475616c","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Actual\"","value":" Actual"},"id":1432,"name":"Literal","src":"2486:12:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1414,"type":"bytes32","value":"a"},"id":1433,"name":"Identifier","src":"2500:1:2"}],"id":1434,"name":"FunctionCall","src":"2468:34:2"}],"id":1435,"name":"EmitStatement","src":"2463:39:2"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"overloadedDeclarations":[null],"referencedDeclaration":1320,"type":"function ()","value":"fail"},"id":1436,"name":"Identifier","src":"2516:4:2"}],"id":1437,"name":"FunctionCall","src":"2516:6:2"}],"id":1438,"name":"ExpressionStatement","src":"2516:6:2"}],"id":1439,"name":"Block","src":"2334:199:2"}],"id":1440,"name":"IfStatement","src":"2322:211:2"}],"id":1441,"name":"Block","src":"2312:227:2"}],"id":1442,"name":"FunctionDefinition","src":"2263:276:2"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"assertEqDecimal","overrides":null,"scope":1682,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"a","overrides":null,"scope":1476,"stateVariable":false,"storageLocation":"default","type":"int256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"int","type":"int256"},"id":1443,"name":"ElementaryTypeName","src":"2570:3:2"}],"id":1444,"name":"VariableDeclaration","src":"2570:5:2"},{"attributes":{"constant":false,"mutability":"mutable","name":"b","overrides":null,"scope":1476,"stateVariable":false,"storageLocation":"default","type":"int256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"int","type":"int256"},"id":1445,"name":"ElementaryTypeName","src":"2577:3:2"}],"id":1446,"name":"VariableDeclaration","src":"2577:5:2"},{"attributes":{"constant":false,"mutability":"mutable","name":"decimals","overrides":null,"scope":1476,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1447,"name":"ElementaryTypeName","src":"2584:4:2"}],"id":1448,"name":"VariableDeclaration","src":"2584:13:2"}],"id":1449,"name":"ParameterList","src":"2569:29:2"},{"attributes":{"parameters":[null]},"children":[],"id":1450,"name":"ParameterList","src":"2608:0:2"},{"children":[{"attributes":{"falseBody":null},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1444,"type":"int256","value":"a"},"id":1451,"name":"Identifier","src":"2622:1:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1446,"type":"int256","value":"b"},"id":1452,"name":"Identifier","src":"2627:1:2"}],"id":1453,"name":"BinaryOperation","src":"2622:6:2"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_d69bd525c8f7746901b6dd610d1ef8c9525af6efb22052f12dfd1e9f8d21ba64","typeString":"literal_string \"Error: Wrong fixed-point decimal\""}],"overloadedDeclarations":[null],"referencedDeclaration":1254,"type":"function (bytes32)","value":"log_bytes32"},"id":1454,"name":"Identifier","src":"2649:11:2"},{"attributes":{"argumentTypes":null,"hexvalue":"4572726f723a2057726f6e672066697865642d706f696e7420646563696d616c","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"Error: Wrong fixed-point decimal\"","value":"Error: Wrong fixed-point decimal"},"id":1455,"name":"Literal","src":"2661:34:2"}],"id":1456,"name":"FunctionCall","src":"2649:47:2"}],"id":1457,"name":"EmitStatement","src":"2644:52:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \" Expected\""},{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":1274,"type":"function (bytes32,int256,uint256)","value":"log_named_decimal_int"},"id":1458,"name":"Identifier","src":"2715:21:2"},{"attributes":{"argumentTypes":null,"hexvalue":"20204578706563746564","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Expected\"","value":" Expected"},"id":1459,"name":"Literal","src":"2737:12:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1446,"type":"int256","value":"b"},"id":1460,"name":"Identifier","src":"2751:1:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1448,"type":"uint256","value":"decimals"},"id":1461,"name":"Identifier","src":"2754:8:2"}],"id":1462,"name":"FunctionCall","src":"2715:48:2"}],"id":1463,"name":"EmitStatement","src":"2710:53:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \" Actual\""},{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":1274,"type":"function (bytes32,int256,uint256)","value":"log_named_decimal_int"},"id":1464,"name":"Identifier","src":"2782:21:2"},{"attributes":{"argumentTypes":null,"hexvalue":"2020202041637475616c","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Actual\"","value":" Actual"},"id":1465,"name":"Literal","src":"2804:12:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1444,"type":"int256","value":"a"},"id":1466,"name":"Identifier","src":"2818:1:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1448,"type":"uint256","value":"decimals"},"id":1467,"name":"Identifier","src":"2821:8:2"}],"id":1468,"name":"FunctionCall","src":"2782:48:2"}],"id":1469,"name":"EmitStatement","src":"2777:53:2"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"overloadedDeclarations":[null],"referencedDeclaration":1320,"type":"function ()","value":"fail"},"id":1470,"name":"Identifier","src":"2844:4:2"}],"id":1471,"name":"FunctionCall","src":"2844:6:2"}],"id":1472,"name":"ExpressionStatement","src":"2844:6:2"}],"id":1473,"name":"Block","src":"2630:231:2"}],"id":1474,"name":"IfStatement","src":"2618:243:2"}],"id":1475,"name":"Block","src":"2608:259:2"}],"id":1476,"name":"FunctionDefinition","src":"2545:322:2"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"assertEqDecimal","overrides":null,"scope":1682,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"a","overrides":null,"scope":1510,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1477,"name":"ElementaryTypeName","src":"2898:4:2"}],"id":1478,"name":"VariableDeclaration","src":"2898:6:2"},{"attributes":{"constant":false,"mutability":"mutable","name":"b","overrides":null,"scope":1510,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1479,"name":"ElementaryTypeName","src":"2906:4:2"}],"id":1480,"name":"VariableDeclaration","src":"2906:6:2"},{"attributes":{"constant":false,"mutability":"mutable","name":"decimals","overrides":null,"scope":1510,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1481,"name":"ElementaryTypeName","src":"2914:4:2"}],"id":1482,"name":"VariableDeclaration","src":"2914:13:2"}],"id":1483,"name":"ParameterList","src":"2897:31:2"},{"attributes":{"parameters":[null]},"children":[],"id":1484,"name":"ParameterList","src":"2938:0:2"},{"children":[{"attributes":{"falseBody":null},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1478,"type":"uint256","value":"a"},"id":1485,"name":"Identifier","src":"2952:1:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1480,"type":"uint256","value":"b"},"id":1486,"name":"Identifier","src":"2957:1:2"}],"id":1487,"name":"BinaryOperation","src":"2952:6:2"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_d69bd525c8f7746901b6dd610d1ef8c9525af6efb22052f12dfd1e9f8d21ba64","typeString":"literal_string \"Error: Wrong fixed-point decimal\""}],"overloadedDeclarations":[null],"referencedDeclaration":1254,"type":"function (bytes32)","value":"log_bytes32"},"id":1488,"name":"Identifier","src":"2979:11:2"},{"attributes":{"argumentTypes":null,"hexvalue":"4572726f723a2057726f6e672066697865642d706f696e7420646563696d616c","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"Error: Wrong fixed-point decimal\"","value":"Error: Wrong fixed-point decimal"},"id":1489,"name":"Literal","src":"2991:34:2"}],"id":1490,"name":"FunctionCall","src":"2979:47:2"}],"id":1491,"name":"EmitStatement","src":"2974:52:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \" Expected\""},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":1282,"type":"function (bytes32,uint256,uint256)","value":"log_named_decimal_uint"},"id":1492,"name":"Identifier","src":"3045:22:2"},{"attributes":{"argumentTypes":null,"hexvalue":"20204578706563746564","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Expected\"","value":" Expected"},"id":1493,"name":"Literal","src":"3068:12:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1480,"type":"uint256","value":"b"},"id":1494,"name":"Identifier","src":"3082:1:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1482,"type":"uint256","value":"decimals"},"id":1495,"name":"Identifier","src":"3085:8:2"}],"id":1496,"name":"FunctionCall","src":"3045:49:2"}],"id":1497,"name":"EmitStatement","src":"3040:54:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \" Actual\""},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":1282,"type":"function (bytes32,uint256,uint256)","value":"log_named_decimal_uint"},"id":1498,"name":"Identifier","src":"3113:22:2"},{"attributes":{"argumentTypes":null,"hexvalue":"2020202041637475616c","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Actual\"","value":" Actual"},"id":1499,"name":"Literal","src":"3136:12:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1478,"type":"uint256","value":"a"},"id":1500,"name":"Identifier","src":"3150:1:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1482,"type":"uint256","value":"decimals"},"id":1501,"name":"Identifier","src":"3153:8:2"}],"id":1502,"name":"FunctionCall","src":"3113:49:2"}],"id":1503,"name":"EmitStatement","src":"3108:54:2"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"overloadedDeclarations":[null],"referencedDeclaration":1320,"type":"function ()","value":"fail"},"id":1504,"name":"Identifier","src":"3176:4:2"}],"id":1505,"name":"FunctionCall","src":"3176:6:2"}],"id":1506,"name":"ExpressionStatement","src":"3176:6:2"}],"id":1507,"name":"Block","src":"2960:233:2"}],"id":1508,"name":"IfStatement","src":"2948:245:2"}],"id":1509,"name":"Block","src":"2938:261:2"}],"id":1510,"name":"FunctionDefinition","src":"2873:326:2"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"assertEq","overrides":null,"scope":1682,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"a","overrides":null,"scope":1540,"stateVariable":false,"storageLocation":"default","type":"int256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"int","type":"int256"},"id":1511,"name":"ElementaryTypeName","src":"3223:3:2"}],"id":1512,"name":"VariableDeclaration","src":"3223:5:2"},{"attributes":{"constant":false,"mutability":"mutable","name":"b","overrides":null,"scope":1540,"stateVariable":false,"storageLocation":"default","type":"int256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"int","type":"int256"},"id":1513,"name":"ElementaryTypeName","src":"3230:3:2"}],"id":1514,"name":"VariableDeclaration","src":"3230:5:2"}],"id":1515,"name":"ParameterList","src":"3222:14:2"},{"attributes":{"parameters":[null]},"children":[],"id":1516,"name":"ParameterList","src":"3246:0:2"},{"children":[{"attributes":{"falseBody":null},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1512,"type":"int256","value":"a"},"id":1517,"name":"Identifier","src":"3260:1:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1514,"type":"int256","value":"b"},"id":1518,"name":"Identifier","src":"3265:1:2"}],"id":1519,"name":"BinaryOperation","src":"3260:6:2"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c0e0094956790811a39df9244ceea912ebe74c30705441d571c418fb1519f880","typeString":"literal_string \"Error: Wrong `int' value\""}],"overloadedDeclarations":[null],"referencedDeclaration":1254,"type":"function (bytes32)","value":"log_bytes32"},"id":1520,"name":"Identifier","src":"3287:11:2"},{"attributes":{"argumentTypes":null,"hexvalue":"4572726f723a2057726f6e672060696e74272076616c7565","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"Error: Wrong `int' value\"","value":"Error: Wrong `int' value"},"id":1521,"name":"Literal","src":"3299:26:2"}],"id":1522,"name":"FunctionCall","src":"3287:39:2"}],"id":1523,"name":"EmitStatement","src":"3282:44:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \" Expected\""},{"typeIdentifier":"t_int256","typeString":"int256"}],"overloadedDeclarations":[null],"referencedDeclaration":1288,"type":"function (bytes32,int256)","value":"log_named_int"},"id":1524,"name":"Identifier","src":"3345:13:2"},{"attributes":{"argumentTypes":null,"hexvalue":"20204578706563746564","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Expected\"","value":" Expected"},"id":1525,"name":"Literal","src":"3359:12:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1514,"type":"int256","value":"b"},"id":1526,"name":"Identifier","src":"3373:1:2"}],"id":1527,"name":"FunctionCall","src":"3345:30:2"}],"id":1528,"name":"EmitStatement","src":"3340:35:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \" Actual\""},{"typeIdentifier":"t_int256","typeString":"int256"}],"overloadedDeclarations":[null],"referencedDeclaration":1288,"type":"function (bytes32,int256)","value":"log_named_int"},"id":1529,"name":"Identifier","src":"3394:13:2"},{"attributes":{"argumentTypes":null,"hexvalue":"2020202041637475616c","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Actual\"","value":" Actual"},"id":1530,"name":"Literal","src":"3408:12:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1512,"type":"int256","value":"a"},"id":1531,"name":"Identifier","src":"3422:1:2"}],"id":1532,"name":"FunctionCall","src":"3394:30:2"}],"id":1533,"name":"EmitStatement","src":"3389:35:2"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"overloadedDeclarations":[null],"referencedDeclaration":1320,"type":"function ()","value":"fail"},"id":1534,"name":"Identifier","src":"3438:4:2"}],"id":1535,"name":"FunctionCall","src":"3438:6:2"}],"id":1536,"name":"ExpressionStatement","src":"3438:6:2"}],"id":1537,"name":"Block","src":"3268:187:2"}],"id":1538,"name":"IfStatement","src":"3256:199:2"}],"id":1539,"name":"Block","src":"3246:215:2"}],"id":1540,"name":"FunctionDefinition","src":"3205:256:2"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"assertEq","overrides":null,"scope":1682,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"a","overrides":null,"scope":1570,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1541,"name":"ElementaryTypeName","src":"3485:4:2"}],"id":1542,"name":"VariableDeclaration","src":"3485:6:2"},{"attributes":{"constant":false,"mutability":"mutable","name":"b","overrides":null,"scope":1570,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1543,"name":"ElementaryTypeName","src":"3493:4:2"}],"id":1544,"name":"VariableDeclaration","src":"3493:6:2"}],"id":1545,"name":"ParameterList","src":"3484:16:2"},{"attributes":{"parameters":[null]},"children":[],"id":1546,"name":"ParameterList","src":"3510:0:2"},{"children":[{"attributes":{"falseBody":null},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1542,"type":"uint256","value":"a"},"id":1547,"name":"Identifier","src":"3524:1:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1544,"type":"uint256","value":"b"},"id":1548,"name":"Identifier","src":"3529:1:2"}],"id":1549,"name":"BinaryOperation","src":"3524:6:2"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_bfbe400f0ae367554cceb37d37e739b2ad5bf3dd93d1335f79b96bfc81492419","typeString":"literal_string \"Error: Wrong `uint' value\""}],"overloadedDeclarations":[null],"referencedDeclaration":1254,"type":"function (bytes32)","value":"log_bytes32"},"id":1550,"name":"Identifier","src":"3551:11:2"},{"attributes":{"argumentTypes":null,"hexvalue":"4572726f723a2057726f6e67206075696e74272076616c7565","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"Error: Wrong `uint' value\"","value":"Error: Wrong `uint' value"},"id":1551,"name":"Literal","src":"3563:27:2"}],"id":1552,"name":"FunctionCall","src":"3551:40:2"}],"id":1553,"name":"EmitStatement","src":"3546:45:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \" Expected\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":1294,"type":"function (bytes32,uint256)","value":"log_named_uint"},"id":1554,"name":"Identifier","src":"3610:14:2"},{"attributes":{"argumentTypes":null,"hexvalue":"20204578706563746564","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Expected\"","value":" Expected"},"id":1555,"name":"Literal","src":"3625:12:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1544,"type":"uint256","value":"b"},"id":1556,"name":"Identifier","src":"3639:1:2"}],"id":1557,"name":"FunctionCall","src":"3610:31:2"}],"id":1558,"name":"EmitStatement","src":"3605:36:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \" Actual\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":1294,"type":"function (bytes32,uint256)","value":"log_named_uint"},"id":1559,"name":"Identifier","src":"3660:14:2"},{"attributes":{"argumentTypes":null,"hexvalue":"2020202041637475616c","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Actual\"","value":" Actual"},"id":1560,"name":"Literal","src":"3675:12:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1542,"type":"uint256","value":"a"},"id":1561,"name":"Identifier","src":"3689:1:2"}],"id":1562,"name":"FunctionCall","src":"3660:31:2"}],"id":1563,"name":"EmitStatement","src":"3655:36:2"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"overloadedDeclarations":[null],"referencedDeclaration":1320,"type":"function ()","value":"fail"},"id":1564,"name":"Identifier","src":"3705:4:2"}],"id":1565,"name":"FunctionCall","src":"3705:6:2"}],"id":1566,"name":"ExpressionStatement","src":"3705:6:2"}],"id":1567,"name":"Block","src":"3532:190:2"}],"id":1568,"name":"IfStatement","src":"3520:202:2"}],"id":1569,"name":"Block","src":"3510:218:2"}],"id":1570,"name":"FunctionDefinition","src":"3467:261:2"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"assertEq","overrides":null,"scope":1682,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"a","overrides":null,"scope":1610,"stateVariable":false,"storageLocation":"memory","type":"string","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"string","type":"string"},"id":1571,"name":"ElementaryTypeName","src":"3752:6:2"}],"id":1572,"name":"VariableDeclaration","src":"3752:15:2"},{"attributes":{"constant":false,"mutability":"mutable","name":"b","overrides":null,"scope":1610,"stateVariable":false,"storageLocation":"memory","type":"string","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"string","type":"string"},"id":1573,"name":"ElementaryTypeName","src":"3769:6:2"}],"id":1574,"name":"VariableDeclaration","src":"3769:15:2"}],"id":1575,"name":"ParameterList","src":"3751:34:2"},{"attributes":{"parameters":[null]},"children":[],"id":1576,"name":"ParameterList","src":"3795:0:2"},{"children":[{"attributes":{"falseBody":null},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bytes32","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"overloadedDeclarations":[null],"referencedDeclaration":-8,"type":"function (bytes memory) pure returns (bytes32)","value":"keccak256"},"id":1577,"name":"Identifier","src":"3809:9:2"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bytes memory","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"member_name":"encodePacked","referencedDeclaration":null,"type":"function () pure returns (bytes memory)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-1,"type":"abi","value":"abi"},"id":1578,"name":"Identifier","src":"3819:3:2"}],"id":1579,"name":"MemberAccess","src":"3819:16:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1572,"type":"string memory","value":"a"},"id":1580,"name":"Identifier","src":"3836:1:2"}],"id":1581,"name":"FunctionCall","src":"3819:19:2"}],"id":1582,"name":"FunctionCall","src":"3809:30:2"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bytes32","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"overloadedDeclarations":[null],"referencedDeclaration":-8,"type":"function (bytes memory) pure returns (bytes32)","value":"keccak256"},"id":1583,"name":"Identifier","src":"3843:9:2"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bytes memory","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"member_name":"encodePacked","referencedDeclaration":null,"type":"function () pure returns (bytes memory)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-1,"type":"abi","value":"abi"},"id":1584,"name":"Identifier","src":"3853:3:2"}],"id":1585,"name":"MemberAccess","src":"3853:16:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1574,"type":"string memory","value":"b"},"id":1586,"name":"Identifier","src":"3870:1:2"}],"id":1587,"name":"FunctionCall","src":"3853:19:2"}],"id":1588,"name":"FunctionCall","src":"3843:30:2"}],"id":1589,"name":"BinaryOperation","src":"3809:64:2"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_83c5224f04ac35424460a8e03b6f9e3ab1e4093e7c35cb1f35d09462d9097c2b","typeString":"literal_string \"Error: Wrong `string' value\""}],"overloadedDeclarations":[null],"referencedDeclaration":1254,"type":"function (bytes32)","value":"log_bytes32"},"id":1590,"name":"Identifier","src":"3894:11:2"},{"attributes":{"argumentTypes":null,"hexvalue":"4572726f723a2057726f6e672060737472696e67272076616c7565","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"Error: Wrong `string' value\"","value":"Error: Wrong `string' value"},"id":1591,"name":"Literal","src":"3906:29:2"}],"id":1592,"name":"FunctionCall","src":"3894:42:2"}],"id":1593,"name":"EmitStatement","src":"3889:47:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \" Expected\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"overloadedDeclarations":[null],"referencedDeclaration":1300,"type":"function (bytes32,string memory)","value":"log_named_string"},"id":1594,"name":"Identifier","src":"3955:16:2"},{"attributes":{"argumentTypes":null,"hexvalue":"20204578706563746564","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Expected\"","value":" Expected"},"id":1595,"name":"Literal","src":"3972:12:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1574,"type":"string memory","value":"b"},"id":1596,"name":"Identifier","src":"3986:1:2"}],"id":1597,"name":"FunctionCall","src":"3955:33:2"}],"id":1598,"name":"EmitStatement","src":"3950:38:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \" Actual\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"overloadedDeclarations":[null],"referencedDeclaration":1300,"type":"function (bytes32,string memory)","value":"log_named_string"},"id":1599,"name":"Identifier","src":"4007:16:2"},{"attributes":{"argumentTypes":null,"hexvalue":"2020202041637475616c","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Actual\"","value":" Actual"},"id":1600,"name":"Literal","src":"4024:12:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1572,"type":"string memory","value":"a"},"id":1601,"name":"Identifier","src":"4038:1:2"}],"id":1602,"name":"FunctionCall","src":"4007:33:2"}],"id":1603,"name":"EmitStatement","src":"4002:38:2"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"overloadedDeclarations":[null],"referencedDeclaration":1320,"type":"function ()","value":"fail"},"id":1604,"name":"Identifier","src":"4054:4:2"}],"id":1605,"name":"FunctionCall","src":"4054:6:2"}],"id":1606,"name":"ExpressionStatement","src":"4054:6:2"}],"id":1607,"name":"Block","src":"3875:196:2"}],"id":1608,"name":"IfStatement","src":"3805:266:2"}],"id":1609,"name":"Block","src":"3795:282:2"}],"id":1610,"name":"FunctionDefinition","src":"3734:343:2"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"assertEq0","overrides":null,"scope":1682,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"a","overrides":null,"scope":1681,"stateVariable":false,"storageLocation":"memory","type":"bytes","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes","type":"bytes"},"id":1611,"name":"ElementaryTypeName","src":"4102:5:2"}],"id":1612,"name":"VariableDeclaration","src":"4102:14:2"},{"attributes":{"constant":false,"mutability":"mutable","name":"b","overrides":null,"scope":1681,"stateVariable":false,"storageLocation":"memory","type":"bytes","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes","type":"bytes"},"id":1613,"name":"ElementaryTypeName","src":"4118:5:2"}],"id":1614,"name":"VariableDeclaration","src":"4118:14:2"}],"id":1615,"name":"ParameterList","src":"4101:32:2"},{"attributes":{"parameters":[null]},"children":[],"id":1616,"name":"ParameterList","src":"4143:0:2"},{"children":[{"attributes":{"assignments":[1618]},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"ok","overrides":null,"scope":1680,"stateVariable":false,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":1617,"name":"ElementaryTypeName","src":"4153:4:2"}],"id":1618,"name":"VariableDeclaration","src":"4153:7:2"},{"attributes":{"argumentTypes":null,"hexvalue":"74727565","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"bool","type":"bool","value":"true"},"id":1619,"name":"Literal","src":"4163:4:2"}],"id":1620,"name":"VariableDeclarationStatement","src":"4153:14:2"},{"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"length","referencedDeclaration":null,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1612,"type":"bytes memory","value":"a"},"id":1621,"name":"Identifier","src":"4182:1:2"}],"id":1622,"name":"MemberAccess","src":"4182:8:2"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"length","referencedDeclaration":null,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1614,"type":"bytes memory","value":"b"},"id":1623,"name":"Identifier","src":"4194:1:2"}],"id":1624,"name":"MemberAccess","src":"4194:8:2"}],"id":1625,"name":"BinaryOperation","src":"4182:20:2"},{"children":[{"children":[{"attributes":{"assignments":[1627]},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"i","overrides":null,"scope":1651,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1626,"name":"ElementaryTypeName","src":"4223:4:2"}],"id":1627,"name":"VariableDeclaration","src":"4223:6:2"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":1628,"name":"Literal","src":"4232:1:2"}],"id":1629,"name":"VariableDeclarationStatement","src":"4223:10:2"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"<","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1627,"type":"uint256","value":"i"},"id":1630,"name":"Identifier","src":"4235:1:2"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"length","referencedDeclaration":null,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1612,"type":"bytes memory","value":"a"},"id":1631,"name":"Identifier","src":"4239:1:2"}],"id":1632,"name":"MemberAccess","src":"4239:8:2"}],"id":1633,"name":"BinaryOperation","src":"4235:12:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"++","prefix":false,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1627,"type":"uint256","value":"i"},"id":1634,"name":"Identifier","src":"4249:1:2"}],"id":1635,"name":"UnaryOperation","src":"4249:3:2"}],"id":1636,"name":"ExpressionStatement","src":"4249:3:2"},{"children":[{"attributes":{"falseBody":null},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"type":"bytes1"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1612,"type":"bytes memory","value":"a"},"id":1637,"name":"Identifier","src":"4276:1:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1627,"type":"uint256","value":"i"},"id":1638,"name":"Identifier","src":"4278:1:2"}],"id":1639,"name":"IndexAccess","src":"4276:4:2"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"type":"bytes1"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1614,"type":"bytes memory","value":"b"},"id":1640,"name":"Identifier","src":"4284:1:2"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1627,"type":"uint256","value":"i"},"id":1641,"name":"Identifier","src":"4286:1:2"}],"id":1642,"name":"IndexAccess","src":"4284:4:2"}],"id":1643,"name":"BinaryOperation","src":"4276:12:2"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1618,"type":"bool","value":"ok"},"id":1644,"name":"Identifier","src":"4312:2:2"},{"attributes":{"argumentTypes":null,"hexvalue":"66616c7365","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"bool","type":"bool","value":"false"},"id":1645,"name":"Literal","src":"4317:5:2"}],"id":1646,"name":"Assignment","src":"4312:10:2"}],"id":1647,"name":"ExpressionStatement","src":"4312:10:2"}],"id":1648,"name":"Block","src":"4290:51:2"}],"id":1649,"name":"IfStatement","src":"4272:69:2"}],"id":1650,"name":"Block","src":"4254:101:2"}],"id":1651,"name":"ForStatement","src":"4218:137:2"}],"id":1652,"name":"Block","src":"4204:161:2"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1618,"type":"bool","value":"ok"},"id":1653,"name":"Identifier","src":"4385:2:2"},{"attributes":{"argumentTypes":null,"hexvalue":"66616c7365","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"bool","type":"bool","value":"false"},"id":1654,"name":"Literal","src":"4390:5:2"}],"id":1655,"name":"Assignment","src":"4385:10:2"}],"id":1656,"name":"ExpressionStatement","src":"4385:10:2"}],"id":1657,"name":"Block","src":"4371:35:2"}],"id":1658,"name":"IfStatement","src":"4178:228:2"},{"attributes":{"falseBody":null},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!","prefix":true,"type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1618,"type":"bool","value":"ok"},"id":1659,"name":"Identifier","src":"4421:2:2"}],"id":1660,"name":"UnaryOperation","src":"4420:3:2"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_e13dabfba084146b128f33bac7ab7d52568f6e7fa7ec354ce8b34aa003052cf3","typeString":"literal_string \"Error: Wrong `bytes' value\""}],"overloadedDeclarations":[null],"referencedDeclaration":1254,"type":"function (bytes32)","value":"log_bytes32"},"id":1661,"name":"Identifier","src":"4444:11:2"},{"attributes":{"argumentTypes":null,"hexvalue":"4572726f723a2057726f6e6720606279746573272076616c7565","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"Error: Wrong `bytes' value\"","value":"Error: Wrong `bytes' value"},"id":1662,"name":"Literal","src":"4456:28:2"}],"id":1663,"name":"FunctionCall","src":"4444:41:2"}],"id":1664,"name":"EmitStatement","src":"4439:46:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \" Expected\""},{"typeIdentifier":"t_stringliteral_114abc6f5feef50a69018410f606b7d627316d08afceb7cb9a49953260f8f53a","typeString":"literal_string \"[cannot show `bytes' value]\""}],"overloadedDeclarations":[null],"referencedDeclaration":1266,"type":"function (bytes32,bytes32)","value":"log_named_bytes32"},"id":1665,"name":"Identifier","src":"4504:17:2"},{"attributes":{"argumentTypes":null,"hexvalue":"20204578706563746564","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Expected\"","value":" Expected"},"id":1666,"name":"Literal","src":"4522:12:2"},{"attributes":{"argumentTypes":null,"hexvalue":"5b63616e6e6f742073686f7720606279746573272076616c75655d","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"[cannot show `bytes' value]\"","value":"[cannot show `bytes' value]"},"id":1667,"name":"Literal","src":"4536:29:2"}],"id":1668,"name":"FunctionCall","src":"4504:62:2"}],"id":1669,"name":"EmitStatement","src":"4499:67:2"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_5ed16c64a79c5a2deea18e537423721285b2f504833bef698f18f980c85ab849","typeString":"literal_string \" Actual\""},{"typeIdentifier":"t_stringliteral_114abc6f5feef50a69018410f606b7d627316d08afceb7cb9a49953260f8f53a","typeString":"literal_string \"[cannot show `bytes' value]\""}],"overloadedDeclarations":[null],"referencedDeclaration":1266,"type":"function (bytes32,bytes32)","value":"log_named_bytes32"},"id":1670,"name":"Identifier","src":"4585:17:2"},{"attributes":{"argumentTypes":null,"hexvalue":"202041637475616c","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \" Actual\"","value":" Actual"},"id":1671,"name":"Literal","src":"4603:10:2"},{"attributes":{"argumentTypes":null,"hexvalue":"5b63616e6e6f742073686f7720606279746573272076616c75655d","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"[cannot show `bytes' value]\"","value":"[cannot show `bytes' value]"},"id":1672,"name":"Literal","src":"4615:29:2"}],"id":1673,"name":"FunctionCall","src":"4585:60:2"}],"id":1674,"name":"EmitStatement","src":"4580:65:2"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"overloadedDeclarations":[null],"referencedDeclaration":1320,"type":"function ()","value":"fail"},"id":1675,"name":"Identifier","src":"4659:4:2"}],"id":1676,"name":"FunctionCall","src":"4659:6:2"}],"id":1677,"name":"ExpressionStatement","src":"4659:6:2"}],"id":1678,"name":"Block","src":"4425:251:2"}],"id":1679,"name":"IfStatement","src":"4416:260:2"}],"id":1680,"name":"Block","src":"4143:539:2"}],"id":1681,"name":"FunctionDefinition","src":"4083:599:2"}],"id":1682,"name":"ContractDefinition","src":"670:4014:2"}],"id":1683,"name":"SourceUnit","src":"643:4042:2"}},"lib/ds-value/lib/ds-thing/lib/ds-math/src/math.sol":{"AST":{"attributes":{"absolutePath":"lib/ds-value/lib/ds-thing/lib/ds-math/src/math.sol","exportedSymbols":{"DSMath":[2199]}},"children":[{"attributes":{"literals":["solidity",">","0.4",".13"]},"id":1897,"name":"PragmaDirective","src":"696:24:3"},{"attributes":{"abstract":false,"baseContracts":[null],"contractDependencies":[null],"contractKind":"contract","documentation":null,"fullyImplemented":true,"linearizedBaseContracts":[2199],"name":"DSMath","scope":2200},"children":[{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"add","overrides":null,"scope":2199,"stateMutability":"pure","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"x","overrides":null,"scope":1919,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1898,"name":"ElementaryTypeName","src":"757:4:3"}],"id":1899,"name":"VariableDeclaration","src":"757:6:3"},{"attributes":{"constant":false,"mutability":"mutable","name":"y","overrides":null,"scope":1919,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1900,"name":"ElementaryTypeName","src":"765:4:3"}],"id":1901,"name":"VariableDeclaration","src":"765:6:3"}],"id":1902,"name":"ParameterList","src":"756:16:3"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"z","overrides":null,"scope":1919,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1903,"name":"ElementaryTypeName","src":"796:4:3"}],"id":1904,"name":"VariableDeclaration","src":"796:6:3"}],"id":1905,"name":"ParameterList","src":"795:8:3"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_3903056b84ed2aba2be78662dc6c5c99b160cebe9af9bd9493d0fc28ff16f6db","typeString":"literal_string \"ds-math-add-overflow\""}],"overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"type":"function (bool,string memory) pure","value":"require"},"id":1906,"name":"Identifier","src":"814:7:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":">=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1904,"type":"uint256","value":"z"},"id":1907,"name":"Identifier","src":"823:1:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"+","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1899,"type":"uint256","value":"x"},"id":1908,"name":"Identifier","src":"827:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1901,"type":"uint256","value":"y"},"id":1909,"name":"Identifier","src":"831:1:3"}],"id":1910,"name":"BinaryOperation","src":"827:5:3"}],"id":1911,"name":"Assignment","src":"823:9:3"}],"id":1912,"name":"TupleExpression","src":"822:11:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1899,"type":"uint256","value":"x"},"id":1913,"name":"Identifier","src":"837:1:3"}],"id":1914,"name":"BinaryOperation","src":"822:16:3"},{"attributes":{"argumentTypes":null,"hexvalue":"64732d6d6174682d6164642d6f766572666c6f77","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"ds-math-add-overflow\"","value":"ds-math-add-overflow"},"id":1915,"name":"Literal","src":"840:22:3"}],"id":1916,"name":"FunctionCall","src":"814:49:3"}],"id":1917,"name":"ExpressionStatement","src":"814:49:3"}],"id":1918,"name":"Block","src":"804:66:3"}],"id":1919,"name":"FunctionDefinition","src":"744:126:3"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"sub","overrides":null,"scope":2199,"stateMutability":"pure","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"x","overrides":null,"scope":1941,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1920,"name":"ElementaryTypeName","src":"888:4:3"}],"id":1921,"name":"VariableDeclaration","src":"888:6:3"},{"attributes":{"constant":false,"mutability":"mutable","name":"y","overrides":null,"scope":1941,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1922,"name":"ElementaryTypeName","src":"896:4:3"}],"id":1923,"name":"VariableDeclaration","src":"896:6:3"}],"id":1924,"name":"ParameterList","src":"887:16:3"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"z","overrides":null,"scope":1941,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1925,"name":"ElementaryTypeName","src":"927:4:3"}],"id":1926,"name":"VariableDeclaration","src":"927:6:3"}],"id":1927,"name":"ParameterList","src":"926:8:3"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_03b20b9f6e6e7905f077509fd420fb44afc685f254bcefe49147296e1ba25590","typeString":"literal_string \"ds-math-sub-underflow\""}],"overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"type":"function (bool,string memory) pure","value":"require"},"id":1928,"name":"Identifier","src":"945:7:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"<=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1926,"type":"uint256","value":"z"},"id":1929,"name":"Identifier","src":"954:1:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"-","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1921,"type":"uint256","value":"x"},"id":1930,"name":"Identifier","src":"958:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1923,"type":"uint256","value":"y"},"id":1931,"name":"Identifier","src":"962:1:3"}],"id":1932,"name":"BinaryOperation","src":"958:5:3"}],"id":1933,"name":"Assignment","src":"954:9:3"}],"id":1934,"name":"TupleExpression","src":"953:11:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1921,"type":"uint256","value":"x"},"id":1935,"name":"Identifier","src":"968:1:3"}],"id":1936,"name":"BinaryOperation","src":"953:16:3"},{"attributes":{"argumentTypes":null,"hexvalue":"64732d6d6174682d7375622d756e646572666c6f77","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"ds-math-sub-underflow\"","value":"ds-math-sub-underflow"},"id":1937,"name":"Literal","src":"971:23:3"}],"id":1938,"name":"FunctionCall","src":"945:50:3"}],"id":1939,"name":"ExpressionStatement","src":"945:50:3"}],"id":1940,"name":"Block","src":"935:67:3"}],"id":1941,"name":"FunctionDefinition","src":"875:127:3"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"mul","overrides":null,"scope":2199,"stateMutability":"pure","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"x","overrides":null,"scope":1969,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1942,"name":"ElementaryTypeName","src":"1020:4:3"}],"id":1943,"name":"VariableDeclaration","src":"1020:6:3"},{"attributes":{"constant":false,"mutability":"mutable","name":"y","overrides":null,"scope":1969,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1944,"name":"ElementaryTypeName","src":"1028:4:3"}],"id":1945,"name":"VariableDeclaration","src":"1028:6:3"}],"id":1946,"name":"ParameterList","src":"1019:16:3"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"z","overrides":null,"scope":1969,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1947,"name":"ElementaryTypeName","src":"1059:4:3"}],"id":1948,"name":"VariableDeclaration","src":"1059:6:3"}],"id":1949,"name":"ParameterList","src":"1058:8:3"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_25a0ef6406c6af6852555433653ce478274cd9f03a5dec44d001868a76b3bfdd","typeString":"literal_string \"ds-math-mul-overflow\""}],"overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"type":"function (bool,string memory) pure","value":"require"},"id":1950,"name":"Identifier","src":"1077:7:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"||","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1945,"type":"uint256","value":"y"},"id":1951,"name":"Identifier","src":"1085:1:3"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":1952,"name":"Literal","src":"1090:1:3"}],"id":1953,"name":"BinaryOperation","src":"1085:6:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"/","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1948,"type":"uint256","value":"z"},"id":1954,"name":"Identifier","src":"1096:1:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"*","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1943,"type":"uint256","value":"x"},"id":1955,"name":"Identifier","src":"1100:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1945,"type":"uint256","value":"y"},"id":1956,"name":"Identifier","src":"1104:1:3"}],"id":1957,"name":"BinaryOperation","src":"1100:5:3"}],"id":1958,"name":"Assignment","src":"1096:9:3"}],"id":1959,"name":"TupleExpression","src":"1095:11:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1945,"type":"uint256","value":"y"},"id":1960,"name":"Identifier","src":"1109:1:3"}],"id":1961,"name":"BinaryOperation","src":"1095:15:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1943,"type":"uint256","value":"x"},"id":1962,"name":"Identifier","src":"1114:1:3"}],"id":1963,"name":"BinaryOperation","src":"1095:20:3"}],"id":1964,"name":"BinaryOperation","src":"1085:30:3"},{"attributes":{"argumentTypes":null,"hexvalue":"64732d6d6174682d6d756c2d6f766572666c6f77","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"ds-math-mul-overflow\"","value":"ds-math-mul-overflow"},"id":1965,"name":"Literal","src":"1117:22:3"}],"id":1966,"name":"FunctionCall","src":"1077:63:3"}],"id":1967,"name":"ExpressionStatement","src":"1077:63:3"}],"id":1968,"name":"Block","src":"1067:80:3"}],"id":1969,"name":"FunctionDefinition","src":"1007:140:3"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"min","overrides":null,"scope":2199,"stateMutability":"pure","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"x","overrides":null,"scope":1986,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1970,"name":"ElementaryTypeName","src":"1166:4:3"}],"id":1971,"name":"VariableDeclaration","src":"1166:6:3"},{"attributes":{"constant":false,"mutability":"mutable","name":"y","overrides":null,"scope":1986,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1972,"name":"ElementaryTypeName","src":"1174:4:3"}],"id":1973,"name":"VariableDeclaration","src":"1174:6:3"}],"id":1974,"name":"ParameterList","src":"1165:16:3"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"z","overrides":null,"scope":1986,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1975,"name":"ElementaryTypeName","src":"1205:4:3"}],"id":1976,"name":"VariableDeclaration","src":"1205:6:3"}],"id":1977,"name":"ParameterList","src":"1204:8:3"},{"children":[{"attributes":{"functionReturnParameters":1977},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"<=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1971,"type":"uint256","value":"x"},"id":1978,"name":"Identifier","src":"1230:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1973,"type":"uint256","value":"y"},"id":1979,"name":"Identifier","src":"1235:1:3"}],"id":1980,"name":"BinaryOperation","src":"1230:6:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1971,"type":"uint256","value":"x"},"id":1981,"name":"Identifier","src":"1239:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1973,"type":"uint256","value":"y"},"id":1982,"name":"Identifier","src":"1243:1:3"}],"id":1983,"name":"Conditional","src":"1230:14:3"}],"id":1984,"name":"Return","src":"1223:21:3"}],"id":1985,"name":"Block","src":"1213:38:3"}],"id":1986,"name":"FunctionDefinition","src":"1153:98:3"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"max","overrides":null,"scope":2199,"stateMutability":"pure","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"x","overrides":null,"scope":2003,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1987,"name":"ElementaryTypeName","src":"1269:4:3"}],"id":1988,"name":"VariableDeclaration","src":"1269:6:3"},{"attributes":{"constant":false,"mutability":"mutable","name":"y","overrides":null,"scope":2003,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1989,"name":"ElementaryTypeName","src":"1277:4:3"}],"id":1990,"name":"VariableDeclaration","src":"1277:6:3"}],"id":1991,"name":"ParameterList","src":"1268:16:3"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"z","overrides":null,"scope":2003,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":1992,"name":"ElementaryTypeName","src":"1308:4:3"}],"id":1993,"name":"VariableDeclaration","src":"1308:6:3"}],"id":1994,"name":"ParameterList","src":"1307:8:3"},{"children":[{"attributes":{"functionReturnParameters":1994},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":">=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1988,"type":"uint256","value":"x"},"id":1995,"name":"Identifier","src":"1333:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1990,"type":"uint256","value":"y"},"id":1996,"name":"Identifier","src":"1338:1:3"}],"id":1997,"name":"BinaryOperation","src":"1333:6:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1988,"type":"uint256","value":"x"},"id":1998,"name":"Identifier","src":"1342:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1990,"type":"uint256","value":"y"},"id":1999,"name":"Identifier","src":"1346:1:3"}],"id":2000,"name":"Conditional","src":"1333:14:3"}],"id":2001,"name":"Return","src":"1326:21:3"}],"id":2002,"name":"Block","src":"1316:38:3"}],"id":2003,"name":"FunctionDefinition","src":"1256:98:3"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"imin","overrides":null,"scope":2199,"stateMutability":"pure","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"x","overrides":null,"scope":2020,"stateVariable":false,"storageLocation":"default","type":"int256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"int","type":"int256"},"id":2004,"name":"ElementaryTypeName","src":"1373:3:3"}],"id":2005,"name":"VariableDeclaration","src":"1373:5:3"},{"attributes":{"constant":false,"mutability":"mutable","name":"y","overrides":null,"scope":2020,"stateVariable":false,"storageLocation":"default","type":"int256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"int","type":"int256"},"id":2006,"name":"ElementaryTypeName","src":"1380:3:3"}],"id":2007,"name":"VariableDeclaration","src":"1380:5:3"}],"id":2008,"name":"ParameterList","src":"1372:14:3"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"z","overrides":null,"scope":2020,"stateVariable":false,"storageLocation":"default","type":"int256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"int","type":"int256"},"id":2009,"name":"ElementaryTypeName","src":"1410:3:3"}],"id":2010,"name":"VariableDeclaration","src":"1410:5:3"}],"id":2011,"name":"ParameterList","src":"1409:7:3"},{"children":[{"attributes":{"functionReturnParameters":2011},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"int256"},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"<=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2005,"type":"int256","value":"x"},"id":2012,"name":"Identifier","src":"1434:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2007,"type":"int256","value":"y"},"id":2013,"name":"Identifier","src":"1439:1:3"}],"id":2014,"name":"BinaryOperation","src":"1434:6:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2005,"type":"int256","value":"x"},"id":2015,"name":"Identifier","src":"1443:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2007,"type":"int256","value":"y"},"id":2016,"name":"Identifier","src":"1447:1:3"}],"id":2017,"name":"Conditional","src":"1434:14:3"}],"id":2018,"name":"Return","src":"1427:21:3"}],"id":2019,"name":"Block","src":"1417:38:3"}],"id":2020,"name":"FunctionDefinition","src":"1359:96:3"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"imax","overrides":null,"scope":2199,"stateMutability":"pure","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"x","overrides":null,"scope":2037,"stateVariable":false,"storageLocation":"default","type":"int256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"int","type":"int256"},"id":2021,"name":"ElementaryTypeName","src":"1474:3:3"}],"id":2022,"name":"VariableDeclaration","src":"1474:5:3"},{"attributes":{"constant":false,"mutability":"mutable","name":"y","overrides":null,"scope":2037,"stateVariable":false,"storageLocation":"default","type":"int256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"int","type":"int256"},"id":2023,"name":"ElementaryTypeName","src":"1481:3:3"}],"id":2024,"name":"VariableDeclaration","src":"1481:5:3"}],"id":2025,"name":"ParameterList","src":"1473:14:3"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"z","overrides":null,"scope":2037,"stateVariable":false,"storageLocation":"default","type":"int256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"int","type":"int256"},"id":2026,"name":"ElementaryTypeName","src":"1511:3:3"}],"id":2027,"name":"VariableDeclaration","src":"1511:5:3"}],"id":2028,"name":"ParameterList","src":"1510:7:3"},{"children":[{"attributes":{"functionReturnParameters":2028},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"int256"},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":">=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2022,"type":"int256","value":"x"},"id":2029,"name":"Identifier","src":"1535:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2024,"type":"int256","value":"y"},"id":2030,"name":"Identifier","src":"1540:1:3"}],"id":2031,"name":"BinaryOperation","src":"1535:6:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2022,"type":"int256","value":"x"},"id":2032,"name":"Identifier","src":"1544:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2024,"type":"int256","value":"y"},"id":2033,"name":"Identifier","src":"1548:1:3"}],"id":2034,"name":"Conditional","src":"1535:14:3"}],"id":2035,"name":"Return","src":"1528:21:3"}],"id":2036,"name":"Block","src":"1518:38:3"}],"id":2037,"name":"FunctionDefinition","src":"1460:96:3"},{"attributes":{"constant":true,"mutability":"constant","name":"WAD","overrides":null,"scope":2199,"stateVariable":true,"storageLocation":"default","type":"uint256","visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2038,"name":"ElementaryTypeName","src":"1562:4:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"},"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"operator":"**","type":"int_const 1000000000000000000"},"children":[{"attributes":{"argumentTypes":null,"hexvalue":"3130","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 10","value":"10"},"id":2039,"name":"Literal","src":"1582:2:3"},{"attributes":{"argumentTypes":null,"hexvalue":"3138","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 18","value":"18"},"id":2040,"name":"Literal","src":"1588:2:3"}],"id":2041,"name":"BinaryOperation","src":"1582:8:3"}],"id":2042,"name":"VariableDeclaration","src":"1562:28:3"},{"attributes":{"constant":true,"mutability":"constant","name":"RAY","overrides":null,"scope":2199,"stateVariable":true,"storageLocation":"default","type":"uint256","visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2043,"name":"ElementaryTypeName","src":"1596:4:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_rational_1000000000000000000000000000_by_1","typeString":"int_const 1000000000000000000000000000"},"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"operator":"**","type":"int_const 1000000000000000000000000000"},"children":[{"attributes":{"argumentTypes":null,"hexvalue":"3130","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 10","value":"10"},"id":2044,"name":"Literal","src":"1616:2:3"},{"attributes":{"argumentTypes":null,"hexvalue":"3237","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 27","value":"27"},"id":2045,"name":"Literal","src":"1622:2:3"}],"id":2046,"name":"BinaryOperation","src":"1616:8:3"}],"id":2047,"name":"VariableDeclaration","src":"1596:28:3"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"wmul","overrides":null,"scope":2199,"stateMutability":"pure","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"x","overrides":null,"scope":2071,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2048,"name":"ElementaryTypeName","src":"1683:4:3"}],"id":2049,"name":"VariableDeclaration","src":"1683:6:3"},{"attributes":{"constant":false,"mutability":"mutable","name":"y","overrides":null,"scope":2071,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2050,"name":"ElementaryTypeName","src":"1691:4:3"}],"id":2051,"name":"VariableDeclaration","src":"1691:6:3"}],"id":2052,"name":"ParameterList","src":"1682:16:3"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"z","overrides":null,"scope":2071,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2053,"name":"ElementaryTypeName","src":"1722:4:3"}],"id":2054,"name":"VariableDeclaration","src":"1722:6:3"}],"id":2055,"name":"ParameterList","src":"1721:8:3"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2054,"type":"uint256","value":"z"},"id":2056,"name":"Identifier","src":"1740:1:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"/","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":1919,"type":"function (uint256,uint256) pure returns (uint256)","value":"add"},"id":2057,"name":"Identifier","src":"1744:3:3"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":1969,"type":"function (uint256,uint256) pure returns (uint256)","value":"mul"},"id":2058,"name":"Identifier","src":"1748:3:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2049,"type":"uint256","value":"x"},"id":2059,"name":"Identifier","src":"1752:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2051,"type":"uint256","value":"y"},"id":2060,"name":"Identifier","src":"1755:1:3"}],"id":2061,"name":"FunctionCall","src":"1748:9:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"operator":"/","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2042,"type":"uint256","value":"WAD"},"id":2062,"name":"Identifier","src":"1759:3:3"},{"attributes":{"argumentTypes":null,"hexvalue":"32","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 2","value":"2"},"id":2063,"name":"Literal","src":"1765:1:3"}],"id":2064,"name":"BinaryOperation","src":"1759:7:3"}],"id":2065,"name":"FunctionCall","src":"1744:23:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2042,"type":"uint256","value":"WAD"},"id":2066,"name":"Identifier","src":"1770:3:3"}],"id":2067,"name":"BinaryOperation","src":"1744:29:3"}],"id":2068,"name":"Assignment","src":"1740:33:3"}],"id":2069,"name":"ExpressionStatement","src":"1740:33:3"}],"id":2070,"name":"Block","src":"1730:50:3"}],"id":2071,"name":"FunctionDefinition","src":"1669:111:3"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"rmul","overrides":null,"scope":2199,"stateMutability":"pure","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"x","overrides":null,"scope":2095,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2072,"name":"ElementaryTypeName","src":"1837:4:3"}],"id":2073,"name":"VariableDeclaration","src":"1837:6:3"},{"attributes":{"constant":false,"mutability":"mutable","name":"y","overrides":null,"scope":2095,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2074,"name":"ElementaryTypeName","src":"1845:4:3"}],"id":2075,"name":"VariableDeclaration","src":"1845:6:3"}],"id":2076,"name":"ParameterList","src":"1836:16:3"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"z","overrides":null,"scope":2095,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2077,"name":"ElementaryTypeName","src":"1876:4:3"}],"id":2078,"name":"VariableDeclaration","src":"1876:6:3"}],"id":2079,"name":"ParameterList","src":"1875:8:3"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2078,"type":"uint256","value":"z"},"id":2080,"name":"Identifier","src":"1894:1:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"/","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":1919,"type":"function (uint256,uint256) pure returns (uint256)","value":"add"},"id":2081,"name":"Identifier","src":"1898:3:3"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":1969,"type":"function (uint256,uint256) pure returns (uint256)","value":"mul"},"id":2082,"name":"Identifier","src":"1902:3:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2073,"type":"uint256","value":"x"},"id":2083,"name":"Identifier","src":"1906:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2075,"type":"uint256","value":"y"},"id":2084,"name":"Identifier","src":"1909:1:3"}],"id":2085,"name":"FunctionCall","src":"1902:9:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"operator":"/","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2047,"type":"uint256","value":"RAY"},"id":2086,"name":"Identifier","src":"1913:3:3"},{"attributes":{"argumentTypes":null,"hexvalue":"32","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 2","value":"2"},"id":2087,"name":"Literal","src":"1919:1:3"}],"id":2088,"name":"BinaryOperation","src":"1913:7:3"}],"id":2089,"name":"FunctionCall","src":"1898:23:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2047,"type":"uint256","value":"RAY"},"id":2090,"name":"Identifier","src":"1924:3:3"}],"id":2091,"name":"BinaryOperation","src":"1898:29:3"}],"id":2092,"name":"Assignment","src":"1894:33:3"}],"id":2093,"name":"ExpressionStatement","src":"1894:33:3"}],"id":2094,"name":"Block","src":"1884:50:3"}],"id":2095,"name":"FunctionDefinition","src":"1823:111:3"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"wdiv","overrides":null,"scope":2199,"stateMutability":"pure","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"x","overrides":null,"scope":2119,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2096,"name":"ElementaryTypeName","src":"1991:4:3"}],"id":2097,"name":"VariableDeclaration","src":"1991:6:3"},{"attributes":{"constant":false,"mutability":"mutable","name":"y","overrides":null,"scope":2119,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2098,"name":"ElementaryTypeName","src":"1999:4:3"}],"id":2099,"name":"VariableDeclaration","src":"1999:6:3"}],"id":2100,"name":"ParameterList","src":"1990:16:3"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"z","overrides":null,"scope":2119,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2101,"name":"ElementaryTypeName","src":"2030:4:3"}],"id":2102,"name":"VariableDeclaration","src":"2030:6:3"}],"id":2103,"name":"ParameterList","src":"2029:8:3"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2102,"type":"uint256","value":"z"},"id":2104,"name":"Identifier","src":"2048:1:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"/","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":1919,"type":"function (uint256,uint256) pure returns (uint256)","value":"add"},"id":2105,"name":"Identifier","src":"2052:3:3"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":1969,"type":"function (uint256,uint256) pure returns (uint256)","value":"mul"},"id":2106,"name":"Identifier","src":"2056:3:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2097,"type":"uint256","value":"x"},"id":2107,"name":"Identifier","src":"2060:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2042,"type":"uint256","value":"WAD"},"id":2108,"name":"Identifier","src":"2063:3:3"}],"id":2109,"name":"FunctionCall","src":"2056:11:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"/","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2099,"type":"uint256","value":"y"},"id":2110,"name":"Identifier","src":"2069:1:3"},{"attributes":{"argumentTypes":null,"hexvalue":"32","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 2","value":"2"},"id":2111,"name":"Literal","src":"2073:1:3"}],"id":2112,"name":"BinaryOperation","src":"2069:5:3"}],"id":2113,"name":"FunctionCall","src":"2052:23:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2099,"type":"uint256","value":"y"},"id":2114,"name":"Identifier","src":"2078:1:3"}],"id":2115,"name":"BinaryOperation","src":"2052:27:3"}],"id":2116,"name":"Assignment","src":"2048:31:3"}],"id":2117,"name":"ExpressionStatement","src":"2048:31:3"}],"id":2118,"name":"Block","src":"2038:48:3"}],"id":2119,"name":"FunctionDefinition","src":"1977:109:3"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"rdiv","overrides":null,"scope":2199,"stateMutability":"pure","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"x","overrides":null,"scope":2143,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2120,"name":"ElementaryTypeName","src":"2143:4:3"}],"id":2121,"name":"VariableDeclaration","src":"2143:6:3"},{"attributes":{"constant":false,"mutability":"mutable","name":"y","overrides":null,"scope":2143,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2122,"name":"ElementaryTypeName","src":"2151:4:3"}],"id":2123,"name":"VariableDeclaration","src":"2151:6:3"}],"id":2124,"name":"ParameterList","src":"2142:16:3"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"z","overrides":null,"scope":2143,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2125,"name":"ElementaryTypeName","src":"2182:4:3"}],"id":2126,"name":"VariableDeclaration","src":"2182:6:3"}],"id":2127,"name":"ParameterList","src":"2181:8:3"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2126,"type":"uint256","value":"z"},"id":2128,"name":"Identifier","src":"2200:1:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"/","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":1919,"type":"function (uint256,uint256) pure returns (uint256)","value":"add"},"id":2129,"name":"Identifier","src":"2204:3:3"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":1969,"type":"function (uint256,uint256) pure returns (uint256)","value":"mul"},"id":2130,"name":"Identifier","src":"2208:3:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2121,"type":"uint256","value":"x"},"id":2131,"name":"Identifier","src":"2212:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2047,"type":"uint256","value":"RAY"},"id":2132,"name":"Identifier","src":"2215:3:3"}],"id":2133,"name":"FunctionCall","src":"2208:11:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"/","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2123,"type":"uint256","value":"y"},"id":2134,"name":"Identifier","src":"2221:1:3"},{"attributes":{"argumentTypes":null,"hexvalue":"32","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 2","value":"2"},"id":2135,"name":"Literal","src":"2225:1:3"}],"id":2136,"name":"BinaryOperation","src":"2221:5:3"}],"id":2137,"name":"FunctionCall","src":"2204:23:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2123,"type":"uint256","value":"y"},"id":2138,"name":"Identifier","src":"2230:1:3"}],"id":2139,"name":"BinaryOperation","src":"2204:27:3"}],"id":2140,"name":"Assignment","src":"2200:31:3"}],"id":2141,"name":"ExpressionStatement","src":"2200:31:3"}],"id":2142,"name":"Block","src":"2190:48:3"}],"id":2143,"name":"FunctionDefinition","src":"2129:109:3"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"rpow","overrides":null,"scope":2199,"stateMutability":"pure","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"x","overrides":null,"scope":2198,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2144,"name":"ElementaryTypeName","src":"2815:4:3"}],"id":2145,"name":"VariableDeclaration","src":"2815:6:3"},{"attributes":{"constant":false,"mutability":"mutable","name":"n","overrides":null,"scope":2198,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2146,"name":"ElementaryTypeName","src":"2823:4:3"}],"id":2147,"name":"VariableDeclaration","src":"2823:6:3"}],"id":2148,"name":"ParameterList","src":"2814:16:3"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"z","overrides":null,"scope":2198,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":2149,"name":"ElementaryTypeName","src":"2854:4:3"}],"id":2150,"name":"VariableDeclaration","src":"2854:6:3"}],"id":2151,"name":"ParameterList","src":"2853:8:3"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2150,"type":"uint256","value":"z"},"id":2152,"name":"Identifier","src":"2872:1:3"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"%","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2147,"type":"uint256","value":"n"},"id":2153,"name":"Identifier","src":"2876:1:3"},{"attributes":{"argumentTypes":null,"hexvalue":"32","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 2","value":"2"},"id":2154,"name":"Literal","src":"2880:1:3"}],"id":2155,"name":"BinaryOperation","src":"2876:5:3"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":2156,"name":"Literal","src":"2885:1:3"}],"id":2157,"name":"BinaryOperation","src":"2876:10:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2145,"type":"uint256","value":"x"},"id":2158,"name":"Identifier","src":"2889:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2047,"type":"uint256","value":"RAY"},"id":2159,"name":"Identifier","src":"2893:3:3"}],"id":2160,"name":"Conditional","src":"2876:20:3"}],"id":2161,"name":"Assignment","src":"2872:24:3"}],"id":2162,"name":"ExpressionStatement","src":"2872:24:3"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"/=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2147,"type":"uint256","value":"n"},"id":2163,"name":"Identifier","src":"2912:1:3"},{"attributes":{"argumentTypes":null,"hexvalue":"32","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 2","value":"2"},"id":2164,"name":"Literal","src":"2917:1:3"}],"id":2165,"name":"Assignment","src":"2912:6:3"}],"id":2166,"name":"ExpressionStatement","src":"2912:6:3"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2147,"type":"uint256","value":"n"},"id":2167,"name":"Identifier","src":"2920:1:3"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":2168,"name":"Literal","src":"2925:1:3"}],"id":2169,"name":"BinaryOperation","src":"2920:6:3"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"/=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2147,"type":"uint256","value":"n"},"id":2170,"name":"Identifier","src":"2928:1:3"},{"attributes":{"argumentTypes":null,"hexvalue":"32","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 2","value":"2"},"id":2171,"name":"Literal","src":"2933:1:3"}],"id":2172,"name":"Assignment","src":"2928:6:3"}],"id":2173,"name":"ExpressionStatement","src":"2928:6:3"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2145,"type":"uint256","value":"x"},"id":2174,"name":"Identifier","src":"2950:1:3"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":2095,"type":"function (uint256,uint256) pure returns (uint256)","value":"rmul"},"id":2175,"name":"Identifier","src":"2954:4:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2145,"type":"uint256","value":"x"},"id":2176,"name":"Identifier","src":"2959:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2145,"type":"uint256","value":"x"},"id":2177,"name":"Identifier","src":"2962:1:3"}],"id":2178,"name":"FunctionCall","src":"2954:10:3"}],"id":2179,"name":"Assignment","src":"2950:14:3"}],"id":2180,"name":"ExpressionStatement","src":"2950:14:3"},{"attributes":{"falseBody":null},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"%","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2147,"type":"uint256","value":"n"},"id":2181,"name":"Identifier","src":"2983:1:3"},{"attributes":{"argumentTypes":null,"hexvalue":"32","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 2","value":"2"},"id":2182,"name":"Literal","src":"2987:1:3"}],"id":2183,"name":"BinaryOperation","src":"2983:5:3"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":2184,"name":"Literal","src":"2992:1:3"}],"id":2185,"name":"BinaryOperation","src":"2983:10:3"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2150,"type":"uint256","value":"z"},"id":2186,"name":"Identifier","src":"3013:1:3"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":2095,"type":"function (uint256,uint256) pure returns (uint256)","value":"rmul"},"id":2187,"name":"Identifier","src":"3017:4:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2150,"type":"uint256","value":"z"},"id":2188,"name":"Identifier","src":"3022:1:3"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":2145,"type":"uint256","value":"x"},"id":2189,"name":"Identifier","src":"3025:1:3"}],"id":2190,"name":"FunctionCall","src":"3017:10:3"}],"id":2191,"name":"Assignment","src":"3013:14:3"}],"id":2192,"name":"ExpressionStatement","src":"3013:14:3"}],"id":2193,"name":"Block","src":"2995:47:3"}],"id":2194,"name":"IfStatement","src":"2979:63:3"}],"id":2195,"name":"Block","src":"2936:116:3"}],"id":2196,"name":"ForStatement","src":"2907:145:3"}],"id":2197,"name":"Block","src":"2862:196:3"}],"id":2198,"name":"FunctionDefinition","src":"2801:257:3"}],"id":2199,"name":"ContractDefinition","src":"722:2338:3"}],"id":2200,"name":"SourceUnit","src":"696:2365:3"}},"lib/ds-value/lib/ds-thing/src/thing.sol":{"AST":{"attributes":{"absolutePath":"lib/ds-value/lib/ds-thing/src/thing.sol","exportedSymbols":{"DSThing":[1712]}},"children":[{"attributes":{"literals":["solidity",">=","0.4",".23"]},"id":1684,"name":"PragmaDirective","src":"753:25:4"},{"attributes":{"SourceUnit":1853,"absolutePath":"lib/ds-stop/lib/ds-auth/src/auth.sol","file":"ds-auth/auth.sol","scope":1713,"symbolAliases":[null],"unitAlias":""},"id":1685,"name":"ImportDirective","src":"780:26:4"},{"attributes":{"SourceUnit":1896,"absolutePath":"lib/ds-stop/lib/ds-note/src/note.sol","file":"ds-note/note.sol","scope":1713,"symbolAliases":[null],"unitAlias":""},"id":1686,"name":"ImportDirective","src":"807:26:4"},{"attributes":{"SourceUnit":2200,"absolutePath":"lib/ds-value/lib/ds-thing/lib/ds-math/src/math.sol","file":"ds-math/math.sol","scope":1713,"symbolAliases":[null],"unitAlias":""},"id":1687,"name":"ImportDirective","src":"834:26:4"},{"attributes":{"abstract":false,"contractDependencies":[1735,1852,1895,2199],"contractKind":"contract","documentation":null,"fullyImplemented":true,"linearizedBaseContracts":[1712,2199,1895,1852,1735],"name":"DSThing","scope":1713},"children":[{"attributes":{"arguments":null},"children":[{"attributes":{"contractScope":null,"name":"DSAuth","referencedDeclaration":1852,"type":"contract DSAuth"},"id":1688,"name":"UserDefinedTypeName","src":"882:6:4"}],"id":1689,"name":"InheritanceSpecifier","src":"882:6:4"},{"attributes":{"arguments":null},"children":[{"attributes":{"contractScope":null,"name":"DSNote","referencedDeclaration":1895,"type":"contract DSNote"},"id":1690,"name":"UserDefinedTypeName","src":"890:6:4"}],"id":1691,"name":"InheritanceSpecifier","src":"890:6:4"},{"attributes":{"arguments":null},"children":[{"attributes":{"contractScope":null,"name":"DSMath","referencedDeclaration":2199,"type":"contract DSMath"},"id":1692,"name":"UserDefinedTypeName","src":"898:6:4"}],"id":1693,"name":"InheritanceSpecifier","src":"898:6:4"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"S","overrides":null,"scope":1712,"stateMutability":"pure","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"s","overrides":null,"scope":1711,"stateVariable":false,"storageLocation":"memory","type":"string","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"string","type":"string"},"id":1694,"name":"ElementaryTypeName","src":"922:6:4"}],"id":1695,"name":"VariableDeclaration","src":"922:15:4"}],"id":1696,"name":"ParameterList","src":"921:17:4"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":1711,"stateVariable":false,"storageLocation":"default","type":"bytes4","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes4","type":"bytes4"},"id":1697,"name":"ElementaryTypeName","src":"962:6:4"}],"id":1698,"name":"VariableDeclaration","src":"962:6:4"}],"id":1699,"name":"ParameterList","src":"961:8:4"},{"children":[{"attributes":{"functionReturnParameters":1699},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bytes4","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(bytes4)"},"children":[{"attributes":{"name":"bytes4","type":null},"id":1700,"name":"ElementaryTypeName","src":"987:6:4"}],"id":1701,"name":"ElementaryTypeNameExpression","src":"987:6:4"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bytes32","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"overloadedDeclarations":[null],"referencedDeclaration":-8,"type":"function (bytes memory) pure returns (bytes32)","value":"keccak256"},"id":1702,"name":"Identifier","src":"994:9:4"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bytes memory","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"member_name":"encodePacked","referencedDeclaration":null,"type":"function () pure returns (bytes memory)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-1,"type":"abi","value":"abi"},"id":1703,"name":"Identifier","src":"1004:3:4"}],"id":1704,"name":"MemberAccess","src":"1004:16:4"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1695,"type":"string memory","value":"s"},"id":1705,"name":"Identifier","src":"1021:1:4"}],"id":1706,"name":"FunctionCall","src":"1004:19:4"}],"id":1707,"name":"FunctionCall","src":"994:30:4"}],"id":1708,"name":"FunctionCall","src":"987:38:4"}],"id":1709,"name":"Return","src":"980:45:4"}],"id":1710,"name":"Block","src":"970:62:4"}],"id":1711,"name":"FunctionDefinition","src":"911:121:4"}],"id":1712,"name":"ContractDefinition","src":"862:173:4"}],"id":1713,"name":"SourceUnit","src":"753:283:4"}},"lib/ds-value/src/value.sol":{"AST":{"attributes":{"absolutePath":"lib/ds-value/src/value.sol","exportedSymbols":{"DSValue":[1238]}},"children":[{"attributes":{"literals":["solidity",">=","0.4",".23"]},"id":1162,"name":"PragmaDirective","src":"746:25:5"},{"attributes":{"SourceUnit":1713,"absolutePath":"lib/ds-value/lib/ds-thing/src/thing.sol","file":"ds-thing/thing.sol","scope":1239,"symbolAliases":[null],"unitAlias":""},"id":1163,"name":"ImportDirective","src":"773:28:5"},{"attributes":{"abstract":false,"contractDependencies":[1712,1735,1852,1895,2199],"contractKind":"contract","documentation":null,"fullyImplemented":true,"linearizedBaseContracts":[1238,1712,2199,1895,1852,1735],"name":"DSValue","scope":1239},"children":[{"attributes":{"arguments":null},"children":[{"attributes":{"contractScope":null,"name":"DSThing","referencedDeclaration":1712,"type":"contract DSThing"},"id":1164,"name":"UserDefinedTypeName","src":"823:7:5"}],"id":1165,"name":"InheritanceSpecifier","src":"823:7:5"},{"attributes":{"constant":false,"mutability":"mutable","name":"has","overrides":null,"scope":1238,"stateVariable":true,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":1166,"name":"ElementaryTypeName","src":"837:4:5"}],"id":1167,"name":"VariableDeclaration","src":"837:11:5"},{"attributes":{"constant":false,"mutability":"mutable","name":"val","overrides":null,"scope":1238,"stateVariable":true,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1168,"name":"ElementaryTypeName","src":"854:7:5"}],"id":1169,"name":"VariableDeclaration","src":"854:11:5"},{"attributes":{"documentation":null,"functionSelector":"59e02dd7","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"peek","overrides":null,"scope":1238,"stateMutability":"view","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1170,"name":"ParameterList","src":"884:2:5"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":1181,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1171,"name":"ElementaryTypeName","src":"908:7:5"}],"id":1172,"name":"VariableDeclaration","src":"908:7:5"},{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":1181,"stateVariable":false,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":1173,"name":"ElementaryTypeName","src":"917:4:5"}],"id":1174,"name":"VariableDeclaration","src":"917:4:5"}],"id":1175,"name":"ParameterList","src":"907:15:5"},{"children":[{"attributes":{"functionReturnParameters":1175},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"tuple(bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1169,"type":"bytes32","value":"val"},"id":1176,"name":"Identifier","src":"941:3:5"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1167,"type":"bool","value":"has"},"id":1177,"name":"Identifier","src":"945:3:5"}],"id":1178,"name":"TupleExpression","src":"940:9:5"}],"id":1179,"name":"Return","src":"933:16:5"}],"id":1180,"name":"Block","src":"923:33:5"}],"id":1181,"name":"FunctionDefinition","src":"871:85:5"},{"attributes":{"documentation":null,"functionSelector":"57de26a4","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"read","overrides":null,"scope":1238,"stateMutability":"view","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1182,"name":"ParameterList","src":"974:2:5"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":1207,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1183,"name":"ElementaryTypeName","src":"998:7:5"}],"id":1184,"name":"VariableDeclaration","src":"998:7:5"}],"id":1185,"name":"ParameterList","src":"997:9:5"},{"children":[{"attributes":{"assignments":[1187],"initialValue":null},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"wut","overrides":null,"scope":1206,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1186,"name":"ElementaryTypeName","src":"1017:7:5"}],"id":1187,"name":"VariableDeclaration","src":"1017:11:5"}],"id":1188,"name":"VariableDeclarationStatement","src":"1017:11:5"},{"attributes":{"assignments":[1190],"initialValue":null},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"haz","overrides":null,"scope":1206,"stateVariable":false,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":1189,"name":"ElementaryTypeName","src":"1030:4:5"}],"id":1190,"name":"VariableDeclaration","src":"1030:8:5"}],"id":1191,"name":"VariableDeclarationStatement","src":"1030:8:5"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"tuple()"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"type":"tuple(bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1187,"type":"bytes32","value":"wut"},"id":1192,"name":"Identifier","src":"1049:3:5"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1190,"type":"bool","value":"haz"},"id":1193,"name":"Identifier","src":"1054:3:5"}],"id":1194,"name":"TupleExpression","src":"1048:10:5"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple(bytes32,bool)","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"overloadedDeclarations":[null],"referencedDeclaration":1181,"type":"function () view returns (bytes32,bool)","value":"peek"},"id":1195,"name":"Identifier","src":"1061:4:5"}],"id":1196,"name":"FunctionCall","src":"1061:6:5"}],"id":1197,"name":"Assignment","src":"1048:19:5"}],"id":1198,"name":"ExpressionStatement","src":"1048:19:5"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_819c10f32f08886fccc1385ad5b39a0651f419ec1f0411f78a16e7231e76bc3c","typeString":"literal_string \"haz-not\""}],"overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"type":"function (bool,string memory) pure","value":"require"},"id":1199,"name":"Identifier","src":"1077:7:5"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1190,"type":"bool","value":"haz"},"id":1200,"name":"Identifier","src":"1085:3:5"},{"attributes":{"argumentTypes":null,"hexvalue":"68617a2d6e6f74","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"haz-not\"","value":"haz-not"},"id":1201,"name":"Literal","src":"1090:9:5"}],"id":1202,"name":"FunctionCall","src":"1077:23:5"}],"id":1203,"name":"ExpressionStatement","src":"1077:23:5"},{"attributes":{"functionReturnParameters":1185},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1187,"type":"bytes32","value":"wut"},"id":1204,"name":"Identifier","src":"1117:3:5"}],"id":1205,"name":"Return","src":"1110:10:5"}],"id":1206,"name":"Block","src":"1007:120:5"}],"id":1207,"name":"FunctionDefinition","src":"961:166:5"},{"attributes":{"documentation":null,"functionSelector":"1504460f","implemented":true,"isConstructor":false,"kind":"function","name":"poke","overrides":null,"scope":1238,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"wut","overrides":null,"scope":1225,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1208,"name":"ElementaryTypeName","src":"1146:7:5"}],"id":1209,"name":"VariableDeclaration","src":"1146:11:5"}],"id":1210,"name":"ParameterList","src":"1145:13:5"},{"attributes":{"parameters":[null]},"children":[],"id":1215,"name":"ParameterList","src":"1176:0:5"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1894,"type":"modifier ()","value":"note"},"id":1211,"name":"Identifier","src":"1166:4:5"}],"id":1212,"name":"ModifierInvocation","src":"1166:4:5"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1804,"type":"modifier ()","value":"auth"},"id":1213,"name":"Identifier","src":"1171:4:5"}],"id":1214,"name":"ModifierInvocation","src":"1171:4:5"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"bytes32"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1169,"type":"bytes32","value":"val"},"id":1216,"name":"Identifier","src":"1186:3:5"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1209,"type":"bytes32","value":"wut"},"id":1217,"name":"Identifier","src":"1192:3:5"}],"id":1218,"name":"Assignment","src":"1186:9:5"}],"id":1219,"name":"ExpressionStatement","src":"1186:9:5"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1167,"type":"bool","value":"has"},"id":1220,"name":"Identifier","src":"1205:3:5"},{"attributes":{"argumentTypes":null,"hexvalue":"74727565","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"bool","type":"bool","value":"true"},"id":1221,"name":"Literal","src":"1211:4:5"}],"id":1222,"name":"Assignment","src":"1205:10:5"}],"id":1223,"name":"ExpressionStatement","src":"1205:10:5"}],"id":1224,"name":"Block","src":"1176:46:5"}],"id":1225,"name":"FunctionDefinition","src":"1132:90:5"},{"attributes":{"documentation":null,"functionSelector":"ac4c25b2","implemented":true,"isConstructor":false,"kind":"function","name":"void","overrides":null,"scope":1238,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1226,"name":"ParameterList","src":"1240:2:5"},{"attributes":{"parameters":[null]},"children":[],"id":1231,"name":"ParameterList","src":"1260:0:5"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1894,"type":"modifier ()","value":"note"},"id":1227,"name":"Identifier","src":"1250:4:5"}],"id":1228,"name":"ModifierInvocation","src":"1250:4:5"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1804,"type":"modifier ()","value":"auth"},"id":1229,"name":"Identifier","src":"1255:4:5"}],"id":1230,"name":"ModifierInvocation","src":"1255:4:5"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1167,"type":"bool","value":"has"},"id":1232,"name":"Identifier","src":"1290:3:5"},{"attributes":{"argumentTypes":null,"hexvalue":"66616c7365","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"bool","type":"bool","value":"false"},"id":1233,"name":"Literal","src":"1296:5:5"}],"id":1234,"name":"Assignment","src":"1290:11:5"}],"id":1235,"name":"ExpressionStatement","src":"1290:11:5"}],"id":1236,"name":"Block","src":"1260:48:5"}],"id":1237,"name":"FunctionDefinition","src":"1227:81:5"}],"id":1238,"name":"ContractDefinition","src":"803:507:5"}],"id":1239,"name":"SourceUnit","src":"746:565:5"}},"src/osm.sol":{"AST":{"attributes":{"absolutePath":"src/osm.sol","exportedSymbols":{"LibNote":[20],"OSM":[549]}},"children":[{"attributes":{"literals":["solidity",">=","0.5",".10"]},"id":1,"name":"PragmaDirective","src":"748:25:6"},{"attributes":{"SourceUnit":1239,"absolutePath":"lib/ds-value/src/value.sol","file":"ds-value/value.sol","scope":550,"symbolAliases":[null],"unitAlias":""},"id":2,"name":"ImportDirective","src":"775:28:6"},{"attributes":{"abstract":false,"baseContracts":[null],"contractDependencies":[null],"contractKind":"contract","documentation":null,"fullyImplemented":true,"linearizedBaseContracts":[20],"name":"LibNote","scope":550},"children":[{"attributes":{"anonymous":true,"documentation":null,"name":"LogNote"},"children":[{"children":[{"attributes":{"constant":false,"indexed":true,"mutability":"mutable","name":"sig","overrides":null,"scope":14,"stateVariable":false,"storageLocation":"default","type":"bytes4","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes4","type":"bytes4"},"id":3,"name":"ElementaryTypeName","src":"851:6:6"}],"id":4,"name":"VariableDeclaration","src":"851:21:6"},{"attributes":{"constant":false,"indexed":true,"mutability":"mutable","name":"usr","overrides":null,"scope":14,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":5,"name":"ElementaryTypeName","src":"882:7:6"}],"id":6,"name":"VariableDeclaration","src":"882:21:6"},{"attributes":{"constant":false,"indexed":true,"mutability":"mutable","name":"arg1","overrides":null,"scope":14,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":7,"name":"ElementaryTypeName","src":"913:7:6"}],"id":8,"name":"VariableDeclaration","src":"913:22:6"},{"attributes":{"constant":false,"indexed":true,"mutability":"mutable","name":"arg2","overrides":null,"scope":14,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":9,"name":"ElementaryTypeName","src":"945:7:6"}],"id":10,"name":"VariableDeclaration","src":"945:22:6"},{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"data","overrides":null,"scope":14,"stateVariable":false,"storageLocation":"default","type":"bytes","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes","type":"bytes"},"id":11,"name":"ElementaryTypeName","src":"977:5:6"}],"id":12,"name":"VariableDeclaration","src":"977:22:6"}],"id":13,"name":"ParameterList","src":"841:164:6"}],"id":14,"name":"EventDefinition","src":"828:188:6"},{"attributes":{"documentation":null,"name":"note","overrides":null,"virtual":false,"visibility":"internal"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":15,"name":"ParameterList","src":"1036:0:6"},{"children":[{"id":16,"name":"PlaceholderStatement","src":"1046:1:6"},{"attributes":{"evmVersion":"istanbul","externalReferences":[null],"operations":"{\n let mark := msize()\n mstore(0x40, add(mark, 288))\n mstore(mark, 0x20)\n mstore(add(mark, 0x20), 224)\n calldatacopy(add(mark, 0x40), 0, 224)\n log4(mark, 288, shl(224, shr(224, calldataload(0))), caller(), calldataload(4), calldataload(36))\n}"},"children":[],"id":17,"name":"InlineAssembly","src":"1057:905:6"}],"id":18,"name":"Block","src":"1036:932:6"}],"id":19,"name":"ModifierDefinition","src":"1022:946:6"}],"id":20,"name":"ContractDefinition","src":"805:1165:6"},{"attributes":{"abstract":false,"contractDependencies":[20],"contractKind":"contract","documentation":null,"fullyImplemented":true,"linearizedBaseContracts":[549,20],"name":"OSM","scope":550},"children":[{"attributes":{"arguments":null},"children":[{"attributes":{"contractScope":null,"name":"LibNote","referencedDeclaration":20,"type":"contract LibNote"},"id":21,"name":"UserDefinedTypeName","src":"1988:7:6"}],"id":22,"name":"InheritanceSpecifier","src":"1988:7:6"},{"attributes":{"constant":false,"functionSelector":"bf353dbb","mutability":"mutable","name":"wards","overrides":null,"scope":549,"stateVariable":true,"storageLocation":"default","type":"mapping(address => uint256)","value":null,"visibility":"public"},"children":[{"attributes":{"type":"mapping(address => uint256)"},"children":[{"attributes":{"name":"address","type":"address"},"id":23,"name":"ElementaryTypeName","src":"2032:7:6"},{"attributes":{"name":"uint","type":"uint256"},"id":24,"name":"ElementaryTypeName","src":"2043:4:6"}],"id":25,"name":"Mapping","src":"2023:25:6"}],"id":26,"name":"VariableDeclaration","src":"2023:38:6"},{"attributes":{"documentation":null,"functionSelector":"65fae35e","implemented":true,"isConstructor":false,"kind":"function","name":"rely","overrides":null,"scope":549,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"usr","overrides":null,"scope":42,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":27,"name":"ElementaryTypeName","src":"2081:7:6"}],"id":28,"name":"VariableDeclaration","src":"2081:11:6"}],"id":29,"name":"ParameterList","src":"2080:13:6"},{"attributes":{"parameters":[null]},"children":[],"id":34,"name":"ParameterList","src":"2113:0:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":19,"type":"modifier ()","value":"note"},"id":30,"name":"Identifier","src":"2103:4:6"}],"id":31,"name":"ModifierInvocation","src":"2103:4:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":72,"type":"modifier ()","value":"auth"},"id":32,"name":"Identifier","src":"2108:4:6"}],"id":33,"name":"ModifierInvocation","src":"2108:4:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":26,"type":"mapping(address => uint256)","value":"wards"},"id":35,"name":"Identifier","src":"2115:5:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":28,"type":"address","value":"usr"},"id":36,"name":"Identifier","src":"2121:3:6"}],"id":37,"name":"IndexAccess","src":"2115:10:6"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":38,"name":"Literal","src":"2128:1:6"}],"id":39,"name":"Assignment","src":"2115:14:6"}],"id":40,"name":"ExpressionStatement","src":"2115:14:6"}],"id":41,"name":"Block","src":"2113:19:6"}],"id":42,"name":"FunctionDefinition","src":"2067:65:6"},{"attributes":{"documentation":null,"functionSelector":"9c52a7f1","implemented":true,"isConstructor":false,"kind":"function","name":"deny","overrides":null,"scope":549,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"usr","overrides":null,"scope":58,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":43,"name":"ElementaryTypeName","src":"2151:7:6"}],"id":44,"name":"VariableDeclaration","src":"2151:11:6"}],"id":45,"name":"ParameterList","src":"2150:13:6"},{"attributes":{"parameters":[null]},"children":[],"id":50,"name":"ParameterList","src":"2183:0:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":19,"type":"modifier ()","value":"note"},"id":46,"name":"Identifier","src":"2173:4:6"}],"id":47,"name":"ModifierInvocation","src":"2173:4:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":72,"type":"modifier ()","value":"auth"},"id":48,"name":"Identifier","src":"2178:4:6"}],"id":49,"name":"ModifierInvocation","src":"2178:4:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":26,"type":"mapping(address => uint256)","value":"wards"},"id":51,"name":"Identifier","src":"2185:5:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":44,"type":"address","value":"usr"},"id":52,"name":"Identifier","src":"2191:3:6"}],"id":53,"name":"IndexAccess","src":"2185:10:6"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":54,"name":"Literal","src":"2198:1:6"}],"id":55,"name":"Assignment","src":"2185:14:6"}],"id":56,"name":"ExpressionStatement","src":"2185:14:6"}],"id":57,"name":"Block","src":"2183:19:6"}],"id":58,"name":"FunctionDefinition","src":"2137:65:6"},{"attributes":{"documentation":null,"name":"auth","overrides":null,"virtual":false,"visibility":"internal"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":59,"name":"ParameterList","src":"2221:0:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_14599a0ba4e45f5f7919decd66cf685cd8d5ba9b99926c5eb3685adafdcc592f","typeString":"literal_string \"OSM/not-authorized\""}],"overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"type":"function (bool,string memory) pure","value":"require"},"id":60,"name":"Identifier","src":"2231:7:6"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":26,"type":"mapping(address => uint256)","value":"wards"},"id":61,"name":"Identifier","src":"2239:5:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"sender","referencedDeclaration":null,"type":"address payable"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-15,"type":"msg","value":"msg"},"id":62,"name":"Identifier","src":"2245:3:6"}],"id":63,"name":"MemberAccess","src":"2245:10:6"}],"id":64,"name":"IndexAccess","src":"2239:17:6"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":65,"name":"Literal","src":"2260:1:6"}],"id":66,"name":"BinaryOperation","src":"2239:22:6"},{"attributes":{"argumentTypes":null,"hexvalue":"4f534d2f6e6f742d617574686f72697a6564","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"OSM/not-authorized\"","value":"OSM/not-authorized"},"id":67,"name":"Literal","src":"2263:20:6"}],"id":68,"name":"FunctionCall","src":"2231:53:6"}],"id":69,"name":"ExpressionStatement","src":"2231:53:6"},{"id":70,"name":"PlaceholderStatement","src":"2294:1:6"}],"id":71,"name":"Block","src":"2221:81:6"}],"id":72,"name":"ModifierDefinition","src":"2207:95:6"},{"attributes":{"constant":false,"functionSelector":"75f12b21","mutability":"mutable","name":"stopped","overrides":null,"scope":549,"stateVariable":true,"storageLocation":"default","type":"uint256","value":null,"visibility":"public"},"children":[{"attributes":{"name":"uint256","type":"uint256"},"id":73,"name":"ElementaryTypeName","src":"2328:7:6"}],"id":74,"name":"VariableDeclaration","src":"2328:22:6"},{"attributes":{"documentation":null,"name":"stoppable","overrides":null,"virtual":false,"visibility":"internal"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":75,"name":"ParameterList","src":"2375:0:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_f7405d36cce758f396889bfde3c3860cbdf5ccb330c8f1531e57ba5e85495392","typeString":"literal_string \"OSM/is-stopped\""}],"overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"type":"function (bool,string memory) pure","value":"require"},"id":76,"name":"Identifier","src":"2377:7:6"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":74,"type":"uint256","value":"stopped"},"id":77,"name":"Identifier","src":"2385:7:6"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":78,"name":"Literal","src":"2396:1:6"}],"id":79,"name":"BinaryOperation","src":"2385:12:6"},{"attributes":{"argumentTypes":null,"hexvalue":"4f534d2f69732d73746f70706564","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"OSM/is-stopped\"","value":"OSM/is-stopped"},"id":80,"name":"Literal","src":"2399:16:6"}],"id":81,"name":"FunctionCall","src":"2377:39:6"}],"id":82,"name":"ExpressionStatement","src":"2377:39:6"},{"id":83,"name":"PlaceholderStatement","src":"2418:1:6"}],"id":84,"name":"Block","src":"2375:47:6"}],"id":85,"name":"ModifierDefinition","src":"2356:66:6"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"add","overrides":null,"scope":549,"stateMutability":"pure","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"x","overrides":null,"scope":107,"stateVariable":false,"storageLocation":"default","type":"uint64","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint64","type":"uint64"},"id":86,"name":"ElementaryTypeName","src":"2461:6:6"}],"id":87,"name":"VariableDeclaration","src":"2461:8:6"},{"attributes":{"constant":false,"mutability":"mutable","name":"y","overrides":null,"scope":107,"stateVariable":false,"storageLocation":"default","type":"uint64","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint64","type":"uint64"},"id":88,"name":"ElementaryTypeName","src":"2471:6:6"}],"id":89,"name":"VariableDeclaration","src":"2471:8:6"}],"id":90,"name":"ParameterList","src":"2460:20:6"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"z","overrides":null,"scope":107,"stateVariable":false,"storageLocation":"default","type":"uint64","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint64","type":"uint64"},"id":91,"name":"ElementaryTypeName","src":"2504:6:6"}],"id":92,"name":"VariableDeclaration","src":"2504:8:6"}],"id":93,"name":"ParameterList","src":"2503:10:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint64"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":92,"type":"uint64","value":"z"},"id":94,"name":"Identifier","src":"2524:1:6"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"+","type":"uint64"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":87,"type":"uint64","value":"x"},"id":95,"name":"Identifier","src":"2528:1:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":89,"type":"uint64","value":"y"},"id":96,"name":"Identifier","src":"2532:1:6"}],"id":97,"name":"BinaryOperation","src":"2528:5:6"}],"id":98,"name":"Assignment","src":"2524:9:6"}],"id":99,"name":"ExpressionStatement","src":"2524:9:6"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"type":"function (bool) pure","value":"require"},"id":100,"name":"Identifier","src":"2543:7:6"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":">=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":92,"type":"uint64","value":"z"},"id":101,"name":"Identifier","src":"2551:1:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":87,"type":"uint64","value":"x"},"id":102,"name":"Identifier","src":"2556:1:6"}],"id":103,"name":"BinaryOperation","src":"2551:6:6"}],"id":104,"name":"FunctionCall","src":"2543:15:6"}],"id":105,"name":"ExpressionStatement","src":"2543:15:6"}],"id":106,"name":"Block","src":"2514:51:6"}],"id":107,"name":"FunctionDefinition","src":"2448:117:6"},{"attributes":{"constant":false,"functionSelector":"2e7dc6af","mutability":"mutable","name":"src","overrides":null,"scope":549,"stateVariable":true,"storageLocation":"default","type":"address","value":null,"visibility":"public"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":108,"name":"ElementaryTypeName","src":"2571:7:6"}],"id":109,"name":"VariableDeclaration","src":"2571:18:6"},{"attributes":{"constant":true,"mutability":"constant","name":"ONE_HOUR","overrides":null,"scope":549,"stateVariable":true,"storageLocation":"default","type":"uint16","visibility":"internal"},"children":[{"attributes":{"name":"uint16","type":"uint16"},"id":110,"name":"ElementaryTypeName","src":"2595:6:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":true,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint16","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_rational_3600_by_1","typeString":"int_const 3600"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint16)"},"children":[{"attributes":{"name":"uint16","type":null},"id":111,"name":"ElementaryTypeName","src":"2623:6:6"}],"id":112,"name":"ElementaryTypeNameExpression","src":"2623:6:6"},{"attributes":{"argumentTypes":null,"hexvalue":"33363030","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 3600","value":"3600"},"id":113,"name":"Literal","src":"2630:4:6"}],"id":114,"name":"FunctionCall","src":"2623:12:6"}],"id":115,"name":"VariableDeclaration","src":"2595:40:6"},{"attributes":{"constant":false,"functionSelector":"b0b8579b","mutability":"mutable","name":"hop","overrides":null,"scope":549,"stateVariable":true,"storageLocation":"default","type":"uint16","visibility":"public"},"children":[{"attributes":{"name":"uint16","type":"uint16"},"id":116,"name":"ElementaryTypeName","src":"2641:6:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":115,"type":"uint16","value":"ONE_HOUR"},"id":117,"name":"Identifier","src":"2662:8:6"}],"id":118,"name":"VariableDeclaration","src":"2641:29:6"},{"attributes":{"constant":false,"functionSelector":"a4dff0a2","mutability":"mutable","name":"zzz","overrides":null,"scope":549,"stateVariable":true,"storageLocation":"default","type":"uint64","value":null,"visibility":"public"},"children":[{"attributes":{"name":"uint64","type":"uint64"},"id":119,"name":"ElementaryTypeName","src":"2676:6:6"}],"id":120,"name":"VariableDeclaration","src":"2676:18:6"},{"attributes":{"canonicalName":"OSM.Feed","name":"Feed","scope":549,"visibility":"public"},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"val","overrides":null,"scope":125,"stateVariable":false,"storageLocation":"default","type":"uint128","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint128","type":"uint128"},"id":121,"name":"ElementaryTypeName","src":"2723:7:6"}],"id":122,"name":"VariableDeclaration","src":"2723:11:6"},{"attributes":{"constant":false,"mutability":"mutable","name":"has","overrides":null,"scope":125,"stateVariable":false,"storageLocation":"default","type":"uint128","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint128","type":"uint128"},"id":123,"name":"ElementaryTypeName","src":"2744:7:6"}],"id":124,"name":"VariableDeclaration","src":"2744:11:6"}],"id":125,"name":"StructDefinition","src":"2701:61:6"},{"attributes":{"constant":false,"mutability":"mutable","name":"cur","overrides":null,"scope":549,"stateVariable":true,"storageLocation":"default","type":"struct OSM.Feed","value":null,"visibility":"internal"},"children":[{"attributes":{"contractScope":null,"name":"Feed","referencedDeclaration":125,"type":"struct OSM.Feed"},"id":126,"name":"UserDefinedTypeName","src":"2768:4:6"}],"id":127,"name":"VariableDeclaration","src":"2768:8:6"},{"attributes":{"constant":false,"mutability":"mutable","name":"nxt","overrides":null,"scope":549,"stateVariable":true,"storageLocation":"default","type":"struct OSM.Feed","value":null,"visibility":"internal"},"children":[{"attributes":{"contractScope":null,"name":"Feed","referencedDeclaration":125,"type":"struct OSM.Feed"},"id":128,"name":"UserDefinedTypeName","src":"2782:4:6"}],"id":129,"name":"VariableDeclaration","src":"2782:8:6"},{"attributes":{"constant":false,"functionSelector":"4fce7a2a","mutability":"mutable","name":"bud","overrides":null,"scope":549,"stateVariable":true,"storageLocation":"default","type":"mapping(address => uint256)","value":null,"visibility":"public"},"children":[{"attributes":{"type":"mapping(address => uint256)"},"children":[{"attributes":{"name":"address","type":"address"},"id":130,"name":"ElementaryTypeName","src":"2851:7:6"},{"attributes":{"name":"uint256","type":"uint256"},"id":131,"name":"ElementaryTypeName","src":"2862:7:6"}],"id":132,"name":"Mapping","src":"2842:28:6"}],"id":133,"name":"VariableDeclaration","src":"2842:39:6"},{"attributes":{"documentation":null,"name":"toll","overrides":null,"virtual":false,"visibility":"internal"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":134,"name":"ParameterList","src":"2902:0:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_2df07f34d0eafdaf0a2d2bd7fc15f79799866050fe6526be480788a8e100a0f4","typeString":"literal_string \"OSM/contract-not-whitelisted\""}],"overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"type":"function (bool,string memory) pure","value":"require"},"id":135,"name":"Identifier","src":"2904:7:6"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":133,"type":"mapping(address => uint256)","value":"bud"},"id":136,"name":"Identifier","src":"2912:3:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"sender","referencedDeclaration":null,"type":"address payable"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-15,"type":"msg","value":"msg"},"id":137,"name":"Identifier","src":"2916:3:6"}],"id":138,"name":"MemberAccess","src":"2916:10:6"}],"id":139,"name":"IndexAccess","src":"2912:15:6"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":140,"name":"Literal","src":"2931:1:6"}],"id":141,"name":"BinaryOperation","src":"2912:20:6"},{"attributes":{"argumentTypes":null,"hexvalue":"4f534d2f636f6e74726163742d6e6f742d77686974656c6973746564","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"OSM/contract-not-whitelisted\"","value":"OSM/contract-not-whitelisted"},"id":142,"name":"Literal","src":"2934:30:6"}],"id":143,"name":"FunctionCall","src":"2904:61:6"}],"id":144,"name":"ExpressionStatement","src":"2904:61:6"},{"id":145,"name":"PlaceholderStatement","src":"2967:1:6"}],"id":146,"name":"Block","src":"2902:69:6"}],"id":147,"name":"ModifierDefinition","src":"2888:83:6"},{"attributes":{"anonymous":false,"documentation":null,"name":"LogValue"},"children":[{"children":[{"attributes":{"constant":false,"indexed":false,"mutability":"mutable","name":"val","overrides":null,"scope":151,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":148,"name":"ElementaryTypeName","src":"2992:7:6"}],"id":149,"name":"VariableDeclaration","src":"2992:11:6"}],"id":150,"name":"ParameterList","src":"2991:13:6"}],"id":151,"name":"EventDefinition","src":"2977:28:6"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":true,"kind":"constructor","modifiers":[null],"name":"","overrides":null,"scope":549,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"src_","overrides":null,"scope":168,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":152,"name":"ElementaryTypeName","src":"3024:7:6"}],"id":153,"name":"VariableDeclaration","src":"3024:12:6"}],"id":154,"name":"ParameterList","src":"3023:14:6"},{"attributes":{"parameters":[null]},"children":[],"id":155,"name":"ParameterList","src":"3045:0:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":26,"type":"mapping(address => uint256)","value":"wards"},"id":156,"name":"Identifier","src":"3055:5:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"sender","referencedDeclaration":null,"type":"address payable"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-15,"type":"msg","value":"msg"},"id":157,"name":"Identifier","src":"3061:3:6"}],"id":158,"name":"MemberAccess","src":"3061:10:6"}],"id":159,"name":"IndexAccess","src":"3055:17:6"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":160,"name":"Literal","src":"3075:1:6"}],"id":161,"name":"Assignment","src":"3055:21:6"}],"id":162,"name":"ExpressionStatement","src":"3055:21:6"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"address"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":109,"type":"address","value":"src"},"id":163,"name":"Identifier","src":"3086:3:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":153,"type":"address","value":"src_"},"id":164,"name":"Identifier","src":"3092:4:6"}],"id":165,"name":"Assignment","src":"3086:10:6"}],"id":166,"name":"ExpressionStatement","src":"3086:10:6"}],"id":167,"name":"Block","src":"3045:58:6"}],"id":168,"name":"FunctionDefinition","src":"3011:92:6"},{"attributes":{"documentation":null,"functionSelector":"07da68f5","implemented":true,"isConstructor":false,"kind":"function","name":"stop","overrides":null,"scope":549,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":169,"name":"ParameterList","src":"3122:2:6"},{"attributes":{"parameters":[null]},"children":[],"id":174,"name":"ParameterList","src":"3144:0:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":19,"type":"modifier ()","value":"note"},"id":170,"name":"Identifier","src":"3134:4:6"}],"id":171,"name":"ModifierInvocation","src":"3134:4:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":72,"type":"modifier ()","value":"auth"},"id":172,"name":"Identifier","src":"3139:4:6"}],"id":173,"name":"ModifierInvocation","src":"3139:4:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":74,"type":"uint256","value":"stopped"},"id":175,"name":"Identifier","src":"3154:7:6"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":176,"name":"Literal","src":"3164:1:6"}],"id":177,"name":"Assignment","src":"3154:11:6"}],"id":178,"name":"ExpressionStatement","src":"3154:11:6"}],"id":179,"name":"Block","src":"3144:28:6"}],"id":180,"name":"FunctionDefinition","src":"3109:63:6"},{"attributes":{"documentation":null,"functionSelector":"be9a6555","implemented":true,"isConstructor":false,"kind":"function","name":"start","overrides":null,"scope":549,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":181,"name":"ParameterList","src":"3191:2:6"},{"attributes":{"parameters":[null]},"children":[],"id":186,"name":"ParameterList","src":"3213:0:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":19,"type":"modifier ()","value":"note"},"id":182,"name":"Identifier","src":"3203:4:6"}],"id":183,"name":"ModifierInvocation","src":"3203:4:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":72,"type":"modifier ()","value":"auth"},"id":184,"name":"Identifier","src":"3208:4:6"}],"id":185,"name":"ModifierInvocation","src":"3208:4:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":74,"type":"uint256","value":"stopped"},"id":187,"name":"Identifier","src":"3223:7:6"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":188,"name":"Literal","src":"3233:1:6"}],"id":189,"name":"Assignment","src":"3223:11:6"}],"id":190,"name":"ExpressionStatement","src":"3223:11:6"}],"id":191,"name":"Block","src":"3213:28:6"}],"id":192,"name":"FunctionDefinition","src":"3177:64:6"},{"attributes":{"documentation":null,"functionSelector":"1e77933e","implemented":true,"isConstructor":false,"kind":"function","name":"change","overrides":null,"scope":549,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"src_","overrides":null,"scope":206,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":193,"name":"ElementaryTypeName","src":"3263:7:6"}],"id":194,"name":"VariableDeclaration","src":"3263:12:6"}],"id":195,"name":"ParameterList","src":"3262:14:6"},{"attributes":{"parameters":[null]},"children":[],"id":200,"name":"ParameterList","src":"3296:0:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":19,"type":"modifier ()","value":"note"},"id":196,"name":"Identifier","src":"3286:4:6"}],"id":197,"name":"ModifierInvocation","src":"3286:4:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":72,"type":"modifier ()","value":"auth"},"id":198,"name":"Identifier","src":"3291:4:6"}],"id":199,"name":"ModifierInvocation","src":"3291:4:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"address"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":109,"type":"address","value":"src"},"id":201,"name":"Identifier","src":"3306:3:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":194,"type":"address","value":"src_"},"id":202,"name":"Identifier","src":"3312:4:6"}],"id":203,"name":"Assignment","src":"3306:10:6"}],"id":204,"name":"ExpressionStatement","src":"3306:10:6"}],"id":205,"name":"Block","src":"3296:27:6"}],"id":206,"name":"FunctionDefinition","src":"3247:76:6"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"era","overrides":null,"scope":549,"stateMutability":"view","virtual":false,"visibility":"internal"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":207,"name":"ParameterList","src":"3341:2:6"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":215,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":208,"name":"ElementaryTypeName","src":"3367:4:6"}],"id":209,"name":"VariableDeclaration","src":"3367:4:6"}],"id":210,"name":"ParameterList","src":"3366:6:6"},{"children":[{"attributes":{"functionReturnParameters":210},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"timestamp","referencedDeclaration":null,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-4,"type":"block","value":"block"},"id":211,"name":"Identifier","src":"3390:5:6"}],"id":212,"name":"MemberAccess","src":"3390:15:6"}],"id":213,"name":"Return","src":"3383:22:6"}],"id":214,"name":"Block","src":"3373:39:6"}],"id":215,"name":"FunctionDefinition","src":"3329:83:6"},{"attributes":{"documentation":null,"implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"prev","overrides":null,"scope":549,"stateMutability":"view","virtual":false,"visibility":"internal"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"ts","overrides":null,"scope":240,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":216,"name":"ElementaryTypeName","src":"3432:4:6"}],"id":217,"name":"VariableDeclaration","src":"3432:7:6"}],"id":218,"name":"ParameterList","src":"3431:9:6"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":240,"stateVariable":false,"storageLocation":"default","type":"uint64","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint64","type":"uint64"},"id":219,"name":"ElementaryTypeName","src":"3464:6:6"}],"id":220,"name":"VariableDeclaration","src":"3464:6:6"}],"id":221,"name":"ParameterList","src":"3463:8:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_74034a33d4e8fce138ce411f6bc6f931471ce325501a47cab1c27be409990a1a","typeString":"literal_string \"OSM/hop-is-zero\""}],"overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"type":"function (bool,string memory) pure","value":"require"},"id":222,"name":"Identifier","src":"3482:7:6"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint16","typeString":"uint16"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":118,"type":"uint16","value":"hop"},"id":223,"name":"Identifier","src":"3490:3:6"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":224,"name":"Literal","src":"3497:1:6"}],"id":225,"name":"BinaryOperation","src":"3490:8:6"},{"attributes":{"argumentTypes":null,"hexvalue":"4f534d2f686f702d69732d7a65726f","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"OSM/hop-is-zero\"","value":"OSM/hop-is-zero"},"id":226,"name":"Literal","src":"3500:17:6"}],"id":227,"name":"FunctionCall","src":"3482:36:6"}],"id":228,"name":"ExpressionStatement","src":"3482:36:6"},{"attributes":{"functionReturnParameters":221},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint64","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint64)"},"children":[{"attributes":{"name":"uint64","type":null},"id":229,"name":"ElementaryTypeName","src":"3535:6:6"}],"id":230,"name":"ElementaryTypeNameExpression","src":"3535:6:6"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"-","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":217,"type":"uint256","value":"ts"},"id":231,"name":"Identifier","src":"3542:2:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"%","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":217,"type":"uint256","value":"ts"},"id":232,"name":"Identifier","src":"3548:2:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":118,"type":"uint16","value":"hop"},"id":233,"name":"Identifier","src":"3553:3:6"}],"id":234,"name":"BinaryOperation","src":"3548:8:6"}],"id":235,"name":"TupleExpression","src":"3547:10:6"}],"id":236,"name":"BinaryOperation","src":"3542:15:6"}],"id":237,"name":"FunctionCall","src":"3535:23:6"}],"id":238,"name":"Return","src":"3528:30:6"}],"id":239,"name":"Block","src":"3472:93:6"}],"id":240,"name":"FunctionDefinition","src":"3418:147:6"},{"attributes":{"documentation":null,"functionSelector":"e38e2cfb","implemented":true,"isConstructor":false,"kind":"function","name":"step","overrides":null,"scope":549,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"ts","overrides":null,"scope":259,"stateVariable":false,"storageLocation":"default","type":"uint16","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint16","type":"uint16"},"id":241,"name":"ElementaryTypeName","src":"3585:6:6"}],"id":242,"name":"VariableDeclaration","src":"3585:9:6"}],"id":243,"name":"ParameterList","src":"3584:11:6"},{"attributes":{"parameters":[null]},"children":[],"id":246,"name":"ParameterList","src":"3610:0:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":72,"type":"modifier ()","value":"auth"},"id":244,"name":"Identifier","src":"3605:4:6"}],"id":245,"name":"ModifierInvocation","src":"3605:4:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_4485b7b98978e7a87e47fd9a6707f2a4587e4b42edcdf8b7ace812afb7617710","typeString":"literal_string \"OSM/ts-is-zero\""}],"overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"type":"function (bool,string memory) pure","value":"require"},"id":247,"name":"Identifier","src":"3620:7:6"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint16","typeString":"uint16"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":">","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":242,"type":"uint16","value":"ts"},"id":248,"name":"Identifier","src":"3628:2:6"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":249,"name":"Literal","src":"3633:1:6"}],"id":250,"name":"BinaryOperation","src":"3628:6:6"},{"attributes":{"argumentTypes":null,"hexvalue":"4f534d2f74732d69732d7a65726f","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"OSM/ts-is-zero\"","value":"OSM/ts-is-zero"},"id":251,"name":"Literal","src":"3636:16:6"}],"id":252,"name":"FunctionCall","src":"3620:33:6"}],"id":253,"name":"ExpressionStatement","src":"3620:33:6"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint16"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":118,"type":"uint16","value":"hop"},"id":254,"name":"Identifier","src":"3663:3:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":242,"type":"uint16","value":"ts"},"id":255,"name":"Identifier","src":"3669:2:6"}],"id":256,"name":"Assignment","src":"3663:8:6"}],"id":257,"name":"ExpressionStatement","src":"3663:8:6"}],"id":258,"name":"Block","src":"3610:68:6"}],"id":259,"name":"FunctionDefinition","src":"3571:107:6"},{"attributes":{"documentation":null,"functionSelector":"ac4c25b2","implemented":true,"isConstructor":false,"kind":"function","name":"void","overrides":null,"scope":549,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":260,"name":"ParameterList","src":"3697:2:6"},{"attributes":{"parameters":[null]},"children":[],"id":265,"name":"ParameterList","src":"3719:0:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":19,"type":"modifier ()","value":"note"},"id":261,"name":"Identifier","src":"3709:4:6"}],"id":262,"name":"ModifierInvocation","src":"3709:4:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":72,"type":"modifier ()","value":"auth"},"id":263,"name":"Identifier","src":"3714:4:6"}],"id":264,"name":"ModifierInvocation","src":"3714:4:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"struct OSM.Feed storage ref"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":127,"type":"struct OSM.Feed storage ref","value":"cur"},"id":266,"name":"Identifier","src":"3729:3:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"struct OSM.Feed storage ref"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":129,"type":"struct OSM.Feed storage ref","value":"nxt"},"id":267,"name":"Identifier","src":"3735:3:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":true,"isStructConstructorCall":true,"lValueRequested":false,"names":[null],"tryCall":false,"type":"struct OSM.Feed memory","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"overloadedDeclarations":[null],"referencedDeclaration":125,"type":"type(struct OSM.Feed storage pointer)","value":"Feed"},"id":268,"name":"Identifier","src":"3741:4:6"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":269,"name":"Literal","src":"3746:1:6"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":270,"name":"Literal","src":"3749:1:6"}],"id":271,"name":"FunctionCall","src":"3741:10:6"}],"id":272,"name":"Assignment","src":"3735:16:6"}],"id":273,"name":"Assignment","src":"3729:22:6"}],"id":274,"name":"ExpressionStatement","src":"3729:22:6"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":74,"type":"uint256","value":"stopped"},"id":275,"name":"Identifier","src":"3761:7:6"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":276,"name":"Literal","src":"3771:1:6"}],"id":277,"name":"Assignment","src":"3761:11:6"}],"id":278,"name":"ExpressionStatement","src":"3761:11:6"}],"id":279,"name":"Block","src":"3719:60:6"}],"id":280,"name":"FunctionDefinition","src":"3684:95:6"},{"attributes":{"documentation":null,"functionSelector":"a7a1ed72","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"pass","overrides":null,"scope":549,"stateMutability":"view","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":281,"name":"ParameterList","src":"3798:2:6"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"ok","overrides":null,"scope":294,"stateVariable":false,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":282,"name":"ElementaryTypeName","src":"3822:4:6"}],"id":283,"name":"VariableDeclaration","src":"3822:7:6"}],"id":284,"name":"ParameterList","src":"3821:9:6"},{"children":[{"attributes":{"functionReturnParameters":284},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":">=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"overloadedDeclarations":[null],"referencedDeclaration":215,"type":"function () view returns (uint256)","value":"era"},"id":285,"name":"Identifier","src":"3848:3:6"}],"id":286,"name":"FunctionCall","src":"3848:5:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint64","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"},{"typeIdentifier":"t_uint16","typeString":"uint16"}],"overloadedDeclarations":[null],"referencedDeclaration":107,"type":"function (uint64,uint64) pure returns (uint64)","value":"add"},"id":287,"name":"Identifier","src":"3857:3:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":120,"type":"uint64","value":"zzz"},"id":288,"name":"Identifier","src":"3861:3:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":118,"type":"uint16","value":"hop"},"id":289,"name":"Identifier","src":"3866:3:6"}],"id":290,"name":"FunctionCall","src":"3857:13:6"}],"id":291,"name":"BinaryOperation","src":"3848:22:6"}],"id":292,"name":"Return","src":"3841:29:6"}],"id":293,"name":"Block","src":"3831:46:6"}],"id":294,"name":"FunctionDefinition","src":"3785:92:6"},{"attributes":{"documentation":null,"functionSelector":"18178358","implemented":true,"isConstructor":false,"kind":"function","name":"poke","overrides":null,"scope":549,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":295,"name":"ParameterList","src":"3896:2:6"},{"attributes":{"parameters":[null]},"children":[],"id":300,"name":"ParameterList","src":"3923:0:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":19,"type":"modifier ()","value":"note"},"id":296,"name":"Identifier","src":"3908:4:6"}],"id":297,"name":"ModifierInvocation","src":"3908:4:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":85,"type":"modifier ()","value":"stoppable"},"id":298,"name":"Identifier","src":"3913:9:6"}],"id":299,"name":"ModifierInvocation","src":"3913:9:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_a1a39d210dfa450f0295ff24147c45cd9072380d12e128dc76c95688ee901f5d","typeString":"literal_string \"OSM/not-passed\""}],"overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"type":"function (bool,string memory) pure","value":"require"},"id":301,"name":"Identifier","src":"3933:7:6"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bool","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"overloadedDeclarations":[null],"referencedDeclaration":294,"type":"function () view returns (bool)","value":"pass"},"id":302,"name":"Identifier","src":"3941:4:6"}],"id":303,"name":"FunctionCall","src":"3941:6:6"},{"attributes":{"argumentTypes":null,"hexvalue":"4f534d2f6e6f742d706173736564","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"OSM/not-passed\"","value":"OSM/not-passed"},"id":304,"name":"Literal","src":"3949:16:6"}],"id":305,"name":"FunctionCall","src":"3933:33:6"}],"id":306,"name":"ExpressionStatement","src":"3933:33:6"},{"attributes":{"assignments":[308,310]},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"wut","overrides":null,"scope":355,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":307,"name":"ElementaryTypeName","src":"3977:7:6"}],"id":308,"name":"VariableDeclaration","src":"3977:11:6"},{"attributes":{"constant":false,"mutability":"mutable","name":"ok","overrides":null,"scope":355,"stateVariable":false,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":309,"name":"ElementaryTypeName","src":"3990:4:6"}],"id":310,"name":"VariableDeclaration","src":"3990:7:6"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple(bytes32,bool)","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"peek","referencedDeclaration":1181,"type":"function () view external returns (bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"contract DSValue","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"overloadedDeclarations":[null],"referencedDeclaration":1238,"type":"type(contract DSValue)","value":"DSValue"},"id":311,"name":"Identifier","src":"4001:7:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":109,"type":"address","value":"src"},"id":312,"name":"Identifier","src":"4009:3:6"}],"id":313,"name":"FunctionCall","src":"4001:12:6"}],"id":314,"name":"MemberAccess","src":"4001:17:6"}],"id":315,"name":"FunctionCall","src":"4001:19:6"}],"id":316,"name":"VariableDeclarationStatement","src":"3976:44:6"},{"attributes":{"falseBody":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":310,"type":"bool","value":"ok"},"id":317,"name":"Identifier","src":"4034:2:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"struct OSM.Feed storage ref"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":127,"type":"struct OSM.Feed storage ref","value":"cur"},"id":318,"name":"Identifier","src":"4052:3:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":129,"type":"struct OSM.Feed storage ref","value":"nxt"},"id":319,"name":"Identifier","src":"4058:3:6"}],"id":320,"name":"Assignment","src":"4052:9:6"}],"id":321,"name":"ExpressionStatement","src":"4052:9:6"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"struct OSM.Feed storage ref"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":129,"type":"struct OSM.Feed storage ref","value":"nxt"},"id":322,"name":"Identifier","src":"4075:3:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":true,"lValueRequested":false,"names":[null],"tryCall":false,"type":"struct OSM.Feed memory","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint128","typeString":"uint128"},{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"}],"overloadedDeclarations":[null],"referencedDeclaration":125,"type":"type(struct OSM.Feed storage pointer)","value":"Feed"},"id":323,"name":"Identifier","src":"4081:4:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint128","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint128)"},"children":[{"attributes":{"name":"uint128","type":null},"id":324,"name":"ElementaryTypeName","src":"4086:7:6"}],"id":325,"name":"ElementaryTypeNameExpression","src":"4086:7:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":326,"name":"ElementaryTypeName","src":"4094:4:6"}],"id":327,"name":"ElementaryTypeNameExpression","src":"4094:4:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":308,"type":"bytes32","value":"wut"},"id":328,"name":"Identifier","src":"4099:3:6"}],"id":329,"name":"FunctionCall","src":"4094:9:6"}],"id":330,"name":"FunctionCall","src":"4086:18:6"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":331,"name":"Literal","src":"4106:1:6"}],"id":332,"name":"FunctionCall","src":"4081:27:6"}],"id":333,"name":"Assignment","src":"4075:33:6"}],"id":334,"name":"ExpressionStatement","src":"4075:33:6"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint64"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":120,"type":"uint64","value":"zzz"},"id":335,"name":"Identifier","src":"4122:3:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint64","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"overloadedDeclarations":[null],"referencedDeclaration":240,"type":"function (uint256) view returns (uint64)","value":"prev"},"id":336,"name":"Identifier","src":"4128:4:6"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"overloadedDeclarations":[null],"referencedDeclaration":215,"type":"function () view returns (uint256)","value":"era"},"id":337,"name":"Identifier","src":"4133:3:6"}],"id":338,"name":"FunctionCall","src":"4133:5:6"}],"id":339,"name":"FunctionCall","src":"4128:11:6"}],"id":340,"name":"Assignment","src":"4122:17:6"}],"id":341,"name":"ExpressionStatement","src":"4122:17:6"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"overloadedDeclarations":[null],"referencedDeclaration":151,"type":"function (bytes32)","value":"LogValue"},"id":342,"name":"Identifier","src":"4158:8:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bytes32","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(bytes32)"},"children":[{"attributes":{"name":"bytes32","type":null},"id":343,"name":"ElementaryTypeName","src":"4167:7:6"}],"id":344,"name":"ElementaryTypeNameExpression","src":"4167:7:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint128","typeString":"uint128"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":345,"name":"ElementaryTypeName","src":"4175:4:6"}],"id":346,"name":"ElementaryTypeNameExpression","src":"4175:4:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"member_name":"val","referencedDeclaration":122,"type":"uint128"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":127,"type":"struct OSM.Feed storage ref","value":"cur"},"id":347,"name":"Identifier","src":"4180:3:6"}],"id":348,"name":"MemberAccess","src":"4180:7:6"}],"id":349,"name":"FunctionCall","src":"4175:13:6"}],"id":350,"name":"FunctionCall","src":"4167:22:6"}],"id":351,"name":"FunctionCall","src":"4158:32:6"}],"id":352,"name":"EmitStatement","src":"4153:37:6"}],"id":353,"name":"Block","src":"4038:163:6"}],"id":354,"name":"IfStatement","src":"4030:171:6"}],"id":355,"name":"Block","src":"3923:284:6"}],"id":356,"name":"FunctionDefinition","src":"3883:324:6"},{"attributes":{"documentation":null,"functionSelector":"59e02dd7","implemented":true,"isConstructor":false,"kind":"function","name":"peek","overrides":null,"scope":549,"stateMutability":"view","virtual":false,"visibility":"external"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":357,"name":"ParameterList","src":"4226:2:6"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":380,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":360,"name":"ElementaryTypeName","src":"4257:7:6"}],"id":361,"name":"VariableDeclaration","src":"4257:7:6"},{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":380,"stateVariable":false,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":362,"name":"ElementaryTypeName","src":"4265:4:6"}],"id":363,"name":"VariableDeclaration","src":"4265:4:6"}],"id":364,"name":"ParameterList","src":"4256:14:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":147,"type":"modifier ()","value":"toll"},"id":358,"name":"Identifier","src":"4243:4:6"}],"id":359,"name":"ModifierInvocation","src":"4243:4:6"},{"children":[{"attributes":{"functionReturnParameters":364},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"tuple(bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bytes32","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(bytes32)"},"children":[{"attributes":{"name":"bytes32","type":null},"id":365,"name":"ElementaryTypeName","src":"4289:7:6"}],"id":366,"name":"ElementaryTypeNameExpression","src":"4289:7:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint128","typeString":"uint128"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":367,"name":"ElementaryTypeName","src":"4297:4:6"}],"id":368,"name":"ElementaryTypeNameExpression","src":"4297:4:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"member_name":"val","referencedDeclaration":122,"type":"uint128"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":127,"type":"struct OSM.Feed storage ref","value":"cur"},"id":369,"name":"Identifier","src":"4302:3:6"}],"id":370,"name":"MemberAccess","src":"4302:7:6"}],"id":371,"name":"FunctionCall","src":"4297:13:6"}],"id":372,"name":"FunctionCall","src":"4289:22:6"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint128","typeString":"uint128"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"member_name":"has","referencedDeclaration":124,"type":"uint128"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":127,"type":"struct OSM.Feed storage ref","value":"cur"},"id":373,"name":"Identifier","src":"4313:3:6"}],"id":374,"name":"MemberAccess","src":"4313:7:6"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":375,"name":"Literal","src":"4324:1:6"}],"id":376,"name":"BinaryOperation","src":"4313:12:6"}],"id":377,"name":"TupleExpression","src":"4288:38:6"}],"id":378,"name":"Return","src":"4281:45:6"}],"id":379,"name":"Block","src":"4271:62:6"}],"id":380,"name":"FunctionDefinition","src":"4213:120:6"},{"attributes":{"documentation":null,"functionSelector":"0e5a6c70","implemented":true,"isConstructor":false,"kind":"function","name":"peep","overrides":null,"scope":549,"stateMutability":"view","virtual":false,"visibility":"external"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":381,"name":"ParameterList","src":"4352:2:6"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":404,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":384,"name":"ElementaryTypeName","src":"4383:7:6"}],"id":385,"name":"VariableDeclaration","src":"4383:7:6"},{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":404,"stateVariable":false,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":386,"name":"ElementaryTypeName","src":"4391:4:6"}],"id":387,"name":"VariableDeclaration","src":"4391:4:6"}],"id":388,"name":"ParameterList","src":"4382:14:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":147,"type":"modifier ()","value":"toll"},"id":382,"name":"Identifier","src":"4369:4:6"}],"id":383,"name":"ModifierInvocation","src":"4369:4:6"},{"children":[{"attributes":{"functionReturnParameters":388},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"tuple(bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bytes32","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(bytes32)"},"children":[{"attributes":{"name":"bytes32","type":null},"id":389,"name":"ElementaryTypeName","src":"4415:7:6"}],"id":390,"name":"ElementaryTypeNameExpression","src":"4415:7:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint128","typeString":"uint128"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":391,"name":"ElementaryTypeName","src":"4423:4:6"}],"id":392,"name":"ElementaryTypeNameExpression","src":"4423:4:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"member_name":"val","referencedDeclaration":122,"type":"uint128"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":129,"type":"struct OSM.Feed storage ref","value":"nxt"},"id":393,"name":"Identifier","src":"4428:3:6"}],"id":394,"name":"MemberAccess","src":"4428:7:6"}],"id":395,"name":"FunctionCall","src":"4423:13:6"}],"id":396,"name":"FunctionCall","src":"4415:22:6"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint128","typeString":"uint128"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"member_name":"has","referencedDeclaration":124,"type":"uint128"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":129,"type":"struct OSM.Feed storage ref","value":"nxt"},"id":397,"name":"Identifier","src":"4439:3:6"}],"id":398,"name":"MemberAccess","src":"4439:7:6"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":399,"name":"Literal","src":"4450:1:6"}],"id":400,"name":"BinaryOperation","src":"4439:12:6"}],"id":401,"name":"TupleExpression","src":"4414:38:6"}],"id":402,"name":"Return","src":"4407:45:6"}],"id":403,"name":"Block","src":"4397:62:6"}],"id":404,"name":"FunctionDefinition","src":"4339:120:6"},{"attributes":{"documentation":null,"functionSelector":"57de26a4","implemented":true,"isConstructor":false,"kind":"function","name":"read","overrides":null,"scope":549,"stateMutability":"view","virtual":false,"visibility":"external"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":405,"name":"ParameterList","src":"4478:2:6"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":430,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":408,"name":"ElementaryTypeName","src":"4509:7:6"}],"id":409,"name":"VariableDeclaration","src":"4509:7:6"}],"id":410,"name":"ParameterList","src":"4508:9:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":147,"type":"modifier ()","value":"toll"},"id":406,"name":"Identifier","src":"4495:4:6"}],"id":407,"name":"ModifierInvocation","src":"4495:4:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_9c1dc046a16584b8eee6dbfb630be59c54e0c062906dd833a3b7aa7d50e8453e","typeString":"literal_string \"OSM/no-current-value\""}],"overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"type":"function (bool,string memory) pure","value":"require"},"id":411,"name":"Identifier","src":"4528:7:6"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint128","typeString":"uint128"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"member_name":"has","referencedDeclaration":124,"type":"uint128"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":127,"type":"struct OSM.Feed storage ref","value":"cur"},"id":412,"name":"Identifier","src":"4536:3:6"}],"id":413,"name":"MemberAccess","src":"4536:7:6"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":414,"name":"Literal","src":"4547:1:6"}],"id":415,"name":"BinaryOperation","src":"4536:12:6"},{"attributes":{"argumentTypes":null,"hexvalue":"4f534d2f6e6f2d63757272656e742d76616c7565","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"OSM/no-current-value\"","value":"OSM/no-current-value"},"id":416,"name":"Literal","src":"4550:22:6"}],"id":417,"name":"FunctionCall","src":"4528:45:6"}],"id":418,"name":"ExpressionStatement","src":"4528:45:6"},{"attributes":{"functionReturnParameters":410},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"bytes32"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bytes32","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(bytes32)"},"children":[{"attributes":{"name":"bytes32","type":null},"id":419,"name":"ElementaryTypeName","src":"4591:7:6"}],"id":420,"name":"ElementaryTypeNameExpression","src":"4591:7:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint128","typeString":"uint128"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":421,"name":"ElementaryTypeName","src":"4599:4:6"}],"id":422,"name":"ElementaryTypeNameExpression","src":"4599:4:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"member_name":"val","referencedDeclaration":122,"type":"uint128"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":127,"type":"struct OSM.Feed storage ref","value":"cur"},"id":423,"name":"Identifier","src":"4604:3:6"}],"id":424,"name":"MemberAccess","src":"4604:7:6"}],"id":425,"name":"FunctionCall","src":"4599:13:6"}],"id":426,"name":"FunctionCall","src":"4591:22:6"}],"id":427,"name":"TupleExpression","src":"4590:24:6"}],"id":428,"name":"Return","src":"4583:31:6"}],"id":429,"name":"Block","src":"4518:103:6"}],"id":430,"name":"FunctionDefinition","src":"4465:156:6"},{"attributes":{"documentation":null,"functionSelector":"f29c29c4","implemented":true,"isConstructor":false,"kind":"function","name":"kiss","overrides":null,"scope":549,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"a","overrides":null,"scope":456,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":431,"name":"ElementaryTypeName","src":"4643:7:6"}],"id":432,"name":"VariableDeclaration","src":"4643:9:6"}],"id":433,"name":"ParameterList","src":"4642:11:6"},{"attributes":{"parameters":[null]},"children":[],"id":438,"name":"ParameterList","src":"4673:0:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":19,"type":"modifier ()","value":"note"},"id":434,"name":"Identifier","src":"4663:4:6"}],"id":435,"name":"ModifierInvocation","src":"4663:4:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":72,"type":"modifier ()","value":"auth"},"id":436,"name":"Identifier","src":"4668:4:6"}],"id":437,"name":"ModifierInvocation","src":"4668:4:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_f369bff09800e6095ae5ed22f4c563ef790fd81a6441b6f88c3c15c45a2cede7","typeString":"literal_string \"OSM/no-contract-0\""}],"overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"type":"function (bool,string memory) pure","value":"require"},"id":439,"name":"Identifier","src":"4683:7:6"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_address","typeString":"address"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":432,"type":"address","value":"a"},"id":440,"name":"Identifier","src":"4691:1:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":true,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address payable","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(address)"},"children":[{"attributes":{"name":"address","type":null},"id":441,"name":"ElementaryTypeName","src":"4696:7:6"}],"id":442,"name":"ElementaryTypeNameExpression","src":"4696:7:6"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":443,"name":"Literal","src":"4704:1:6"}],"id":444,"name":"FunctionCall","src":"4696:10:6"}],"id":445,"name":"BinaryOperation","src":"4691:15:6"},{"attributes":{"argumentTypes":null,"hexvalue":"4f534d2f6e6f2d636f6e74726163742d30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"OSM/no-contract-0\"","value":"OSM/no-contract-0"},"id":446,"name":"Literal","src":"4708:19:6"}],"id":447,"name":"FunctionCall","src":"4683:45:6"}],"id":448,"name":"ExpressionStatement","src":"4683:45:6"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":133,"type":"mapping(address => uint256)","value":"bud"},"id":449,"name":"Identifier","src":"4738:3:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":432,"type":"address","value":"a"},"id":450,"name":"Identifier","src":"4742:1:6"}],"id":451,"name":"IndexAccess","src":"4738:6:6"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":452,"name":"Literal","src":"4747:1:6"}],"id":453,"name":"Assignment","src":"4738:10:6"}],"id":454,"name":"ExpressionStatement","src":"4738:10:6"}],"id":455,"name":"Block","src":"4673:82:6"}],"id":456,"name":"FunctionDefinition","src":"4629:126:6"},{"attributes":{"documentation":null,"functionSelector":"65c4ce7a","implemented":true,"isConstructor":false,"kind":"function","name":"diss","overrides":null,"scope":549,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"a","overrides":null,"scope":472,"stateVariable":false,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":457,"name":"ElementaryTypeName","src":"4775:7:6"}],"id":458,"name":"VariableDeclaration","src":"4775:9:6"}],"id":459,"name":"ParameterList","src":"4774:11:6"},{"attributes":{"parameters":[null]},"children":[],"id":464,"name":"ParameterList","src":"4805:0:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":19,"type":"modifier ()","value":"note"},"id":460,"name":"Identifier","src":"4795:4:6"}],"id":461,"name":"ModifierInvocation","src":"4795:4:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":72,"type":"modifier ()","value":"auth"},"id":462,"name":"Identifier","src":"4800:4:6"}],"id":463,"name":"ModifierInvocation","src":"4800:4:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":133,"type":"mapping(address => uint256)","value":"bud"},"id":465,"name":"Identifier","src":"4815:3:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":458,"type":"address","value":"a"},"id":466,"name":"Identifier","src":"4819:1:6"}],"id":467,"name":"IndexAccess","src":"4815:6:6"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":468,"name":"Literal","src":"4824:1:6"}],"id":469,"name":"Assignment","src":"4815:10:6"}],"id":470,"name":"ExpressionStatement","src":"4815:10:6"}],"id":471,"name":"Block","src":"4805:27:6"}],"id":472,"name":"FunctionDefinition","src":"4761:71:6"},{"attributes":{"documentation":null,"functionSelector":"1b25b65f","implemented":true,"isConstructor":false,"kind":"function","name":"kiss","overrides":null,"scope":549,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"a","overrides":null,"scope":516,"stateVariable":false,"storageLocation":"calldata","type":"address[]","value":null,"visibility":"internal"},"children":[{"attributes":{"length":null,"type":"address[]"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":473,"name":"ElementaryTypeName","src":"4852:7:6"}],"id":474,"name":"ArrayTypeName","src":"4852:9:6"}],"id":475,"name":"VariableDeclaration","src":"4852:20:6"}],"id":476,"name":"ParameterList","src":"4851:22:6"},{"attributes":{"parameters":[null]},"children":[],"id":481,"name":"ParameterList","src":"4893:0:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":19,"type":"modifier ()","value":"note"},"id":477,"name":"Identifier","src":"4883:4:6"}],"id":478,"name":"ModifierInvocation","src":"4883:4:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":72,"type":"modifier ()","value":"auth"},"id":479,"name":"Identifier","src":"4888:4:6"}],"id":480,"name":"ModifierInvocation","src":"4888:4:6"},{"children":[{"children":[{"attributes":{"assignments":[483]},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"i","overrides":null,"scope":514,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":482,"name":"ElementaryTypeName","src":"4907:4:6"}],"id":483,"name":"VariableDeclaration","src":"4907:6:6"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":484,"name":"Literal","src":"4916:1:6"}],"id":485,"name":"VariableDeclarationStatement","src":"4907:10:6"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"<","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":483,"type":"uint256","value":"i"},"id":486,"name":"Identifier","src":"4919:1:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"length","referencedDeclaration":null,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":475,"type":"address[] calldata","value":"a"},"id":487,"name":"Identifier","src":"4923:1:6"}],"id":488,"name":"MemberAccess","src":"4923:8:6"}],"id":489,"name":"BinaryOperation","src":"4919:12:6"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"++","prefix":false,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":483,"type":"uint256","value":"i"},"id":490,"name":"Identifier","src":"4933:1:6"}],"id":491,"name":"UnaryOperation","src":"4933:3:6"}],"id":492,"name":"ExpressionStatement","src":"4933:3:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_f369bff09800e6095ae5ed22f4c563ef790fd81a6441b6f88c3c15c45a2cede7","typeString":"literal_string \"OSM/no-contract-0\""}],"overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"type":"function (bool,string memory) pure","value":"require"},"id":493,"name":"Identifier","src":"4952:7:6"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_address","typeString":"address"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!=","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"address"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":475,"type":"address[] calldata","value":"a"},"id":494,"name":"Identifier","src":"4960:1:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":483,"type":"uint256","value":"i"},"id":495,"name":"Identifier","src":"4962:1:6"}],"id":496,"name":"IndexAccess","src":"4960:4:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":true,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address payable","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(address)"},"children":[{"attributes":{"name":"address","type":null},"id":497,"name":"ElementaryTypeName","src":"4968:7:6"}],"id":498,"name":"ElementaryTypeNameExpression","src":"4968:7:6"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":499,"name":"Literal","src":"4976:1:6"}],"id":500,"name":"FunctionCall","src":"4968:10:6"}],"id":501,"name":"BinaryOperation","src":"4960:18:6"},{"attributes":{"argumentTypes":null,"hexvalue":"4f534d2f6e6f2d636f6e74726163742d30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"string","type":"literal_string \"OSM/no-contract-0\"","value":"OSM/no-contract-0"},"id":502,"name":"Literal","src":"4980:19:6"}],"id":503,"name":"FunctionCall","src":"4952:48:6"}],"id":504,"name":"ExpressionStatement","src":"4952:48:6"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":133,"type":"mapping(address => uint256)","value":"bud"},"id":505,"name":"Identifier","src":"5014:3:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"address"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":475,"type":"address[] calldata","value":"a"},"id":506,"name":"Identifier","src":"5018:1:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":483,"type":"uint256","value":"i"},"id":507,"name":"Identifier","src":"5020:1:6"}],"id":508,"name":"IndexAccess","src":"5018:4:6"}],"id":509,"name":"IndexAccess","src":"5014:9:6"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":510,"name":"Literal","src":"5026:1:6"}],"id":511,"name":"Assignment","src":"5014:13:6"}],"id":512,"name":"ExpressionStatement","src":"5014:13:6"}],"id":513,"name":"Block","src":"4938:100:6"}],"id":514,"name":"ForStatement","src":"4903:135:6"}],"id":515,"name":"Block","src":"4893:151:6"}],"id":516,"name":"FunctionDefinition","src":"4838:206:6"},{"attributes":{"documentation":null,"functionSelector":"46d4577d","implemented":true,"isConstructor":false,"kind":"function","name":"diss","overrides":null,"scope":549,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"a","overrides":null,"scope":548,"stateVariable":false,"storageLocation":"calldata","type":"address[]","value":null,"visibility":"internal"},"children":[{"attributes":{"length":null,"type":"address[]"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":517,"name":"ElementaryTypeName","src":"5064:7:6"}],"id":518,"name":"ArrayTypeName","src":"5064:9:6"}],"id":519,"name":"VariableDeclaration","src":"5064:20:6"}],"id":520,"name":"ParameterList","src":"5063:22:6"},{"attributes":{"parameters":[null]},"children":[],"id":525,"name":"ParameterList","src":"5105:0:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":19,"type":"modifier ()","value":"note"},"id":521,"name":"Identifier","src":"5095:4:6"}],"id":522,"name":"ModifierInvocation","src":"5095:4:6"},{"attributes":{"arguments":null},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":72,"type":"modifier ()","value":"auth"},"id":523,"name":"Identifier","src":"5100:4:6"}],"id":524,"name":"ModifierInvocation","src":"5100:4:6"},{"children":[{"children":[{"attributes":{"assignments":[527]},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"i","overrides":null,"scope":546,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint","type":"uint256"},"id":526,"name":"ElementaryTypeName","src":"5119:4:6"}],"id":527,"name":"VariableDeclaration","src":"5119:6:6"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":528,"name":"Literal","src":"5128:1:6"}],"id":529,"name":"VariableDeclarationStatement","src":"5119:10:6"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"<","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":527,"type":"uint256","value":"i"},"id":530,"name":"Identifier","src":"5131:1:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"length","referencedDeclaration":null,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":519,"type":"address[] calldata","value":"a"},"id":531,"name":"Identifier","src":"5135:1:6"}],"id":532,"name":"MemberAccess","src":"5135:8:6"}],"id":533,"name":"BinaryOperation","src":"5131:12:6"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"++","prefix":false,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":527,"type":"uint256","value":"i"},"id":534,"name":"Identifier","src":"5145:1:6"}],"id":535,"name":"UnaryOperation","src":"5145:3:6"}],"id":536,"name":"ExpressionStatement","src":"5145:3:6"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"type":"uint256"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":133,"type":"mapping(address => uint256)","value":"bud"},"id":537,"name":"Identifier","src":"5164:3:6"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"address"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":519,"type":"address[] calldata","value":"a"},"id":538,"name":"Identifier","src":"5168:1:6"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":527,"type":"uint256","value":"i"},"id":539,"name":"Identifier","src":"5170:1:6"}],"id":540,"name":"IndexAccess","src":"5168:4:6"}],"id":541,"name":"IndexAccess","src":"5164:9:6"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":542,"name":"Literal","src":"5176:1:6"}],"id":543,"name":"Assignment","src":"5164:13:6"}],"id":544,"name":"ExpressionStatement","src":"5164:13:6"}],"id":545,"name":"Block","src":"5150:38:6"}],"id":546,"name":"ForStatement","src":"5115:73:6"}],"id":547,"name":"Block","src":"5105:89:6"}],"id":548,"name":"FunctionDefinition","src":"5050:144:6"}],"id":549,"name":"ContractDefinition","src":"1972:3224:6"}],"id":550,"name":"SourceUnit","src":"748:4449:6"}},"src/osm.t.sol":{"AST":{"attributes":{"absolutePath":"src/osm.t.sol","exportedSymbols":{"Hevm":[562],"OSMTest":[1141]}},"children":[{"attributes":{"literals":["solidity",">=","0.5",".10"]},"id":551,"name":"PragmaDirective","src":"0:25:7"},{"attributes":{"SourceUnit":1683,"absolutePath":"lib/ds-test/src/test.sol","file":"ds-test/test.sol","scope":1142,"symbolAliases":[null],"unitAlias":""},"id":552,"name":"ImportDirective","src":"27:26:7"},{"attributes":{"SourceUnit":1239,"absolutePath":"lib/ds-value/src/value.sol","file":"ds-value/value.sol","scope":1142,"symbolAliases":[{"foreign":{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":null,"type":null,"value":"DSValue"},"id":553,"name":"Identifier","src":"62:7:7"},"local":null}],"unitAlias":""},"id":554,"name":"ImportDirective","src":"54:43:7"},{"attributes":{"SourceUnit":550,"absolutePath":"src/osm.sol","file":"./osm.sol","scope":1142,"symbolAliases":[{"foreign":{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":null,"type":null,"value":"OSM"},"id":555,"name":"Identifier","src":"106:3:7"},"local":null}],"unitAlias":""},"id":556,"name":"ImportDirective","src":"98:30:7"},{"attributes":{"abstract":false,"baseContracts":[null],"contractDependencies":[null],"contractKind":"interface","documentation":null,"fullyImplemented":false,"linearizedBaseContracts":[562],"name":"Hevm","scope":1142},"children":[{"attributes":{"body":null,"documentation":null,"functionSelector":"e5d6bf02","implemented":false,"isConstructor":false,"kind":"function","modifiers":[null],"name":"warp","overrides":null,"scope":562,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},"children":[{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":561,"stateVariable":false,"storageLocation":"default","type":"uint256","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"uint256","type":"uint256"},"id":557,"name":"ElementaryTypeName","src":"165:7:7"}],"id":558,"name":"VariableDeclaration","src":"165:7:7"}],"id":559,"name":"ParameterList","src":"164:9:7"},{"attributes":{"parameters":[null]},"children":[],"id":560,"name":"ParameterList","src":"182:0:7"}],"id":561,"name":"FunctionDefinition","src":"151:32:7"}],"id":562,"name":"ContractDefinition","src":"130:55:7"},{"attributes":{"abstract":false,"contractDependencies":[549,1238,1682],"contractKind":"contract","documentation":null,"fullyImplemented":true,"linearizedBaseContracts":[1141,1682],"name":"OSMTest","scope":1142},"children":[{"attributes":{"arguments":null},"children":[{"attributes":{"contractScope":null,"name":"DSTest","referencedDeclaration":1682,"type":"contract DSTest"},"id":563,"name":"UserDefinedTypeName","src":"207:6:7"}],"id":564,"name":"InheritanceSpecifier","src":"207:6:7"},{"attributes":{"constant":false,"mutability":"mutable","name":"hevm","overrides":null,"scope":1141,"stateVariable":true,"storageLocation":"default","type":"contract Hevm","value":null,"visibility":"internal"},"children":[{"attributes":{"contractScope":null,"name":"Hevm","referencedDeclaration":562,"type":"contract Hevm"},"id":565,"name":"UserDefinedTypeName","src":"220:4:7"}],"id":566,"name":"VariableDeclaration","src":"220:9:7"},{"attributes":{"constant":false,"mutability":"mutable","name":"feed","overrides":null,"scope":1141,"stateVariable":true,"storageLocation":"default","type":"contract DSValue","value":null,"visibility":"internal"},"children":[{"attributes":{"contractScope":null,"name":"DSValue","referencedDeclaration":1238,"type":"contract DSValue"},"id":567,"name":"UserDefinedTypeName","src":"236:7:7"}],"id":568,"name":"VariableDeclaration","src":"236:12:7"},{"attributes":{"constant":false,"mutability":"mutable","name":"osm","overrides":null,"scope":1141,"stateVariable":true,"storageLocation":"default","type":"contract OSM","value":null,"visibility":"internal"},"children":[{"attributes":{"contractScope":null,"name":"OSM","referencedDeclaration":549,"type":"contract OSM"},"id":569,"name":"UserDefinedTypeName","src":"254:3:7"}],"id":570,"name":"VariableDeclaration","src":"254:7:7"},{"attributes":{"constant":false,"mutability":"mutable","name":"bud","overrides":null,"scope":1141,"stateVariable":true,"storageLocation":"default","type":"address","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"address","stateMutability":"nonpayable","type":"address"},"id":571,"name":"ElementaryTypeName","src":"267:7:7"}],"id":572,"name":"VariableDeclaration","src":"267:11:7"},{"attributes":{"documentation":null,"functionSelector":"0a9254e4","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"setUp","overrides":null,"scope":1141,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":573,"name":"ParameterList","src":"299:2:7"},{"attributes":{"parameters":[null]},"children":[],"id":574,"name":"ParameterList","src":"309:0:7"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"contract DSValue"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":568,"type":"contract DSValue","value":"feed"},"id":575,"name":"Identifier","src":"319:4:7"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"contract DSValue","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"function () returns (contract DSValue)"},"children":[{"attributes":{"contractScope":null,"name":"DSValue","referencedDeclaration":1238,"type":"contract DSValue"},"id":576,"name":"UserDefinedTypeName","src":"330:7:7"}],"id":577,"name":"NewExpression","src":"326:11:7"}],"id":578,"name":"FunctionCall","src":"326:13:7"}],"id":579,"name":"Assignment","src":"319:20:7"}],"id":580,"name":"ExpressionStatement","src":"319:20:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"poke","referencedDeclaration":1225,"type":"function (bytes32) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":568,"type":"contract DSValue","value":"feed"},"id":581,"name":"Identifier","src":"401:4:7"}],"id":583,"name":"MemberAccess","src":"401:9:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":true,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bytes32","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(bytes32)"},"children":[{"attributes":{"name":"bytes32","type":null},"id":584,"name":"ElementaryTypeName","src":"411:7:7"}],"id":585,"name":"ElementaryTypeNameExpression","src":"411:7:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":true,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_rational_100000000000000000000_by_1","typeString":"int_const 100000000000000000000"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":586,"name":"ElementaryTypeName","src":"419:4:7"}],"id":587,"name":"ElementaryTypeNameExpression","src":"419:4:7"},{"attributes":{"argumentTypes":null,"hexvalue":"313030","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":"ether","token":"number","type":"int_const 100000000000000000000","value":"100"},"id":588,"name":"Literal","src":"424:9:7"}],"id":589,"name":"FunctionCall","src":"419:15:7"}],"id":590,"name":"FunctionCall","src":"411:24:7"}],"id":591,"name":"FunctionCall","src":"401:35:7"}],"id":592,"name":"ExpressionStatement","src":"401:35:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"contract OSM"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":593,"name":"Identifier","src":"483:3:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"contract OSM","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"function (address) returns (contract OSM)"},"children":[{"attributes":{"contractScope":null,"name":"OSM","referencedDeclaration":549,"type":"contract OSM"},"id":594,"name":"UserDefinedTypeName","src":"493:3:7"}],"id":595,"name":"NewExpression","src":"489:7:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_contract$_DSValue_$1238","typeString":"contract DSValue"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(address)"},"children":[{"attributes":{"name":"address","type":null},"id":596,"name":"ElementaryTypeName","src":"497:7:7"}],"id":597,"name":"ElementaryTypeNameExpression","src":"497:7:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":568,"type":"contract DSValue","value":"feed"},"id":598,"name":"Identifier","src":"505:4:7"}],"id":599,"name":"FunctionCall","src":"497:13:7"}],"id":600,"name":"FunctionCall","src":"489:22:7"}],"id":601,"name":"Assignment","src":"483:28:7"}],"id":602,"name":"ExpressionStatement","src":"483:28:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"contract Hevm"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":566,"type":"contract Hevm","value":"hevm"},"id":603,"name":"Identifier","src":"579:4:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":true,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"contract Hevm","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"overloadedDeclarations":[null],"referencedDeclaration":562,"type":"type(contract Hevm)","value":"Hevm"},"id":604,"name":"Identifier","src":"586:4:7"},{"attributes":{"argumentTypes":null,"hexvalue":"307837313039373039454366613931613830363236664633393839443638663637463562314444313244","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"address payable","value":"0x7109709ECfa91a80626fF3989D68f67F5b1DD12D"},"id":605,"name":"Literal","src":"591:42:7"}],"id":606,"name":"FunctionCall","src":"586:48:7"}],"id":607,"name":"Assignment","src":"579:55:7"}],"id":608,"name":"ExpressionStatement","src":"579:55:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"warp","referencedDeclaration":561,"type":"function (uint256) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":566,"type":"contract Hevm","value":"hevm"},"id":609,"name":"Identifier","src":"663:4:7"}],"id":611,"name":"MemberAccess","src":"663:9:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint16","typeString":"uint16"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":612,"name":"ElementaryTypeName","src":"673:4:7"}],"id":613,"name":"ElementaryTypeNameExpression","src":"673:4:7"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint16","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"hop","referencedDeclaration":118,"type":"function () view external returns (uint16)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":614,"name":"Identifier","src":"678:3:7"}],"id":615,"name":"MemberAccess","src":"678:7:7"}],"id":616,"name":"FunctionCall","src":"678:9:7"}],"id":617,"name":"FunctionCall","src":"673:15:7"}],"id":618,"name":"FunctionCall","src":"663:26:7"}],"id":619,"name":"ExpressionStatement","src":"663:26:7"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"poke","referencedDeclaration":356,"type":"function () external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":620,"name":"Identifier","src":"740:3:7"}],"id":622,"name":"MemberAccess","src":"740:8:7"}],"id":623,"name":"FunctionCall","src":"740:10:7"}],"id":624,"name":"ExpressionStatement","src":"740:10:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"address"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":572,"type":"address","value":"bud"},"id":625,"name":"Identifier","src":"829:3:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_contract$_OSMTest_$1141","typeString":"contract OSMTest"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(address)"},"children":[{"attributes":{"name":"address","type":null},"id":626,"name":"ElementaryTypeName","src":"835:7:7"}],"id":627,"name":"ElementaryTypeNameExpression","src":"835:7:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-28,"type":"contract OSMTest","value":"this"},"id":628,"name":"Identifier","src":"843:4:7"}],"id":629,"name":"FunctionCall","src":"835:13:7"}],"id":630,"name":"Assignment","src":"829:19:7"}],"id":631,"name":"ExpressionStatement","src":"829:19:7"}],"id":632,"name":"Block","src":"309:599:7"}],"id":633,"name":"FunctionDefinition","src":"285:623:7"},{"attributes":{"documentation":null,"functionSelector":"ef0ba8ba","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"testChangeValue","overrides":null,"scope":1141,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":634,"name":"ParameterList","src":"938:2:7"},{"attributes":{"parameters":[null]},"children":[],"id":635,"name":"ParameterList","src":"948:0:7"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"overloadedDeclarations":[1399,1442,1540,1570,1610],"referencedDeclaration":1399,"type":"function (address,address)","value":"assertEq"},"id":636,"name":"Identifier","src":"958:8:7"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"src","referencedDeclaration":109,"type":"function () view external returns (address)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":637,"name":"Identifier","src":"967:3:7"}],"id":638,"name":"MemberAccess","src":"967:7:7"}],"id":639,"name":"FunctionCall","src":"967:9:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_contract$_DSValue_$1238","typeString":"contract DSValue"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(address)"},"children":[{"attributes":{"name":"address","type":null},"id":640,"name":"ElementaryTypeName","src":"978:7:7"}],"id":641,"name":"ElementaryTypeNameExpression","src":"978:7:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":568,"type":"contract DSValue","value":"feed"},"id":642,"name":"Identifier","src":"986:4:7"}],"id":643,"name":"FunctionCall","src":"978:13:7"}],"id":644,"name":"FunctionCall","src":"958:34:7"}],"id":645,"name":"ExpressionStatement","src":"958:34:7"},{"attributes":{"assignments":[647]},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"feed2","overrides":null,"scope":671,"stateVariable":false,"storageLocation":"default","type":"contract DSValue","value":null,"visibility":"internal"},"children":[{"attributes":{"contractScope":null,"name":"DSValue","referencedDeclaration":1238,"type":"contract DSValue"},"id":646,"name":"UserDefinedTypeName","src":"1050:7:7"}],"id":647,"name":"VariableDeclaration","src":"1050:13:7"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"contract DSValue","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"function () returns (contract DSValue)"},"children":[{"attributes":{"contractScope":null,"name":"DSValue","referencedDeclaration":1238,"type":"contract DSValue"},"id":648,"name":"UserDefinedTypeName","src":"1070:7:7"}],"id":649,"name":"NewExpression","src":"1066:11:7"}],"id":650,"name":"FunctionCall","src":"1066:13:7"}],"id":651,"name":"VariableDeclarationStatement","src":"1050:29:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"change","referencedDeclaration":206,"type":"function (address) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":652,"name":"Identifier","src":"1132:3:7"}],"id":654,"name":"MemberAccess","src":"1132:10:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_contract$_DSValue_$1238","typeString":"contract DSValue"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(address)"},"children":[{"attributes":{"name":"address","type":null},"id":655,"name":"ElementaryTypeName","src":"1143:7:7"}],"id":656,"name":"ElementaryTypeNameExpression","src":"1143:7:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":647,"type":"contract DSValue","value":"feed2"},"id":657,"name":"Identifier","src":"1151:5:7"}],"id":658,"name":"FunctionCall","src":"1143:14:7"}],"id":659,"name":"FunctionCall","src":"1132:26:7"}],"id":660,"name":"ExpressionStatement","src":"1132:26:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"overloadedDeclarations":[1399,1442,1540,1570,1610],"referencedDeclaration":1399,"type":"function (address,address)","value":"assertEq"},"id":661,"name":"Identifier","src":"1228:8:7"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"src","referencedDeclaration":109,"type":"function () view external returns (address)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":662,"name":"Identifier","src":"1237:3:7"}],"id":663,"name":"MemberAccess","src":"1237:7:7"}],"id":664,"name":"FunctionCall","src":"1237:9:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_contract$_DSValue_$1238","typeString":"contract DSValue"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(address)"},"children":[{"attributes":{"name":"address","type":null},"id":665,"name":"ElementaryTypeName","src":"1248:7:7"}],"id":666,"name":"ElementaryTypeNameExpression","src":"1248:7:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":647,"type":"contract DSValue","value":"feed2"},"id":667,"name":"Identifier","src":"1256:5:7"}],"id":668,"name":"FunctionCall","src":"1248:14:7"}],"id":669,"name":"FunctionCall","src":"1228:35:7"}],"id":670,"name":"ExpressionStatement","src":"1228:35:7"}],"id":671,"name":"Block","src":"948:373:7"}],"id":672,"name":"FunctionDefinition","src":"914:407:7"},{"attributes":{"documentation":null,"functionSelector":"554cf19c","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"testSetHop","overrides":null,"scope":1141,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":673,"name":"ParameterList","src":"1346:2:7"},{"attributes":{"parameters":[null]},"children":[],"id":674,"name":"ParameterList","src":"1356:0:7"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_3600_by_1","typeString":"int_const 3600"}],"overloadedDeclarations":[1399,1442,1540,1570,1610],"referencedDeclaration":1570,"type":"function (uint256,uint256)","value":"assertEq"},"id":675,"name":"Identifier","src":"1366:8:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint16","typeString":"uint16"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":676,"name":"ElementaryTypeName","src":"1375:4:7"}],"id":677,"name":"ElementaryTypeNameExpression","src":"1375:4:7"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint16","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"hop","referencedDeclaration":118,"type":"function () view external returns (uint16)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":678,"name":"Identifier","src":"1380:3:7"}],"id":679,"name":"MemberAccess","src":"1380:7:7"}],"id":680,"name":"FunctionCall","src":"1380:9:7"}],"id":681,"name":"FunctionCall","src":"1375:15:7"},{"attributes":{"argumentTypes":null,"hexvalue":"33363030","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 3600","value":"3600"},"id":682,"name":"Literal","src":"1392:4:7"}],"id":683,"name":"FunctionCall","src":"1366:31:7"}],"id":684,"name":"ExpressionStatement","src":"1366:31:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint16","typeString":"uint16"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"step","referencedDeclaration":259,"type":"function (uint16) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":685,"name":"Identifier","src":"1458:3:7"}],"id":687,"name":"MemberAccess","src":"1458:8:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":true,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint16","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_rational_7200_by_1","typeString":"int_const 7200"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint16)"},"children":[{"attributes":{"name":"uint16","type":null},"id":688,"name":"ElementaryTypeName","src":"1467:6:7"}],"id":689,"name":"ElementaryTypeNameExpression","src":"1467:6:7"},{"attributes":{"argumentTypes":null,"hexvalue":"37323030","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 7200","value":"7200"},"id":690,"name":"Literal","src":"1474:4:7"}],"id":691,"name":"FunctionCall","src":"1467:12:7"}],"id":692,"name":"FunctionCall","src":"1458:22:7"}],"id":693,"name":"ExpressionStatement","src":"1458:22:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_7200_by_1","typeString":"int_const 7200"}],"overloadedDeclarations":[1399,1442,1540,1570,1610],"referencedDeclaration":1570,"type":"function (uint256,uint256)","value":"assertEq"},"id":694,"name":"Identifier","src":"1551:8:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint16","typeString":"uint16"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":695,"name":"ElementaryTypeName","src":"1560:4:7"}],"id":696,"name":"ElementaryTypeNameExpression","src":"1560:4:7"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint16","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"hop","referencedDeclaration":118,"type":"function () view external returns (uint16)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":697,"name":"Identifier","src":"1565:3:7"}],"id":698,"name":"MemberAccess","src":"1565:7:7"}],"id":699,"name":"FunctionCall","src":"1565:9:7"}],"id":700,"name":"FunctionCall","src":"1560:15:7"},{"attributes":{"argumentTypes":null,"hexvalue":"37323030","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 7200","value":"7200"},"id":701,"name":"Literal","src":"1577:4:7"}],"id":702,"name":"FunctionCall","src":"1551:31:7"}],"id":703,"name":"ExpressionStatement","src":"1551:31:7"}],"id":704,"name":"Block","src":"1356:285:7"}],"id":705,"name":"FunctionDefinition","src":"1327:314:7"},{"attributes":{"documentation":null,"functionSelector":"90e892dd","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"testFailSetHopZero","overrides":null,"scope":1141,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":706,"name":"ParameterList","src":"1674:2:7"},{"attributes":{"parameters":[null]},"children":[],"id":707,"name":"ParameterList","src":"1684:0:7"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint16","typeString":"uint16"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"step","referencedDeclaration":259,"type":"function (uint16) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":708,"name":"Identifier","src":"1694:3:7"}],"id":710,"name":"MemberAccess","src":"1694:8:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":true,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint16","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint16)"},"children":[{"attributes":{"name":"uint16","type":null},"id":711,"name":"ElementaryTypeName","src":"1703:6:7"}],"id":712,"name":"ElementaryTypeNameExpression","src":"1703:6:7"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":713,"name":"Literal","src":"1710:1:7"}],"id":714,"name":"FunctionCall","src":"1703:9:7"}],"id":715,"name":"FunctionCall","src":"1694:19:7"}],"id":716,"name":"ExpressionStatement","src":"1694:19:7"}],"id":717,"name":"Block","src":"1684:105:7"}],"id":718,"name":"FunctionDefinition","src":"1647:142:7"},{"attributes":{"documentation":null,"functionSelector":"dd8ae962","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"testVoid","overrides":null,"scope":1141,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":719,"name":"ParameterList","src":"1812:2:7"},{"attributes":{"parameters":[null]},"children":[],"id":720,"name":"ParameterList","src":"1822:0:7"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[null],"referencedDeclaration":1369,"type":"function (bool)","value":"assertTrue"},"id":721,"name":"Identifier","src":"1832:10:7"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"stopped","referencedDeclaration":74,"type":"function () view external returns (uint256)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":722,"name":"Identifier","src":"1843:3:7"}],"id":723,"name":"MemberAccess","src":"1843:11:7"}],"id":724,"name":"FunctionCall","src":"1843:13:7"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":725,"name":"Literal","src":"1860:1:7"}],"id":726,"name":"BinaryOperation","src":"1843:18:7"}],"id":727,"name":"FunctionCall","src":"1832:30:7"}],"id":728,"name":"ExpressionStatement","src":"1832:30:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"kiss","referencedDeclaration":456,"type":"function (address) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":729,"name":"Identifier","src":"1919:3:7"}],"id":731,"name":"MemberAccess","src":"1919:8:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":572,"type":"address","value":"bud"},"id":732,"name":"Identifier","src":"1928:3:7"}],"id":733,"name":"FunctionCall","src":"1919:13:7"}],"id":734,"name":"ExpressionStatement","src":"1919:13:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"warp","referencedDeclaration":561,"type":"function (uint256) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":566,"type":"contract Hevm","value":"hevm"},"id":735,"name":"Identifier","src":"2002:4:7"}],"id":737,"name":"MemberAccess","src":"2002:9:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint16","typeString":"uint16"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":738,"name":"ElementaryTypeName","src":"2012:4:7"}],"id":739,"name":"ElementaryTypeNameExpression","src":"2012:4:7"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint16","typeString":"uint16"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"*","type":"uint16"},"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint16","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"hop","referencedDeclaration":118,"type":"function () view external returns (uint16)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":740,"name":"Identifier","src":"2017:3:7"}],"id":741,"name":"MemberAccess","src":"2017:7:7"}],"id":742,"name":"FunctionCall","src":"2017:9:7"},{"attributes":{"argumentTypes":null,"hexvalue":"32","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 2","value":"2"},"id":743,"name":"Literal","src":"2029:1:7"}],"id":744,"name":"BinaryOperation","src":"2017:13:7"}],"id":745,"name":"FunctionCall","src":"2012:19:7"}],"id":746,"name":"FunctionCall","src":"2002:30:7"}],"id":747,"name":"ExpressionStatement","src":"2002:30:7"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"poke","referencedDeclaration":356,"type":"function () external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":748,"name":"Identifier","src":"2080:3:7"}],"id":750,"name":"MemberAccess","src":"2080:8:7"}],"id":751,"name":"FunctionCall","src":"2080:10:7"}],"id":752,"name":"ExpressionStatement","src":"2080:10:7"},{"attributes":{"assignments":[754,756]},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"val","overrides":null,"scope":848,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":753,"name":"ElementaryTypeName","src":"2181:7:7"}],"id":754,"name":"VariableDeclaration","src":"2181:11:7"},{"attributes":{"constant":false,"mutability":"mutable","name":"has","overrides":null,"scope":848,"stateVariable":false,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":755,"name":"ElementaryTypeName","src":"2194:4:7"}],"id":756,"name":"VariableDeclaration","src":"2194:8:7"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple(bytes32,bool)","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"peek","referencedDeclaration":380,"type":"function () view external returns (bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":757,"name":"Identifier","src":"2206:3:7"}],"id":758,"name":"MemberAccess","src":"2206:8:7"}],"id":759,"name":"FunctionCall","src":"2206:10:7"}],"id":760,"name":"VariableDeclarationStatement","src":"2180:36:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_100000000000000000000_by_1","typeString":"int_const 100000000000000000000"}],"overloadedDeclarations":[1399,1442,1540,1570,1610],"referencedDeclaration":1570,"type":"function (uint256,uint256)","value":"assertEq"},"id":761,"name":"Identifier","src":"2269:8:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":762,"name":"ElementaryTypeName","src":"2278:4:7"}],"id":763,"name":"ElementaryTypeNameExpression","src":"2278:4:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":754,"type":"bytes32","value":"val"},"id":764,"name":"Identifier","src":"2283:3:7"}],"id":765,"name":"FunctionCall","src":"2278:9:7"},{"attributes":{"argumentTypes":null,"hexvalue":"313030","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":"ether","token":"number","type":"int_const 100000000000000000000","value":"100"},"id":766,"name":"Literal","src":"2289:9:7"}],"id":767,"name":"FunctionCall","src":"2269:30:7"}],"id":768,"name":"ExpressionStatement","src":"2269:30:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[null],"referencedDeclaration":1369,"type":"function (bool)","value":"assertTrue"},"id":769,"name":"Identifier","src":"2359:10:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":756,"type":"bool","value":"has"},"id":770,"name":"Identifier","src":"2370:3:7"}],"id":771,"name":"FunctionCall","src":"2359:15:7"}],"id":772,"name":"ExpressionStatement","src":"2359:15:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"tuple()"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"type":"tuple(bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":754,"type":"bytes32","value":"val"},"id":773,"name":"Identifier","src":"2452:3:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":756,"type":"bool","value":"has"},"id":774,"name":"Identifier","src":"2457:3:7"}],"id":775,"name":"TupleExpression","src":"2451:10:7"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple(bytes32,bool)","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"peep","referencedDeclaration":404,"type":"function () view external returns (bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":776,"name":"Identifier","src":"2464:3:7"}],"id":777,"name":"MemberAccess","src":"2464:8:7"}],"id":778,"name":"FunctionCall","src":"2464:10:7"}],"id":779,"name":"Assignment","src":"2451:23:7"}],"id":780,"name":"ExpressionStatement","src":"2451:23:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_100000000000000000000_by_1","typeString":"int_const 100000000000000000000"}],"overloadedDeclarations":[1399,1442,1540,1570,1610],"referencedDeclaration":1570,"type":"function (uint256,uint256)","value":"assertEq"},"id":781,"name":"Identifier","src":"2537:8:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":782,"name":"ElementaryTypeName","src":"2546:4:7"}],"id":783,"name":"ElementaryTypeNameExpression","src":"2546:4:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":754,"type":"bytes32","value":"val"},"id":784,"name":"Identifier","src":"2551:3:7"}],"id":785,"name":"FunctionCall","src":"2546:9:7"},{"attributes":{"argumentTypes":null,"hexvalue":"313030","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":"ether","token":"number","type":"int_const 100000000000000000000","value":"100"},"id":786,"name":"Literal","src":"2557:9:7"}],"id":787,"name":"FunctionCall","src":"2537:30:7"}],"id":788,"name":"ExpressionStatement","src":"2537:30:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[null],"referencedDeclaration":1369,"type":"function (bool)","value":"assertTrue"},"id":789,"name":"Identifier","src":"2632:10:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":756,"type":"bool","value":"has"},"id":790,"name":"Identifier","src":"2643:3:7"}],"id":791,"name":"FunctionCall","src":"2632:15:7"}],"id":792,"name":"ExpressionStatement","src":"2632:15:7"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"void","referencedDeclaration":280,"type":"function () external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":793,"name":"Identifier","src":"2729:3:7"}],"id":795,"name":"MemberAccess","src":"2729:8:7"}],"id":796,"name":"FunctionCall","src":"2729:10:7"}],"id":797,"name":"ExpressionStatement","src":"2729:10:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[null],"referencedDeclaration":1369,"type":"function (bool)","value":"assertTrue"},"id":798,"name":"Identifier","src":"2815:10:7"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"stopped","referencedDeclaration":74,"type":"function () view external returns (uint256)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":799,"name":"Identifier","src":"2826:3:7"}],"id":800,"name":"MemberAccess","src":"2826:11:7"}],"id":801,"name":"FunctionCall","src":"2826:13:7"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":802,"name":"Literal","src":"2843:1:7"}],"id":803,"name":"BinaryOperation","src":"2826:18:7"}],"id":804,"name":"FunctionCall","src":"2815:30:7"}],"id":805,"name":"ExpressionStatement","src":"2815:30:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"tuple()"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"type":"tuple(bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":754,"type":"bytes32","value":"val"},"id":806,"name":"Identifier","src":"2905:3:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":756,"type":"bool","value":"has"},"id":807,"name":"Identifier","src":"2910:3:7"}],"id":808,"name":"TupleExpression","src":"2904:10:7"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple(bytes32,bool)","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"peek","referencedDeclaration":380,"type":"function () view external returns (bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":809,"name":"Identifier","src":"2917:3:7"}],"id":810,"name":"MemberAccess","src":"2917:8:7"}],"id":811,"name":"FunctionCall","src":"2917:10:7"}],"id":812,"name":"Assignment","src":"2904:23:7"}],"id":813,"name":"ExpressionStatement","src":"2904:23:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"overloadedDeclarations":[1399,1442,1540,1570,1610],"referencedDeclaration":1570,"type":"function (uint256,uint256)","value":"assertEq"},"id":814,"name":"Identifier","src":"2993:8:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":815,"name":"ElementaryTypeName","src":"3002:4:7"}],"id":816,"name":"ElementaryTypeNameExpression","src":"3002:4:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":754,"type":"bytes32","value":"val"},"id":817,"name":"Identifier","src":"3007:3:7"}],"id":818,"name":"FunctionCall","src":"3002:9:7"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":819,"name":"Literal","src":"3013:1:7"}],"id":820,"name":"FunctionCall","src":"2993:22:7"}],"id":821,"name":"ExpressionStatement","src":"2993:22:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[null],"referencedDeclaration":1369,"type":"function (bool)","value":"assertTrue"},"id":822,"name":"Identifier","src":"3089:10:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!","prefix":true,"type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":756,"type":"bool","value":"has"},"id":823,"name":"Identifier","src":"3101:3:7"}],"id":824,"name":"UnaryOperation","src":"3100:4:7"}],"id":825,"name":"FunctionCall","src":"3089:16:7"}],"id":826,"name":"ExpressionStatement","src":"3089:16:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"tuple()"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"type":"tuple(bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":754,"type":"bytes32","value":"val"},"id":827,"name":"Identifier","src":"3192:3:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":756,"type":"bool","value":"has"},"id":828,"name":"Identifier","src":"3197:3:7"}],"id":829,"name":"TupleExpression","src":"3191:10:7"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple(bytes32,bool)","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"peep","referencedDeclaration":404,"type":"function () view external returns (bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":830,"name":"Identifier","src":"3204:3:7"}],"id":831,"name":"MemberAccess","src":"3204:8:7"}],"id":832,"name":"FunctionCall","src":"3204:10:7"}],"id":833,"name":"Assignment","src":"3191:23:7"}],"id":834,"name":"ExpressionStatement","src":"3191:23:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"overloadedDeclarations":[1399,1442,1540,1570,1610],"referencedDeclaration":1570,"type":"function (uint256,uint256)","value":"assertEq"},"id":835,"name":"Identifier","src":"3277:8:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":836,"name":"ElementaryTypeName","src":"3286:4:7"}],"id":837,"name":"ElementaryTypeNameExpression","src":"3286:4:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":754,"type":"bytes32","value":"val"},"id":838,"name":"Identifier","src":"3291:3:7"}],"id":839,"name":"FunctionCall","src":"3286:9:7"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":840,"name":"Literal","src":"3297:1:7"}],"id":841,"name":"FunctionCall","src":"3277:22:7"}],"id":842,"name":"ExpressionStatement","src":"3277:22:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[null],"referencedDeclaration":1369,"type":"function (bool)","value":"assertTrue"},"id":843,"name":"Identifier","src":"3370:10:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"!","prefix":true,"type":"bool"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":756,"type":"bool","value":"has"},"id":844,"name":"Identifier","src":"3382:3:7"}],"id":845,"name":"UnaryOperation","src":"3381:4:7"}],"id":846,"name":"FunctionCall","src":"3370:16:7"}],"id":847,"name":"ExpressionStatement","src":"3370:16:7"}],"id":848,"name":"Block","src":"1822:1644:7"}],"id":849,"name":"FunctionDefinition","src":"1795:1671:7"},{"attributes":{"documentation":null,"functionSelector":"bdf1e2d6","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"testPoke","overrides":null,"scope":1141,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":850,"name":"ParameterList","src":"3489:2:7"},{"attributes":{"parameters":[null]},"children":[],"id":851,"name":"ParameterList","src":"3499:0:7"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"poke","referencedDeclaration":1225,"type":"function (bytes32) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":568,"type":"contract DSValue","value":"feed"},"id":852,"name":"Identifier","src":"3509:4:7"}],"id":854,"name":"MemberAccess","src":"3509:9:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":true,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bytes32","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(bytes32)"},"children":[{"attributes":{"name":"bytes32","type":null},"id":855,"name":"ElementaryTypeName","src":"3519:7:7"}],"id":856,"name":"ElementaryTypeNameExpression","src":"3519:7:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":true,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_rational_101000000000000000000_by_1","typeString":"int_const 101000000000000000000"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":857,"name":"ElementaryTypeName","src":"3527:4:7"}],"id":858,"name":"ElementaryTypeNameExpression","src":"3527:4:7"},{"attributes":{"argumentTypes":null,"hexvalue":"313031","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":"ether","token":"number","type":"int_const 101000000000000000000","value":"101"},"id":859,"name":"Literal","src":"3532:9:7"}],"id":860,"name":"FunctionCall","src":"3527:15:7"}],"id":861,"name":"FunctionCall","src":"3519:24:7"}],"id":862,"name":"FunctionCall","src":"3509:35:7"}],"id":863,"name":"ExpressionStatement","src":"3509:35:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"warp","referencedDeclaration":561,"type":"function (uint256) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":566,"type":"contract Hevm","value":"hevm"},"id":864,"name":"Identifier","src":"3594:4:7"}],"id":866,"name":"MemberAccess","src":"3594:9:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint16","typeString":"uint16"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":867,"name":"ElementaryTypeName","src":"3604:4:7"}],"id":868,"name":"ElementaryTypeNameExpression","src":"3604:4:7"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint16","typeString":"uint16"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"*","type":"uint16"},"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint16","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"hop","referencedDeclaration":118,"type":"function () view external returns (uint16)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":869,"name":"Identifier","src":"3609:3:7"}],"id":870,"name":"MemberAccess","src":"3609:7:7"}],"id":871,"name":"FunctionCall","src":"3609:9:7"},{"attributes":{"argumentTypes":null,"hexvalue":"32","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 2","value":"2"},"id":872,"name":"Literal","src":"3621:1:7"}],"id":873,"name":"BinaryOperation","src":"3609:13:7"}],"id":874,"name":"FunctionCall","src":"3604:19:7"}],"id":875,"name":"FunctionCall","src":"3594:30:7"}],"id":876,"name":"ExpressionStatement","src":"3594:30:7"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"poke","referencedDeclaration":356,"type":"function () external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":877,"name":"Identifier","src":"3672:3:7"}],"id":879,"name":"MemberAccess","src":"3672:8:7"}],"id":880,"name":"FunctionCall","src":"3672:10:7"}],"id":881,"name":"ExpressionStatement","src":"3672:10:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"kiss","referencedDeclaration":456,"type":"function (address) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":882,"name":"Identifier","src":"3773:3:7"}],"id":884,"name":"MemberAccess","src":"3773:8:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":572,"type":"address","value":"bud"},"id":885,"name":"Identifier","src":"3782:3:7"}],"id":886,"name":"FunctionCall","src":"3773:13:7"}],"id":887,"name":"ExpressionStatement","src":"3773:13:7"},{"attributes":{"assignments":[889,891]},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"val","overrides":null,"scope":966,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":888,"name":"ElementaryTypeName","src":"3857:7:7"}],"id":889,"name":"VariableDeclaration","src":"3857:11:7"},{"attributes":{"constant":false,"mutability":"mutable","name":"has","overrides":null,"scope":966,"stateVariable":false,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":890,"name":"ElementaryTypeName","src":"3870:4:7"}],"id":891,"name":"VariableDeclaration","src":"3870:8:7"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple(bytes32,bool)","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"peek","referencedDeclaration":380,"type":"function () view external returns (bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":892,"name":"Identifier","src":"3882:3:7"}],"id":893,"name":"MemberAccess","src":"3882:8:7"}],"id":894,"name":"FunctionCall","src":"3882:10:7"}],"id":895,"name":"VariableDeclarationStatement","src":"3856:36:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_100000000000000000000_by_1","typeString":"int_const 100000000000000000000"}],"overloadedDeclarations":[1399,1442,1540,1570,1610],"referencedDeclaration":1570,"type":"function (uint256,uint256)","value":"assertEq"},"id":896,"name":"Identifier","src":"3945:8:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":897,"name":"ElementaryTypeName","src":"3954:4:7"}],"id":898,"name":"ElementaryTypeNameExpression","src":"3954:4:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":889,"type":"bytes32","value":"val"},"id":899,"name":"Identifier","src":"3959:3:7"}],"id":900,"name":"FunctionCall","src":"3954:9:7"},{"attributes":{"argumentTypes":null,"hexvalue":"313030","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":"ether","token":"number","type":"int_const 100000000000000000000","value":"100"},"id":901,"name":"Literal","src":"3965:9:7"}],"id":902,"name":"FunctionCall","src":"3945:30:7"}],"id":903,"name":"ExpressionStatement","src":"3945:30:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[null],"referencedDeclaration":1369,"type":"function (bool)","value":"assertTrue"},"id":904,"name":"Identifier","src":"4043:10:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":891,"type":"bool","value":"has"},"id":905,"name":"Identifier","src":"4054:3:7"}],"id":906,"name":"FunctionCall","src":"4043:15:7"}],"id":907,"name":"ExpressionStatement","src":"4043:15:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"tuple()"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"type":"tuple(bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":889,"type":"bytes32","value":"val"},"id":908,"name":"Identifier","src":"4144:3:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":891,"type":"bool","value":"has"},"id":909,"name":"Identifier","src":"4149:3:7"}],"id":910,"name":"TupleExpression","src":"4143:10:7"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple(bytes32,bool)","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"peep","referencedDeclaration":404,"type":"function () view external returns (bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":911,"name":"Identifier","src":"4156:3:7"}],"id":912,"name":"MemberAccess","src":"4156:8:7"}],"id":913,"name":"FunctionCall","src":"4156:10:7"}],"id":914,"name":"Assignment","src":"4143:23:7"}],"id":915,"name":"ExpressionStatement","src":"4143:23:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_101000000000000000000_by_1","typeString":"int_const 101000000000000000000"}],"overloadedDeclarations":[1399,1442,1540,1570,1610],"referencedDeclaration":1570,"type":"function (uint256,uint256)","value":"assertEq"},"id":916,"name":"Identifier","src":"4229:8:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":917,"name":"ElementaryTypeName","src":"4238:4:7"}],"id":918,"name":"ElementaryTypeNameExpression","src":"4238:4:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":889,"type":"bytes32","value":"val"},"id":919,"name":"Identifier","src":"4243:3:7"}],"id":920,"name":"FunctionCall","src":"4238:9:7"},{"attributes":{"argumentTypes":null,"hexvalue":"313031","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":"ether","token":"number","type":"int_const 101000000000000000000","value":"101"},"id":921,"name":"Literal","src":"4249:9:7"}],"id":922,"name":"FunctionCall","src":"4229:30:7"}],"id":923,"name":"ExpressionStatement","src":"4229:30:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[null],"referencedDeclaration":1369,"type":"function (bool)","value":"assertTrue"},"id":924,"name":"Identifier","src":"4324:10:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":891,"type":"bool","value":"has"},"id":925,"name":"Identifier","src":"4335:3:7"}],"id":926,"name":"FunctionCall","src":"4324:15:7"}],"id":927,"name":"ExpressionStatement","src":"4324:15:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"warp","referencedDeclaration":561,"type":"function (uint256) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":566,"type":"contract Hevm","value":"hevm"},"id":928,"name":"Identifier","src":"4421:4:7"}],"id":930,"name":"MemberAccess","src":"4421:9:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint16","typeString":"uint16"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":931,"name":"ElementaryTypeName","src":"4431:4:7"}],"id":932,"name":"ElementaryTypeNameExpression","src":"4431:4:7"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint16","typeString":"uint16"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"*","type":"uint16"},"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint16","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"hop","referencedDeclaration":118,"type":"function () view external returns (uint16)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":933,"name":"Identifier","src":"4436:3:7"}],"id":934,"name":"MemberAccess","src":"4436:7:7"}],"id":935,"name":"FunctionCall","src":"4436:9:7"},{"attributes":{"argumentTypes":null,"hexvalue":"33","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 3","value":"3"},"id":936,"name":"Literal","src":"4448:1:7"}],"id":937,"name":"BinaryOperation","src":"4436:13:7"}],"id":938,"name":"FunctionCall","src":"4431:19:7"}],"id":939,"name":"FunctionCall","src":"4421:30:7"}],"id":940,"name":"ExpressionStatement","src":"4421:30:7"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"poke","referencedDeclaration":356,"type":"function () external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":941,"name":"Identifier","src":"4499:3:7"}],"id":943,"name":"MemberAccess","src":"4499:8:7"}],"id":944,"name":"FunctionCall","src":"4499:10:7"}],"id":945,"name":"ExpressionStatement","src":"4499:10:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"=","type":"tuple()"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"type":"tuple(bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":889,"type":"bytes32","value":"val"},"id":946,"name":"Identifier","src":"4601:3:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":891,"type":"bool","value":"has"},"id":947,"name":"Identifier","src":"4606:3:7"}],"id":948,"name":"TupleExpression","src":"4600:10:7"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple(bytes32,bool)","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"peek","referencedDeclaration":380,"type":"function () view external returns (bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":949,"name":"Identifier","src":"4613:3:7"}],"id":950,"name":"MemberAccess","src":"4613:8:7"}],"id":951,"name":"FunctionCall","src":"4613:10:7"}],"id":952,"name":"Assignment","src":"4600:23:7"}],"id":953,"name":"ExpressionStatement","src":"4600:23:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_101000000000000000000_by_1","typeString":"int_const 101000000000000000000"}],"overloadedDeclarations":[1399,1442,1540,1570,1610],"referencedDeclaration":1570,"type":"function (uint256,uint256)","value":"assertEq"},"id":954,"name":"Identifier","src":"4689:8:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":955,"name":"ElementaryTypeName","src":"4698:4:7"}],"id":956,"name":"ElementaryTypeNameExpression","src":"4698:4:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":889,"type":"bytes32","value":"val"},"id":957,"name":"Identifier","src":"4703:3:7"}],"id":958,"name":"FunctionCall","src":"4698:9:7"},{"attributes":{"argumentTypes":null,"hexvalue":"313031","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":"ether","token":"number","type":"int_const 101000000000000000000","value":"101"},"id":959,"name":"Literal","src":"4709:9:7"}],"id":960,"name":"FunctionCall","src":"4689:30:7"}],"id":961,"name":"ExpressionStatement","src":"4689:30:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[null],"referencedDeclaration":1369,"type":"function (bool)","value":"assertTrue"},"id":962,"name":"Identifier","src":"4787:10:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":891,"type":"bool","value":"has"},"id":963,"name":"Identifier","src":"4798:3:7"}],"id":964,"name":"FunctionCall","src":"4787:15:7"}],"id":965,"name":"ExpressionStatement","src":"4787:15:7"}],"id":966,"name":"Block","src":"3499:1385:7"}],"id":967,"name":"FunctionDefinition","src":"3472:1412:7"},{"attributes":{"documentation":null,"functionSelector":"a896b29f","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"testFailPoke","overrides":null,"scope":1141,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":968,"name":"ParameterList","src":"4911:2:7"},{"attributes":{"parameters":[null]},"children":[],"id":969,"name":"ParameterList","src":"4921:0:7"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"poke","referencedDeclaration":1225,"type":"function (bytes32) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":568,"type":"contract DSValue","value":"feed"},"id":970,"name":"Identifier","src":"4931:4:7"}],"id":972,"name":"MemberAccess","src":"4931:9:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":true,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"bytes32","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(bytes32)"},"children":[{"attributes":{"name":"bytes32","type":null},"id":973,"name":"ElementaryTypeName","src":"4941:7:7"}],"id":974,"name":"ElementaryTypeNameExpression","src":"4941:7:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":true,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_rational_101000000000000000000_by_1","typeString":"int_const 101000000000000000000"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":975,"name":"ElementaryTypeName","src":"4949:4:7"}],"id":976,"name":"ElementaryTypeNameExpression","src":"4949:4:7"},{"attributes":{"argumentTypes":null,"hexvalue":"313031","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":"ether","token":"number","type":"int_const 101000000000000000000","value":"101"},"id":977,"name":"Literal","src":"4954:9:7"}],"id":978,"name":"FunctionCall","src":"4949:15:7"}],"id":979,"name":"FunctionCall","src":"4941:24:7"}],"id":980,"name":"FunctionCall","src":"4931:35:7"}],"id":981,"name":"ExpressionStatement","src":"4931:35:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"warp","referencedDeclaration":561,"type":"function (uint256) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":566,"type":"contract Hevm","value":"hevm"},"id":982,"name":"Identifier","src":"5032:4:7"}],"id":984,"name":"MemberAccess","src":"5032:9:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint16","typeString":"uint16"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":985,"name":"ElementaryTypeName","src":"5042:4:7"}],"id":986,"name":"ElementaryTypeNameExpression","src":"5042:4:7"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint16","typeString":"uint16"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"-","type":"uint16"},"children":[{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint16","typeString":"uint16"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"*","type":"uint16"},"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint16","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"hop","referencedDeclaration":118,"type":"function () view external returns (uint16)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":987,"name":"Identifier","src":"5047:3:7"}],"id":988,"name":"MemberAccess","src":"5047:7:7"}],"id":989,"name":"FunctionCall","src":"5047:9:7"},{"attributes":{"argumentTypes":null,"hexvalue":"32","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 2","value":"2"},"id":990,"name":"Literal","src":"5059:1:7"}],"id":991,"name":"BinaryOperation","src":"5047:13:7"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":992,"name":"Literal","src":"5063:1:7"}],"id":993,"name":"BinaryOperation","src":"5047:17:7"}],"id":994,"name":"FunctionCall","src":"5042:23:7"}],"id":995,"name":"FunctionCall","src":"5032:34:7"}],"id":996,"name":"ExpressionStatement","src":"5032:34:7"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"poke","referencedDeclaration":356,"type":"function () external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":997,"name":"Identifier","src":"5121:3:7"}],"id":999,"name":"MemberAccess","src":"5121:8:7"}],"id":1000,"name":"FunctionCall","src":"5121:10:7"}],"id":1001,"name":"ExpressionStatement","src":"5121:10:7"}],"id":1002,"name":"Block","src":"4921:309:7"}],"id":1003,"name":"FunctionDefinition","src":"4890:340:7"},{"attributes":{"documentation":null,"functionSelector":"d492dec3","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"testFailWhitelistPeep","overrides":null,"scope":1141,"stateMutability":"view","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1004,"name":"ParameterList","src":"5266:2:7"},{"attributes":{"parameters":[null]},"children":[],"id":1005,"name":"ParameterList","src":"5281:0:7"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple(bytes32,bool)","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"peep","referencedDeclaration":404,"type":"function () view external returns (bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":1006,"name":"Identifier","src":"5291:3:7"}],"id":1008,"name":"MemberAccess","src":"5291:8:7"}],"id":1009,"name":"FunctionCall","src":"5291:10:7"}],"id":1010,"name":"ExpressionStatement","src":"5291:10:7"}],"id":1011,"name":"Block","src":"5281:104:7"}],"id":1012,"name":"FunctionDefinition","src":"5236:149:7"},{"attributes":{"documentation":null,"functionSelector":"f30dcb03","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"testWhitelistPeep","overrides":null,"scope":1141,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1013,"name":"ParameterList","src":"5417:2:7"},{"attributes":{"parameters":[null]},"children":[],"id":1014,"name":"ParameterList","src":"5427:0:7"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"kiss","referencedDeclaration":456,"type":"function (address) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":1015,"name":"Identifier","src":"5437:3:7"}],"id":1017,"name":"MemberAccess","src":"5437:8:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":572,"type":"address","value":"bud"},"id":1018,"name":"Identifier","src":"5446:3:7"}],"id":1019,"name":"FunctionCall","src":"5437:13:7"}],"id":1020,"name":"ExpressionStatement","src":"5437:13:7"},{"attributes":{"assignments":[1022,1024]},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"val","overrides":null,"scope":1041,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1021,"name":"ElementaryTypeName","src":"5521:7:7"}],"id":1022,"name":"VariableDeclaration","src":"5521:11:7"},{"attributes":{"constant":false,"mutability":"mutable","name":"has","overrides":null,"scope":1041,"stateVariable":false,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":1023,"name":"ElementaryTypeName","src":"5534:4:7"}],"id":1024,"name":"VariableDeclaration","src":"5534:8:7"},{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple(bytes32,bool)","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"peep","referencedDeclaration":404,"type":"function () view external returns (bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":1025,"name":"Identifier","src":"5546:3:7"}],"id":1026,"name":"MemberAccess","src":"5546:8:7"}],"id":1027,"name":"FunctionCall","src":"5546:10:7"}],"id":1028,"name":"VariableDeclarationStatement","src":"5520:36:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_100000000000000000000_by_1","typeString":"int_const 100000000000000000000"}],"overloadedDeclarations":[1399,1442,1540,1570,1610],"referencedDeclaration":1570,"type":"function (uint256,uint256)","value":"assertEq"},"id":1029,"name":"Identifier","src":"5606:8:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(uint256)"},"children":[{"attributes":{"name":"uint","type":null},"id":1030,"name":"ElementaryTypeName","src":"5615:4:7"}],"id":1031,"name":"ElementaryTypeNameExpression","src":"5615:4:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1022,"type":"bytes32","value":"val"},"id":1032,"name":"Identifier","src":"5620:3:7"}],"id":1033,"name":"FunctionCall","src":"5615:9:7"},{"attributes":{"argumentTypes":null,"hexvalue":"313030","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":"ether","token":"number","type":"int_const 100000000000000000000","value":"100"},"id":1034,"name":"Literal","src":"5626:9:7"}],"id":1035,"name":"FunctionCall","src":"5606:30:7"}],"id":1036,"name":"ExpressionStatement","src":"5606:30:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[null],"referencedDeclaration":1369,"type":"function (bool)","value":"assertTrue"},"id":1037,"name":"Identifier","src":"5701:10:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1024,"type":"bool","value":"has"},"id":1038,"name":"Identifier","src":"5712:3:7"}],"id":1039,"name":"FunctionCall","src":"5701:15:7"}],"id":1040,"name":"ExpressionStatement","src":"5701:15:7"}],"id":1041,"name":"Block","src":"5427:368:7"}],"id":1042,"name":"FunctionDefinition","src":"5391:404:7"},{"attributes":{"documentation":null,"functionSelector":"a21412bc","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"testFailWhitelistPeek","overrides":null,"scope":1141,"stateMutability":"view","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1043,"name":"ParameterList","src":"5831:2:7"},{"attributes":{"parameters":[null]},"children":[],"id":1044,"name":"ParameterList","src":"5846:0:7"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple(bytes32,bool)","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"peek","referencedDeclaration":380,"type":"function () view external returns (bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":1045,"name":"Identifier","src":"5856:3:7"}],"id":1047,"name":"MemberAccess","src":"5856:8:7"}],"id":1048,"name":"FunctionCall","src":"5856:10:7"}],"id":1049,"name":"ExpressionStatement","src":"5856:10:7"}],"id":1050,"name":"Block","src":"5846:107:7"}],"id":1051,"name":"FunctionDefinition","src":"5801:152:7"},{"attributes":{"documentation":null,"functionSelector":"477b860d","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"testWhitelistPeek","overrides":null,"scope":1141,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1052,"name":"ParameterList","src":"5985:2:7"},{"attributes":{"parameters":[null]},"children":[],"id":1053,"name":"ParameterList","src":"5995:0:7"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"kiss","referencedDeclaration":456,"type":"function (address) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":1054,"name":"Identifier","src":"6005:3:7"}],"id":1056,"name":"MemberAccess","src":"6005:8:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":572,"type":"address","value":"bud"},"id":1057,"name":"Identifier","src":"6014:3:7"}],"id":1058,"name":"FunctionCall","src":"6005:13:7"}],"id":1059,"name":"ExpressionStatement","src":"6005:13:7"},{"children":[{"attributes":{"argumentTypes":null,"arguments":[null],"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple(bytes32,bool)","type_conversion":false},"children":[{"attributes":{"argumentTypes":[null],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"peek","referencedDeclaration":380,"type":"function () view external returns (bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":1060,"name":"Identifier","src":"6078:3:7"}],"id":1062,"name":"MemberAccess","src":"6078:8:7"}],"id":1063,"name":"FunctionCall","src":"6078:10:7"}],"id":1064,"name":"ExpressionStatement","src":"6078:10:7"}],"id":1065,"name":"Block","src":"5995:170:7"}],"id":1066,"name":"FunctionDefinition","src":"5959:206:7"},{"attributes":{"documentation":null,"functionSelector":"cbbc5d5f","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"testKiss","overrides":null,"scope":1141,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1067,"name":"ParameterList","src":"6188:2:7"},{"attributes":{"parameters":[null]},"children":[],"id":1068,"name":"ParameterList","src":"6198:0:7"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[null],"referencedDeclaration":1369,"type":"function (bool)","value":"assertTrue"},"id":1069,"name":"Identifier","src":"6208:10:7"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"bud","referencedDeclaration":133,"type":"function (address) view external returns (uint256)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":1070,"name":"Identifier","src":"6219:3:7"}],"id":1071,"name":"MemberAccess","src":"6219:7:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_contract$_OSMTest_$1141","typeString":"contract OSMTest"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(address)"},"children":[{"attributes":{"name":"address","type":null},"id":1072,"name":"ElementaryTypeName","src":"6227:7:7"}],"id":1073,"name":"ElementaryTypeNameExpression","src":"6227:7:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-28,"type":"contract OSMTest","value":"this"},"id":1074,"name":"Identifier","src":"6235:4:7"}],"id":1075,"name":"FunctionCall","src":"6227:13:7"}],"id":1076,"name":"FunctionCall","src":"6219:22:7"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":1077,"name":"Literal","src":"6245:1:7"}],"id":1078,"name":"BinaryOperation","src":"6219:27:7"}],"id":1079,"name":"FunctionCall","src":"6208:39:7"}],"id":1080,"name":"ExpressionStatement","src":"6208:39:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"kiss","referencedDeclaration":456,"type":"function (address) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":1081,"name":"Identifier","src":"6307:3:7"}],"id":1083,"name":"MemberAccess","src":"6307:8:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":572,"type":"address","value":"bud"},"id":1084,"name":"Identifier","src":"6316:3:7"}],"id":1085,"name":"FunctionCall","src":"6307:13:7"}],"id":1086,"name":"ExpressionStatement","src":"6307:13:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[null],"referencedDeclaration":1369,"type":"function (bool)","value":"assertTrue"},"id":1087,"name":"Identifier","src":"6380:10:7"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"bud","referencedDeclaration":133,"type":"function (address) view external returns (uint256)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":1088,"name":"Identifier","src":"6391:3:7"}],"id":1089,"name":"MemberAccess","src":"6391:7:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_contract$_OSMTest_$1141","typeString":"contract OSMTest"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(address)"},"children":[{"attributes":{"name":"address","type":null},"id":1090,"name":"ElementaryTypeName","src":"6399:7:7"}],"id":1091,"name":"ElementaryTypeNameExpression","src":"6399:7:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-28,"type":"contract OSMTest","value":"this"},"id":1092,"name":"Identifier","src":"6407:4:7"}],"id":1093,"name":"FunctionCall","src":"6399:13:7"}],"id":1094,"name":"FunctionCall","src":"6391:22:7"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":1095,"name":"Literal","src":"6417:1:7"}],"id":1096,"name":"BinaryOperation","src":"6391:27:7"}],"id":1097,"name":"FunctionCall","src":"6380:39:7"}],"id":1098,"name":"ExpressionStatement","src":"6380:39:7"}],"id":1099,"name":"Block","src":"6198:274:7"}],"id":1100,"name":"FunctionDefinition","src":"6171:301:7"},{"attributes":{"documentation":null,"functionSelector":"87935f0b","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"testDiss","overrides":null,"scope":1141,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1101,"name":"ParameterList","src":"6495:2:7"},{"attributes":{"parameters":[null]},"children":[],"id":1102,"name":"ParameterList","src":"6505:0:7"},{"children":[{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"kiss","referencedDeclaration":456,"type":"function (address) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":1103,"name":"Identifier","src":"6515:3:7"}],"id":1105,"name":"MemberAccess","src":"6515:8:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":572,"type":"address","value":"bud"},"id":1106,"name":"Identifier","src":"6524:3:7"}],"id":1107,"name":"FunctionCall","src":"6515:13:7"}],"id":1108,"name":"ExpressionStatement","src":"6515:13:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[null],"referencedDeclaration":1369,"type":"function (bool)","value":"assertTrue"},"id":1109,"name":"Identifier","src":"6588:10:7"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"bud","referencedDeclaration":133,"type":"function (address) view external returns (uint256)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":1110,"name":"Identifier","src":"6599:3:7"}],"id":1111,"name":"MemberAccess","src":"6599:7:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_contract$_OSMTest_$1141","typeString":"contract OSMTest"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(address)"},"children":[{"attributes":{"name":"address","type":null},"id":1112,"name":"ElementaryTypeName","src":"6607:7:7"}],"id":1113,"name":"ElementaryTypeNameExpression","src":"6607:7:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-28,"type":"contract OSMTest","value":"this"},"id":1114,"name":"Identifier","src":"6615:4:7"}],"id":1115,"name":"FunctionCall","src":"6607:13:7"}],"id":1116,"name":"FunctionCall","src":"6599:22:7"},{"attributes":{"argumentTypes":null,"hexvalue":"31","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 1","value":"1"},"id":1117,"name":"Literal","src":"6625:1:7"}],"id":1118,"name":"BinaryOperation","src":"6599:27:7"}],"id":1119,"name":"FunctionCall","src":"6588:39:7"}],"id":1120,"name":"ExpressionStatement","src":"6588:39:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"diss","referencedDeclaration":472,"type":"function (address) external"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":1121,"name":"Identifier","src":"6683:3:7"}],"id":1123,"name":"MemberAccess","src":"6683:8:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":572,"type":"address","value":"bud"},"id":1124,"name":"Identifier","src":"6692:3:7"}],"id":1125,"name":"FunctionCall","src":"6683:13:7"}],"id":1126,"name":"ExpressionStatement","src":"6683:13:7"},{"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"tuple()","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"overloadedDeclarations":[null],"referencedDeclaration":1369,"type":"function (bool)","value":"assertTrue"},"id":1127,"name":"Identifier","src":"6768:10:7"},{"attributes":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"operator":"==","type":"bool"},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"uint256","type_conversion":false},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"member_name":"bud","referencedDeclaration":133,"type":"function (address) view external returns (uint256)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":570,"type":"contract OSM","value":"osm"},"id":1128,"name":"Identifier","src":"6779:3:7"}],"id":1129,"name":"MemberAccess","src":"6779:7:7"},{"attributes":{"argumentTypes":null,"isConstant":false,"isLValue":false,"isPure":false,"isStructConstructorCall":false,"lValueRequested":false,"names":[null],"tryCall":false,"type":"address","type_conversion":true},"children":[{"attributes":{"argumentTypes":[{"typeIdentifier":"t_contract$_OSMTest_$1141","typeString":"contract OSMTest"}],"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"type":"type(address)"},"children":[{"attributes":{"name":"address","type":null},"id":1130,"name":"ElementaryTypeName","src":"6787:7:7"}],"id":1131,"name":"ElementaryTypeNameExpression","src":"6787:7:7"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":-28,"type":"contract OSMTest","value":"this"},"id":1132,"name":"Identifier","src":"6795:4:7"}],"id":1133,"name":"FunctionCall","src":"6787:13:7"}],"id":1134,"name":"FunctionCall","src":"6779:22:7"},{"attributes":{"argumentTypes":null,"hexvalue":"30","isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"subdenomination":null,"token":"number","type":"int_const 0","value":"0"},"id":1135,"name":"Literal","src":"6805:1:7"}],"id":1136,"name":"BinaryOperation","src":"6779:27:7"}],"id":1137,"name":"FunctionCall","src":"6768:39:7"}],"id":1138,"name":"ExpressionStatement","src":"6768:39:7"}],"id":1139,"name":"Block","src":"6505:359:7"}],"id":1140,"name":"FunctionDefinition","src":"6478:386:7"}],"id":1141,"name":"ContractDefinition","src":"187:6679:7"}],"id":1142,"name":"SourceUnit","src":"0:6867:7"}},"src/value.sol":{"AST":{"attributes":{"absolutePath":"src/value.sol","exportedSymbols":{"Value":[1160]}},"children":[{"attributes":{"literals":["solidity",">=","0.5",".6"]},"id":1143,"name":"PragmaDirective","src":"710:24:8"},{"attributes":{"abstract":false,"baseContracts":[null],"contractDependencies":[null],"contractKind":"contract","documentation":null,"fullyImplemented":true,"linearizedBaseContracts":[1160],"name":"Value","scope":1161},"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"has","overrides":null,"scope":1160,"stateVariable":true,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":1144,"name":"ElementaryTypeName","src":"757:4:8"}],"id":1145,"name":"VariableDeclaration","src":"757:11:8"},{"attributes":{"constant":false,"mutability":"mutable","name":"val","overrides":null,"scope":1160,"stateVariable":true,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1146,"name":"ElementaryTypeName","src":"774:7:8"}],"id":1147,"name":"VariableDeclaration","src":"774:11:8"},{"attributes":{"documentation":null,"functionSelector":"59e02dd7","implemented":true,"isConstructor":false,"kind":"function","modifiers":[null],"name":"peek","overrides":null,"scope":1160,"stateMutability":"view","virtual":false,"visibility":"public"},"children":[{"attributes":{"parameters":[null]},"children":[],"id":1148,"name":"ParameterList","src":"805:2:8"},{"children":[{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":1159,"stateVariable":false,"storageLocation":"default","type":"bytes32","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bytes32","type":"bytes32"},"id":1149,"name":"ElementaryTypeName","src":"829:7:8"}],"id":1150,"name":"VariableDeclaration","src":"829:7:8"},{"attributes":{"constant":false,"mutability":"mutable","name":"","overrides":null,"scope":1159,"stateVariable":false,"storageLocation":"default","type":"bool","value":null,"visibility":"internal"},"children":[{"attributes":{"name":"bool","type":"bool"},"id":1151,"name":"ElementaryTypeName","src":"838:4:8"}],"id":1152,"name":"VariableDeclaration","src":"838:4:8"}],"id":1153,"name":"ParameterList","src":"828:15:8"},{"children":[{"attributes":{"functionReturnParameters":1153},"children":[{"attributes":{"argumentTypes":null,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"type":"tuple(bytes32,bool)"},"children":[{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1147,"type":"bytes32","value":"val"},"id":1154,"name":"Identifier","src":"862:3:8"},{"attributes":{"argumentTypes":null,"overloadedDeclarations":[null],"referencedDeclaration":1145,"type":"bool","value":"has"},"id":1155,"name":"Identifier","src":"866:3:8"}],"id":1156,"name":"TupleExpression","src":"861:9:8"}],"id":1157,"name":"Return","src":"854:16:8"}],"id":1158,"name":"Block","src":"844:33:8"}],"id":1159,"name":"FunctionDefinition","src":"792:85:8"}],"id":1160,"name":"ContractDefinition","src":"736:143:8"}],"id":1161,"name":"SourceUnit","src":"710:170:8"}}},"version":"0.6.7+commit.b8d736ae.Darwin.clang"}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment