28456 lines
1.2 MiB
28456 lines
1.2 MiB
{
|
|
"contractName": "MockContract",
|
|
"abi": [
|
|
{
|
|
"constant": true,
|
|
"inputs": [],
|
|
"name": "MOCKS_LIST_END_HASH",
|
|
"outputs": [
|
|
{
|
|
"name": "",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"payable": false,
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"inputs": [],
|
|
"name": "MOCKS_LIST_START",
|
|
"outputs": [
|
|
{
|
|
"name": "",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"payable": false,
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"inputs": [],
|
|
"name": "MOCKS_LIST_END",
|
|
"outputs": [
|
|
{
|
|
"name": "",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"payable": false,
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"inputs": [],
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"outputs": [
|
|
{
|
|
"name": "",
|
|
"type": "bytes4"
|
|
}
|
|
],
|
|
"payable": false,
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "constructor"
|
|
},
|
|
{
|
|
"payable": true,
|
|
"stateMutability": "payable",
|
|
"type": "fallback"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "response",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "givenAnyReturn",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "response",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"name": "givenAnyReturnBool",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "response",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "givenAnyReturnUint",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "response",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "givenAnyReturnAddress",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [],
|
|
"name": "givenAnyRevert",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "message",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"name": "givenAnyRevertWithMessage",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [],
|
|
"name": "givenAnyRunOutOfGas",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
},
|
|
{
|
|
"name": "response",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "givenCalldataReturn",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
},
|
|
{
|
|
"name": "response",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"name": "givenCalldataReturnBool",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
},
|
|
{
|
|
"name": "response",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "givenCalldataReturnUint",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
},
|
|
{
|
|
"name": "response",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "givenCalldataReturnAddress",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
},
|
|
{
|
|
"name": "response",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "givenMethodReturn",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
},
|
|
{
|
|
"name": "response",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"name": "givenMethodReturnBool",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
},
|
|
{
|
|
"name": "response",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "givenMethodReturnUint",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
},
|
|
{
|
|
"name": "response",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "givenMethodReturnAddress",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "givenCalldataRevert",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "givenMethodRevert",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
},
|
|
{
|
|
"name": "message",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"name": "givenCalldataRevertWithMessage",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
},
|
|
{
|
|
"name": "message",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"name": "givenMethodRevertWithMessage",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "givenCalldataRunOutOfGas",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "givenMethodRunOutOfGas",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [],
|
|
"name": "invocationCount",
|
|
"outputs": [
|
|
{
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "invocationCountForMethod",
|
|
"outputs": [
|
|
{
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "invocationCountForCalldata",
|
|
"outputs": [
|
|
{
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [],
|
|
"name": "reset",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
}
|
|
],
|
|
"bytecode": "0x60806040523480156200001157600080fd5b506040805190810160405280600481526020017f30786666000000000000000000000000000000000000000000000000000000008152506000807f01000000000000000000000000000000000000000000000000000000000000006000191660001916815260200190815260200160002090805190602001906200009792919062000168565b507f0100000000000000000000000000000000000000000000000000000000000000600560007f01000000000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c01000000000000000000000000000000000000000000000000000000009004021790555062000217565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001ab57805160ff1916838001178555620001dc565b82800160010185558215620001dc579182015b82811115620001db578251825591602001919060010190620001be565b5b509050620001eb9190620001ef565b5090565b6200021491905b8082111562000210576000816000905550600101620001f6565b5090565b90565b6132ad80620002276000396000f300608060405260043610610175576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630a20119f14610a6c57806321fed4d614610a975780632ed238dc14610ad257806336ff0ee514610b055780633956dc6b14610b345780634937c4f614610b4b578063586984a414610b9a5780635a3855ab14610be95780636193659414610c3057806367aad04a14610c83578063682b479714610cb657806368ab6f2f14610cf95780636f40075614610d345780637cd96ee414610d7b57806387abab6514610e0b5780639a1dc86b14610e465780639eaeed7514610e99578063aa788c5514610eec578063af21ac7814610f27578063b3901f2914610f54578063c6ee167f14610faf578063cf11ff5d14611002578063d6fe97781461105d578063d73ca0ac14611098578063d826f88f146110dd578063e211b8a5146110f4578063eb861f691461110b578063f07da22914611146578063f5afa9c1146111af575b6000606060003591506001600281111561018b57fe5b600160003660405180838380828437820191505092505050908152602001604051809103902060009054906101000a900460ff1660028111156101ca57fe5b14156102b45760036000366040518083838082843782019150509250505090815260200160405180910390206040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156102a55780601f1061027a576101008083540402835291602001916102a5565b820191906000526020600020905b81548152906001019060200180831161028857829003601f168201915b50509250505060405180910390fd5b6002808111156102c057fe5b600160003660405180838380828437820191505092505050908152602001604051809103902060009054906101000a900460ff1660028111156102ff57fe5b141561030e5761030d6111f4565b5b60026000366040518083838082843782019150509250505090815260200160405180910390208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156103c85780601f1061039d576101008083540402835291602001916103c8565b820191906000526020600020905b8154815290600101906020018083116103ab57829003601f168201915b505050505090506000815114156106d757600160028111156103e657fe5b60066000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff16600281111561045057fe5b14156105655760086000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000206040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156105565780601f1061052b57610100808354040283529160200191610556565b820191906000526020600020905b81548152906001019060200180831161053957829003601f168201915b50509250505060405180910390fd5b60028081111561057157fe5b60066000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff1660028111156105db57fe5b14156105ea576105e96111f4565b5b60076000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b505050505090505b6000815114156108a357600160028111156106ee57fe5b600a60009054906101000a900460ff16600281111561070957fe5b14156107cf57600c6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156107c05780601f10610795576101008083540402835291602001916107c0565b820191906000526020600020905b8154815290600101906020018083116107a357829003601f168201915b50509250505060405180910390fd5b6002808111156107db57fe5b600a60009054906101000a900460ff1660028111156107f657fe5b1415610805576108046111f4565b5b600b8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561089b5780601f106108705761010080835404028352916020019161089b565b820191906000526020600020905b81548152906001019060200180831161087e57829003601f168201915b505050505090505b6001600d60008282540192505081905550600160096000600e548560405160200180838152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152600401925050506040516020818303038152906040526040518082805190602001908083835b6020831015156109575780518252602082019150602081019050602083039250610932565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008282540192505081905550600160046000600e5460003660405160200180848152602001838380828437820191505093505050506040516020818303038152906040526040518082805190602001908083835b602083101515610a1457805182526020820191506020810190506020830392506109ef565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008282540192505081905550805181602001f35b348015610a7857600080fd5b50610a81611219565b6040518082815260200191505060405180910390f35b348015610aa357600080fd5b50610ad0600480360381019080803590602001908201803590602001919091929391929390505050611223565b005b348015610ade57600080fd5b50610ae76112a9565b60405180826000191660001916815260200191505060405180910390f35b348015610b1157600080fd5b50610b32600480360381019080803515159060200190929190505050611344565b005b348015610b4057600080fd5b50610b4961136f565b005b348015610b5757600080fd5b50610b84600480360381019080803590602001908201803590602001919091929391929390505050611395565b6040518082815260200191505060405180910390f35b348015610ba657600080fd5b50610bd36004803603810190808035906020019082018035906020019190919293919293905050506114c3565b6040518082815260200191505060405180910390f35b348015610bf557600080fd5b50610c2e60048036038101908080359060200190820180359060200191909192939192939080351515906020019092919050505061157b565b005b348015610c3c57600080fd5b50610c816004803603810190808035906020019082018035906020019190919293919293908035906020019082018035906020019190919293919293905050506115db565b005b348015610c8f57600080fd5b50610c9861164f565b60405180826000191660001916815260200191505060405180910390f35b348015610cc257600080fd5b50610cf7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611673565b005b348015610d0557600080fd5b50610d32600480360381019080803590602001908201803590602001919091929391929390505050611687565b005b348015610d4057600080fd5b50610d79600480360381019080803590602001908201803590602001919091929391929390803515159060200190929190505050611747565b005b348015610d8757600080fd5b50610d906117a7565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610dd0578082015181840152602081019050610db5565b50505050905090810190601f168015610dfd5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610e1757600080fd5b50610e446004803603810190808035906020019082018035906020019190919293919293905050506117e0565b005b348015610e5257600080fd5b50610e9760048036038101908080359060200190820180359060200191909192939192939080359060200190820180359060200191909192939192939050505061181a565b005b348015610ea557600080fd5b50610eea60048036038101908080359060200190820180359060200191909192939192939080359060200190820180359060200191909192939192939050505061193d565b005b348015610ef857600080fd5b50610f256004803603810190808035906020019082018035906020019190919293919293905050506119f9565b005b348015610f3357600080fd5b50610f5260048036038101908080359060200190929190505050611ab9565b005b348015610f6057600080fd5b50610fad600480360381019080803590602001908201803590602001919091929391929390803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611acd565b005b348015610fbb57600080fd5b50611000600480360381019080803590602001908201803590602001919091929391929390803590602001908201803590602001919091929391929390505050611b16565b005b34801561100e57600080fd5b5061105b600480360381019080803590602001908201803590602001919091929391929390803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b8a565b005b34801561106957600080fd5b50611096600480360381019080803590602001908201803590602001919091929391929390505050611bd3565b005b3480156110a457600080fd5b506110db60048036038101908080359060200190820180359060200191909192939192939080359060200190929190505050611c12565b005b3480156110e957600080fd5b506110f2611c5b565b005b34801561110057600080fd5b5061110961269b565b005b34801561111757600080fd5b506111446004803603810190808035906020019082018035906020019190919293919293905050506126e8565b005b34801561115257600080fd5b5061115b6127b7565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b3480156111bb57600080fd5b506111f2600480360381019080803590602001908201803590602001919091929391929390803590602001909291905050506127db565b005b60005b600115611216576060600060c060008060066107d05a03f190506111f7565b50565b6000600d54905090565b60026001838360405180838380828437820191505092505050908152602001604051809103902060006101000a81548160ff0219169083600281111561126557fe5b02179055506112a582828080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612824565b5050565b6040805190810160405280600481526020017f30786666000000000000000000000000000000000000000000000000000000008152506040518082805190602001908083835b60208310151561131457805182526020820191506020810190506020830392506112ef565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902081565b600081611352576000611355565b60015b60ff16905061136b6113668261298a565b6129ce565b5050565b6002600a60006101000a81548160ff0219169083600281111561138e57fe5b0217905550565b6000806113d384848080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612a0c565b905060096000600e548360405160200180838152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152600401925050506040516020818303038152906040526040518082805190602001908083835b6020831015156114765780518252602082019150602081019050602083039250611451565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000205491505092915050565b600060046000600e54858560405160200180848152602001838380828437820191505093505050506040516020818303038152906040526040518082805190602001908083835b60208310151561152f578051825260208201915060208101905060208303925061150a565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002054905092915050565b60008161158957600061158c565b60015b60ff1690506115d584848080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506115d08361298a565b612b02565b50505050565b61164984848080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505083838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612bf6565b50505050565b7f010000000000000000000000000000000000000000000000000000000000000081565b61168461167f82612d10565b6129ce565b50565b60006116c483838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612a0c565b9050600260066000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff0219169083600281111561173457fe5b021790555061174281612d42565b505050565b600081611755576000611758565b60015b60ff1690506117a184848080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505061179c8361298a565b612b02565b50505050565b6040805190810160405280600481526020017f307866660000000000000000000000000000000000000000000000000000000081525081565b6001600a60006101000a81548160ff021916908360028111156117ff57fe5b02179055508181600c9190611815929190612fd5565b505050565b600061185785858080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612a0c565b9050600160066000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff021916908360028111156118c757fe5b0217905550828260086000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001908152602001600020919061192c929190612fd5565b5061193681612d42565b5050505050565b600180858560405180838380828437820191505092505050908152602001604051809103902060006101000a81548160ff0219169083600281111561197e57fe5b021790555081816003868660405180838380828437820191505092505050908152602001604051809103902091906119b7929190612fd5565b506119f384848080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612824565b50505050565b6000611a3683838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612a0c565b9050600160066000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690836002811115611aa657fe5b0217905550611ab481612d42565b505050565b611aca611ac58261298a565b6129ce565b50565b611b1183838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050611b0c83612d10565b612b02565b505050565b611b8484848080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505083838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612b02565b50505050565b611bce83838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050611bc983612d10565b612b02565b505050565b611c0e82828080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506129ce565b5050565b611c5683838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050611c518361298a565b612b02565b505050565b606060008060008060007f0100000000000000000000000000000000000000000000000000000000000000600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611d305780601f10611d0557610100808354040283529160200191611d30565b820191906000526020600020905b815481529060010190602001808311611d1357829003601f168201915b50505050509350836040518082805190602001908083835b602083101515611d6d5780518252602082019150602081019050602083039250611d48565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902092505b6040805190810160405280600481526020017f30786666000000000000000000000000000000000000000000000000000000008152506040518082805190602001908083835b602083101515611e085780518252602082019150602081019050602083039250611de3565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191683600019161415156121505760006001856040518082805190602001908083835b602083101515611e7f5780518252602082019150602081019050602083039250611e5a565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548160ff02191690836002811115611ecd57fe5b021790555060206040519081016040528060008152506002856040518082805190602001908083835b602083101515611f1b5780518252602082019150602081019050602083039250611ef6565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390209080519060200190611f61929190613055565b5060206040519081016040528060008152506003856040518082805190602001908083835b602083101515611fab5780518252602082019150602081019050602083039250611f86565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390209080519060200190611ff19291906130d5565b5060008084600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156120a05780601f10612075576101008083540402835291602001916120a0565b820191906000526020600020905b81548152906001019060200180831161208357829003601f168201915b505050505093506020604051908101604052806000815250600080856000191660001916815260200190815260200160002090805190602001906120e5929190613055565b50836040518082805190602001908083835b60208310151561211c57805182526020820191506020810190506020830392506120f7565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209250611d9d565b6040805190810160405280600481526020017f30786666000000000000000000000000000000000000000000000000000000008152506000807f01000000000000000000000000000000000000000000000000000000000000006000191660001916815260200190815260200160002090805190602001906121d3929190613155565b50600560007f01000000000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c01000000000000000000000000000000000000000000000000000000000291505b7f01000000000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614151561256757819050600060066000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff0219169083600281111561234a57fe5b0217905550602060405190810160405280600081525060076000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002090805190602001906123c4929190613055565b50602060405190810160405280600081525060086000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001908152602001600020908051906020019061243a9291906130d5565b5060056000827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c010000000000000000000000000000000000000000000000000000000002915060007c01000000000000000000000000000000000000000000000000000000000260056000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c010000000000000000000000000000000000000000000000000000000090040217905550612272565b7f0100000000000000000000000000000000000000000000000000000000000000600560007f01000000000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c0100000000000000000000000000000000000000000000000000000000900402179055506020604051908101604052806000815250600b9080519060200190612657929190613055565b506000600a60006101000a81548160ff0219169083600281111561267757fe5b02179055506000600d819055506001600e6000828254019250508190555050505050565b6001600a60006101000a81548160ff021916908360028111156126ba57fe5b02179055506020604051908101604052806000815250600c90805190602001906126e59291906130d5565b50565b600180838360405180838380828437820191505092505050908152602001604051809103902060006101000a81548160ff0219169083600281111561272957fe5b021790555060206040519081016040528060008152506003838360405180838380828437820191505092505050908152602001604051809103902090805190602001906127779291906130d5565b506127b382828080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612824565b5050565b7f010000000000000000000000000000000000000000000000000000000000000081565b61281f83838080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505061281a8361298a565b612b02565b505050565b6000816040518082805190602001908083835b60208310151561285c5780518252602082019150602081019050602083039250612837565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050600080600083600019166000191681526020019081526020016000208054600181600116156101000203166002900490501415612986576000807f010000000000000000000000000000000000000000000000000000000000000060001916600019168152602001908152602001600020600080836000191660001916815260200190815260200160002090805460018160011615610100020316600290046129359291906131d5565b50816000807f0100000000000000000000000000000000000000000000000000000000000000600019166000191681526020019081526020016000209080519060200190612984929190613155565b505b5050565b606060206040519080825280601f01601f1916602001820160405280156129c05781602001602082028038833980820191505090505b509050816020820152919050565b6000600a60006101000a81548160ff021916908360028111156129ed57fe5b021790555080600b9080519060200190612a08929190613155565b5050565b60008060008090505b6004811015612af8576008810260ff7f0100000000000000000000000000000000000000000000000000000000000000028583815181101515612a5457fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f010000000000000000000000000000000000000000000000000000000000000002167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169060020a9004821791508080600101915050612a15565b8192505050919050565b6000612b0d83612a0c565b9050600060066000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690836002811115612b7d57fe5b02179055508160076000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000209080519060200190612be7929190613155565b50612bf181612d42565b505050565b60006001836040518082805190602001908083835b602083101515612c305780518252602082019150602081019050602083039250612c0b565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548160ff02191690836002811115612c7e57fe5b0217905550806002836040518082805190602001908083835b602083101515612cbc5780518252602082019150602081019050602083039250612c97565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390209080519060200190612d02929190613155565b50612d0c82612824565b5050565b606060405182741400000000000000000000000000000000000000001860148201526034810160405280915050919050565b60007c01000000000000000000000000000000000000000000000000000000000260056000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161415612fd257600560007f01000000000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c01000000000000000000000000000000000000000000000000000000000260056000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c01000000000000000000000000000000000000000000000000000000009004021790555080600560007f01000000000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c0100000000000000000000000000000000000000000000000000000000900402179055505b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061301657803560ff1916838001178555613044565b82800160010185558215613044579182015b82811115613043578235825591602001919060010190613028565b5b509050613051919061325c565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061309657805160ff19168380011785556130c4565b828001600101855582156130c4579182015b828111156130c35782518255916020019190600101906130a8565b5b5090506130d1919061325c565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061311657805160ff1916838001178555613144565b82800160010185558215613144579182015b82811115613143578251825591602001919060010190613128565b5b509050613151919061325c565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061319657805160ff19168380011785556131c4565b828001600101855582156131c4579182015b828111156131c35782518255916020019190600101906131a8565b5b5090506131d1919061325c565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061320e578054855561324b565b8280016001018555821561324b57600052602060002091601f016020900482015b8281111561324a57825482559160010191906001019061322f565b5b509050613258919061325c565b5090565b61327e91905b8082111561327a576000816000905550600101613262565b5090565b905600a165627a7a723058207c38230b81180ba3e31c43529a6ce1803521c383ed5e28844c054a59afa495110029",
|
|
"deployedBytecode": "0x608060405260043610610175576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630a20119f14610a6c57806321fed4d614610a975780632ed238dc14610ad257806336ff0ee514610b055780633956dc6b14610b345780634937c4f614610b4b578063586984a414610b9a5780635a3855ab14610be95780636193659414610c3057806367aad04a14610c83578063682b479714610cb657806368ab6f2f14610cf95780636f40075614610d345780637cd96ee414610d7b57806387abab6514610e0b5780639a1dc86b14610e465780639eaeed7514610e99578063aa788c5514610eec578063af21ac7814610f27578063b3901f2914610f54578063c6ee167f14610faf578063cf11ff5d14611002578063d6fe97781461105d578063d73ca0ac14611098578063d826f88f146110dd578063e211b8a5146110f4578063eb861f691461110b578063f07da22914611146578063f5afa9c1146111af575b6000606060003591506001600281111561018b57fe5b600160003660405180838380828437820191505092505050908152602001604051809103902060009054906101000a900460ff1660028111156101ca57fe5b14156102b45760036000366040518083838082843782019150509250505090815260200160405180910390206040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156102a55780601f1061027a576101008083540402835291602001916102a5565b820191906000526020600020905b81548152906001019060200180831161028857829003601f168201915b50509250505060405180910390fd5b6002808111156102c057fe5b600160003660405180838380828437820191505092505050908152602001604051809103902060009054906101000a900460ff1660028111156102ff57fe5b141561030e5761030d6111f4565b5b60026000366040518083838082843782019150509250505090815260200160405180910390208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156103c85780601f1061039d576101008083540402835291602001916103c8565b820191906000526020600020905b8154815290600101906020018083116103ab57829003601f168201915b505050505090506000815114156106d757600160028111156103e657fe5b60066000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff16600281111561045057fe5b14156105655760086000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000206040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156105565780601f1061052b57610100808354040283529160200191610556565b820191906000526020600020905b81548152906001019060200180831161053957829003601f168201915b50509250505060405180910390fd5b60028081111561057157fe5b60066000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff1660028111156105db57fe5b14156105ea576105e96111f4565b5b60076000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b505050505090505b6000815114156108a357600160028111156106ee57fe5b600a60009054906101000a900460ff16600281111561070957fe5b14156107cf57600c6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156107c05780601f10610795576101008083540402835291602001916107c0565b820191906000526020600020905b8154815290600101906020018083116107a357829003601f168201915b50509250505060405180910390fd5b6002808111156107db57fe5b600a60009054906101000a900460ff1660028111156107f657fe5b1415610805576108046111f4565b5b600b8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561089b5780601f106108705761010080835404028352916020019161089b565b820191906000526020600020905b81548152906001019060200180831161087e57829003601f168201915b505050505090505b6001600d60008282540192505081905550600160096000600e548560405160200180838152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152600401925050506040516020818303038152906040526040518082805190602001908083835b6020831015156109575780518252602082019150602081019050602083039250610932565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008282540192505081905550600160046000600e5460003660405160200180848152602001838380828437820191505093505050506040516020818303038152906040526040518082805190602001908083835b602083101515610a1457805182526020820191506020810190506020830392506109ef565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008282540192505081905550805181602001f35b348015610a7857600080fd5b50610a81611219565b6040518082815260200191505060405180910390f35b348015610aa357600080fd5b50610ad0600480360381019080803590602001908201803590602001919091929391929390505050611223565b005b348015610ade57600080fd5b50610ae76112a9565b60405180826000191660001916815260200191505060405180910390f35b348015610b1157600080fd5b50610b32600480360381019080803515159060200190929190505050611344565b005b348015610b4057600080fd5b50610b4961136f565b005b348015610b5757600080fd5b50610b84600480360381019080803590602001908201803590602001919091929391929390505050611395565b6040518082815260200191505060405180910390f35b348015610ba657600080fd5b50610bd36004803603810190808035906020019082018035906020019190919293919293905050506114c3565b6040518082815260200191505060405180910390f35b348015610bf557600080fd5b50610c2e60048036038101908080359060200190820180359060200191909192939192939080351515906020019092919050505061157b565b005b348015610c3c57600080fd5b50610c816004803603810190808035906020019082018035906020019190919293919293908035906020019082018035906020019190919293919293905050506115db565b005b348015610c8f57600080fd5b50610c9861164f565b60405180826000191660001916815260200191505060405180910390f35b348015610cc257600080fd5b50610cf7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611673565b005b348015610d0557600080fd5b50610d32600480360381019080803590602001908201803590602001919091929391929390505050611687565b005b348015610d4057600080fd5b50610d79600480360381019080803590602001908201803590602001919091929391929390803515159060200190929190505050611747565b005b348015610d8757600080fd5b50610d906117a7565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610dd0578082015181840152602081019050610db5565b50505050905090810190601f168015610dfd5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610e1757600080fd5b50610e446004803603810190808035906020019082018035906020019190919293919293905050506117e0565b005b348015610e5257600080fd5b50610e9760048036038101908080359060200190820180359060200191909192939192939080359060200190820180359060200191909192939192939050505061181a565b005b348015610ea557600080fd5b50610eea60048036038101908080359060200190820180359060200191909192939192939080359060200190820180359060200191909192939192939050505061193d565b005b348015610ef857600080fd5b50610f256004803603810190808035906020019082018035906020019190919293919293905050506119f9565b005b348015610f3357600080fd5b50610f5260048036038101908080359060200190929190505050611ab9565b005b348015610f6057600080fd5b50610fad600480360381019080803590602001908201803590602001919091929391929390803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611acd565b005b348015610fbb57600080fd5b50611000600480360381019080803590602001908201803590602001919091929391929390803590602001908201803590602001919091929391929390505050611b16565b005b34801561100e57600080fd5b5061105b600480360381019080803590602001908201803590602001919091929391929390803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b8a565b005b34801561106957600080fd5b50611096600480360381019080803590602001908201803590602001919091929391929390505050611bd3565b005b3480156110a457600080fd5b506110db60048036038101908080359060200190820180359060200191909192939192939080359060200190929190505050611c12565b005b3480156110e957600080fd5b506110f2611c5b565b005b34801561110057600080fd5b5061110961269b565b005b34801561111757600080fd5b506111446004803603810190808035906020019082018035906020019190919293919293905050506126e8565b005b34801561115257600080fd5b5061115b6127b7565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b3480156111bb57600080fd5b506111f2600480360381019080803590602001908201803590602001919091929391929390803590602001909291905050506127db565b005b60005b600115611216576060600060c060008060066107d05a03f190506111f7565b50565b6000600d54905090565b60026001838360405180838380828437820191505092505050908152602001604051809103902060006101000a81548160ff0219169083600281111561126557fe5b02179055506112a582828080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612824565b5050565b6040805190810160405280600481526020017f30786666000000000000000000000000000000000000000000000000000000008152506040518082805190602001908083835b60208310151561131457805182526020820191506020810190506020830392506112ef565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902081565b600081611352576000611355565b60015b60ff16905061136b6113668261298a565b6129ce565b5050565b6002600a60006101000a81548160ff0219169083600281111561138e57fe5b0217905550565b6000806113d384848080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612a0c565b905060096000600e548360405160200180838152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152600401925050506040516020818303038152906040526040518082805190602001908083835b6020831015156114765780518252602082019150602081019050602083039250611451565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000205491505092915050565b600060046000600e54858560405160200180848152602001838380828437820191505093505050506040516020818303038152906040526040518082805190602001908083835b60208310151561152f578051825260208201915060208101905060208303925061150a565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002054905092915050565b60008161158957600061158c565b60015b60ff1690506115d584848080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506115d08361298a565b612b02565b50505050565b61164984848080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505083838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612bf6565b50505050565b7f010000000000000000000000000000000000000000000000000000000000000081565b61168461167f82612d10565b6129ce565b50565b60006116c483838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612a0c565b9050600260066000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff0219169083600281111561173457fe5b021790555061174281612d42565b505050565b600081611755576000611758565b60015b60ff1690506117a184848080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505061179c8361298a565b612b02565b50505050565b6040805190810160405280600481526020017f307866660000000000000000000000000000000000000000000000000000000081525081565b6001600a60006101000a81548160ff021916908360028111156117ff57fe5b02179055508181600c9190611815929190612fd5565b505050565b600061185785858080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612a0c565b9050600160066000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff021916908360028111156118c757fe5b0217905550828260086000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001908152602001600020919061192c929190612fd5565b5061193681612d42565b5050505050565b600180858560405180838380828437820191505092505050908152602001604051809103902060006101000a81548160ff0219169083600281111561197e57fe5b021790555081816003868660405180838380828437820191505092505050908152602001604051809103902091906119b7929190612fd5565b506119f384848080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612824565b50505050565b6000611a3683838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612a0c565b9050600160066000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690836002811115611aa657fe5b0217905550611ab481612d42565b505050565b611aca611ac58261298a565b6129ce565b50565b611b1183838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050611b0c83612d10565b612b02565b505050565b611b8484848080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505083838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612b02565b50505050565b611bce83838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050611bc983612d10565b612b02565b505050565b611c0e82828080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506129ce565b5050565b611c5683838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050611c518361298a565b612b02565b505050565b606060008060008060007f0100000000000000000000000000000000000000000000000000000000000000600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611d305780601f10611d0557610100808354040283529160200191611d30565b820191906000526020600020905b815481529060010190602001808311611d1357829003601f168201915b50505050509350836040518082805190602001908083835b602083101515611d6d5780518252602082019150602081019050602083039250611d48565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902092505b6040805190810160405280600481526020017f30786666000000000000000000000000000000000000000000000000000000008152506040518082805190602001908083835b602083101515611e085780518252602082019150602081019050602083039250611de3565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191683600019161415156121505760006001856040518082805190602001908083835b602083101515611e7f5780518252602082019150602081019050602083039250611e5a565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548160ff02191690836002811115611ecd57fe5b021790555060206040519081016040528060008152506002856040518082805190602001908083835b602083101515611f1b5780518252602082019150602081019050602083039250611ef6565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390209080519060200190611f61929190613055565b5060206040519081016040528060008152506003856040518082805190602001908083835b602083101515611fab5780518252602082019150602081019050602083039250611f86565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390209080519060200190611ff19291906130d5565b5060008084600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156120a05780601f10612075576101008083540402835291602001916120a0565b820191906000526020600020905b81548152906001019060200180831161208357829003601f168201915b505050505093506020604051908101604052806000815250600080856000191660001916815260200190815260200160002090805190602001906120e5929190613055565b50836040518082805190602001908083835b60208310151561211c57805182526020820191506020810190506020830392506120f7565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209250611d9d565b6040805190810160405280600481526020017f30786666000000000000000000000000000000000000000000000000000000008152506000807f01000000000000000000000000000000000000000000000000000000000000006000191660001916815260200190815260200160002090805190602001906121d3929190613155565b50600560007f01000000000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c01000000000000000000000000000000000000000000000000000000000291505b7f01000000000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614151561256757819050600060066000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff0219169083600281111561234a57fe5b0217905550602060405190810160405280600081525060076000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002090805190602001906123c4929190613055565b50602060405190810160405280600081525060086000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001908152602001600020908051906020019061243a9291906130d5565b5060056000827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c010000000000000000000000000000000000000000000000000000000002915060007c01000000000000000000000000000000000000000000000000000000000260056000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c010000000000000000000000000000000000000000000000000000000090040217905550612272565b7f0100000000000000000000000000000000000000000000000000000000000000600560007f01000000000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c0100000000000000000000000000000000000000000000000000000000900402179055506020604051908101604052806000815250600b9080519060200190612657929190613055565b506000600a60006101000a81548160ff0219169083600281111561267757fe5b02179055506000600d819055506001600e6000828254019250508190555050505050565b6001600a60006101000a81548160ff021916908360028111156126ba57fe5b02179055506020604051908101604052806000815250600c90805190602001906126e59291906130d5565b50565b600180838360405180838380828437820191505092505050908152602001604051809103902060006101000a81548160ff0219169083600281111561272957fe5b021790555060206040519081016040528060008152506003838360405180838380828437820191505092505050908152602001604051809103902090805190602001906127779291906130d5565b506127b382828080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050612824565b5050565b7f010000000000000000000000000000000000000000000000000000000000000081565b61281f83838080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505061281a8361298a565b612b02565b505050565b6000816040518082805190602001908083835b60208310151561285c5780518252602082019150602081019050602083039250612837565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050600080600083600019166000191681526020019081526020016000208054600181600116156101000203166002900490501415612986576000807f010000000000000000000000000000000000000000000000000000000000000060001916600019168152602001908152602001600020600080836000191660001916815260200190815260200160002090805460018160011615610100020316600290046129359291906131d5565b50816000807f0100000000000000000000000000000000000000000000000000000000000000600019166000191681526020019081526020016000209080519060200190612984929190613155565b505b5050565b606060206040519080825280601f01601f1916602001820160405280156129c05781602001602082028038833980820191505090505b509050816020820152919050565b6000600a60006101000a81548160ff021916908360028111156129ed57fe5b021790555080600b9080519060200190612a08929190613155565b5050565b60008060008090505b6004811015612af8576008810260ff7f0100000000000000000000000000000000000000000000000000000000000000028583815181101515612a5457fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f010000000000000000000000000000000000000000000000000000000000000002167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169060020a9004821791508080600101915050612a15565b8192505050919050565b6000612b0d83612a0c565b9050600060066000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690836002811115612b7d57fe5b02179055508160076000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000209080519060200190612be7929190613155565b50612bf181612d42565b505050565b60006001836040518082805190602001908083835b602083101515612c305780518252602082019150602081019050602083039250612c0b565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548160ff02191690836002811115612c7e57fe5b0217905550806002836040518082805190602001908083835b602083101515612cbc5780518252602082019150602081019050602083039250612c97565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390209080519060200190612d02929190613155565b50612d0c82612824565b5050565b606060405182741400000000000000000000000000000000000000001860148201526034810160405280915050919050565b60007c01000000000000000000000000000000000000000000000000000000000260056000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161415612fd257600560007f01000000000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c01000000000000000000000000000000000000000000000000000000000260056000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c01000000000000000000000000000000000000000000000000000000009004021790555080600560007f01000000000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c0100000000000000000000000000000000000000000000000000000000900402179055505b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061301657803560ff1916838001178555613044565b82800160010185558215613044579182015b82811115613043578235825591602001919060010190613028565b5b509050613051919061325c565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061309657805160ff19168380011785556130c4565b828001600101855582156130c4579182015b828111156130c35782518255916020019190600101906130a8565b5b5090506130d1919061325c565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061311657805160ff1916838001178555613144565b82800160010185558215613144579182015b82811115613143578251825591602001919060010190613128565b5b509050613151919061325c565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061319657805160ff19168380011785556131c4565b828001600101855582156131c4579182015b828111156131c35782518255916020019190600101906131a8565b5b5090506131d1919061325c565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061320e578054855561324b565b8280016001018555821561324b57600052602060002091601f016020900482015b8281111561324a57825482559160010191906001019061322f565b5b509050613258919061325c565b5090565b61327e91905b8082111561327a576000816000905550600101613262565b5090565b905600a165627a7a723058207c38230b81180ba3e31c43529a6ce1803521c383ed5e28844c054a59afa495110029",
|
|
"sourceMap": "3453:8735:25:-;;;4427:135;8:9:-1;5:2;;;30:1;27;20:12;5:2;4427:135:25;4486:14;;;;;;;;;;;;;;;;;;4452:13;:31;4466:16;4452:31;;;;;;;;;;;;;;;;;:48;;;;;;;;;;;;:::i;:::-;;4540:18;4504:13;:33;4518:18;4504:33;;;;;;;;;;;;;;;;;;:54;;;;;;;;;;;;;;;;;;;3453:8735;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;",
|
|
"deployedSourceMap": "3453:8735:25:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11012:15;11305:19;11070:1;11057:15;11045:27;;11158:15;11127:46;;;;;;;;:17;11145:8;;11127:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:46;;;;;;;;;11123:101;;;11187:21;11209:8;;11187:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11180:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11123:101;11262:17;11231:48;;;;;;;;:17;11249:8;;11231:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:48;;;;;;;;;11227:75;;;11286:11;:9;:11::i;:::-;11227:75;11327:20;11348:8;;11327:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11305:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11419:1;11402:6;:13;:18;11398:262;;;11462:15;11431:46;;;;;;;;:17;:27;11449:8;11431:27;;;;;;;;;;;;;;;;;;;;;;;;;;;:46;;;;;;;;;11427:104;;;11492:22;:32;11515:8;11492:32;;;;;;;;;;;;;;;;;11485:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11427:104;11570:17;11539:48;;;;;;;;:17;:27;11557:8;11539:27;;;;;;;;;;;;;;;;;;;;;;;;;;;:48;;;;;;;;;11535:77;;;11595:11;:9;:11::i;:::-;11535:77;11625:20;:30;11646:8;11625:30;;;;;;;;;;;;;;;;;11616:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11398:262;11722:1;11705:6;:13;:18;11701:218;;;11754:15;11734:35;;;;;;;;:16;;;;;;;;;;;:35;;;;;;;;;11730:82;;;11784:21;11777:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11730:82;11840:17;11820:37;;;;;;;;:16;;;;;;;;;;;:37;;;;;;;;;11816:66;;;11865:11;:9;:11::i;:::-;11816:66;11895:19;11886:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11701:218;11961:1;11946:11;;:16;;;;;;;;;;;12040:1;11966:19;:70;12013:10;;12025:8;11996:38;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;11996:38:25;;;11986:49;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;11986:49:25;;;;;;;;;;;;;;;;11966:70;;;;;;;;;;;;;;;;;;:75;;;;;;;;;;;12119:1;12045:19;:70;12092:10;;12104:8;;12075:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;12075:38:25;;;12065:49;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;12065:49:25;;;;;;;;;;;;;;;;12045:70;;;;;;;;;;;;;;;;;;:75;;;;;;;;;;;12171:6;12165:13;12156:6;12150:4;12146:17;12139:40;8488:77;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8488:77:25;;;;;;;;;;;;;;;;;;;;;;;8174:133;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8174:133:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3642:71;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3642:71:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5248:126;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5248:126:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;5839:84;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5839:84:25;;;;;;8568:192;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8568:192:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8763:153;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8763:153:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6227:152;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6227:152:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6113:111;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6113:111:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3541:50;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3541:50:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5479:107;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5479:107:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;8310:175;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8310:175:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6985:150;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6985:150:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3594:45;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3594:45:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3594:45:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5699:137;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5699:137:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7931:240;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7931:240:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7734:194;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7734:194:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7562:169;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7562:169:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5377:99;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5377:99:25;;;;;;;;;;;;;;;;;;;;;;;;;;6509:133;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6509:133:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6876:106;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6876:106:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7263:131;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7263:131:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5163:82;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5163:82:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6382:124;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6382:124:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8919:1291;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8919:1291:25;;;;;;5589:107;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5589:107:25;;;;;;7397:162;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7397:162:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3716:51;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3716:51:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7138:122;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7138:122:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10213:186;10263:6;10246:150;10252:4;10246:150;;;10382:4;10377:3;10371:4;10366:3;10363:1;10360;10353:4;10348:3;10344:14;10339:48;10334:53;;10283:109;;;10213:186;:::o;8488:77::-;8533:4;8550:11;;8543:18;;8488:77;:::o;8174:133::-;8259:17;8233;8251:4;;8233:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:43;;;;;;;;;;;;;;;;;;;;;;;;8280:23;8298:4;;8280:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:17;:23::i;:::-;8174:133;;:::o;3642:71::-;3698:14;;;;;;;;;;;;;;;;;;3688:25;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3688:25:25;;;;;;;;;;;;;;;;3642:71;:::o;5248:126::-;5304:9;5316:8;:16;;5331:1;5316:16;;;5327:1;5316:16;5304:28;;;;5336:34;5352:17;5364:4;5352:11;:17::i;:::-;5336:15;:34::i;:::-;5248:126;;:::o;5839:84::-;5902:17;5883:16;;:36;;;;;;;;;;;;;;;;;;;;;;;;5839:84::o;8568:192::-;8632:4;8642:13;8658:19;8672:4;;8658:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:13;:19::i;:::-;8642:35;;8688:19;:68;8735:10;;8747:6;8718:36;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;8718:36:25;;;8708:47;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;8708:47:25;;;;;;;;;;;;;;;;8688:68;;;;;;;;;;;;;;;;;;8681:75;;8568:192;;;;;:::o;8763:153::-;8829:4;8846:19;:66;8893:10;;8905:4;;8876:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;8876:34:25;;;8866:45;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;8866:45:25;;;;;;;;;;;;;;;;8846:66;;;;;;;;;;;;;;;;;;8839:73;;8763:153;;;;:::o;6227:152::-;6300:9;6312:8;:16;;6327:1;6312:16;;;6323:1;6312:16;6300:28;;;;6332:43;6351:4;;6332:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6357:17;6369:4;6357:11;:17::i;:::-;6332:18;:43::i;:::-;6227:152;;;;:::o;6113:111::-;6184:36;6205:4;;6184:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6211:8;;6184:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:20;:36::i;:::-;6113:111;;;;:::o;3541:50::-;;;:::o;5479:107::-;5541:41;5557:24;5572:8;5557:14;:24::i;:::-;5541:15;:41::i;:::-;5479:107;:::o;8310:175::-;8367:13;8383:19;8397:4;;8383:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:13;:19::i;:::-;8367:35;;8434:17;8406;:25;8424:6;8406:25;;;;;;;;;;;;;;;;;;:45;;;;;;;;;;;;;;;;;;;;;;;;8455:25;8473:6;8455:17;:25::i;:::-;8310:175;;;:::o;6985:150::-;7056:9;7068:8;:16;;7083:1;7068:16;;;7079:1;7068:16;7056:28;;;;7088:43;7107:4;;7088:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7113:17;7125:4;7113:11;:17::i;:::-;7088:18;:43::i;:::-;6985:150;;;;:::o;3594:45::-;;;;;;;;;;;;;;;;;;;;:::o;5699:137::-;5782:15;5763:16;;:34;;;;;;;;;;;;;;;;;;;;;;;;5825:7;;5801:21;:31;;;;;;;:::i;:::-;;5699:137;;:::o;7931:240::-;8010:13;8026:19;8040:4;;8026:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:13;:19::i;:::-;8010:35;;8077:15;8049:17;:25;8067:6;8049:25;;;;;;;;;;;;;;;;;;:43;;;;;;;;;;;;;;;;;;;;;;;;8129:7;;8096:22;:30;8119:6;8096:30;;;;;;;;;;;;;;;;;:40;;;;;;;:::i;:::-;;8140:25;8158:6;8140:17;:25::i;:::-;7931:240;;;;;:::o;7734:194::-;7841:15;7815:17;7833:4;;7815:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;;;;;;;7890:7;;7860:21;7882:4;;7860:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:37;;;;;;;:::i;:::-;;7901:23;7919:4;;7901:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:17;:23::i;:::-;7734:194;;;;:::o;7562:169::-;7614:13;7630:19;7644:4;;7630:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:13;:19::i;:::-;7614:35;;7681:15;7653:17;:25;7671:6;7653:25;;;;;;;;;;;;;;;;;;:43;;;;;;;;;;;;;;;;;;;;;;;;7700:25;7718:6;7700:17;:25::i;:::-;7562:169;;;:::o;5377:99::-;5433:38;5449:21;5461:8;5449:11;:21::i;:::-;5433:15;:38::i;:::-;5377:99;:::o;6509:133::-;6588:50;6607:4;;6588:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6613:24;6628:8;6613:14;:24::i;:::-;6588:18;:50::i;:::-;6509:133;;;:::o;6876:106::-;6944:34;6963:4;;6944:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6969:8;;6944:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:18;:34::i;:::-;6876:106;;;;:::o;7263:131::-;7340:50;7359:4;;7340:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7365:24;7380:8;7365:14;:24::i;:::-;7340:18;:50::i;:::-;7263:131;;;:::o;5163:82::-;5216:25;5232:8;;5216:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:15;:25::i;:::-;5163:82;;:::o;6382:124::-;6455:47;6474:4;;6455:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6480:21;6492:8;6480:11;:21::i;:::-;6455:18;:47::i;:::-;6382:124;;;:::o;8919:1291::-;8984:21;9043:16;9613:18;9717:21;9008:13;:31;9022:16;9008:31;;;;;;;;;;;;;;;;;8984:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9072:8;9062:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;9062:19:25;;;;;;;;;;;;;;;;9043:38;;9114:394;3698:14;;;;;;;;;;;;;;;;;;3688:25;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3688:25:25;;;;;;;;;;;;;;;;9120:31;;;:8;:31;;;;;9114:394;;;9214:15;9184:17;9202:8;9184:27;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;9184:27:25;;;;;;;;;;;;;;;;;;;;;;:45;;;;;;;;;;;;;;;;;;;;;;;;9234:38;;;;;;;;;;;;;:20;9255:8;9234:30;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;9234:30:25;;;;;;;;;;;;;;;;;;;;;:38;;;;;;;;;;;;:::i;:::-;;9277:36;;;;;;;;;;;;;:21;9299:8;9277:31;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;9277:31:25;;;;;;;;;;;;;;;;;;;;;:36;;;;;;;;;;;;:::i;:::-;;9359:13;:23;9373:8;9359:23;;;;;;;;;;;;;;;;;9348:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9417:28;;;;;;;;;;;;;:13;:23;9431:8;9417:23;;;;;;;;;;;;;;;;;:28;;;;;;;;;;;;:::i;:::-;;9494:8;9484:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;9484:19:25;;;;;;;;;;;;;;;;9473:30;;9114:394;;;9561:14;;;;;;;;;;;;;;;;;;9527:13;:31;9541:16;9527:31;;;;;;;;;;;;;;;;;:48;;;;;;;;;;;;:::i;:::-;;9634:13;:33;9648:18;9634:33;;;;;;;;;;;;;;;;;;;;;;;;;;;9613:54;;9671:357;9692:18;9677:33;;;:11;:33;;;;;9671:357;;;9741:11;9717:35;;9793:15;9757:17;:33;9775:14;9757:33;;;;;;;;;;;;;;;;;;:51;;;;;;;;;;;;;;;;;;;;;;;;9813:44;;;;;;;;;;;;;:20;:36;9834:14;9813:36;;;;;;;;;;;;;;;;;:44;;;;;;;;;;;;:::i;:::-;;9862:43;;;;;;;;;;;;;:22;:38;9885:14;9862:38;;;;;;;;;;;;;;;;;:43;;;;;;;;;;;;:::i;:::-;;9924:13;:29;9938:14;9924:29;;;;;;;;;;;;;;;;;;;;;;;;;;;9910:43;;10020:3;9988:35;;:13;:29;10002:14;9988:29;;;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;;9671:357;;;10083:18;10047:13;:33;10061:18;10047:33;;;;;;;;;;;;;;;;;;:54;;;;;;;;;;;;;;;;;;;10106:24;;;;;;;;;;;;;:19;:24;;;;;;;;;;;;:::i;:::-;;10153:15;10134:16;;:34;;;;;;;;;;;;;;;;;;;;;;;;10186:1;10172:11;:15;;;;10205:1;10191:10;;:15;;;;;;;;;;;8919:1291;;;;:::o;5589:107::-;5647:15;5628:16;;:34;;;;;;;;;;;;;;;;;;;;;;;;5666:26;;;;;;;;;;;;;:21;:26;;;;;;;;;;;;:::i;:::-;;5589:107::o;7397:162::-;7477:15;7451:17;7469:4;;7451:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;;;;;;;7496:32;;;;;;;;;;;;;:21;7518:4;;7496:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:32;;;;;;;;;;;;:::i;:::-;;7532:23;7550:4;;7532:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:17;:23::i;:::-;7397:162;;:::o;3716:51::-;;;:::o;7138:122::-;7209:47;7228:4;;7209:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7234:21;7246:8;7234:11;:21::i;:::-;7209:18;:47::i;:::-;7138:122;;;:::o;4565:250::-;4623:16;4652:4;4642:15;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4642:15:25;;;;;;;;;;;;;;;;4623:34;;4699:1;4665:13;:23;4679:8;4665:23;;;;;;;;;;;;;;;;;:30;;;;;;;;;;;;;;;;:35;4661:151;;;4733:13;:31;4747:16;4733:31;;;;;;;;;;;;;;;;;4707:13;:23;4721:8;4707:23;;;;;;;;;;;;;;;;;:57;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4803:4;4769:13;:31;4783:16;4769:31;;;;;;;;;;;;;;;;;:38;;;;;;;;;;;;:::i;:::-;;4661:151;4565:250;;:::o;10846:131::-;10900:7;10930:2;10920:13;;;;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;148:4;140:6;136:17;126:27;;0:157;10920:13:25;;;;10916:17;;10970:1;10965:2;10962:1;10958:10;10951:21;10949:25;;;:::o;5034:126::-;5107:15;5088:16;;:34;;;;;;;;;;;;;;;;;;;;;;;;5148:8;5126:19;:30;;;;;;;;;;;;:::i;:::-;;5034:126;:::o;10402:184::-;10456:6;10470:10;10491:6;10500:1;10491:10;;10486:81;10507:1;10503;:5;10486:81;;;10558:1;10554;:5;10544:4;10537:11;;:1;10539;10537:4;;;;;;;;;;;;;;;;;;;;:11;10530:19;;;:30;;;;;;;;10523:37;;;;10510:3;;;;;;;10486:81;;;10579:3;10572:10;;10402:184;;;;;:::o;6645:228::-;6713:13;6729:19;6743:4;6729:13;:19::i;:::-;6713:35;;6780:15;6752:17;:25;6770:6;6752:25;;;;;;;;;;;;;;;;;;:43;;;;;;;;;;;;;;;;;;;;;;;;6830:8;6799:20;:28;6820:6;6799:28;;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;:::i;:::-;;6842:25;6860:6;6842:17;:25::i;:::-;6645:228;;;:::o;5926:184::-;6023:15;5997:17;6015:4;5997:23;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;5997:23:25;;;;;;;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;;;;;;;6071:8;6042:20;6063:4;6042:26;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;6042:26:25;;;;;;;;;;;;;;;;;;;;;:37;;;;;;;;;;;;:::i;:::-;;6083:23;6101:4;6083:17;:23::i;:::-;5926:184;;:::o;10589:254::-;10646:7;10696:4;10690:11;10780:1;10734:44;10730:52;10725:2;10722:1;10718:10;10711:72;10813:2;10810:1;10806:10;10800:4;10793:24;10832:1;10827:6;;10670:170;;;;:::o;4818:213::-;4905:3;4878:30;;:13;:23;4892:8;4878:23;;;;;;;;;;;;;;;;;;;;;;;;;;;:30;;;;4874:154;;;4941:13;:33;4955:18;4941:33;;;;;;;;;;;;;;;;;;;;;;;;;;;4915:13;:23;4929:8;4915:23;;;;;;;;;;;;;;;;;;:59;;;;;;;;;;;;;;;;;;;5015:8;4979:13;:33;4993:18;4979:33;;;;;;;;;;;;;;;;;;:44;;;;;;;;;;;;;;;;;;;4874:154;4818:213;:::o;3453:8735::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o",
|
|
"source": "pragma solidity ^0.4.23;\n\ninterface MockInterface {\n\t/**\n\t * @dev After calling this method, the mock will return `response` when it is called\n\t * with any calldata that is not mocked more specifically below\n\t * (e.g. using givenMethodReturn).\n\t * @param response ABI encoded response that will be returned if method is invoked\n\t */\n\tfunction givenAnyReturn(bytes response) external;\n\tfunction givenAnyReturnBool(bool response) external;\n\tfunction givenAnyReturnUint(uint response) external;\n\tfunction givenAnyReturnAddress(address response) external;\n\n\tfunction givenAnyRevert() external;\n\tfunction givenAnyRevertWithMessage(string message) external;\n\tfunction givenAnyRunOutOfGas() external;\n\n\t/**\n\t * @dev After calling this method, the mock will return `response` when the given\n\t * methodId is called regardless of arguments. If the methodId and arguments\n\t * are mocked more specifically (using `givenMethodAndArguments`) the latter\n\t * will take precedence.\n\t * @param method ABI encoded methodId. It is valid to pass full calldata (including arguments). The mock will extract the methodId from it\n\t * @param response ABI encoded response that will be returned if method is invoked\n\t */\n\tfunction givenMethodReturn(bytes method, bytes response) external;\n\tfunction givenMethodReturnBool(bytes method, bool response) external;\n\tfunction givenMethodReturnUint(bytes method, uint response) external;\n\tfunction givenMethodReturnAddress(bytes method, address response) external;\n\n\tfunction givenMethodRevert(bytes method) external;\n\tfunction givenMethodRevertWithMessage(bytes method, string message) external;\n\tfunction givenMethodRunOutOfGas(bytes method) external;\n\n\t/**\n\t * @dev After calling this method, the mock will return `response` when the given\n\t * methodId is called with matching arguments. These exact calldataMocks will take\n\t * precedence over all other calldataMocks.\n\t * @param calldata ABI encoded calldata (methodId and arguments)\n\t * @param response ABI encoded response that will be returned if contract is invoked with calldata\n\t */\n\tfunction givenCalldataReturn(bytes calldata, bytes response) external;\n\tfunction givenCalldataReturnBool(bytes calldata, bool response) external;\n\tfunction givenCalldataReturnUint(bytes calldata, uint response) external;\n\tfunction givenCalldataReturnAddress(bytes calldata, address response) external;\n\n\tfunction givenCalldataRevert(bytes calldata) external;\n\tfunction givenCalldataRevertWithMessage(bytes calldata, string message) external;\n\tfunction givenCalldataRunOutOfGas(bytes calldata) external;\n\n\t/**\n\t * @dev Returns the number of times anything has been called on this mock since last reset\n\t */\n\tfunction invocationCount() external returns (uint);\n\n\t/**\n\t * @dev Returns the number of times the given method has been called on this mock since last reset\n\t * @param method ABI encoded methodId. It is valid to pass full calldata (including arguments). The mock will extract the methodId from it\n\t */\n\tfunction invocationCountForMethod(bytes method) external returns (uint);\n\n\t/**\n\t * @dev Returns the number of times this mock has been called with the exact calldata since last reset.\n\t * @param calldata ABI encoded calldata (methodId and arguments)\n\t */\n\tfunction invocationCountForCalldata(bytes calldata) external returns (uint);\n\n\t/**\n\t * @dev Resets all mocked methods and invocation counts.\n\t */\n\t function reset() external;\n}\n\n/**\n * Implementation of the MockInterface.\n */\ncontract MockContract is MockInterface {\n\tenum MockType { Return, Revert, OutOfGas }\n\t\n\tbytes32 public constant MOCKS_LIST_START = hex\"01\";\n\tbytes public constant MOCKS_LIST_END = \"0xff\";\n\tbytes32 public constant MOCKS_LIST_END_HASH = keccak256(MOCKS_LIST_END);\n\tbytes4 public constant SENTINEL_ANY_MOCKS = hex\"01\";\n\n\t// A linked list allows easy iteration and inclusion checks\n\tmapping(bytes32 => bytes) calldataMocks;\n\tmapping(bytes => MockType) calldataMockTypes;\n\tmapping(bytes => bytes) calldataExpectations;\n\tmapping(bytes => string) calldataRevertMessage;\n\tmapping(bytes32 => uint) calldataInvocations;\n\n\tmapping(bytes4 => bytes4) methodIdMocks;\n\tmapping(bytes4 => MockType) methodIdMockTypes;\n\tmapping(bytes4 => bytes) methodIdExpectations;\n\tmapping(bytes4 => string) methodIdRevertMessages;\n\tmapping(bytes32 => uint) methodIdInvocations;\n\n\tMockType fallbackMockType;\n\tbytes fallbackExpectation;\n\tstring fallbackRevertMessage;\n\tuint invocations;\n\tuint resetCount;\n\n\tconstructor() public {\n\t\tcalldataMocks[MOCKS_LIST_START] = MOCKS_LIST_END;\n\t\tmethodIdMocks[SENTINEL_ANY_MOCKS] = SENTINEL_ANY_MOCKS;\n\t}\n\n\tfunction trackCalldataMock(bytes memory call) private {\n\t\tbytes32 callHash = keccak256(call);\n\t\tif (calldataMocks[callHash].length == 0) {\n\t\t\tcalldataMocks[callHash] = calldataMocks[MOCKS_LIST_START];\n\t\t\tcalldataMocks[MOCKS_LIST_START] = call;\n\t\t}\n\t}\n\n\tfunction trackMethodIdMock(bytes4 methodId) private {\n\t\tif (methodIdMocks[methodId] == 0x0) {\n\t\t\tmethodIdMocks[methodId] = methodIdMocks[SENTINEL_ANY_MOCKS];\n\t\t\tmethodIdMocks[SENTINEL_ANY_MOCKS] = methodId;\n\t\t}\n\t}\n\n\tfunction _givenAnyReturn(bytes response) internal {\n\t\tfallbackMockType = MockType.Return;\n\t\tfallbackExpectation = response;\n\t}\n\n\tfunction givenAnyReturn(bytes response) external {\n\t\t_givenAnyReturn(response);\n\t}\n\n\tfunction givenAnyReturnBool(bool response) external {\n\t\tuint flag = response ? 1 : 0;\n\t\t_givenAnyReturn(uintToBytes(flag));\n\t}\n\n\tfunction givenAnyReturnUint(uint response) external {\n\t\t_givenAnyReturn(uintToBytes(response));\t\n\t}\n\n\tfunction givenAnyReturnAddress(address response) external {\n\t\t_givenAnyReturn(addressToBytes(response));\n\t}\n\n\tfunction givenAnyRevert() external {\n\t\tfallbackMockType = MockType.Revert;\n\t\tfallbackRevertMessage = \"\";\n\t}\n\n\tfunction givenAnyRevertWithMessage(string message) external {\n\t\tfallbackMockType = MockType.Revert;\n\t\tfallbackRevertMessage = message;\n\t}\n\n\tfunction givenAnyRunOutOfGas() external {\n\t\tfallbackMockType = MockType.OutOfGas;\n\t}\n\n\tfunction _givenCalldataReturn(bytes call, bytes response) private {\n\t\tcalldataMockTypes[call] = MockType.Return;\n\t\tcalldataExpectations[call] = response;\n\t\ttrackCalldataMock(call);\n\t}\n\n\tfunction givenCalldataReturn(bytes call, bytes response) external {\n\t\t_givenCalldataReturn(call, response);\n\t}\n\n\tfunction givenCalldataReturnBool(bytes call, bool response) external {\n\t\tuint flag = response ? 1 : 0;\n\t\t_givenMethodReturn(call, uintToBytes(flag));\n\t}\n\n\tfunction givenCalldataReturnUint(bytes call, uint response) external {\n\t\t_givenMethodReturn(call, uintToBytes(response));\n\t}\n\n\tfunction givenCalldataReturnAddress(bytes call, address response) external {\n\t\t_givenMethodReturn(call, addressToBytes(response));\n\t}\n\n\tfunction _givenMethodReturn(bytes call, bytes response) private {\n\t\tbytes4 method = bytesToBytes4(call);\n\t\tmethodIdMockTypes[method] = MockType.Return;\n\t\tmethodIdExpectations[method] = response;\n\t\ttrackMethodIdMock(method);\t\t\n\t}\n\n\tfunction givenMethodReturn(bytes call, bytes response) external {\n\t\t_givenMethodReturn(call, response);\n\t}\n\n\tfunction givenMethodReturnBool(bytes call, bool response) external {\n\t\tuint flag = response ? 1 : 0;\n\t\t_givenMethodReturn(call, uintToBytes(flag));\n\t}\n\n\tfunction givenMethodReturnUint(bytes call, uint response) external {\n\t\t_givenMethodReturn(call, uintToBytes(response));\n\t}\n\n\tfunction givenMethodReturnAddress(bytes call, address response) external {\n\t\t_givenMethodReturn(call, addressToBytes(response));\n\t}\n\n\tfunction givenCalldataRevert(bytes call) external {\n\t\tcalldataMockTypes[call] = MockType.Revert;\n\t\tcalldataRevertMessage[call] = \"\";\n\t\ttrackCalldataMock(call);\n\t}\n\n\tfunction givenMethodRevert(bytes call) external {\n\t\tbytes4 method = bytesToBytes4(call);\n\t\tmethodIdMockTypes[method] = MockType.Revert;\n\t\ttrackMethodIdMock(method);\t\t\n\t}\n\n\tfunction givenCalldataRevertWithMessage(bytes call, string message) external {\n\t\tcalldataMockTypes[call] = MockType.Revert;\n\t\tcalldataRevertMessage[call] = message;\n\t\ttrackCalldataMock(call);\n\t}\n\n\tfunction givenMethodRevertWithMessage(bytes call, string message) external {\n\t\tbytes4 method = bytesToBytes4(call);\n\t\tmethodIdMockTypes[method] = MockType.Revert;\n\t\tmethodIdRevertMessages[method] = message;\n\t\ttrackMethodIdMock(method);\t\t\n\t}\n\n\tfunction givenCalldataRunOutOfGas(bytes call) external {\n\t\tcalldataMockTypes[call] = MockType.OutOfGas;\n\t\ttrackCalldataMock(call);\n\t}\n\n\tfunction givenMethodRunOutOfGas(bytes call) external {\n\t\tbytes4 method = bytesToBytes4(call);\n\t\tmethodIdMockTypes[method] = MockType.OutOfGas;\n\t\ttrackMethodIdMock(method);\t\n\t}\n\n\tfunction invocationCount() external returns (uint) {\n\t\treturn invocations;\n\t}\n\n\tfunction invocationCountForMethod(bytes call) external returns (uint) {\n\t\tbytes4 method = bytesToBytes4(call);\n\t\treturn methodIdInvocations[keccak256(abi.encodePacked(resetCount, method))];\n\t}\n\n\tfunction invocationCountForCalldata(bytes call) external returns (uint) {\n\t\treturn calldataInvocations[keccak256(abi.encodePacked(resetCount, call))];\n\t}\n\n\tfunction reset() external {\n\t\t// Reset all exact calldataMocks\n\t\tbytes memory nextMock = calldataMocks[MOCKS_LIST_START];\n\t\tbytes32 mockHash = keccak256(nextMock);\n\t\t// We cannot compary bytes\n\t\twhile(mockHash != MOCKS_LIST_END_HASH) {\n\t\t\t// Reset all mock maps\n\t\t\tcalldataMockTypes[nextMock] = MockType.Return;\n\t\t\tcalldataExpectations[nextMock] = hex\"\";\n\t\t\tcalldataRevertMessage[nextMock] = \"\";\n\t\t\t// Set next mock to remove\n\t\t\tnextMock = calldataMocks[mockHash];\n\t\t\t// Remove from linked list\n\t\t\tcalldataMocks[mockHash] = \"\";\n\t\t\t// Update mock hash\n\t\t\tmockHash = keccak256(nextMock);\n\t\t}\n\t\t// Clear list\n\t\tcalldataMocks[MOCKS_LIST_START] = MOCKS_LIST_END;\n\n\t\t// Reset all any calldataMocks\n\t\tbytes4 nextAnyMock = methodIdMocks[SENTINEL_ANY_MOCKS];\n\t\twhile(nextAnyMock != SENTINEL_ANY_MOCKS) {\n\t\t\tbytes4 currentAnyMock = nextAnyMock;\n\t\t\tmethodIdMockTypes[currentAnyMock] = MockType.Return;\n\t\t\tmethodIdExpectations[currentAnyMock] = hex\"\";\n\t\t\tmethodIdRevertMessages[currentAnyMock] = \"\";\n\t\t\tnextAnyMock = methodIdMocks[currentAnyMock];\n\t\t\t// Remove from linked list\n\t\t\tmethodIdMocks[currentAnyMock] = 0x0;\n\t\t}\n\t\t// Clear list\n\t\tmethodIdMocks[SENTINEL_ANY_MOCKS] = SENTINEL_ANY_MOCKS;\n\n\t\tfallbackExpectation = \"\";\n\t\tfallbackMockType = MockType.Return;\n\t\tinvocations = 0;\n\t\tresetCount += 1;\n\t}\n\n\tfunction useAllGas() private {\n\t\twhile(true) {\n\t\t\tbool s;\n\t\t\tassembly {\n\t\t\t\t//expensive call to EC multiply contract\n\t\t\t\ts := call(sub(gas, 2000), 6, 0, 0x0, 0xc0, 0x0, 0x60)\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction bytesToBytes4(bytes b) private pure returns (bytes4) {\n \t\tbytes4 out;\n \t\tfor (uint i = 0; i < 4; i++) {\n \t\tout |= bytes4(b[i] & 0xFF) >> (i * 8);\n \t\t}\n \t\treturn out;\n\t}\n\n\tfunction addressToBytes(address a) private pure returns (bytes b){\n \t\tassembly {\n \tlet m := mload(0x40)\n \tmstore(add(m, 20), xor(0x140000000000000000000000000000000000000000, a))\n \tmstore(0x40, add(m, 52))\n \tb := m\n \t\t}\n\t}\n\n\tfunction uintToBytes(uint256 x) private pure returns (bytes b) {\n \tb = new bytes(32);\n \tassembly { mstore(add(b, 32), x) }\n\t}\n\n\tfunction() payable external {\n\t\tbytes4 methodId;\n\t\tassembly {\n\t\t\tmethodId := calldataload(0)\n\t\t}\n\n\t\t// First, check exact matching overrides\n\t\tif (calldataMockTypes[msg.data] == MockType.Revert) {\n\t\t\trevert(calldataRevertMessage[msg.data]);\n\t\t}\n\t\tif (calldataMockTypes[msg.data] == MockType.OutOfGas) {\n\t\t\tuseAllGas();\n\t\t}\n\t\tbytes memory result = calldataExpectations[msg.data];\n\n\t\t// Then check method Id overrides\n\t\tif (result.length == 0) {\n\t\t\tif (methodIdMockTypes[methodId] == MockType.Revert) {\n\t\t\t\trevert(methodIdRevertMessages[methodId]);\n\t\t\t}\n\t\t\tif (methodIdMockTypes[methodId] == MockType.OutOfGas) {\n\t\t\t\tuseAllGas();\n\t\t\t}\n\t\t\tresult = methodIdExpectations[methodId];\n\t\t}\n\n\t\t// Last, use the fallback override\n\t\tif (result.length == 0) {\n\t\t\tif (fallbackMockType == MockType.Revert) {\n\t\t\t\trevert(fallbackRevertMessage);\n\t\t\t}\n\t\t\tif (fallbackMockType == MockType.OutOfGas) {\n\t\t\t\tuseAllGas();\n\t\t\t}\n\t\t\tresult = fallbackExpectation;\n\t\t}\n\n\t\t// Record invocation\n\t\tinvocations += 1;\n\t\tmethodIdInvocations[keccak256(abi.encodePacked(resetCount, methodId))] += 1;\n\t\tcalldataInvocations[keccak256(abi.encodePacked(resetCount, msg.data))] += 1;\n\n\t\tassembly {\n\t\t\treturn(add(0x20, result), mload(result))\n\t\t}\n\t}\n}\n",
|
|
"sourcePath": "@gnosis.pm/mock-contract/contracts/MockContract.sol",
|
|
"ast": {
|
|
"absolutePath": "@gnosis.pm/mock-contract/contracts/MockContract.sol",
|
|
"exportedSymbols": {
|
|
"MockContract": [
|
|
4000
|
|
],
|
|
"MockInterface": [
|
|
3021
|
|
]
|
|
},
|
|
"id": 4001,
|
|
"nodeType": "SourceUnit",
|
|
"nodes": [
|
|
{
|
|
"id": 2877,
|
|
"literals": [
|
|
"solidity",
|
|
"^",
|
|
"0.4",
|
|
".23"
|
|
],
|
|
"nodeType": "PragmaDirective",
|
|
"src": "0:24:25"
|
|
},
|
|
{
|
|
"baseContracts": [],
|
|
"contractDependencies": [],
|
|
"contractKind": "interface",
|
|
"documentation": null,
|
|
"fullyImplemented": false,
|
|
"id": 3021,
|
|
"linearizedBaseContracts": [
|
|
3021
|
|
],
|
|
"name": "MockInterface",
|
|
"nodeType": "ContractDefinition",
|
|
"nodes": [
|
|
{
|
|
"body": null,
|
|
"documentation": "@dev After calling this method, the mock will return `response` when it is called\nwith any calldata that is not mocked more specifically below\n(e.g. using givenMethodReturn).\n@param response ABI encoded response that will be returned if method is invoked",
|
|
"id": 2882,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2880,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2879,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2882,
|
|
"src": "358:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2878,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "358:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "357:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2881,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "382:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "334:49:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2887,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturnBool",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2885,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2884,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2887,
|
|
"src": "413:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 2883,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "413:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "412:15:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2886,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "436:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "385:52:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2892,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturnUint",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2890,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2889,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2892,
|
|
"src": "467:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 2888,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "467:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "466:15:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2891,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "490:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "439:52:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2897,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturnAddress",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2895,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2894,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2897,
|
|
"src": "524:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 2893,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "524:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "523:18:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2896,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "550:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "493:58:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2900,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyRevert",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2898,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "577:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2899,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "588:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "554:35:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2905,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyRevertWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2903,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2902,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2905,
|
|
"src": "626:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 2901,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "626:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "625:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2904,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "650:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "591:60:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2908,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyRunOutOfGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2906,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "681:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2907,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "692:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "653:40:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": "@dev After calling this method, the mock will return `response` when the given\nmethodId is called regardless of arguments. If the methodId and arguments\nare mocked more specifically (using `givenMethodAndArguments`) the latter\nwill take precedence.\n@param method ABI encoded methodId. It is valid to pass full calldata (including arguments). The mock will extract the methodId from it\n@param response ABI encoded response that will be returned if method is invoked",
|
|
"id": 2915,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2913,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2910,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2915,
|
|
"src": "1222:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2909,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1222:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2912,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2915,
|
|
"src": "1236:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2911,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1236:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1221:30:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2914,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1260:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "1195:66:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2922,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturnBool",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2920,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2917,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2922,
|
|
"src": "1294:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2916,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1294:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2919,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2922,
|
|
"src": "1308:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 2918,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1308:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1293:29:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2921,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1331:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "1263:69:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2929,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturnUint",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2927,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2924,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2929,
|
|
"src": "1365:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2923,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1365:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2926,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2929,
|
|
"src": "1379:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 2925,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1379:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1364:29:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2928,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1402:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "1334:69:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2936,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturnAddress",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2934,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2931,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2936,
|
|
"src": "1439:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2930,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1439:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2933,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2936,
|
|
"src": "1453:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 2932,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1453:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1438:32:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2935,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1479:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "1405:75:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2941,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodRevert",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2939,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2938,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2941,
|
|
"src": "1510:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2937,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1510:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1509:14:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2940,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1532:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "1483:50:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2948,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodRevertWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2946,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2943,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2948,
|
|
"src": "1573:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2942,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1573:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2945,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2948,
|
|
"src": "1587:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 2944,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1587:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1572:30:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2947,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1611:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "1535:77:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2953,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodRunOutOfGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2951,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2950,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2953,
|
|
"src": "1646:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2949,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1646:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1645:14:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2952,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1668:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "1614:55:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": "@dev After calling this method, the mock will return `response` when the given\nmethodId is called with matching arguments. These exact calldataMocks will take\nprecedence over all other calldataMocks.\n@param calldata ABI encoded calldata (methodId and arguments)\n@param response ABI encoded response that will be returned if contract is invoked with calldata",
|
|
"id": 2960,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2958,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2955,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2960,
|
|
"src": "2089:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2954,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2089:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2957,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2960,
|
|
"src": "2105:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2956,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2105:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2088:32:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2959,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2129:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2060:70:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2967,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturnBool",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2965,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2962,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2967,
|
|
"src": "2165:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2961,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2165:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2964,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2967,
|
|
"src": "2181:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 2963,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2181:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2164:31:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2966,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2204:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2132:73:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2974,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturnUint",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2972,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2969,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2974,
|
|
"src": "2240:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2968,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2240:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2971,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2974,
|
|
"src": "2256:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 2970,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2256:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2239:31:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2973,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2279:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2207:73:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2981,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturnAddress",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2979,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2976,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2981,
|
|
"src": "2318:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2975,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2318:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2978,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2981,
|
|
"src": "2334:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 2977,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2334:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2317:34:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2980,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2360:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2282:79:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2986,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataRevert",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2984,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2983,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2986,
|
|
"src": "2393:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2982,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2393:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2392:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2985,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2417:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2364:54:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2993,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataRevertWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2991,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2988,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2993,
|
|
"src": "2460:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2987,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2460:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2990,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2993,
|
|
"src": "2476:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 2989,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2476:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2459:32:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2992,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2500:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2420:81:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2998,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataRunOutOfGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2996,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2995,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2998,
|
|
"src": "2537:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2994,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2537:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2536:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2997,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2561:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2503:59:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": "@dev Returns the number of times anything has been called on this mock since last reset",
|
|
"id": 3003,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "invocationCount",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2999,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2691:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3002,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3001,
|
|
"name": "",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3003,
|
|
"src": "2712:4:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3000,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2712:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2711:6:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2667:51:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": "@dev Returns the number of times the given method has been called on this mock since last reset\n@param method ABI encoded methodId. It is valid to pass full calldata (including arguments). The mock will extract the methodId from it",
|
|
"id": 3010,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "invocationCountForMethod",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3006,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3005,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3010,
|
|
"src": "3005:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3004,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3005:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "3004:14:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3009,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3008,
|
|
"name": "",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3010,
|
|
"src": "3037:4:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3007,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3037:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "3036:6:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2971:72:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": "@dev Returns the number of times this mock has been called with the exact calldata since last reset.\n@param calldata ABI encoded calldata (methodId and arguments)",
|
|
"id": 3017,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "invocationCountForCalldata",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3013,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3012,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3017,
|
|
"src": "3263:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3011,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3263:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "3262:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3016,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3015,
|
|
"name": "",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3017,
|
|
"src": "3297:4:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3014,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3297:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "3296:6:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "3227:76:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": "@dev Resets all mocked methods and invocation counts.",
|
|
"id": 3020,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "reset",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3018,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "3389:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3019,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "3400:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "3375:26:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
}
|
|
],
|
|
"scope": 4001,
|
|
"src": "26:3377:25"
|
|
},
|
|
{
|
|
"baseContracts": [
|
|
{
|
|
"arguments": null,
|
|
"baseName": {
|
|
"contractScope": null,
|
|
"id": 3022,
|
|
"name": "MockInterface",
|
|
"nodeType": "UserDefinedTypeName",
|
|
"referencedDeclaration": 3021,
|
|
"src": "3478:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_MockInterface_$3021",
|
|
"typeString": "contract MockInterface"
|
|
}
|
|
},
|
|
"id": 3023,
|
|
"nodeType": "InheritanceSpecifier",
|
|
"src": "3478:13:25"
|
|
}
|
|
],
|
|
"contractDependencies": [
|
|
3021
|
|
],
|
|
"contractKind": "contract",
|
|
"documentation": "Implementation of the MockInterface.",
|
|
"fullyImplemented": true,
|
|
"id": 4000,
|
|
"linearizedBaseContracts": [
|
|
4000,
|
|
3021
|
|
],
|
|
"name": "MockContract",
|
|
"nodeType": "ContractDefinition",
|
|
"nodes": [
|
|
{
|
|
"canonicalName": "MockContract.MockType",
|
|
"id": 3027,
|
|
"members": [
|
|
{
|
|
"id": 3024,
|
|
"name": "Return",
|
|
"nodeType": "EnumValue",
|
|
"src": "3511:6:25"
|
|
},
|
|
{
|
|
"id": 3025,
|
|
"name": "Revert",
|
|
"nodeType": "EnumValue",
|
|
"src": "3519:6:25"
|
|
},
|
|
{
|
|
"id": 3026,
|
|
"name": "OutOfGas",
|
|
"nodeType": "EnumValue",
|
|
"src": "3527:8:25"
|
|
}
|
|
],
|
|
"name": "MockType",
|
|
"nodeType": "EnumDefinition",
|
|
"src": "3495:42:25"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3030,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3541:50:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 3028,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3541:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"hexValue": "01",
|
|
"id": 3029,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3584:7:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_5fe7f977e71dba2ea1a68e21057beebb9be2ac30c6410aa38d4f3fbe41dcffd2",
|
|
"typeString": "literal_string \"\u0001\""
|
|
},
|
|
"value": "\u0001"
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3033,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3594:45:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3031,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3594:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30786666",
|
|
"id": 3032,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3633:6:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_420daffad4b177bce28bead5f76f7bc97ef63c3aae74c496db8ce6aafe9e6513",
|
|
"typeString": "literal_string \"0xff\""
|
|
},
|
|
"value": "0xff"
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3038,
|
|
"name": "MOCKS_LIST_END_HASH",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3642:71:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 3034,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3642:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3036,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3033,
|
|
"src": "3698:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3035,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "3688:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3037,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3688:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3041,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3716:51:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3039,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3716:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"hexValue": "01",
|
|
"id": 3040,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3760:7:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_5fe7f977e71dba2ea1a68e21057beebb9be2ac30c6410aa38d4f3fbe41dcffd2",
|
|
"typeString": "literal_string \"\u0001\""
|
|
},
|
|
"value": "\u0001"
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3045,
|
|
"name": "calldataMocks",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3832:39:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes)"
|
|
},
|
|
"typeName": {
|
|
"id": 3044,
|
|
"keyType": {
|
|
"id": 3042,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3840:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "3832:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes)"
|
|
},
|
|
"valueType": {
|
|
"id": 3043,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3851:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3049,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3874:44:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes => enum MockContract.MockType)"
|
|
},
|
|
"typeName": {
|
|
"id": 3048,
|
|
"keyType": {
|
|
"id": 3046,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3882:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "3874:26:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes => enum MockContract.MockType)"
|
|
},
|
|
"valueType": {
|
|
"contractScope": null,
|
|
"id": 3047,
|
|
"name": "MockType",
|
|
"nodeType": "UserDefinedTypeName",
|
|
"referencedDeclaration": 3027,
|
|
"src": "3891:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3053,
|
|
"name": "calldataExpectations",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3921:44:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes => bytes)"
|
|
},
|
|
"typeName": {
|
|
"id": 3052,
|
|
"keyType": {
|
|
"id": 3050,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3929:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "3921:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes => bytes)"
|
|
},
|
|
"valueType": {
|
|
"id": 3051,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3938:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3057,
|
|
"name": "calldataRevertMessage",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3968:46:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes => string)"
|
|
},
|
|
"typeName": {
|
|
"id": 3056,
|
|
"keyType": {
|
|
"id": 3054,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3976:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "3968:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes => string)"
|
|
},
|
|
"valueType": {
|
|
"id": 3055,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3985:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3061,
|
|
"name": "calldataInvocations",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4017:44:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 3060,
|
|
"keyType": {
|
|
"id": 3058,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4025:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "4017:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
},
|
|
"valueType": {
|
|
"id": 3059,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4036:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3065,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4065:39:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
},
|
|
"typeName": {
|
|
"id": 3064,
|
|
"keyType": {
|
|
"id": 3062,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4073:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "4065:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
},
|
|
"valueType": {
|
|
"id": 3063,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4083:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3069,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4107:45:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
},
|
|
"typeName": {
|
|
"id": 3068,
|
|
"keyType": {
|
|
"id": 3066,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4115:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "4107:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
},
|
|
"valueType": {
|
|
"contractScope": null,
|
|
"id": 3067,
|
|
"name": "MockType",
|
|
"nodeType": "UserDefinedTypeName",
|
|
"referencedDeclaration": 3027,
|
|
"src": "4125:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3073,
|
|
"name": "methodIdExpectations",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4155:45:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes)"
|
|
},
|
|
"typeName": {
|
|
"id": 3072,
|
|
"keyType": {
|
|
"id": 3070,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4163:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "4155:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes)"
|
|
},
|
|
"valueType": {
|
|
"id": 3071,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4173:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3077,
|
|
"name": "methodIdRevertMessages",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4203:48:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string)"
|
|
},
|
|
"typeName": {
|
|
"id": 3076,
|
|
"keyType": {
|
|
"id": 3074,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4211:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "4203:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string)"
|
|
},
|
|
"valueType": {
|
|
"id": 3075,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4221:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3081,
|
|
"name": "methodIdInvocations",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4254:44:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 3080,
|
|
"keyType": {
|
|
"id": 3078,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4262:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "4254:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
},
|
|
"valueType": {
|
|
"id": 3079,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4273:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3083,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4302:25:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"typeName": {
|
|
"contractScope": null,
|
|
"id": 3082,
|
|
"name": "MockType",
|
|
"nodeType": "UserDefinedTypeName",
|
|
"referencedDeclaration": 3027,
|
|
"src": "4302:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3085,
|
|
"name": "fallbackExpectation",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4330:25:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3084,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4330:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3087,
|
|
"name": "fallbackRevertMessage",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4358:28:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 3086,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4358:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3089,
|
|
"name": "invocations",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4389:16:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3088,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4389:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3091,
|
|
"name": "resetCount",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4408:15:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3090,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4408:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3106,
|
|
"nodeType": "Block",
|
|
"src": "4448:114:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3098,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3094,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "4452:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3096,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3095,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3030,
|
|
"src": "4466:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4452:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3097,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3033,
|
|
"src": "4486:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "4452:48:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3099,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4452:48:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3104,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3100,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "4504:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3102,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3101,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "4518:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4504:33:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3103,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "4540:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "4504:54:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 3105,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4504:54:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3107,
|
|
"implemented": true,
|
|
"isConstructor": true,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3092,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "4438:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3093,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "4448:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "4427:135:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3140,
|
|
"nodeType": "Block",
|
|
"src": "4619:196:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3113
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3113,
|
|
"name": "callHash",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3141,
|
|
"src": "4623:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 3112,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4623:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3117,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3115,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3109,
|
|
"src": "4652:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3114,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "4642:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3116,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4642:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "4623:34:25"
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 3123,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3118,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "4665:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3120,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3119,
|
|
"name": "callHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3113,
|
|
"src": "4679:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4665:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3121,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4665:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3122,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "4699:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"src": "4665:35:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3139,
|
|
"nodeType": "IfStatement",
|
|
"src": "4661:151:25",
|
|
"trueBody": {
|
|
"id": 3138,
|
|
"nodeType": "Block",
|
|
"src": "4702:110:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3130,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3124,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "4707:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3126,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3125,
|
|
"name": "callHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3113,
|
|
"src": "4721:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4707:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3127,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "4733:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3129,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3128,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3030,
|
|
"src": "4747:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4733:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"src": "4707:57:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3131,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4707:57:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3136,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3132,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "4769:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3134,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3133,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3030,
|
|
"src": "4783:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4769:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3135,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3109,
|
|
"src": "4803:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "4769:38:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3137,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4769:38:25"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3141,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "trackCalldataMock",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3110,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3109,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3141,
|
|
"src": "4592:17:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3108,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4592:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "4591:19:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3111,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "4619:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "4565:250:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3167,
|
|
"nodeType": "Block",
|
|
"src": "4870:161:25",
|
|
"statements": [
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"id": 3150,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3146,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "4878:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3148,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3147,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3143,
|
|
"src": "4892:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4878:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "307830",
|
|
"id": 3149,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "4905:3:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0x0"
|
|
},
|
|
"src": "4878:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3166,
|
|
"nodeType": "IfStatement",
|
|
"src": "4874:154:25",
|
|
"trueBody": {
|
|
"id": 3165,
|
|
"nodeType": "Block",
|
|
"src": "4910:118:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3157,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3151,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "4915:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3153,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3152,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3143,
|
|
"src": "4929:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4915:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3154,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "4941:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3156,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3155,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "4955:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4941:33:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "4915:59:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 3158,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4915:59:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3163,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3159,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "4979:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3161,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3160,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "4993:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4979:33:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3162,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3143,
|
|
"src": "5015:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "4979:44:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 3164,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4979:44:25"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3168,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "trackMethodIdMock",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3144,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3143,
|
|
"name": "methodId",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3168,
|
|
"src": "4845:15:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3142,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4845:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "4844:17:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3145,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "4870:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "4818:213:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3182,
|
|
"nodeType": "Block",
|
|
"src": "5084:76:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3176,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3173,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3083,
|
|
"src": "5088:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3174,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "5107:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3175,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "5107:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "5088:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3177,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5088:34:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3180,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3178,
|
|
"name": "fallbackExpectation",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3085,
|
|
"src": "5126:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3179,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3170,
|
|
"src": "5148:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "5126:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3181,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5126:30:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3183,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "_givenAnyReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3171,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3170,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3183,
|
|
"src": "5059:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3169,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5059:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5058:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3172,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5084:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5034:126:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3192,
|
|
"nodeType": "Block",
|
|
"src": "5212:33:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3189,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3185,
|
|
"src": "5232:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3188,
|
|
"name": "_givenAnyReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3183,
|
|
"src": "5216:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3190,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5216:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3191,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5216:25:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3193,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3186,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3185,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3193,
|
|
"src": "5187:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3184,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5187:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5186:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3187,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5212:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5163:82:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2882,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3211,
|
|
"nodeType": "Block",
|
|
"src": "5300:74:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3199
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3199,
|
|
"name": "flag",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3212,
|
|
"src": "5304:9:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3198,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5304:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3204,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"id": 3200,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3195,
|
|
"src": "5316:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3202,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "5331:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"id": 3203,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "Conditional",
|
|
"src": "5316:16:25",
|
|
"trueExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "31",
|
|
"id": 3201,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "5327:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint8",
|
|
"typeString": "uint8"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "5304:28:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3207,
|
|
"name": "flag",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3199,
|
|
"src": "5364:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 3206,
|
|
"name": "uintToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3860,
|
|
"src": "5352:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3208,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5352:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3205,
|
|
"name": "_givenAnyReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3183,
|
|
"src": "5336:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3209,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5336:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3210,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5336:34:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3212,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturnBool",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3196,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3195,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3212,
|
|
"src": "5276:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 3194,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5276:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5275:15:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3197,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5300:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5248:126:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2887,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3223,
|
|
"nodeType": "Block",
|
|
"src": "5429:47:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3219,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3214,
|
|
"src": "5461:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 3218,
|
|
"name": "uintToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3860,
|
|
"src": "5449:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3220,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5449:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3217,
|
|
"name": "_givenAnyReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3183,
|
|
"src": "5433:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3221,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5433:38:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3222,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5433:38:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3224,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturnUint",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3215,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3214,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3224,
|
|
"src": "5405:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3213,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5405:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5404:15:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3216,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5429:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5377:99:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2892,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3235,
|
|
"nodeType": "Block",
|
|
"src": "5537:49:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3231,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3226,
|
|
"src": "5572:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"id": 3230,
|
|
"name": "addressToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3844,
|
|
"src": "5557:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_address_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (address) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3232,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5557:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3229,
|
|
"name": "_givenAnyReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3183,
|
|
"src": "5541:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3233,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5541:41:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3234,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5541:41:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3236,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturnAddress",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3227,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3226,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3236,
|
|
"src": "5510:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 3225,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5510:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5509:18:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3228,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5537:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5479:107:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2897,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3248,
|
|
"nodeType": "Block",
|
|
"src": "5624:72:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3242,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3239,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3083,
|
|
"src": "5628:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3240,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "5647:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3241,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "5647:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "5628:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3243,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5628:34:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3246,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3244,
|
|
"name": "fallbackRevertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3087,
|
|
"src": "5666:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3245,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "5690:2:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "5666:26:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 3247,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5666:26:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3249,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyRevert",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3237,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5612:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3238,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5624:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5589:107:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2900,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3263,
|
|
"nodeType": "Block",
|
|
"src": "5759:77:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3257,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3254,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3083,
|
|
"src": "5763:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3255,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "5782:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3256,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "5782:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "5763:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3258,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5763:34:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3261,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3259,
|
|
"name": "fallbackRevertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3087,
|
|
"src": "5801:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3260,
|
|
"name": "message",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3251,
|
|
"src": "5825:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string calldata"
|
|
}
|
|
},
|
|
"src": "5801:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 3262,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5801:31:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3264,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyRevertWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3252,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3251,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3264,
|
|
"src": "5734:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 3250,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5734:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5733:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3253,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5759:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5699:137:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2905,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3272,
|
|
"nodeType": "Block",
|
|
"src": "5879:44:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3270,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3267,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3083,
|
|
"src": "5883:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3268,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "5902:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3269,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "5902:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "5883:36:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3271,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5883:36:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3273,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyRunOutOfGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3265,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5867:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3266,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5879:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5839:84:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2908,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3297,
|
|
"nodeType": "Block",
|
|
"src": "5993:117:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3285,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3280,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3049,
|
|
"src": "5997:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3282,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3281,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3275,
|
|
"src": "6015:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "5997:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3283,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "6023:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3284,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "6023:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "5997:41:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3286,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5997:41:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3291,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3287,
|
|
"name": "calldataExpectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3053,
|
|
"src": "6042:20:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes memory => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3289,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3288,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3275,
|
|
"src": "6063:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "6042:26:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3290,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3277,
|
|
"src": "6071:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "6042:37:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3292,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6042:37:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3294,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3275,
|
|
"src": "6101:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3293,
|
|
"name": "trackCalldataMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3141,
|
|
"src": "6083:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3295,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6083:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3296,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6083:23:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3298,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "_givenCalldataReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3278,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3275,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3298,
|
|
"src": "5956:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3274,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5956:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3277,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3298,
|
|
"src": "5968:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3276,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5968:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5955:28:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3279,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5993:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5926:184:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3310,
|
|
"nodeType": "Block",
|
|
"src": "6180:44:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3306,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3300,
|
|
"src": "6205:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3307,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3302,
|
|
"src": "6211:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3305,
|
|
"name": "_givenCalldataReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3298,
|
|
"src": "6184:20:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3308,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6184:36:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3309,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6184:36:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3311,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3303,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3300,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3311,
|
|
"src": "6142:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3299,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6142:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3302,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3311,
|
|
"src": "6154:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3301,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6154:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6141:28:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3304,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "6180:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "6113:111:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2960,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3332,
|
|
"nodeType": "Block",
|
|
"src": "6296:83:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3319
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3319,
|
|
"name": "flag",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3333,
|
|
"src": "6300:9:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3318,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6300:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3324,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"id": 3320,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3315,
|
|
"src": "6312:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3322,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "6327:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"id": 3323,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "Conditional",
|
|
"src": "6312:16:25",
|
|
"trueExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "31",
|
|
"id": 3321,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "6323:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint8",
|
|
"typeString": "uint8"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "6300:28:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3326,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3313,
|
|
"src": "6351:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3328,
|
|
"name": "flag",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3319,
|
|
"src": "6369:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 3327,
|
|
"name": "uintToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3860,
|
|
"src": "6357:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3329,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6357:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3325,
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3394,
|
|
"src": "6332:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3330,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6332:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3331,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6332:43:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3333,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturnBool",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3316,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3313,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3333,
|
|
"src": "6260:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3312,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6260:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3315,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3333,
|
|
"src": "6272:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 3314,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6272:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6259:27:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3317,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "6296:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "6227:152:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2967,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3347,
|
|
"nodeType": "Block",
|
|
"src": "6451:55:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3341,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3335,
|
|
"src": "6474:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3343,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3337,
|
|
"src": "6492:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 3342,
|
|
"name": "uintToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3860,
|
|
"src": "6480:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3344,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6480:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3340,
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3394,
|
|
"src": "6455:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3345,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6455:47:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3346,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6455:47:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3348,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturnUint",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3338,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3335,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3348,
|
|
"src": "6415:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3334,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6415:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3337,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3348,
|
|
"src": "6427:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3336,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6427:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6414:27:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3339,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "6451:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "6382:124:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2974,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3362,
|
|
"nodeType": "Block",
|
|
"src": "6584:58:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3356,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3350,
|
|
"src": "6607:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3358,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3352,
|
|
"src": "6628:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"id": 3357,
|
|
"name": "addressToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3844,
|
|
"src": "6613:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_address_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (address) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3359,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6613:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3355,
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3394,
|
|
"src": "6588:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3360,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6588:50:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3361,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6588:50:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3363,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturnAddress",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3353,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3350,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3363,
|
|
"src": "6545:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3349,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6545:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3352,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3363,
|
|
"src": "6557:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 3351,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6557:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6544:30:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3354,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "6584:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "6509:133:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2981,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3393,
|
|
"nodeType": "Block",
|
|
"src": "6709:164:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3371
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3371,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3394,
|
|
"src": "6713:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3370,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6713:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3375,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3373,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3365,
|
|
"src": "6743:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3372,
|
|
"name": "bytesToBytes4",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3835,
|
|
"src": "6729:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes4_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes4)"
|
|
}
|
|
},
|
|
"id": 3374,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6729:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "6713:35:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3381,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3376,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3069,
|
|
"src": "6752:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3378,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3377,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3371,
|
|
"src": "6770:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "6752:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3379,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "6780:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3380,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "6780:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "6752:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3382,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6752:43:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3387,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3383,
|
|
"name": "methodIdExpectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3073,
|
|
"src": "6799:20:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3385,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3384,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3371,
|
|
"src": "6820:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "6799:28:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3386,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3367,
|
|
"src": "6830:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "6799:39:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3388,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6799:39:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3390,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3371,
|
|
"src": "6860:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 3389,
|
|
"name": "trackMethodIdMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3168,
|
|
"src": "6842:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 3391,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6842:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3392,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6842:25:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3394,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3368,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3365,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3394,
|
|
"src": "6673:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3364,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6673:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3367,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3394,
|
|
"src": "6685:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3366,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6685:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6672:28:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3369,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "6709:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "6645:228:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3406,
|
|
"nodeType": "Block",
|
|
"src": "6940:42:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3402,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3396,
|
|
"src": "6963:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3403,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3398,
|
|
"src": "6969:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3401,
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3394,
|
|
"src": "6944:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3404,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6944:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3405,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6944:34:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3407,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3399,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3396,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3407,
|
|
"src": "6903:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3395,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6903:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3398,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3407,
|
|
"src": "6915:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3397,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6915:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6902:28:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3400,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "6940:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "6876:106:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2915,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3428,
|
|
"nodeType": "Block",
|
|
"src": "7052:83:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3415
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3415,
|
|
"name": "flag",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3429,
|
|
"src": "7056:9:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3414,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7056:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3420,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"id": 3416,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3411,
|
|
"src": "7068:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3418,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "7083:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"id": 3419,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "Conditional",
|
|
"src": "7068:16:25",
|
|
"trueExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "31",
|
|
"id": 3417,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "7079:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint8",
|
|
"typeString": "uint8"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "7056:28:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3422,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3409,
|
|
"src": "7107:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3424,
|
|
"name": "flag",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3415,
|
|
"src": "7125:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 3423,
|
|
"name": "uintToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3860,
|
|
"src": "7113:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3425,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7113:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3421,
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3394,
|
|
"src": "7088:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3426,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7088:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3427,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7088:43:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3429,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturnBool",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3412,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3409,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3429,
|
|
"src": "7016:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3408,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7016:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3411,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3429,
|
|
"src": "7028:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 3410,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7028:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7015:27:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3413,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "7052:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "6985:150:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2922,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3443,
|
|
"nodeType": "Block",
|
|
"src": "7205:55:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3437,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3431,
|
|
"src": "7228:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3439,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3433,
|
|
"src": "7246:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 3438,
|
|
"name": "uintToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3860,
|
|
"src": "7234:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3440,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7234:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3436,
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3394,
|
|
"src": "7209:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3441,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7209:47:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3442,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7209:47:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3444,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturnUint",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3434,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3431,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3444,
|
|
"src": "7169:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3430,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7169:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3433,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3444,
|
|
"src": "7181:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3432,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7181:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7168:27:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3435,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "7205:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "7138:122:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2929,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3458,
|
|
"nodeType": "Block",
|
|
"src": "7336:58:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3452,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3446,
|
|
"src": "7359:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3454,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3448,
|
|
"src": "7380:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"id": 3453,
|
|
"name": "addressToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3844,
|
|
"src": "7365:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_address_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (address) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3455,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7365:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3451,
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3394,
|
|
"src": "7340:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3456,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7340:50:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3457,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7340:50:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3459,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturnAddress",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3449,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3446,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3459,
|
|
"src": "7297:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3445,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7297:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3448,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3459,
|
|
"src": "7309:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 3447,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7309:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7296:30:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3450,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "7336:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "7263:131:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2936,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3481,
|
|
"nodeType": "Block",
|
|
"src": "7447:112:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3469,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3464,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3049,
|
|
"src": "7451:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3466,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3465,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3461,
|
|
"src": "7469:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "7451:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3467,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "7477:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3468,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "7477:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "7451:41:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3470,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7451:41:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3475,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3471,
|
|
"name": "calldataRevertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3057,
|
|
"src": "7496:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 3473,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3472,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3461,
|
|
"src": "7518:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "7496:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3474,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "7526:2:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "7496:32:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 3476,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7496:32:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3478,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3461,
|
|
"src": "7550:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3477,
|
|
"name": "trackCalldataMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3141,
|
|
"src": "7532:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3479,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7532:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3480,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7532:23:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3482,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataRevert",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3462,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3461,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3482,
|
|
"src": "7426:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3460,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7426:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7425:12:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3463,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "7447:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "7397:162:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2986,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3504,
|
|
"nodeType": "Block",
|
|
"src": "7610:121:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3488
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3488,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3505,
|
|
"src": "7614:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3487,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7614:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3492,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3490,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3484,
|
|
"src": "7644:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3489,
|
|
"name": "bytesToBytes4",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3835,
|
|
"src": "7630:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes4_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes4)"
|
|
}
|
|
},
|
|
"id": 3491,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7630:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "7614:35:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3498,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3493,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3069,
|
|
"src": "7653:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3495,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3494,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3488,
|
|
"src": "7671:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "7653:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3496,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "7681:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3497,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "7681:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "7653:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3499,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7653:43:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3501,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3488,
|
|
"src": "7718:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 3500,
|
|
"name": "trackMethodIdMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3168,
|
|
"src": "7700:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 3502,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7700:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3503,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7700:25:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3505,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodRevert",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3485,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3484,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3505,
|
|
"src": "7589:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3483,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7589:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7588:12:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3486,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "7610:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "7562:169:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2941,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3529,
|
|
"nodeType": "Block",
|
|
"src": "7811:117:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3517,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3512,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3049,
|
|
"src": "7815:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3514,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3513,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3507,
|
|
"src": "7833:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "7815:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3515,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "7841:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3516,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "7841:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "7815:41:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3518,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7815:41:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3523,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3519,
|
|
"name": "calldataRevertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3057,
|
|
"src": "7860:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 3521,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3520,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3507,
|
|
"src": "7882:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "7860:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3522,
|
|
"name": "message",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3509,
|
|
"src": "7890:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string calldata"
|
|
}
|
|
},
|
|
"src": "7860:37:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 3524,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7860:37:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3526,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3507,
|
|
"src": "7919:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3525,
|
|
"name": "trackCalldataMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3141,
|
|
"src": "7901:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3527,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7901:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3528,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7901:23:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3530,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataRevertWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3510,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3507,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3530,
|
|
"src": "7774:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3506,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7774:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3509,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3530,
|
|
"src": "7786:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 3508,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7786:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7773:28:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3511,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "7811:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "7734:194:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2993,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3560,
|
|
"nodeType": "Block",
|
|
"src": "8006:165:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3538
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3538,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3561,
|
|
"src": "8010:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3537,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8010:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3542,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3540,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3532,
|
|
"src": "8040:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3539,
|
|
"name": "bytesToBytes4",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3835,
|
|
"src": "8026:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes4_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes4)"
|
|
}
|
|
},
|
|
"id": 3541,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8026:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "8010:35:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3548,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3543,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3069,
|
|
"src": "8049:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3545,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3544,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3538,
|
|
"src": "8067:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "8049:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3546,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "8077:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3547,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "8077:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "8049:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3549,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "8049:43:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3554,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3550,
|
|
"name": "methodIdRevertMessages",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3077,
|
|
"src": "8096:22:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string storage ref)"
|
|
}
|
|
},
|
|
"id": 3552,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3551,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3538,
|
|
"src": "8119:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "8096:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3553,
|
|
"name": "message",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3534,
|
|
"src": "8129:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string calldata"
|
|
}
|
|
},
|
|
"src": "8096:40:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 3555,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "8096:40:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3557,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3538,
|
|
"src": "8158:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 3556,
|
|
"name": "trackMethodIdMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3168,
|
|
"src": "8140:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 3558,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8140:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3559,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "8140:25:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3561,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodRevertWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3535,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3532,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3561,
|
|
"src": "7969:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3531,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7969:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3534,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3561,
|
|
"src": "7981:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 3533,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7981:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7968:28:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3536,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "8006:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "7931:240:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2948,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3577,
|
|
"nodeType": "Block",
|
|
"src": "8229:78:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3571,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3566,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3049,
|
|
"src": "8233:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3568,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3567,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3563,
|
|
"src": "8251:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "8233:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3569,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "8259:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3570,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "8259:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "8233:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3572,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "8233:43:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3574,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3563,
|
|
"src": "8298:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3573,
|
|
"name": "trackCalldataMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3141,
|
|
"src": "8280:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3575,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8280:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3576,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "8280:23:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3578,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataRunOutOfGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3564,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3563,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3578,
|
|
"src": "8208:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3562,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8208:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8207:12:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3565,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "8229:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "8174:133:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2998,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3600,
|
|
"nodeType": "Block",
|
|
"src": "8363:122:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3584
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3584,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3601,
|
|
"src": "8367:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3583,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8367:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3588,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3586,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3580,
|
|
"src": "8397:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3585,
|
|
"name": "bytesToBytes4",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3835,
|
|
"src": "8383:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes4_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes4)"
|
|
}
|
|
},
|
|
"id": 3587,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8383:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "8367:35:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3594,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3589,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3069,
|
|
"src": "8406:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3591,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3590,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3584,
|
|
"src": "8424:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "8406:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3592,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "8434:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3593,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "8434:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "8406:45:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3595,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "8406:45:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3597,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3584,
|
|
"src": "8473:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 3596,
|
|
"name": "trackMethodIdMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3168,
|
|
"src": "8455:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 3598,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8455:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3599,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "8455:25:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3601,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodRunOutOfGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3581,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3580,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3601,
|
|
"src": "8342:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3579,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8342:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8341:12:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3582,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "8363:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "8310:175:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2953,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3608,
|
|
"nodeType": "Block",
|
|
"src": "8539:26:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3606,
|
|
"name": "invocations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3089,
|
|
"src": "8550:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"functionReturnParameters": 3605,
|
|
"id": 3607,
|
|
"nodeType": "Return",
|
|
"src": "8543:18:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3609,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "invocationCount",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3602,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "8512:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3605,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3604,
|
|
"name": "",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3609,
|
|
"src": "8533:4:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3603,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8533:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8532:6:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "8488:77:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 3003,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3632,
|
|
"nodeType": "Block",
|
|
"src": "8638:122:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3617
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3617,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3633,
|
|
"src": "8642:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3616,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8642:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3621,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3619,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3611,
|
|
"src": "8672:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3618,
|
|
"name": "bytesToBytes4",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3835,
|
|
"src": "8658:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes4_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes4)"
|
|
}
|
|
},
|
|
"id": 3620,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8658:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "8642:35:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3622,
|
|
"name": "methodIdInvocations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3081,
|
|
"src": "8688:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
}
|
|
},
|
|
"id": 3630,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3626,
|
|
"name": "resetCount",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3091,
|
|
"src": "8735:10:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3627,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3617,
|
|
"src": "8747:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3624,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4002,
|
|
"src": "8718:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 3625,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "8718:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3628,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8718:36:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3623,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "8708:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3629,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8708:47:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "8688:68:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"functionReturnParameters": 3615,
|
|
"id": 3631,
|
|
"nodeType": "Return",
|
|
"src": "8681:75:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3633,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "invocationCountForMethod",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3612,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3611,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3633,
|
|
"src": "8602:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3610,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8602:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8601:12:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3615,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3614,
|
|
"name": "",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3633,
|
|
"src": "8632:4:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3613,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8632:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8631:6:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "8568:192:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 3010,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3650,
|
|
"nodeType": "Block",
|
|
"src": "8835:81:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3640,
|
|
"name": "calldataInvocations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3061,
|
|
"src": "8846:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
}
|
|
},
|
|
"id": 3648,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3644,
|
|
"name": "resetCount",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3091,
|
|
"src": "8893:10:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3645,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3635,
|
|
"src": "8905:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3642,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4002,
|
|
"src": "8876:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 3643,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "8876:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3646,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8876:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3641,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "8866:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3647,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8866:45:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "8846:66:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"functionReturnParameters": 3639,
|
|
"id": 3649,
|
|
"nodeType": "Return",
|
|
"src": "8839:73:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3651,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "invocationCountForCalldata",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3636,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3635,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3651,
|
|
"src": "8799:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3634,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8799:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8798:12:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3639,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3638,
|
|
"name": "",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3651,
|
|
"src": "8829:4:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3637,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8829:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8828:6:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "8763:153:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 3017,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3783,
|
|
"nodeType": "Block",
|
|
"src": "8945:1265:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3655
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3655,
|
|
"name": "nextMock",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3784,
|
|
"src": "8984:21:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3654,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8984:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3659,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3656,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "9008:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3658,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3657,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3030,
|
|
"src": "9022:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9008:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "8984:55:25"
|
|
},
|
|
{
|
|
"assignments": [
|
|
3661
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3661,
|
|
"name": "mockHash",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3784,
|
|
"src": "9043:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 3660,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9043:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3665,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3663,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3655,
|
|
"src": "9072:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3662,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "9062:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3664,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9062:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "9043:38:25"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3706,
|
|
"nodeType": "Block",
|
|
"src": "9153:355:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3674,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3669,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3049,
|
|
"src": "9184:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3671,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3670,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3655,
|
|
"src": "9202:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9184:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3672,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "9214:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3673,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "9214:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "9184:45:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3675,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9184:45:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3680,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3676,
|
|
"name": "calldataExpectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3053,
|
|
"src": "9234:20:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes memory => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3678,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3677,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3655,
|
|
"src": "9255:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9234:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3679,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "9267:5:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "9234:38:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3681,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9234:38:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3686,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3682,
|
|
"name": "calldataRevertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3057,
|
|
"src": "9277:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 3684,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3683,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3655,
|
|
"src": "9299:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9277:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3685,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "9311:2:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "9277:36:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 3687,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9277:36:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3692,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3688,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3655,
|
|
"src": "9348:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3689,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "9359:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3691,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3690,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3661,
|
|
"src": "9373:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9359:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"src": "9348:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 3693,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9348:34:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3698,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3694,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "9417:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3696,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3695,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3661,
|
|
"src": "9431:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9417:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3697,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "9443:2:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "9417:28:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3699,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9417:28:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3704,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3700,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3661,
|
|
"src": "9473:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3702,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3655,
|
|
"src": "9494:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3701,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "9484:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3703,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9484:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "9473:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"id": 3705,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9473:30:25"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"id": 3668,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3666,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3661,
|
|
"src": "9120:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "!=",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3667,
|
|
"name": "MOCKS_LIST_END_HASH",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3038,
|
|
"src": "9132:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "9120:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 3707,
|
|
"nodeType": "WhileStatement",
|
|
"src": "9114:394:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3712,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3708,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "9527:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3710,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3709,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3030,
|
|
"src": "9541:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9527:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3711,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3033,
|
|
"src": "9561:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "9527:48:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3713,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9527:48:25"
|
|
},
|
|
{
|
|
"assignments": [
|
|
3715
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3715,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3784,
|
|
"src": "9613:18:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3714,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9613:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3719,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3716,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "9634:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3718,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3717,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "9648:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9634:33:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "9613:54:25"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3758,
|
|
"nodeType": "Block",
|
|
"src": "9712:316:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3724
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3724,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3784,
|
|
"src": "9717:21:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3723,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9717:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3726,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"id": 3725,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3715,
|
|
"src": "9741:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "9717:35:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3732,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3727,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3069,
|
|
"src": "9757:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3729,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3728,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3724,
|
|
"src": "9775:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9757:33:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3730,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "9793:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3731,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "9793:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "9757:51:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3733,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9757:51:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3738,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3734,
|
|
"name": "methodIdExpectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3073,
|
|
"src": "9813:20:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3736,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3735,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3724,
|
|
"src": "9834:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9813:36:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3737,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "9852:5:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "9813:44:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3739,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9813:44:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3744,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3740,
|
|
"name": "methodIdRevertMessages",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3077,
|
|
"src": "9862:22:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string storage ref)"
|
|
}
|
|
},
|
|
"id": 3742,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3741,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3724,
|
|
"src": "9885:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9862:38:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3743,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "9903:2:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "9862:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 3745,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9862:43:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3750,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3746,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3715,
|
|
"src": "9910:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3747,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "9924:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3749,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3748,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3724,
|
|
"src": "9938:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9924:29:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "9910:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 3751,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9910:43:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3756,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3752,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "9988:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3754,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3753,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3724,
|
|
"src": "10002:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9988:29:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "307830",
|
|
"id": 3755,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10020:3:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0x0"
|
|
},
|
|
"src": "9988:35:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 3757,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9988:35:25"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"id": 3722,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3720,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3715,
|
|
"src": "9677:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "!=",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3721,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "9692:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "9677:33:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 3759,
|
|
"nodeType": "WhileStatement",
|
|
"src": "9671:357:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3764,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3760,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "10047:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3762,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3761,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "10061:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "10047:33:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3763,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "10083:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "10047:54:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 3765,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10047:54:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3768,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3766,
|
|
"name": "fallbackExpectation",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3085,
|
|
"src": "10106:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3767,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10128:2:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "10106:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3769,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10106:24:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3773,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3770,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3083,
|
|
"src": "10134:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3771,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "10153:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3772,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "10153:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "10134:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3774,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10134:34:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3777,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3775,
|
|
"name": "invocations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3089,
|
|
"src": "10172:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3776,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10186:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"src": "10172:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 3778,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10172:15:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3781,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3779,
|
|
"name": "resetCount",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3091,
|
|
"src": "10191:10:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "+=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "31",
|
|
"id": 3780,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10205:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"src": "10191:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 3782,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10191:15:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3784,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "reset",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3652,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "8933:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3653,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "8945:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "8919:1291:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 3020,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3794,
|
|
"nodeType": "Block",
|
|
"src": "10242:157:25",
|
|
"statements": [
|
|
{
|
|
"body": {
|
|
"id": 3792,
|
|
"nodeType": "Block",
|
|
"src": "10258:138:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3789,
|
|
"name": "s",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3795,
|
|
"src": "10263:6:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 3788,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10263:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3790,
|
|
"initialValue": null,
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "10263:6:25"
|
|
},
|
|
{
|
|
"externalReferences": [
|
|
{
|
|
"s": {
|
|
"declaration": 3789,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "10334:1:25",
|
|
"valueSize": 1
|
|
}
|
|
}
|
|
],
|
|
"id": 3791,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n s := call(sub(gas(), 2000), 6, 0, 0x0, 0xc0, 0x0, 0x60)\n}",
|
|
"src": "10274:122:25"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"hexValue": "74727565",
|
|
"id": 3787,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "bool",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10252:4:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"value": "true"
|
|
},
|
|
"id": 3793,
|
|
"nodeType": "WhileStatement",
|
|
"src": "10246:150:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3795,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "useAllGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3785,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "10231:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3786,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "10242:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "10213:186:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3834,
|
|
"nodeType": "Block",
|
|
"src": "10464:122:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3803,
|
|
"name": "out",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3835,
|
|
"src": "10470:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3802,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10470:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3804,
|
|
"initialValue": null,
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "10470:10:25"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3830,
|
|
"nodeType": "Block",
|
|
"src": "10515:52:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3828,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3815,
|
|
"name": "out",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3803,
|
|
"src": "10523:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "|=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"id": 3827,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
},
|
|
"id": 3821,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3817,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3797,
|
|
"src": "10537:1:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 3819,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3818,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3806,
|
|
"src": "10539:1:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "10537:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "&",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30784646",
|
|
"id": 3820,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10544:4:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_255_by_1",
|
|
"typeString": "int_const 255"
|
|
},
|
|
"value": "0xFF"
|
|
},
|
|
"src": "10537:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
}
|
|
],
|
|
"id": 3816,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "10530:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes4_$",
|
|
"typeString": "type(bytes4)"
|
|
},
|
|
"typeName": "bytes4"
|
|
},
|
|
"id": 3822,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "10530:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": ">>",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"components": [
|
|
{
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 3825,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3823,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3806,
|
|
"src": "10554:1:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "*",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "38",
|
|
"id": 3824,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10558:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_8_by_1",
|
|
"typeString": "int_const 8"
|
|
},
|
|
"value": "8"
|
|
},
|
|
"src": "10554:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"id": 3826,
|
|
"isConstant": false,
|
|
"isInlineArray": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "TupleExpression",
|
|
"src": "10553:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "10530:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "10523:37:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 3829,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10523:37:25"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 3811,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3809,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3806,
|
|
"src": "10503:1:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "<",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "34",
|
|
"id": 3810,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10507:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_4_by_1",
|
|
"typeString": "int_const 4"
|
|
},
|
|
"value": "4"
|
|
},
|
|
"src": "10503:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 3831,
|
|
"initializationExpression": {
|
|
"assignments": [
|
|
3806
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3806,
|
|
"name": "i",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3835,
|
|
"src": "10491:6:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3805,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10491:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3808,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3807,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10500:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "10491:10:25"
|
|
},
|
|
"loopExpression": {
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3813,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "++",
|
|
"prefix": false,
|
|
"src": "10510:3:25",
|
|
"subExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3812,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3806,
|
|
"src": "10510:1:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 3814,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10510:3:25"
|
|
},
|
|
"nodeType": "ForStatement",
|
|
"src": "10486:81:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3832,
|
|
"name": "out",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3803,
|
|
"src": "10579:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"functionReturnParameters": 3801,
|
|
"id": 3833,
|
|
"nodeType": "Return",
|
|
"src": "10572:10:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3835,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": true,
|
|
"modifiers": [],
|
|
"name": "bytesToBytes4",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3798,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3797,
|
|
"name": "b",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3835,
|
|
"src": "10425:7:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3796,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10425:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10424:9:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3801,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3800,
|
|
"name": "",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3835,
|
|
"src": "10456:6:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3799,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10456:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10455:8:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "10402:184:25",
|
|
"stateMutability": "pure",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3843,
|
|
"nodeType": "Block",
|
|
"src": "10654:189:25",
|
|
"statements": [
|
|
{
|
|
"externalReferences": [
|
|
{
|
|
"b": {
|
|
"declaration": 3840,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "10827:1:25",
|
|
"valueSize": 1
|
|
}
|
|
},
|
|
{
|
|
"a": {
|
|
"declaration": 3837,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "10780:1:25",
|
|
"valueSize": 1
|
|
}
|
|
}
|
|
],
|
|
"id": 3842,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n let m := mload(0x40)\n mstore(add(m, 20), xor(0x140000000000000000000000000000000000000000, a))\n mstore(0x40, add(m, 52))\n b := m\n}",
|
|
"src": "10661:182:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3844,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": true,
|
|
"modifiers": [],
|
|
"name": "addressToBytes",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3838,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3837,
|
|
"name": "a",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3844,
|
|
"src": "10613:9:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 3836,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10613:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10612:11:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3841,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3840,
|
|
"name": "b",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3844,
|
|
"src": "10646:7:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3839,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10646:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10645:9:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "10589:254:25",
|
|
"stateMutability": "pure",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3859,
|
|
"nodeType": "Block",
|
|
"src": "10909:68:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3856,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3851,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3849,
|
|
"src": "10916:1:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"hexValue": "3332",
|
|
"id": 3854,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10930:2:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_32_by_1",
|
|
"typeString": "int_const 32"
|
|
},
|
|
"value": "32"
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_rational_32_by_1",
|
|
"typeString": "int_const 32"
|
|
}
|
|
],
|
|
"id": 3853,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "NewExpression",
|
|
"src": "10920:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
},
|
|
"typeName": {
|
|
"id": 3852,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10924:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"id": 3855,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "10920:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "10916:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 3857,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10916:17:25"
|
|
},
|
|
{
|
|
"externalReferences": [
|
|
{
|
|
"x": {
|
|
"declaration": 3846,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "10970:1:25",
|
|
"valueSize": 1
|
|
}
|
|
},
|
|
{
|
|
"b": {
|
|
"declaration": 3849,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "10962:1:25",
|
|
"valueSize": 1
|
|
}
|
|
}
|
|
],
|
|
"id": 3858,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n mstore(add(b, 32), x)\n}",
|
|
"src": "10940:37:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3860,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": true,
|
|
"modifiers": [],
|
|
"name": "uintToBytes",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3847,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3846,
|
|
"name": "x",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3860,
|
|
"src": "10867:9:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3845,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10867:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10866:11:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3850,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3849,
|
|
"name": "b",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3860,
|
|
"src": "10900:7:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3848,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10900:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10899:9:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "10846:131:25",
|
|
"stateMutability": "pure",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3998,
|
|
"nodeType": "Block",
|
|
"src": "11008:1178:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3864,
|
|
"name": "methodId",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3999,
|
|
"src": "11012:15:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3863,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11012:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3865,
|
|
"initialValue": null,
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "11012:15:25"
|
|
},
|
|
{
|
|
"externalReferences": [
|
|
{
|
|
"methodId": {
|
|
"declaration": 3864,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "11045:8:25",
|
|
"valueSize": 1
|
|
}
|
|
}
|
|
],
|
|
"id": 3866,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n methodId := calldataload(0)\n}",
|
|
"src": "11031:94:25"
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 3873,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3867,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3049,
|
|
"src": "11127:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3870,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3868,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "11145:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 3869,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11145:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11127:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3871,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "11158:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3872,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11158:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "11127:46:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3882,
|
|
"nodeType": "IfStatement",
|
|
"src": "11123:101:25",
|
|
"trueBody": {
|
|
"id": 3881,
|
|
"nodeType": "Block",
|
|
"src": "11175:49:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3875,
|
|
"name": "calldataRevertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3057,
|
|
"src": "11187:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 3878,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3876,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "11209:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 3877,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11209:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11187:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
],
|
|
"id": 3874,
|
|
"name": "revert",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
4020,
|
|
4021
|
|
],
|
|
"referencedDeclaration": 4021,
|
|
"src": "11180:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
|
|
"typeString": "function (string memory) pure"
|
|
}
|
|
},
|
|
"id": 3879,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11180:39:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3880,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11180:39:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 3889,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3883,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3049,
|
|
"src": "11231:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3886,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3884,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "11249:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 3885,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11249:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11231:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3887,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "11262:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3888,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11262:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "11231:48:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3894,
|
|
"nodeType": "IfStatement",
|
|
"src": "11227:75:25",
|
|
"trueBody": {
|
|
"id": 3893,
|
|
"nodeType": "Block",
|
|
"src": "11281:21:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [],
|
|
"expression": {
|
|
"argumentTypes": [],
|
|
"id": 3890,
|
|
"name": "useAllGas",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3795,
|
|
"src": "11286:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
|
|
"typeString": "function ()"
|
|
}
|
|
},
|
|
"id": 3891,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11286:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3892,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11286:11:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"assignments": [
|
|
3896
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3896,
|
|
"name": "result",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3999,
|
|
"src": "11305:19:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3895,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11305:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3901,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3897,
|
|
"name": "calldataExpectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3053,
|
|
"src": "11327:20:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes memory => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3900,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3898,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "11348:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 3899,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11348:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11327:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "11305:52:25"
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 3905,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3902,
|
|
"name": "result",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3896,
|
|
"src": "11402:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 3903,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11402:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3904,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "11419:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"src": "11402:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3938,
|
|
"nodeType": "IfStatement",
|
|
"src": "11398:262:25",
|
|
"trueBody": {
|
|
"id": 3937,
|
|
"nodeType": "Block",
|
|
"src": "11422:238:25",
|
|
"statements": [
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 3911,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3906,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3069,
|
|
"src": "11431:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3908,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3907,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3864,
|
|
"src": "11449:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11431:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3909,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "11462:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3910,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11462:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "11431:46:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3919,
|
|
"nodeType": "IfStatement",
|
|
"src": "11427:104:25",
|
|
"trueBody": {
|
|
"id": 3918,
|
|
"nodeType": "Block",
|
|
"src": "11479:52:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3913,
|
|
"name": "methodIdRevertMessages",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3077,
|
|
"src": "11492:22:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string storage ref)"
|
|
}
|
|
},
|
|
"id": 3915,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3914,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3864,
|
|
"src": "11515:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11492:32:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
],
|
|
"id": 3912,
|
|
"name": "revert",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
4020,
|
|
4021
|
|
],
|
|
"referencedDeclaration": 4021,
|
|
"src": "11485:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
|
|
"typeString": "function (string memory) pure"
|
|
}
|
|
},
|
|
"id": 3916,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11485:40:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3917,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11485:40:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 3925,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3920,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3069,
|
|
"src": "11539:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3922,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3921,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3864,
|
|
"src": "11557:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11539:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3923,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "11570:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3924,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11570:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "11539:48:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3930,
|
|
"nodeType": "IfStatement",
|
|
"src": "11535:77:25",
|
|
"trueBody": {
|
|
"id": 3929,
|
|
"nodeType": "Block",
|
|
"src": "11589:23:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [],
|
|
"expression": {
|
|
"argumentTypes": [],
|
|
"id": 3926,
|
|
"name": "useAllGas",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3795,
|
|
"src": "11595:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
|
|
"typeString": "function ()"
|
|
}
|
|
},
|
|
"id": 3927,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11595:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3928,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11595:11:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3935,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3931,
|
|
"name": "result",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3896,
|
|
"src": "11616:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3932,
|
|
"name": "methodIdExpectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3073,
|
|
"src": "11625:20:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3934,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3933,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3864,
|
|
"src": "11646:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11625:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"src": "11616:39:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 3936,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11616:39:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 3942,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3939,
|
|
"name": "result",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3896,
|
|
"src": "11705:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 3940,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11705:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3941,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "11722:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"src": "11705:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3967,
|
|
"nodeType": "IfStatement",
|
|
"src": "11701:218:25",
|
|
"trueBody": {
|
|
"id": 3966,
|
|
"nodeType": "Block",
|
|
"src": "11725:194:25",
|
|
"statements": [
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 3946,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3943,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3083,
|
|
"src": "11734:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3944,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "11754:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3945,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11754:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "11734:35:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3952,
|
|
"nodeType": "IfStatement",
|
|
"src": "11730:82:25",
|
|
"trueBody": {
|
|
"id": 3951,
|
|
"nodeType": "Block",
|
|
"src": "11771:41:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3948,
|
|
"name": "fallbackRevertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3087,
|
|
"src": "11784:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
],
|
|
"id": 3947,
|
|
"name": "revert",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
4020,
|
|
4021
|
|
],
|
|
"referencedDeclaration": 4021,
|
|
"src": "11777:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
|
|
"typeString": "function (string memory) pure"
|
|
}
|
|
},
|
|
"id": 3949,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11777:29:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3950,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11777:29:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 3956,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3953,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3083,
|
|
"src": "11820:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3954,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "11840:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3955,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11840:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "11820:37:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3961,
|
|
"nodeType": "IfStatement",
|
|
"src": "11816:66:25",
|
|
"trueBody": {
|
|
"id": 3960,
|
|
"nodeType": "Block",
|
|
"src": "11859:23:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [],
|
|
"expression": {
|
|
"argumentTypes": [],
|
|
"id": 3957,
|
|
"name": "useAllGas",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3795,
|
|
"src": "11865:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
|
|
"typeString": "function ()"
|
|
}
|
|
},
|
|
"id": 3958,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11865:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3959,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11865:11:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3964,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3962,
|
|
"name": "result",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3896,
|
|
"src": "11886:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3963,
|
|
"name": "fallbackExpectation",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3085,
|
|
"src": "11895:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"src": "11886:28:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 3965,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11886:28:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3970,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3968,
|
|
"name": "invocations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3089,
|
|
"src": "11946:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "+=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "31",
|
|
"id": 3969,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "11961:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"src": "11946:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 3971,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11946:16:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3982,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3972,
|
|
"name": "methodIdInvocations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3081,
|
|
"src": "11966:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
}
|
|
},
|
|
"id": 3980,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3976,
|
|
"name": "resetCount",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3091,
|
|
"src": "12013:10:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3977,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3864,
|
|
"src": "12025:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3974,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4002,
|
|
"src": "11996:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 3975,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11996:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3978,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11996:38:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3973,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "11986:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3979,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11986:49:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11966:70:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "+=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "31",
|
|
"id": 3981,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "12040:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"src": "11966:75:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 3983,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11966:75:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3995,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3984,
|
|
"name": "calldataInvocations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3061,
|
|
"src": "12045:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
}
|
|
},
|
|
"id": 3993,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3988,
|
|
"name": "resetCount",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3091,
|
|
"src": "12092:10:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3989,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "12104:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 3990,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "12104:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3986,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4002,
|
|
"src": "12075:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 3987,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "12075:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3991,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "12075:38:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3985,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "12065:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3992,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "12065:49:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "12045:70:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "+=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "31",
|
|
"id": 3994,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "12119:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"src": "12045:75:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 3996,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "12045:75:25"
|
|
},
|
|
{
|
|
"externalReferences": [
|
|
{
|
|
"result": {
|
|
"declaration": 3896,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "12156:6:25",
|
|
"valueSize": 1
|
|
}
|
|
},
|
|
{
|
|
"result": {
|
|
"declaration": 3896,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "12171:6:25",
|
|
"valueSize": 1
|
|
}
|
|
}
|
|
],
|
|
"id": 3997,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n return(add(0x20, result), mload(result))\n}",
|
|
"src": "12125:61:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3999,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3861,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "10988:2:25"
|
|
},
|
|
"payable": true,
|
|
"returnParameters": {
|
|
"id": 3862,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "11008:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "10980:1206:25",
|
|
"stateMutability": "payable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
}
|
|
],
|
|
"scope": 4001,
|
|
"src": "3453:8735:25"
|
|
}
|
|
],
|
|
"src": "0:12189:25"
|
|
},
|
|
"legacyAST": {
|
|
"absolutePath": "@gnosis.pm/mock-contract/contracts/MockContract.sol",
|
|
"exportedSymbols": {
|
|
"MockContract": [
|
|
4000
|
|
],
|
|
"MockInterface": [
|
|
3021
|
|
]
|
|
},
|
|
"id": 4001,
|
|
"nodeType": "SourceUnit",
|
|
"nodes": [
|
|
{
|
|
"id": 2877,
|
|
"literals": [
|
|
"solidity",
|
|
"^",
|
|
"0.4",
|
|
".23"
|
|
],
|
|
"nodeType": "PragmaDirective",
|
|
"src": "0:24:25"
|
|
},
|
|
{
|
|
"baseContracts": [],
|
|
"contractDependencies": [],
|
|
"contractKind": "interface",
|
|
"documentation": null,
|
|
"fullyImplemented": false,
|
|
"id": 3021,
|
|
"linearizedBaseContracts": [
|
|
3021
|
|
],
|
|
"name": "MockInterface",
|
|
"nodeType": "ContractDefinition",
|
|
"nodes": [
|
|
{
|
|
"body": null,
|
|
"documentation": "@dev After calling this method, the mock will return `response` when it is called\nwith any calldata that is not mocked more specifically below\n(e.g. using givenMethodReturn).\n@param response ABI encoded response that will be returned if method is invoked",
|
|
"id": 2882,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2880,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2879,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2882,
|
|
"src": "358:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2878,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "358:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "357:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2881,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "382:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "334:49:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2887,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturnBool",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2885,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2884,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2887,
|
|
"src": "413:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 2883,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "413:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "412:15:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2886,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "436:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "385:52:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2892,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturnUint",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2890,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2889,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2892,
|
|
"src": "467:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 2888,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "467:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "466:15:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2891,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "490:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "439:52:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2897,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturnAddress",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2895,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2894,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2897,
|
|
"src": "524:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 2893,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "524:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "523:18:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2896,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "550:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "493:58:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2900,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyRevert",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2898,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "577:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2899,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "588:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "554:35:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2905,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyRevertWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2903,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2902,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2905,
|
|
"src": "626:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 2901,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "626:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "625:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2904,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "650:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "591:60:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2908,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyRunOutOfGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2906,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "681:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2907,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "692:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "653:40:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": "@dev After calling this method, the mock will return `response` when the given\nmethodId is called regardless of arguments. If the methodId and arguments\nare mocked more specifically (using `givenMethodAndArguments`) the latter\nwill take precedence.\n@param method ABI encoded methodId. It is valid to pass full calldata (including arguments). The mock will extract the methodId from it\n@param response ABI encoded response that will be returned if method is invoked",
|
|
"id": 2915,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2913,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2910,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2915,
|
|
"src": "1222:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2909,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1222:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2912,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2915,
|
|
"src": "1236:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2911,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1236:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1221:30:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2914,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1260:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "1195:66:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2922,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturnBool",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2920,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2917,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2922,
|
|
"src": "1294:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2916,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1294:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2919,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2922,
|
|
"src": "1308:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 2918,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1308:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1293:29:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2921,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1331:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "1263:69:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2929,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturnUint",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2927,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2924,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2929,
|
|
"src": "1365:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2923,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1365:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2926,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2929,
|
|
"src": "1379:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 2925,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1379:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1364:29:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2928,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1402:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "1334:69:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2936,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturnAddress",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2934,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2931,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2936,
|
|
"src": "1439:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2930,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1439:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2933,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2936,
|
|
"src": "1453:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 2932,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1453:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1438:32:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2935,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1479:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "1405:75:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2941,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodRevert",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2939,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2938,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2941,
|
|
"src": "1510:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2937,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1510:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1509:14:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2940,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1532:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "1483:50:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2948,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodRevertWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2946,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2943,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2948,
|
|
"src": "1573:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2942,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1573:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2945,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2948,
|
|
"src": "1587:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 2944,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1587:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1572:30:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2947,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1611:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "1535:77:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2953,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodRunOutOfGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2951,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2950,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2953,
|
|
"src": "1646:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2949,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1646:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1645:14:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2952,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1668:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "1614:55:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": "@dev After calling this method, the mock will return `response` when the given\nmethodId is called with matching arguments. These exact calldataMocks will take\nprecedence over all other calldataMocks.\n@param calldata ABI encoded calldata (methodId and arguments)\n@param response ABI encoded response that will be returned if contract is invoked with calldata",
|
|
"id": 2960,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2958,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2955,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2960,
|
|
"src": "2089:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2954,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2089:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2957,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2960,
|
|
"src": "2105:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2956,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2105:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2088:32:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2959,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2129:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2060:70:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2967,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturnBool",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2965,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2962,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2967,
|
|
"src": "2165:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2961,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2165:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2964,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2967,
|
|
"src": "2181:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 2963,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2181:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2164:31:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2966,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2204:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2132:73:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2974,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturnUint",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2972,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2969,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2974,
|
|
"src": "2240:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2968,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2240:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2971,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2974,
|
|
"src": "2256:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 2970,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2256:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2239:31:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2973,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2279:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2207:73:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2981,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturnAddress",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2979,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2976,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2981,
|
|
"src": "2318:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2975,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2318:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2978,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2981,
|
|
"src": "2334:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 2977,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2334:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2317:34:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2980,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2360:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2282:79:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2986,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataRevert",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2984,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2983,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2986,
|
|
"src": "2393:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2982,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2393:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2392:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2985,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2417:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2364:54:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2993,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataRevertWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2991,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2988,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2993,
|
|
"src": "2460:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2987,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2460:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 2990,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2993,
|
|
"src": "2476:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 2989,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2476:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2459:32:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2992,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2500:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2420:81:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": null,
|
|
"id": 2998,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataRunOutOfGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2996,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 2995,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 2998,
|
|
"src": "2537:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 2994,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2537:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2536:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 2997,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2561:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2503:59:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": "@dev Returns the number of times anything has been called on this mock since last reset",
|
|
"id": 3003,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "invocationCount",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 2999,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2691:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3002,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3001,
|
|
"name": "",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3003,
|
|
"src": "2712:4:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3000,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2712:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2711:6:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2667:51:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": "@dev Returns the number of times the given method has been called on this mock since last reset\n@param method ABI encoded methodId. It is valid to pass full calldata (including arguments). The mock will extract the methodId from it",
|
|
"id": 3010,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "invocationCountForMethod",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3006,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3005,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3010,
|
|
"src": "3005:12:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3004,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3005:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "3004:14:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3009,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3008,
|
|
"name": "",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3010,
|
|
"src": "3037:4:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3007,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3037:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "3036:6:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "2971:72:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": "@dev Returns the number of times this mock has been called with the exact calldata since last reset.\n@param calldata ABI encoded calldata (methodId and arguments)",
|
|
"id": 3017,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "invocationCountForCalldata",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3013,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3012,
|
|
"name": "calldata",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3017,
|
|
"src": "3263:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3011,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3263:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "3262:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3016,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3015,
|
|
"name": "",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3017,
|
|
"src": "3297:4:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3014,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3297:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "3296:6:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "3227:76:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": null,
|
|
"documentation": "@dev Resets all mocked methods and invocation counts.",
|
|
"id": 3020,
|
|
"implemented": false,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "reset",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3018,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "3389:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3019,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "3400:0:25"
|
|
},
|
|
"scope": 3021,
|
|
"src": "3375:26:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
}
|
|
],
|
|
"scope": 4001,
|
|
"src": "26:3377:25"
|
|
},
|
|
{
|
|
"baseContracts": [
|
|
{
|
|
"arguments": null,
|
|
"baseName": {
|
|
"contractScope": null,
|
|
"id": 3022,
|
|
"name": "MockInterface",
|
|
"nodeType": "UserDefinedTypeName",
|
|
"referencedDeclaration": 3021,
|
|
"src": "3478:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_MockInterface_$3021",
|
|
"typeString": "contract MockInterface"
|
|
}
|
|
},
|
|
"id": 3023,
|
|
"nodeType": "InheritanceSpecifier",
|
|
"src": "3478:13:25"
|
|
}
|
|
],
|
|
"contractDependencies": [
|
|
3021
|
|
],
|
|
"contractKind": "contract",
|
|
"documentation": "Implementation of the MockInterface.",
|
|
"fullyImplemented": true,
|
|
"id": 4000,
|
|
"linearizedBaseContracts": [
|
|
4000,
|
|
3021
|
|
],
|
|
"name": "MockContract",
|
|
"nodeType": "ContractDefinition",
|
|
"nodes": [
|
|
{
|
|
"canonicalName": "MockContract.MockType",
|
|
"id": 3027,
|
|
"members": [
|
|
{
|
|
"id": 3024,
|
|
"name": "Return",
|
|
"nodeType": "EnumValue",
|
|
"src": "3511:6:25"
|
|
},
|
|
{
|
|
"id": 3025,
|
|
"name": "Revert",
|
|
"nodeType": "EnumValue",
|
|
"src": "3519:6:25"
|
|
},
|
|
{
|
|
"id": 3026,
|
|
"name": "OutOfGas",
|
|
"nodeType": "EnumValue",
|
|
"src": "3527:8:25"
|
|
}
|
|
],
|
|
"name": "MockType",
|
|
"nodeType": "EnumDefinition",
|
|
"src": "3495:42:25"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3030,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3541:50:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 3028,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3541:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"hexValue": "01",
|
|
"id": 3029,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3584:7:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_5fe7f977e71dba2ea1a68e21057beebb9be2ac30c6410aa38d4f3fbe41dcffd2",
|
|
"typeString": "literal_string \"\u0001\""
|
|
},
|
|
"value": "\u0001"
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3033,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3594:45:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3031,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3594:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30786666",
|
|
"id": 3032,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3633:6:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_420daffad4b177bce28bead5f76f7bc97ef63c3aae74c496db8ce6aafe9e6513",
|
|
"typeString": "literal_string \"0xff\""
|
|
},
|
|
"value": "0xff"
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3038,
|
|
"name": "MOCKS_LIST_END_HASH",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3642:71:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 3034,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3642:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3036,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3033,
|
|
"src": "3698:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3035,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "3688:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3037,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3688:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3041,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3716:51:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3039,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3716:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"hexValue": "01",
|
|
"id": 3040,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3760:7:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_5fe7f977e71dba2ea1a68e21057beebb9be2ac30c6410aa38d4f3fbe41dcffd2",
|
|
"typeString": "literal_string \"\u0001\""
|
|
},
|
|
"value": "\u0001"
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3045,
|
|
"name": "calldataMocks",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3832:39:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes)"
|
|
},
|
|
"typeName": {
|
|
"id": 3044,
|
|
"keyType": {
|
|
"id": 3042,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3840:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "3832:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes)"
|
|
},
|
|
"valueType": {
|
|
"id": 3043,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3851:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3049,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3874:44:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes => enum MockContract.MockType)"
|
|
},
|
|
"typeName": {
|
|
"id": 3048,
|
|
"keyType": {
|
|
"id": 3046,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3882:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "3874:26:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes => enum MockContract.MockType)"
|
|
},
|
|
"valueType": {
|
|
"contractScope": null,
|
|
"id": 3047,
|
|
"name": "MockType",
|
|
"nodeType": "UserDefinedTypeName",
|
|
"referencedDeclaration": 3027,
|
|
"src": "3891:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3053,
|
|
"name": "calldataExpectations",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3921:44:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes => bytes)"
|
|
},
|
|
"typeName": {
|
|
"id": 3052,
|
|
"keyType": {
|
|
"id": 3050,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3929:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "3921:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes => bytes)"
|
|
},
|
|
"valueType": {
|
|
"id": 3051,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3938:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3057,
|
|
"name": "calldataRevertMessage",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "3968:46:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes => string)"
|
|
},
|
|
"typeName": {
|
|
"id": 3056,
|
|
"keyType": {
|
|
"id": 3054,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3976:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "3968:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes => string)"
|
|
},
|
|
"valueType": {
|
|
"id": 3055,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3985:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3061,
|
|
"name": "calldataInvocations",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4017:44:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 3060,
|
|
"keyType": {
|
|
"id": 3058,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4025:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "4017:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
},
|
|
"valueType": {
|
|
"id": 3059,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4036:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3065,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4065:39:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
},
|
|
"typeName": {
|
|
"id": 3064,
|
|
"keyType": {
|
|
"id": 3062,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4073:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "4065:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
},
|
|
"valueType": {
|
|
"id": 3063,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4083:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3069,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4107:45:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
},
|
|
"typeName": {
|
|
"id": 3068,
|
|
"keyType": {
|
|
"id": 3066,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4115:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "4107:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
},
|
|
"valueType": {
|
|
"contractScope": null,
|
|
"id": 3067,
|
|
"name": "MockType",
|
|
"nodeType": "UserDefinedTypeName",
|
|
"referencedDeclaration": 3027,
|
|
"src": "4125:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3073,
|
|
"name": "methodIdExpectations",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4155:45:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes)"
|
|
},
|
|
"typeName": {
|
|
"id": 3072,
|
|
"keyType": {
|
|
"id": 3070,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4163:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "4155:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes)"
|
|
},
|
|
"valueType": {
|
|
"id": 3071,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4173:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3077,
|
|
"name": "methodIdRevertMessages",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4203:48:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string)"
|
|
},
|
|
"typeName": {
|
|
"id": 3076,
|
|
"keyType": {
|
|
"id": 3074,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4211:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "4203:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string)"
|
|
},
|
|
"valueType": {
|
|
"id": 3075,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4221:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3081,
|
|
"name": "methodIdInvocations",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4254:44:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 3080,
|
|
"keyType": {
|
|
"id": 3078,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4262:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "4254:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
},
|
|
"valueType": {
|
|
"id": 3079,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4273:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3083,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4302:25:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"typeName": {
|
|
"contractScope": null,
|
|
"id": 3082,
|
|
"name": "MockType",
|
|
"nodeType": "UserDefinedTypeName",
|
|
"referencedDeclaration": 3027,
|
|
"src": "4302:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3085,
|
|
"name": "fallbackExpectation",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4330:25:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3084,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4330:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3087,
|
|
"name": "fallbackRevertMessage",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4358:28:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 3086,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4358:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3089,
|
|
"name": "invocations",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4389:16:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3088,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4389:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3091,
|
|
"name": "resetCount",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4000,
|
|
"src": "4408:15:25",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3090,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4408:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3106,
|
|
"nodeType": "Block",
|
|
"src": "4448:114:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3098,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3094,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "4452:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3096,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3095,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3030,
|
|
"src": "4466:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4452:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3097,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3033,
|
|
"src": "4486:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "4452:48:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3099,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4452:48:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3104,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3100,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "4504:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3102,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3101,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "4518:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4504:33:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3103,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "4540:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "4504:54:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 3105,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4504:54:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3107,
|
|
"implemented": true,
|
|
"isConstructor": true,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3092,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "4438:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3093,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "4448:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "4427:135:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3140,
|
|
"nodeType": "Block",
|
|
"src": "4619:196:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3113
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3113,
|
|
"name": "callHash",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3141,
|
|
"src": "4623:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 3112,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4623:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3117,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3115,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3109,
|
|
"src": "4652:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3114,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "4642:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3116,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4642:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "4623:34:25"
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 3123,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3118,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "4665:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3120,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3119,
|
|
"name": "callHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3113,
|
|
"src": "4679:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4665:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3121,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4665:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3122,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "4699:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"src": "4665:35:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3139,
|
|
"nodeType": "IfStatement",
|
|
"src": "4661:151:25",
|
|
"trueBody": {
|
|
"id": 3138,
|
|
"nodeType": "Block",
|
|
"src": "4702:110:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3130,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3124,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "4707:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3126,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3125,
|
|
"name": "callHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3113,
|
|
"src": "4721:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4707:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3127,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "4733:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3129,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3128,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3030,
|
|
"src": "4747:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4733:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"src": "4707:57:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3131,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4707:57:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3136,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3132,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "4769:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3134,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3133,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3030,
|
|
"src": "4783:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4769:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3135,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3109,
|
|
"src": "4803:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "4769:38:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3137,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4769:38:25"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3141,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "trackCalldataMock",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3110,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3109,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3141,
|
|
"src": "4592:17:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3108,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4592:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "4591:19:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3111,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "4619:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "4565:250:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3167,
|
|
"nodeType": "Block",
|
|
"src": "4870:161:25",
|
|
"statements": [
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"id": 3150,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3146,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "4878:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3148,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3147,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3143,
|
|
"src": "4892:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4878:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "307830",
|
|
"id": 3149,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "4905:3:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0x0"
|
|
},
|
|
"src": "4878:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3166,
|
|
"nodeType": "IfStatement",
|
|
"src": "4874:154:25",
|
|
"trueBody": {
|
|
"id": 3165,
|
|
"nodeType": "Block",
|
|
"src": "4910:118:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3157,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3151,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "4915:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3153,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3152,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3143,
|
|
"src": "4929:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4915:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3154,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "4941:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3156,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3155,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "4955:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4941:33:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "4915:59:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 3158,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4915:59:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3163,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3159,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "4979:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3161,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3160,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "4993:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4979:33:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3162,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3143,
|
|
"src": "5015:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "4979:44:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 3164,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4979:44:25"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3168,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "trackMethodIdMock",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3144,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3143,
|
|
"name": "methodId",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3168,
|
|
"src": "4845:15:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3142,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4845:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "4844:17:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3145,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "4870:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "4818:213:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3182,
|
|
"nodeType": "Block",
|
|
"src": "5084:76:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3176,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3173,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3083,
|
|
"src": "5088:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3174,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "5107:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3175,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "5107:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "5088:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3177,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5088:34:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3180,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3178,
|
|
"name": "fallbackExpectation",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3085,
|
|
"src": "5126:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3179,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3170,
|
|
"src": "5148:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "5126:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3181,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5126:30:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3183,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "_givenAnyReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3171,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3170,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3183,
|
|
"src": "5059:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3169,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5059:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5058:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3172,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5084:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5034:126:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3192,
|
|
"nodeType": "Block",
|
|
"src": "5212:33:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3189,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3185,
|
|
"src": "5232:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3188,
|
|
"name": "_givenAnyReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3183,
|
|
"src": "5216:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3190,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5216:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3191,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5216:25:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3193,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3186,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3185,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3193,
|
|
"src": "5187:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3184,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5187:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5186:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3187,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5212:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5163:82:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2882,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3211,
|
|
"nodeType": "Block",
|
|
"src": "5300:74:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3199
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3199,
|
|
"name": "flag",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3212,
|
|
"src": "5304:9:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3198,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5304:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3204,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"id": 3200,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3195,
|
|
"src": "5316:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3202,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "5331:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"id": 3203,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "Conditional",
|
|
"src": "5316:16:25",
|
|
"trueExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "31",
|
|
"id": 3201,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "5327:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint8",
|
|
"typeString": "uint8"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "5304:28:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3207,
|
|
"name": "flag",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3199,
|
|
"src": "5364:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 3206,
|
|
"name": "uintToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3860,
|
|
"src": "5352:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3208,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5352:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3205,
|
|
"name": "_givenAnyReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3183,
|
|
"src": "5336:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3209,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5336:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3210,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5336:34:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3212,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturnBool",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3196,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3195,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3212,
|
|
"src": "5276:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 3194,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5276:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5275:15:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3197,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5300:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5248:126:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2887,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3223,
|
|
"nodeType": "Block",
|
|
"src": "5429:47:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3219,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3214,
|
|
"src": "5461:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 3218,
|
|
"name": "uintToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3860,
|
|
"src": "5449:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3220,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5449:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3217,
|
|
"name": "_givenAnyReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3183,
|
|
"src": "5433:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3221,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5433:38:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3222,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5433:38:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3224,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturnUint",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3215,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3214,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3224,
|
|
"src": "5405:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3213,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5405:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5404:15:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3216,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5429:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5377:99:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2892,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3235,
|
|
"nodeType": "Block",
|
|
"src": "5537:49:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3231,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3226,
|
|
"src": "5572:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"id": 3230,
|
|
"name": "addressToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3844,
|
|
"src": "5557:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_address_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (address) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3232,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5557:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3229,
|
|
"name": "_givenAnyReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3183,
|
|
"src": "5541:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3233,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5541:41:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3234,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5541:41:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3236,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyReturnAddress",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3227,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3226,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3236,
|
|
"src": "5510:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 3225,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5510:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5509:18:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3228,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5537:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5479:107:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2897,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3248,
|
|
"nodeType": "Block",
|
|
"src": "5624:72:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3242,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3239,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3083,
|
|
"src": "5628:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3240,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "5647:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3241,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "5647:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "5628:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3243,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5628:34:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3246,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3244,
|
|
"name": "fallbackRevertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3087,
|
|
"src": "5666:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3245,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "5690:2:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "5666:26:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 3247,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5666:26:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3249,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyRevert",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3237,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5612:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3238,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5624:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5589:107:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2900,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3263,
|
|
"nodeType": "Block",
|
|
"src": "5759:77:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3257,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3254,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3083,
|
|
"src": "5763:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3255,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "5782:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3256,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "5782:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "5763:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3258,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5763:34:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3261,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3259,
|
|
"name": "fallbackRevertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3087,
|
|
"src": "5801:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3260,
|
|
"name": "message",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3251,
|
|
"src": "5825:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string calldata"
|
|
}
|
|
},
|
|
"src": "5801:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 3262,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5801:31:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3264,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyRevertWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3252,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3251,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3264,
|
|
"src": "5734:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 3250,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5734:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5733:16:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3253,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5759:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5699:137:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2905,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3272,
|
|
"nodeType": "Block",
|
|
"src": "5879:44:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3270,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3267,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3083,
|
|
"src": "5883:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3268,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "5902:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3269,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "5902:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "5883:36:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3271,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5883:36:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3273,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenAnyRunOutOfGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3265,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5867:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3266,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5879:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5839:84:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2908,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3297,
|
|
"nodeType": "Block",
|
|
"src": "5993:117:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3285,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3280,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3049,
|
|
"src": "5997:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3282,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3281,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3275,
|
|
"src": "6015:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "5997:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3283,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "6023:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3284,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "6023:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "5997:41:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3286,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5997:41:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3291,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3287,
|
|
"name": "calldataExpectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3053,
|
|
"src": "6042:20:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes memory => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3289,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3288,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3275,
|
|
"src": "6063:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "6042:26:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3290,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3277,
|
|
"src": "6071:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "6042:37:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3292,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6042:37:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3294,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3275,
|
|
"src": "6101:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3293,
|
|
"name": "trackCalldataMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3141,
|
|
"src": "6083:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3295,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6083:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3296,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6083:23:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3298,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "_givenCalldataReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3278,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3275,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3298,
|
|
"src": "5956:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3274,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5956:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3277,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3298,
|
|
"src": "5968:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3276,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5968:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5955:28:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3279,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "5993:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "5926:184:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3310,
|
|
"nodeType": "Block",
|
|
"src": "6180:44:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3306,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3300,
|
|
"src": "6205:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3307,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3302,
|
|
"src": "6211:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3305,
|
|
"name": "_givenCalldataReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3298,
|
|
"src": "6184:20:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3308,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6184:36:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3309,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6184:36:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3311,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3303,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3300,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3311,
|
|
"src": "6142:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3299,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6142:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3302,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3311,
|
|
"src": "6154:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3301,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6154:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6141:28:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3304,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "6180:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "6113:111:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2960,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3332,
|
|
"nodeType": "Block",
|
|
"src": "6296:83:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3319
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3319,
|
|
"name": "flag",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3333,
|
|
"src": "6300:9:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3318,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6300:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3324,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"id": 3320,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3315,
|
|
"src": "6312:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3322,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "6327:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"id": 3323,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "Conditional",
|
|
"src": "6312:16:25",
|
|
"trueExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "31",
|
|
"id": 3321,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "6323:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint8",
|
|
"typeString": "uint8"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "6300:28:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3326,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3313,
|
|
"src": "6351:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3328,
|
|
"name": "flag",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3319,
|
|
"src": "6369:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 3327,
|
|
"name": "uintToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3860,
|
|
"src": "6357:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3329,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6357:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3325,
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3394,
|
|
"src": "6332:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3330,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6332:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3331,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6332:43:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3333,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturnBool",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3316,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3313,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3333,
|
|
"src": "6260:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3312,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6260:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3315,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3333,
|
|
"src": "6272:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 3314,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6272:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6259:27:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3317,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "6296:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "6227:152:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2967,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3347,
|
|
"nodeType": "Block",
|
|
"src": "6451:55:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3341,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3335,
|
|
"src": "6474:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3343,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3337,
|
|
"src": "6492:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 3342,
|
|
"name": "uintToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3860,
|
|
"src": "6480:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3344,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6480:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3340,
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3394,
|
|
"src": "6455:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3345,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6455:47:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3346,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6455:47:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3348,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturnUint",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3338,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3335,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3348,
|
|
"src": "6415:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3334,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6415:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3337,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3348,
|
|
"src": "6427:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3336,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6427:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6414:27:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3339,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "6451:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "6382:124:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2974,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3362,
|
|
"nodeType": "Block",
|
|
"src": "6584:58:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3356,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3350,
|
|
"src": "6607:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3358,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3352,
|
|
"src": "6628:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"id": 3357,
|
|
"name": "addressToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3844,
|
|
"src": "6613:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_address_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (address) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3359,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6613:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3355,
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3394,
|
|
"src": "6588:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3360,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6588:50:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3361,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6588:50:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3363,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataReturnAddress",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3353,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3350,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3363,
|
|
"src": "6545:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3349,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6545:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3352,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3363,
|
|
"src": "6557:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 3351,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6557:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6544:30:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3354,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "6584:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "6509:133:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2981,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3393,
|
|
"nodeType": "Block",
|
|
"src": "6709:164:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3371
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3371,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3394,
|
|
"src": "6713:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3370,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6713:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3375,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3373,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3365,
|
|
"src": "6743:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3372,
|
|
"name": "bytesToBytes4",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3835,
|
|
"src": "6729:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes4_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes4)"
|
|
}
|
|
},
|
|
"id": 3374,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6729:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "6713:35:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3381,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3376,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3069,
|
|
"src": "6752:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3378,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3377,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3371,
|
|
"src": "6770:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "6752:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3379,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "6780:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3380,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "6780:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "6752:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3382,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6752:43:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3387,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3383,
|
|
"name": "methodIdExpectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3073,
|
|
"src": "6799:20:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3385,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3384,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3371,
|
|
"src": "6820:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "6799:28:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3386,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3367,
|
|
"src": "6830:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "6799:39:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3388,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6799:39:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3390,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3371,
|
|
"src": "6860:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 3389,
|
|
"name": "trackMethodIdMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3168,
|
|
"src": "6842:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 3391,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6842:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3392,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6842:25:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3394,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3368,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3365,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3394,
|
|
"src": "6673:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3364,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6673:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3367,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3394,
|
|
"src": "6685:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3366,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6685:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6672:28:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3369,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "6709:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "6645:228:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3406,
|
|
"nodeType": "Block",
|
|
"src": "6940:42:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3402,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3396,
|
|
"src": "6963:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3403,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3398,
|
|
"src": "6969:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3401,
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3394,
|
|
"src": "6944:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3404,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6944:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3405,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6944:34:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3407,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3399,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3396,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3407,
|
|
"src": "6903:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3395,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6903:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3398,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3407,
|
|
"src": "6915:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3397,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6915:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6902:28:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3400,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "6940:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "6876:106:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2915,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3428,
|
|
"nodeType": "Block",
|
|
"src": "7052:83:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3415
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3415,
|
|
"name": "flag",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3429,
|
|
"src": "7056:9:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3414,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7056:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3420,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"id": 3416,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3411,
|
|
"src": "7068:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3418,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "7083:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"id": 3419,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "Conditional",
|
|
"src": "7068:16:25",
|
|
"trueExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "31",
|
|
"id": 3417,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "7079:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint8",
|
|
"typeString": "uint8"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "7056:28:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3422,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3409,
|
|
"src": "7107:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3424,
|
|
"name": "flag",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3415,
|
|
"src": "7125:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 3423,
|
|
"name": "uintToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3860,
|
|
"src": "7113:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3425,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7113:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3421,
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3394,
|
|
"src": "7088:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3426,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7088:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3427,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7088:43:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3429,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturnBool",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3412,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3409,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3429,
|
|
"src": "7016:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3408,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7016:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3411,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3429,
|
|
"src": "7028:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 3410,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7028:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7015:27:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3413,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "7052:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "6985:150:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2922,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3443,
|
|
"nodeType": "Block",
|
|
"src": "7205:55:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3437,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3431,
|
|
"src": "7228:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3439,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3433,
|
|
"src": "7246:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 3438,
|
|
"name": "uintToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3860,
|
|
"src": "7234:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3440,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7234:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3436,
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3394,
|
|
"src": "7209:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3441,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7209:47:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3442,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7209:47:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3444,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturnUint",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3434,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3431,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3444,
|
|
"src": "7169:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3430,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7169:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3433,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3444,
|
|
"src": "7181:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3432,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7181:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7168:27:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3435,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "7205:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "7138:122:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2929,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3458,
|
|
"nodeType": "Block",
|
|
"src": "7336:58:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3452,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3446,
|
|
"src": "7359:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3454,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3448,
|
|
"src": "7380:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"id": 3453,
|
|
"name": "addressToBytes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3844,
|
|
"src": "7365:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_address_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (address) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3455,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7365:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3451,
|
|
"name": "_givenMethodReturn",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3394,
|
|
"src": "7340:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory,bytes memory)"
|
|
}
|
|
},
|
|
"id": 3456,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7340:50:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3457,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7340:50:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3459,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodReturnAddress",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3449,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3446,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3459,
|
|
"src": "7297:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3445,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7297:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3448,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3459,
|
|
"src": "7309:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 3447,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7309:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7296:30:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3450,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "7336:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "7263:131:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2936,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3481,
|
|
"nodeType": "Block",
|
|
"src": "7447:112:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3469,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3464,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3049,
|
|
"src": "7451:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3466,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3465,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3461,
|
|
"src": "7469:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "7451:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3467,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "7477:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3468,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "7477:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "7451:41:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3470,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7451:41:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3475,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3471,
|
|
"name": "calldataRevertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3057,
|
|
"src": "7496:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 3473,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3472,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3461,
|
|
"src": "7518:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "7496:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3474,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "7526:2:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "7496:32:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 3476,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7496:32:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3478,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3461,
|
|
"src": "7550:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3477,
|
|
"name": "trackCalldataMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3141,
|
|
"src": "7532:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3479,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7532:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3480,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7532:23:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3482,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataRevert",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3462,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3461,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3482,
|
|
"src": "7426:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3460,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7426:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7425:12:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3463,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "7447:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "7397:162:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2986,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3504,
|
|
"nodeType": "Block",
|
|
"src": "7610:121:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3488
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3488,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3505,
|
|
"src": "7614:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3487,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7614:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3492,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3490,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3484,
|
|
"src": "7644:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3489,
|
|
"name": "bytesToBytes4",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3835,
|
|
"src": "7630:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes4_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes4)"
|
|
}
|
|
},
|
|
"id": 3491,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7630:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "7614:35:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3498,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3493,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3069,
|
|
"src": "7653:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3495,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3494,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3488,
|
|
"src": "7671:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "7653:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3496,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "7681:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3497,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "7681:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "7653:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3499,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7653:43:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3501,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3488,
|
|
"src": "7718:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 3500,
|
|
"name": "trackMethodIdMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3168,
|
|
"src": "7700:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 3502,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7700:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3503,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7700:25:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3505,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodRevert",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3485,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3484,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3505,
|
|
"src": "7589:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3483,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7589:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7588:12:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3486,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "7610:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "7562:169:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2941,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3529,
|
|
"nodeType": "Block",
|
|
"src": "7811:117:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3517,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3512,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3049,
|
|
"src": "7815:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3514,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3513,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3507,
|
|
"src": "7833:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "7815:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3515,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "7841:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3516,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "7841:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "7815:41:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3518,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7815:41:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3523,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3519,
|
|
"name": "calldataRevertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3057,
|
|
"src": "7860:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 3521,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3520,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3507,
|
|
"src": "7882:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "7860:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3522,
|
|
"name": "message",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3509,
|
|
"src": "7890:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string calldata"
|
|
}
|
|
},
|
|
"src": "7860:37:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 3524,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7860:37:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3526,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3507,
|
|
"src": "7919:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3525,
|
|
"name": "trackCalldataMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3141,
|
|
"src": "7901:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3527,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7901:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3528,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7901:23:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3530,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataRevertWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3510,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3507,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3530,
|
|
"src": "7774:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3506,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7774:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3509,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3530,
|
|
"src": "7786:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 3508,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7786:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7773:28:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3511,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "7811:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "7734:194:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2993,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3560,
|
|
"nodeType": "Block",
|
|
"src": "8006:165:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3538
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3538,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3561,
|
|
"src": "8010:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3537,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8010:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3542,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3540,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3532,
|
|
"src": "8040:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3539,
|
|
"name": "bytesToBytes4",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3835,
|
|
"src": "8026:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes4_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes4)"
|
|
}
|
|
},
|
|
"id": 3541,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8026:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "8010:35:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3548,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3543,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3069,
|
|
"src": "8049:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3545,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3544,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3538,
|
|
"src": "8067:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "8049:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3546,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "8077:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3547,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "8077:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "8049:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3549,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "8049:43:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3554,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3550,
|
|
"name": "methodIdRevertMessages",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3077,
|
|
"src": "8096:22:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string storage ref)"
|
|
}
|
|
},
|
|
"id": 3552,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3551,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3538,
|
|
"src": "8119:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "8096:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3553,
|
|
"name": "message",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3534,
|
|
"src": "8129:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string calldata"
|
|
}
|
|
},
|
|
"src": "8096:40:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 3555,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "8096:40:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3557,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3538,
|
|
"src": "8158:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 3556,
|
|
"name": "trackMethodIdMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3168,
|
|
"src": "8140:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 3558,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8140:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3559,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "8140:25:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3561,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodRevertWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3535,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3532,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3561,
|
|
"src": "7969:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3531,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7969:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3534,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3561,
|
|
"src": "7981:14:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_calldata_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 3533,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7981:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7968:28:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3536,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "8006:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "7931:240:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2948,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3577,
|
|
"nodeType": "Block",
|
|
"src": "8229:78:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3571,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3566,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3049,
|
|
"src": "8233:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3568,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3567,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3563,
|
|
"src": "8251:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "8233:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3569,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "8259:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3570,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "8259:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "8233:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3572,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "8233:43:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3574,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3563,
|
|
"src": "8298:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3573,
|
|
"name": "trackCalldataMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3141,
|
|
"src": "8280:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3575,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8280:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3576,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "8280:23:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3578,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenCalldataRunOutOfGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3564,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3563,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3578,
|
|
"src": "8208:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3562,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8208:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8207:12:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3565,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "8229:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "8174:133:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2998,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3600,
|
|
"nodeType": "Block",
|
|
"src": "8363:122:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3584
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3584,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3601,
|
|
"src": "8367:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3583,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8367:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3588,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3586,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3580,
|
|
"src": "8397:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3585,
|
|
"name": "bytesToBytes4",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3835,
|
|
"src": "8383:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes4_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes4)"
|
|
}
|
|
},
|
|
"id": 3587,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8383:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "8367:35:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3594,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3589,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3069,
|
|
"src": "8406:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3591,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3590,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3584,
|
|
"src": "8424:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "8406:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3592,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "8434:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3593,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "8434:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "8406:45:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3595,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "8406:45:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3597,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3584,
|
|
"src": "8473:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 3596,
|
|
"name": "trackMethodIdMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3168,
|
|
"src": "8455:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 3598,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8455:25:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3599,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "8455:25:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3601,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenMethodRunOutOfGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3581,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3580,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3601,
|
|
"src": "8342:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3579,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8342:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8341:12:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3582,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "8363:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "8310:175:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 2953,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3608,
|
|
"nodeType": "Block",
|
|
"src": "8539:26:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3606,
|
|
"name": "invocations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3089,
|
|
"src": "8550:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"functionReturnParameters": 3605,
|
|
"id": 3607,
|
|
"nodeType": "Return",
|
|
"src": "8543:18:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3609,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "invocationCount",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3602,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "8512:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3605,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3604,
|
|
"name": "",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3609,
|
|
"src": "8533:4:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3603,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8533:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8532:6:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "8488:77:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 3003,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3632,
|
|
"nodeType": "Block",
|
|
"src": "8638:122:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3617
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3617,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3633,
|
|
"src": "8642:13:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3616,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8642:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3621,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3619,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3611,
|
|
"src": "8672:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"id": 3618,
|
|
"name": "bytesToBytes4",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3835,
|
|
"src": "8658:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes4_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes4)"
|
|
}
|
|
},
|
|
"id": 3620,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8658:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "8642:35:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3622,
|
|
"name": "methodIdInvocations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3081,
|
|
"src": "8688:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
}
|
|
},
|
|
"id": 3630,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3626,
|
|
"name": "resetCount",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3091,
|
|
"src": "8735:10:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3627,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3617,
|
|
"src": "8747:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3624,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4002,
|
|
"src": "8718:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 3625,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "8718:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3628,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8718:36:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3623,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "8708:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3629,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8708:47:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "8688:68:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"functionReturnParameters": 3615,
|
|
"id": 3631,
|
|
"nodeType": "Return",
|
|
"src": "8681:75:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3633,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "invocationCountForMethod",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3612,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3611,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3633,
|
|
"src": "8602:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3610,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8602:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8601:12:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3615,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3614,
|
|
"name": "",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3633,
|
|
"src": "8632:4:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3613,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8632:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8631:6:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "8568:192:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 3010,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3650,
|
|
"nodeType": "Block",
|
|
"src": "8835:81:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3640,
|
|
"name": "calldataInvocations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3061,
|
|
"src": "8846:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
}
|
|
},
|
|
"id": 3648,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3644,
|
|
"name": "resetCount",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3091,
|
|
"src": "8893:10:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3645,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3635,
|
|
"src": "8905:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3642,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4002,
|
|
"src": "8876:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 3643,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "8876:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3646,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8876:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3641,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "8866:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3647,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8866:45:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "8846:66:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"functionReturnParameters": 3639,
|
|
"id": 3649,
|
|
"nodeType": "Return",
|
|
"src": "8839:73:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3651,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "invocationCountForCalldata",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3636,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3635,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3651,
|
|
"src": "8799:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3634,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8799:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8798:12:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3639,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3638,
|
|
"name": "",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3651,
|
|
"src": "8829:4:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3637,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8829:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8828:6:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "8763:153:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 3017,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3783,
|
|
"nodeType": "Block",
|
|
"src": "8945:1265:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3655
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3655,
|
|
"name": "nextMock",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3784,
|
|
"src": "8984:21:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3654,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8984:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3659,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3656,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "9008:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3658,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3657,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3030,
|
|
"src": "9022:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9008:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "8984:55:25"
|
|
},
|
|
{
|
|
"assignments": [
|
|
3661
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3661,
|
|
"name": "mockHash",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3784,
|
|
"src": "9043:16:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 3660,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9043:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3665,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3663,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3655,
|
|
"src": "9072:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3662,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "9062:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3664,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9062:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "9043:38:25"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3706,
|
|
"nodeType": "Block",
|
|
"src": "9153:355:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3674,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3669,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3049,
|
|
"src": "9184:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3671,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3670,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3655,
|
|
"src": "9202:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9184:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3672,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "9214:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3673,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "9214:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "9184:45:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3675,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9184:45:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3680,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3676,
|
|
"name": "calldataExpectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3053,
|
|
"src": "9234:20:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes memory => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3678,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3677,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3655,
|
|
"src": "9255:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9234:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3679,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "9267:5:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "9234:38:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3681,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9234:38:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3686,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3682,
|
|
"name": "calldataRevertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3057,
|
|
"src": "9277:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 3684,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3683,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3655,
|
|
"src": "9299:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9277:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3685,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "9311:2:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "9277:36:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 3687,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9277:36:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3692,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3688,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3655,
|
|
"src": "9348:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3689,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "9359:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3691,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3690,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3661,
|
|
"src": "9373:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9359:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"src": "9348:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 3693,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9348:34:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3698,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3694,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "9417:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3696,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3695,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3661,
|
|
"src": "9431:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9417:23:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3697,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "9443:2:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "9417:28:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3699,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9417:28:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3704,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3700,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3661,
|
|
"src": "9473:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3702,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3655,
|
|
"src": "9494:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3701,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "9484:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3703,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9484:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "9473:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"id": 3705,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9473:30:25"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"id": 3668,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3666,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3661,
|
|
"src": "9120:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "!=",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3667,
|
|
"name": "MOCKS_LIST_END_HASH",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3038,
|
|
"src": "9132:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "9120:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 3707,
|
|
"nodeType": "WhileStatement",
|
|
"src": "9114:394:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3712,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3708,
|
|
"name": "calldataMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3045,
|
|
"src": "9527:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3710,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3709,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3030,
|
|
"src": "9541:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9527:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3711,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3033,
|
|
"src": "9561:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "9527:48:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3713,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9527:48:25"
|
|
},
|
|
{
|
|
"assignments": [
|
|
3715
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3715,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3784,
|
|
"src": "9613:18:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3714,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9613:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3719,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3716,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "9634:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3718,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3717,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "9648:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9634:33:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "9613:54:25"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3758,
|
|
"nodeType": "Block",
|
|
"src": "9712:316:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
3724
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3724,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3784,
|
|
"src": "9717:21:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3723,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9717:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3726,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"id": 3725,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3715,
|
|
"src": "9741:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "9717:35:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3732,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3727,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3069,
|
|
"src": "9757:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3729,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3728,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3724,
|
|
"src": "9775:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9757:33:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3730,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "9793:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3731,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "9793:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "9757:51:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3733,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9757:51:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3738,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3734,
|
|
"name": "methodIdExpectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3073,
|
|
"src": "9813:20:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3736,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3735,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3724,
|
|
"src": "9834:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9813:36:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3737,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "9852:5:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "9813:44:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3739,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9813:44:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3744,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3740,
|
|
"name": "methodIdRevertMessages",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3077,
|
|
"src": "9862:22:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string storage ref)"
|
|
}
|
|
},
|
|
"id": 3742,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3741,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3724,
|
|
"src": "9885:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9862:38:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3743,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "9903:2:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "9862:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 3745,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9862:43:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3750,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3746,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3715,
|
|
"src": "9910:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3747,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "9924:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3749,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3748,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3724,
|
|
"src": "9938:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9924:29:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "9910:43:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 3751,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9910:43:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3756,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3752,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "9988:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3754,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3753,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3724,
|
|
"src": "10002:14:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9988:29:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "307830",
|
|
"id": 3755,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10020:3:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0x0"
|
|
},
|
|
"src": "9988:35:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 3757,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9988:35:25"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"id": 3722,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3720,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3715,
|
|
"src": "9677:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "!=",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3721,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "9692:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "9677:33:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 3759,
|
|
"nodeType": "WhileStatement",
|
|
"src": "9671:357:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3764,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3760,
|
|
"name": "methodIdMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3065,
|
|
"src": "10047:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 3762,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3761,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "10061:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "10047:33:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3763,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3041,
|
|
"src": "10083:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "10047:54:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 3765,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10047:54:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3768,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3766,
|
|
"name": "fallbackExpectation",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3085,
|
|
"src": "10106:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 3767,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10128:2:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "10106:24:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 3769,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10106:24:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3773,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3770,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3083,
|
|
"src": "10134:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3771,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "10153:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3772,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "10153:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "10134:34:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 3774,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10134:34:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3777,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3775,
|
|
"name": "invocations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3089,
|
|
"src": "10172:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3776,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10186:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"src": "10172:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 3778,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10172:15:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3781,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3779,
|
|
"name": "resetCount",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3091,
|
|
"src": "10191:10:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "+=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "31",
|
|
"id": 3780,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10205:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"src": "10191:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 3782,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10191:15:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3784,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "reset",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3652,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "8933:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3653,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "8945:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "8919:1291:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": 3020,
|
|
"visibility": "external"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3794,
|
|
"nodeType": "Block",
|
|
"src": "10242:157:25",
|
|
"statements": [
|
|
{
|
|
"body": {
|
|
"id": 3792,
|
|
"nodeType": "Block",
|
|
"src": "10258:138:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3789,
|
|
"name": "s",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3795,
|
|
"src": "10263:6:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 3788,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10263:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3790,
|
|
"initialValue": null,
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "10263:6:25"
|
|
},
|
|
{
|
|
"externalReferences": [
|
|
{
|
|
"s": {
|
|
"declaration": 3789,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "10334:1:25",
|
|
"valueSize": 1
|
|
}
|
|
}
|
|
],
|
|
"id": 3791,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n s := call(sub(gas(), 2000), 6, 0, 0x0, 0xc0, 0x0, 0x60)\n}",
|
|
"src": "10274:122:25"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"hexValue": "74727565",
|
|
"id": 3787,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "bool",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10252:4:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"value": "true"
|
|
},
|
|
"id": 3793,
|
|
"nodeType": "WhileStatement",
|
|
"src": "10246:150:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3795,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "useAllGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3785,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "10231:2:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3786,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "10242:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "10213:186:25",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3834,
|
|
"nodeType": "Block",
|
|
"src": "10464:122:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3803,
|
|
"name": "out",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3835,
|
|
"src": "10470:10:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3802,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10470:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3804,
|
|
"initialValue": null,
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "10470:10:25"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3830,
|
|
"nodeType": "Block",
|
|
"src": "10515:52:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3828,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3815,
|
|
"name": "out",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3803,
|
|
"src": "10523:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "|=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"id": 3827,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
},
|
|
"id": 3821,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3817,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3797,
|
|
"src": "10537:1:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 3819,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3818,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3806,
|
|
"src": "10539:1:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "10537:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "&",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30784646",
|
|
"id": 3820,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10544:4:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_255_by_1",
|
|
"typeString": "int_const 255"
|
|
},
|
|
"value": "0xFF"
|
|
},
|
|
"src": "10537:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
}
|
|
],
|
|
"id": 3816,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "10530:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes4_$",
|
|
"typeString": "type(bytes4)"
|
|
},
|
|
"typeName": "bytes4"
|
|
},
|
|
"id": 3822,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "10530:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": ">>",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"components": [
|
|
{
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 3825,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3823,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3806,
|
|
"src": "10554:1:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "*",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "38",
|
|
"id": 3824,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10558:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_8_by_1",
|
|
"typeString": "int_const 8"
|
|
},
|
|
"value": "8"
|
|
},
|
|
"src": "10554:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"id": 3826,
|
|
"isConstant": false,
|
|
"isInlineArray": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "TupleExpression",
|
|
"src": "10553:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "10530:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "10523:37:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 3829,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10523:37:25"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 3811,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3809,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3806,
|
|
"src": "10503:1:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "<",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "34",
|
|
"id": 3810,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10507:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_4_by_1",
|
|
"typeString": "int_const 4"
|
|
},
|
|
"value": "4"
|
|
},
|
|
"src": "10503:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 3831,
|
|
"initializationExpression": {
|
|
"assignments": [
|
|
3806
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3806,
|
|
"name": "i",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3835,
|
|
"src": "10491:6:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3805,
|
|
"name": "uint",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10491:4:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3808,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3807,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10500:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "10491:10:25"
|
|
},
|
|
"loopExpression": {
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3813,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "++",
|
|
"prefix": false,
|
|
"src": "10510:3:25",
|
|
"subExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3812,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3806,
|
|
"src": "10510:1:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 3814,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10510:3:25"
|
|
},
|
|
"nodeType": "ForStatement",
|
|
"src": "10486:81:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3832,
|
|
"name": "out",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3803,
|
|
"src": "10579:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"functionReturnParameters": 3801,
|
|
"id": 3833,
|
|
"nodeType": "Return",
|
|
"src": "10572:10:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3835,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": true,
|
|
"modifiers": [],
|
|
"name": "bytesToBytes4",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3798,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3797,
|
|
"name": "b",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3835,
|
|
"src": "10425:7:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3796,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10425:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10424:9:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3801,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3800,
|
|
"name": "",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3835,
|
|
"src": "10456:6:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3799,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10456:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10455:8:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "10402:184:25",
|
|
"stateMutability": "pure",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3843,
|
|
"nodeType": "Block",
|
|
"src": "10654:189:25",
|
|
"statements": [
|
|
{
|
|
"externalReferences": [
|
|
{
|
|
"b": {
|
|
"declaration": 3840,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "10827:1:25",
|
|
"valueSize": 1
|
|
}
|
|
},
|
|
{
|
|
"a": {
|
|
"declaration": 3837,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "10780:1:25",
|
|
"valueSize": 1
|
|
}
|
|
}
|
|
],
|
|
"id": 3842,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n let m := mload(0x40)\n mstore(add(m, 20), xor(0x140000000000000000000000000000000000000000, a))\n mstore(0x40, add(m, 52))\n b := m\n}",
|
|
"src": "10661:182:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3844,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": true,
|
|
"modifiers": [],
|
|
"name": "addressToBytes",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3838,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3837,
|
|
"name": "a",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3844,
|
|
"src": "10613:9:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 3836,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10613:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10612:11:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3841,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3840,
|
|
"name": "b",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3844,
|
|
"src": "10646:7:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3839,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10646:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10645:9:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "10589:254:25",
|
|
"stateMutability": "pure",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3859,
|
|
"nodeType": "Block",
|
|
"src": "10909:68:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3856,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3851,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3849,
|
|
"src": "10916:1:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"hexValue": "3332",
|
|
"id": 3854,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10930:2:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_32_by_1",
|
|
"typeString": "int_const 32"
|
|
},
|
|
"value": "32"
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_rational_32_by_1",
|
|
"typeString": "int_const 32"
|
|
}
|
|
],
|
|
"id": 3853,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "NewExpression",
|
|
"src": "10920:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
},
|
|
"typeName": {
|
|
"id": 3852,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10924:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"id": 3855,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "10920:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "10916:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 3857,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10916:17:25"
|
|
},
|
|
{
|
|
"externalReferences": [
|
|
{
|
|
"x": {
|
|
"declaration": 3846,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "10970:1:25",
|
|
"valueSize": 1
|
|
}
|
|
},
|
|
{
|
|
"b": {
|
|
"declaration": 3849,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "10962:1:25",
|
|
"valueSize": 1
|
|
}
|
|
}
|
|
],
|
|
"id": 3858,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n mstore(add(b, 32), x)\n}",
|
|
"src": "10940:37:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3860,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": true,
|
|
"modifiers": [],
|
|
"name": "uintToBytes",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3847,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3846,
|
|
"name": "x",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3860,
|
|
"src": "10867:9:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 3845,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10867:7:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10866:11:25"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 3850,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 3849,
|
|
"name": "b",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3860,
|
|
"src": "10900:7:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3848,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10900:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10899:9:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "10846:131:25",
|
|
"stateMutability": "pure",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 3998,
|
|
"nodeType": "Block",
|
|
"src": "11008:1178:25",
|
|
"statements": [
|
|
{
|
|
"assignments": [],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3864,
|
|
"name": "methodId",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3999,
|
|
"src": "11012:15:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3863,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11012:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3865,
|
|
"initialValue": null,
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "11012:15:25"
|
|
},
|
|
{
|
|
"externalReferences": [
|
|
{
|
|
"methodId": {
|
|
"declaration": 3864,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "11045:8:25",
|
|
"valueSize": 1
|
|
}
|
|
}
|
|
],
|
|
"id": 3866,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n methodId := calldataload(0)\n}",
|
|
"src": "11031:94:25"
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 3873,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3867,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3049,
|
|
"src": "11127:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3870,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3868,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "11145:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 3869,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11145:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11127:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3871,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "11158:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3872,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11158:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "11127:46:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3882,
|
|
"nodeType": "IfStatement",
|
|
"src": "11123:101:25",
|
|
"trueBody": {
|
|
"id": 3881,
|
|
"nodeType": "Block",
|
|
"src": "11175:49:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3875,
|
|
"name": "calldataRevertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3057,
|
|
"src": "11187:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 3878,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3876,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "11209:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 3877,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11209:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11187:31:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
],
|
|
"id": 3874,
|
|
"name": "revert",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
4020,
|
|
4021
|
|
],
|
|
"referencedDeclaration": 4021,
|
|
"src": "11180:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
|
|
"typeString": "function (string memory) pure"
|
|
}
|
|
},
|
|
"id": 3879,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11180:39:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3880,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11180:39:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 3889,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3883,
|
|
"name": "calldataMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3049,
|
|
"src": "11231:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3886,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3884,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "11249:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 3885,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11249:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11231:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3887,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "11262:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3888,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11262:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "11231:48:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3894,
|
|
"nodeType": "IfStatement",
|
|
"src": "11227:75:25",
|
|
"trueBody": {
|
|
"id": 3893,
|
|
"nodeType": "Block",
|
|
"src": "11281:21:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [],
|
|
"expression": {
|
|
"argumentTypes": [],
|
|
"id": 3890,
|
|
"name": "useAllGas",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3795,
|
|
"src": "11286:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
|
|
"typeString": "function ()"
|
|
}
|
|
},
|
|
"id": 3891,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11286:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3892,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11286:11:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"assignments": [
|
|
3896
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 3896,
|
|
"name": "result",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 3999,
|
|
"src": "11305:19:25",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3895,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11305:5:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 3901,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3897,
|
|
"name": "calldataExpectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3053,
|
|
"src": "11327:20:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes memory => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3900,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3898,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "11348:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 3899,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11348:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11327:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "11305:52:25"
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 3905,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3902,
|
|
"name": "result",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3896,
|
|
"src": "11402:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 3903,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11402:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3904,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "11419:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"src": "11402:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3938,
|
|
"nodeType": "IfStatement",
|
|
"src": "11398:262:25",
|
|
"trueBody": {
|
|
"id": 3937,
|
|
"nodeType": "Block",
|
|
"src": "11422:238:25",
|
|
"statements": [
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 3911,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3906,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3069,
|
|
"src": "11431:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3908,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3907,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3864,
|
|
"src": "11449:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11431:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3909,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "11462:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3910,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11462:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "11431:46:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3919,
|
|
"nodeType": "IfStatement",
|
|
"src": "11427:104:25",
|
|
"trueBody": {
|
|
"id": 3918,
|
|
"nodeType": "Block",
|
|
"src": "11479:52:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3913,
|
|
"name": "methodIdRevertMessages",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3077,
|
|
"src": "11492:22:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string storage ref)"
|
|
}
|
|
},
|
|
"id": 3915,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3914,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3864,
|
|
"src": "11515:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11492:32:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
],
|
|
"id": 3912,
|
|
"name": "revert",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
4020,
|
|
4021
|
|
],
|
|
"referencedDeclaration": 4021,
|
|
"src": "11485:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
|
|
"typeString": "function (string memory) pure"
|
|
}
|
|
},
|
|
"id": 3916,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11485:40:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3917,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11485:40:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 3925,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3920,
|
|
"name": "methodIdMockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3069,
|
|
"src": "11539:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3027_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3922,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3921,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3864,
|
|
"src": "11557:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11539:27:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3923,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "11570:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3924,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11570:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "11539:48:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3930,
|
|
"nodeType": "IfStatement",
|
|
"src": "11535:77:25",
|
|
"trueBody": {
|
|
"id": 3929,
|
|
"nodeType": "Block",
|
|
"src": "11589:23:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [],
|
|
"expression": {
|
|
"argumentTypes": [],
|
|
"id": 3926,
|
|
"name": "useAllGas",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3795,
|
|
"src": "11595:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
|
|
"typeString": "function ()"
|
|
}
|
|
},
|
|
"id": 3927,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11595:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3928,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11595:11:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3935,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3931,
|
|
"name": "result",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3896,
|
|
"src": "11616:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3932,
|
|
"name": "methodIdExpectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3073,
|
|
"src": "11625:20:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 3934,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3933,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3864,
|
|
"src": "11646:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11625:30:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"src": "11616:39:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 3936,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11616:39:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 3942,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3939,
|
|
"name": "result",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3896,
|
|
"src": "11705:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 3940,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11705:13:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 3941,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "11722:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"src": "11705:18:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3967,
|
|
"nodeType": "IfStatement",
|
|
"src": "11701:218:25",
|
|
"trueBody": {
|
|
"id": 3966,
|
|
"nodeType": "Block",
|
|
"src": "11725:194:25",
|
|
"statements": [
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 3946,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3943,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3083,
|
|
"src": "11734:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3944,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "11754:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3945,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11754:15:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "11734:35:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3952,
|
|
"nodeType": "IfStatement",
|
|
"src": "11730:82:25",
|
|
"trueBody": {
|
|
"id": 3951,
|
|
"nodeType": "Block",
|
|
"src": "11771:41:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3948,
|
|
"name": "fallbackRevertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3087,
|
|
"src": "11784:21:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
],
|
|
"id": 3947,
|
|
"name": "revert",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
4020,
|
|
4021
|
|
],
|
|
"referencedDeclaration": 4021,
|
|
"src": "11777:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
|
|
"typeString": "function (string memory) pure"
|
|
}
|
|
},
|
|
"id": 3949,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11777:29:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3950,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11777:29:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 3956,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3953,
|
|
"name": "fallbackMockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3083,
|
|
"src": "11820:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3954,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3027,
|
|
"src": "11840:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3027_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 3955,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11840:17:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3027",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "11820:37:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 3961,
|
|
"nodeType": "IfStatement",
|
|
"src": "11816:66:25",
|
|
"trueBody": {
|
|
"id": 3960,
|
|
"nodeType": "Block",
|
|
"src": "11859:23:25",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [],
|
|
"expression": {
|
|
"argumentTypes": [],
|
|
"id": 3957,
|
|
"name": "useAllGas",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3795,
|
|
"src": "11865:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
|
|
"typeString": "function ()"
|
|
}
|
|
},
|
|
"id": 3958,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11865:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 3959,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11865:11:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3964,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3962,
|
|
"name": "result",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3896,
|
|
"src": "11886:6:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3963,
|
|
"name": "fallbackExpectation",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3085,
|
|
"src": "11895:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"src": "11886:28:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 3965,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11886:28:25"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3970,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 3968,
|
|
"name": "invocations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3089,
|
|
"src": "11946:11:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "+=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "31",
|
|
"id": 3969,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "11961:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"src": "11946:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 3971,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11946:16:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3982,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3972,
|
|
"name": "methodIdInvocations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3081,
|
|
"src": "11966:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
}
|
|
},
|
|
"id": 3980,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3976,
|
|
"name": "resetCount",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3091,
|
|
"src": "12013:10:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3977,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3864,
|
|
"src": "12025:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3974,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4002,
|
|
"src": "11996:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 3975,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "11996:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3978,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11996:38:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3973,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "11986:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3979,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11986:49:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11966:70:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "+=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "31",
|
|
"id": 3981,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "12040:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"src": "11966:75:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 3983,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11966:75:25"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3995,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 3984,
|
|
"name": "calldataInvocations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3061,
|
|
"src": "12045:19:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
}
|
|
},
|
|
"id": 3993,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3988,
|
|
"name": "resetCount",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3091,
|
|
"src": "12092:10:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
{
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3989,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "12104:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 3990,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "12104:8:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 3986,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4002,
|
|
"src": "12075:3:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 3987,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "12075:16:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 3991,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "12075:38:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3985,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4009,
|
|
"src": "12065:9:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3992,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "12065:49:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "12045:70:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "+=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "31",
|
|
"id": 3994,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "12119:1:25",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"src": "12045:75:25",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 3996,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "12045:75:25"
|
|
},
|
|
{
|
|
"externalReferences": [
|
|
{
|
|
"result": {
|
|
"declaration": 3896,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "12156:6:25",
|
|
"valueSize": 1
|
|
}
|
|
},
|
|
{
|
|
"result": {
|
|
"declaration": 3896,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "12171:6:25",
|
|
"valueSize": 1
|
|
}
|
|
}
|
|
],
|
|
"id": 3997,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n return(add(0x20, result), mload(result))\n}",
|
|
"src": "12125:61:25"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 3999,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 3861,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "10988:2:25"
|
|
},
|
|
"payable": true,
|
|
"returnParameters": {
|
|
"id": 3862,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "11008:0:25"
|
|
},
|
|
"scope": 4000,
|
|
"src": "10980:1206:25",
|
|
"stateMutability": "payable",
|
|
"superFunction": null,
|
|
"visibility": "external"
|
|
}
|
|
],
|
|
"scope": 4001,
|
|
"src": "3453:8735:25"
|
|
}
|
|
],
|
|
"src": "0:12189:25"
|
|
},
|
|
"compiler": {
|
|
"name": "solc",
|
|
"version": "0.4.24+commit.e67f0147.Emscripten.clang"
|
|
},
|
|
"networks": {},
|
|
"schemaVersion": "2.0.0",
|
|
"updatedAt": "2018-10-05T14:25:58.946Z"
|
|
} |