diff --git a/ASSIGNMENT.md b/ASSIGNMENT.md new file mode 100644 index 00000000..25c48cef --- /dev/null +++ b/ASSIGNMENT.md @@ -0,0 +1,23 @@ +# Auction Contract Assignment + +## Overview +This is the Auction contract assignment (as-w4-d3). The Auction contract provides functionality for decentralized auctions. + +## Setup +1. Install dependencies: `npm install` +2. Configure hardhat: See `hardhat.config.ts` +3. Run tests: `npm test` + +## Contract Details +- **Location**: `Assignment/solidity-assignment7/contracts/auction/` +- **Language**: Solidity + +## Testing +```bash +npm test +``` + +## Deployment +```bash +npx hardhat run scripts/deploy.ts +``` diff --git a/Assignment/solidity-assignment7/contracts/auction/artifacts/artifacts.d.ts b/Assignment/solidity-assignment7/contracts/auction/artifacts/artifacts.d.ts new file mode 100644 index 00000000..e69de29b diff --git a/Assignment/solidity-assignment7/contracts/auction/artifacts/build-info/solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058.json b/Assignment/solidity-assignment7/contracts/auction/artifacts/build-info/solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058.json new file mode 100644 index 00000000..803e5ed6 --- /dev/null +++ b/Assignment/solidity-assignment7/contracts/auction/artifacts/build-info/solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058.json @@ -0,0 +1,35 @@ +{ + "_format": "hh3-sol-build-info-1", + "id": "solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058", + "solcVersion": "0.8.28", + "solcLongVersion": "0.8.28+commit.7893614a", + "userSourceNameMap": { + "contracts/auction.sol": "project/contracts/auction.sol" + }, + "input": { + "language": "Solidity", + "settings": { + "evmVersion": "cancun", + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "remappings": [] + }, + "sources": { + "project/contracts/auction.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity 0.8.28;\n\ncontract SimpleAuction {\n bool private locked;\n\n modifier nonReentrant() {\n require(!locked, \"Reentrancy\");\n locked = true;\n _;\n locked = false;\n }\n address public owner;\n uint256 public startingPrice;\n uint256 public endTime;\n bool public ended;\n\n address public highestBidder;\n uint256 public highestBid;\n\n mapping(address => uint256) public pendingReturns;\n\n event BidPlaced(address indexed bidder, uint256 amount);\n event AuctionEnded(address winner, uint256 amount);\n event RefundWithdrawn(address indexed bidder, uint256 amount);\n\n constructor(uint256 _startingPrice, uint256 _auctionDuration) {\n require(_startingPrice > 0, \"Starting price must be > 0\");\n require(_auctionDuration > 0, \"Duration must be > 0\");\n owner = msg.sender;\n startingPrice = _startingPrice;\n endTime = block.timestamp + _auctionDuration;\n highestBid = _startingPrice;\n }\n\n function bid() public payable {\n require(block.timestamp < endTime, \"Auction ended\");\n require(!ended, \"Auction already ended\");\n require(msg.sender != owner, \"Owner cannot bid\");\n require(msg.value > highestBid, \"Bid too low\");\n\n if (highestBidder != address(0)) {\n pendingReturns[highestBidder] += highestBid;\n }\n\n highestBidder = msg.sender;\n highestBid = msg.value;\n emit BidPlaced(msg.sender, msg.value);\n }\n\n function withdrawRefund() external nonReentrant {\n uint256 amount = pendingReturns[msg.sender];\n require(amount > 0, \"No refund\");\n pendingReturns[msg.sender] = 0;\n (bool ok, ) = payable(msg.sender).call{value: amount}(\"\");\n require(ok, \"Refund failed\");\n emit RefundWithdrawn(msg.sender, amount);\n }\n\n function endAuction() external nonReentrant {\n require(msg.sender == owner, \"Only owner\");\n require(block.timestamp >= endTime, \"Auction not ended\");\n require(!ended, \"Already ended\");\n ended = true;\n if (highestBidder != address(0)) {\n (bool ok, ) = payable(owner).call{value: highestBid}(\"\");\n require(ok, \"Payout failed\");\n }\n emit AuctionEnded(highestBidder, highestBidder == address(0) ? 0 : highestBid);\n }\n\n receive() external payable {\n bid();\n }\n}\n" + } + } + } +} \ No newline at end of file diff --git a/Assignment/solidity-assignment7/contracts/auction/artifacts/build-info/solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058.output.json b/Assignment/solidity-assignment7/contracts/auction/artifacts/build-info/solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058.output.json new file mode 100644 index 00000000..0f57145e --- /dev/null +++ b/Assignment/solidity-assignment7/contracts/auction/artifacts/build-info/solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058.output.json @@ -0,0 +1 @@ +{"_format":"hh3-sol-build-info-output-1","id":"solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058","output":{"contracts":{"project/contracts/auction.sol":{"SimpleAuction":{"abi":[{"inputs":[{"internalType":"uint256","name":"_startingPrice","type":"uint256"},{"internalType":"uint256","name":"_auctionDuration","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"winner","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"AuctionEnded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"bidder","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"BidPlaced","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"bidder","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"RefundWithdrawn","type":"event"},{"inputs":[],"name":"bid","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"endAuction","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"endTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ended","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"highestBid","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"highestBidder","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"pendingReturns","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"startingPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawRefund","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"evm":{"bytecode":{"functionDebugData":{"@_97":{"entryPoint":null,"id":97,"parameterSlots":2,"returnSlots":0},"abi_decode_t_uint256_fromMemory":{"entryPoint":319,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint256t_uint256_fromMemory":{"entryPoint":339,"id":null,"parameterSlots":2,"returnSlots":2},"abi_encode_t_stringliteral_3d62e4e23f203bdeaa2b3326c3134bd4ba42ec2c22fb012c25ad94d36532cb4f_to_t_string_memory_ptr_fromStack":{"entryPoint":457,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_8e11b6d2923bf8c6b9080d06aaf81f8e74ef4ded2c8e4af3b95302a90884a4cd_to_t_string_memory_ptr_fromStack":{"entryPoint":561,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_3d62e4e23f203bdeaa2b3326c3134bd4ba42ec2c22fb012c25ad94d36532cb4f__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":491,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_8e11b6d2923bf8c6b9080d06aaf81f8e74ef4ded2c8e4af3b95302a90884a4cd__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":595,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_unbounded":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack":{"entryPoint":401,"id":null,"parameterSlots":2,"returnSlots":1},"checked_add_t_uint256":{"entryPoint":670,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_uint256":{"entryPoint":288,"id":null,"parameterSlots":1,"returnSlots":1},"panic_error_0x11":{"entryPoint":625,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":284,"id":null,"parameterSlots":0,"returnSlots":0},"store_literal_in_memory_3d62e4e23f203bdeaa2b3326c3134bd4ba42ec2c22fb012c25ad94d36532cb4f":{"entryPoint":417,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_8e11b6d2923bf8c6b9080d06aaf81f8e74ef4ded2c8e4af3b95302a90884a4cd":{"entryPoint":521,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint256":{"entryPoint":297,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nativeSrc":"0:3714:1","nodeType":"YulBlock","src":"0:3714:1","statements":[{"body":{"nativeSrc":"47:35:1","nodeType":"YulBlock","src":"47:35:1","statements":[{"nativeSrc":"57:19:1","nodeType":"YulAssignment","src":"57:19:1","value":{"arguments":[{"kind":"number","nativeSrc":"73:2:1","nodeType":"YulLiteral","src":"73:2:1","type":"","value":"64"}],"functionName":{"name":"mload","nativeSrc":"67:5:1","nodeType":"YulIdentifier","src":"67:5:1"},"nativeSrc":"67:9:1","nodeType":"YulFunctionCall","src":"67:9:1"},"variableNames":[{"name":"memPtr","nativeSrc":"57:6:1","nodeType":"YulIdentifier","src":"57:6:1"}]}]},"name":"allocate_unbounded","nativeSrc":"7:75:1","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nativeSrc":"40:6:1","nodeType":"YulTypedName","src":"40:6:1","type":""}],"src":"7:75:1"},{"body":{"nativeSrc":"177:28:1","nodeType":"YulBlock","src":"177:28:1","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"194:1:1","nodeType":"YulLiteral","src":"194:1:1","type":"","value":"0"},{"kind":"number","nativeSrc":"197:1:1","nodeType":"YulLiteral","src":"197:1:1","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"187:6:1","nodeType":"YulIdentifier","src":"187:6:1"},"nativeSrc":"187:12:1","nodeType":"YulFunctionCall","src":"187:12:1"},"nativeSrc":"187:12:1","nodeType":"YulExpressionStatement","src":"187:12:1"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nativeSrc":"88:117:1","nodeType":"YulFunctionDefinition","src":"88:117:1"},{"body":{"nativeSrc":"300:28:1","nodeType":"YulBlock","src":"300:28:1","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"317:1:1","nodeType":"YulLiteral","src":"317:1:1","type":"","value":"0"},{"kind":"number","nativeSrc":"320:1:1","nodeType":"YulLiteral","src":"320:1:1","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"310:6:1","nodeType":"YulIdentifier","src":"310:6:1"},"nativeSrc":"310:12:1","nodeType":"YulFunctionCall","src":"310:12:1"},"nativeSrc":"310:12:1","nodeType":"YulExpressionStatement","src":"310:12:1"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nativeSrc":"211:117:1","nodeType":"YulFunctionDefinition","src":"211:117:1"},{"body":{"nativeSrc":"379:32:1","nodeType":"YulBlock","src":"379:32:1","statements":[{"nativeSrc":"389:16:1","nodeType":"YulAssignment","src":"389:16:1","value":{"name":"value","nativeSrc":"400:5:1","nodeType":"YulIdentifier","src":"400:5:1"},"variableNames":[{"name":"cleaned","nativeSrc":"389:7:1","nodeType":"YulIdentifier","src":"389:7:1"}]}]},"name":"cleanup_t_uint256","nativeSrc":"334:77:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nativeSrc":"361:5:1","nodeType":"YulTypedName","src":"361:5:1","type":""}],"returnVariables":[{"name":"cleaned","nativeSrc":"371:7:1","nodeType":"YulTypedName","src":"371:7:1","type":""}],"src":"334:77:1"},{"body":{"nativeSrc":"460:79:1","nodeType":"YulBlock","src":"460:79:1","statements":[{"body":{"nativeSrc":"517:16:1","nodeType":"YulBlock","src":"517:16:1","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"526:1:1","nodeType":"YulLiteral","src":"526:1:1","type":"","value":"0"},{"kind":"number","nativeSrc":"529:1:1","nodeType":"YulLiteral","src":"529:1:1","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"519:6:1","nodeType":"YulIdentifier","src":"519:6:1"},"nativeSrc":"519:12:1","nodeType":"YulFunctionCall","src":"519:12:1"},"nativeSrc":"519:12:1","nodeType":"YulExpressionStatement","src":"519:12:1"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nativeSrc":"483:5:1","nodeType":"YulIdentifier","src":"483:5:1"},{"arguments":[{"name":"value","nativeSrc":"508:5:1","nodeType":"YulIdentifier","src":"508:5:1"}],"functionName":{"name":"cleanup_t_uint256","nativeSrc":"490:17:1","nodeType":"YulIdentifier","src":"490:17:1"},"nativeSrc":"490:24:1","nodeType":"YulFunctionCall","src":"490:24:1"}],"functionName":{"name":"eq","nativeSrc":"480:2:1","nodeType":"YulIdentifier","src":"480:2:1"},"nativeSrc":"480:35:1","nodeType":"YulFunctionCall","src":"480:35:1"}],"functionName":{"name":"iszero","nativeSrc":"473:6:1","nodeType":"YulIdentifier","src":"473:6:1"},"nativeSrc":"473:43:1","nodeType":"YulFunctionCall","src":"473:43:1"},"nativeSrc":"470:63:1","nodeType":"YulIf","src":"470:63:1"}]},"name":"validator_revert_t_uint256","nativeSrc":"417:122:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nativeSrc":"453:5:1","nodeType":"YulTypedName","src":"453:5:1","type":""}],"src":"417:122:1"},{"body":{"nativeSrc":"608:80:1","nodeType":"YulBlock","src":"608:80:1","statements":[{"nativeSrc":"618:22:1","nodeType":"YulAssignment","src":"618:22:1","value":{"arguments":[{"name":"offset","nativeSrc":"633:6:1","nodeType":"YulIdentifier","src":"633:6:1"}],"functionName":{"name":"mload","nativeSrc":"627:5:1","nodeType":"YulIdentifier","src":"627:5:1"},"nativeSrc":"627:13:1","nodeType":"YulFunctionCall","src":"627:13:1"},"variableNames":[{"name":"value","nativeSrc":"618:5:1","nodeType":"YulIdentifier","src":"618:5:1"}]},{"expression":{"arguments":[{"name":"value","nativeSrc":"676:5:1","nodeType":"YulIdentifier","src":"676:5:1"}],"functionName":{"name":"validator_revert_t_uint256","nativeSrc":"649:26:1","nodeType":"YulIdentifier","src":"649:26:1"},"nativeSrc":"649:33:1","nodeType":"YulFunctionCall","src":"649:33:1"},"nativeSrc":"649:33:1","nodeType":"YulExpressionStatement","src":"649:33:1"}]},"name":"abi_decode_t_uint256_fromMemory","nativeSrc":"545:143:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nativeSrc":"586:6:1","nodeType":"YulTypedName","src":"586:6:1","type":""},{"name":"end","nativeSrc":"594:3:1","nodeType":"YulTypedName","src":"594:3:1","type":""}],"returnVariables":[{"name":"value","nativeSrc":"602:5:1","nodeType":"YulTypedName","src":"602:5:1","type":""}],"src":"545:143:1"},{"body":{"nativeSrc":"788:413:1","nodeType":"YulBlock","src":"788:413:1","statements":[{"body":{"nativeSrc":"834:83:1","nodeType":"YulBlock","src":"834:83:1","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nativeSrc":"836:77:1","nodeType":"YulIdentifier","src":"836:77:1"},"nativeSrc":"836:79:1","nodeType":"YulFunctionCall","src":"836:79:1"},"nativeSrc":"836:79:1","nodeType":"YulExpressionStatement","src":"836:79:1"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nativeSrc":"809:7:1","nodeType":"YulIdentifier","src":"809:7:1"},{"name":"headStart","nativeSrc":"818:9:1","nodeType":"YulIdentifier","src":"818:9:1"}],"functionName":{"name":"sub","nativeSrc":"805:3:1","nodeType":"YulIdentifier","src":"805:3:1"},"nativeSrc":"805:23:1","nodeType":"YulFunctionCall","src":"805:23:1"},{"kind":"number","nativeSrc":"830:2:1","nodeType":"YulLiteral","src":"830:2:1","type":"","value":"64"}],"functionName":{"name":"slt","nativeSrc":"801:3:1","nodeType":"YulIdentifier","src":"801:3:1"},"nativeSrc":"801:32:1","nodeType":"YulFunctionCall","src":"801:32:1"},"nativeSrc":"798:119:1","nodeType":"YulIf","src":"798:119:1"},{"nativeSrc":"927:128:1","nodeType":"YulBlock","src":"927:128:1","statements":[{"nativeSrc":"942:15:1","nodeType":"YulVariableDeclaration","src":"942:15:1","value":{"kind":"number","nativeSrc":"956:1:1","nodeType":"YulLiteral","src":"956:1:1","type":"","value":"0"},"variables":[{"name":"offset","nativeSrc":"946:6:1","nodeType":"YulTypedName","src":"946:6:1","type":""}]},{"nativeSrc":"971:74:1","nodeType":"YulAssignment","src":"971:74:1","value":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"1017:9:1","nodeType":"YulIdentifier","src":"1017:9:1"},{"name":"offset","nativeSrc":"1028:6:1","nodeType":"YulIdentifier","src":"1028:6:1"}],"functionName":{"name":"add","nativeSrc":"1013:3:1","nodeType":"YulIdentifier","src":"1013:3:1"},"nativeSrc":"1013:22:1","nodeType":"YulFunctionCall","src":"1013:22:1"},{"name":"dataEnd","nativeSrc":"1037:7:1","nodeType":"YulIdentifier","src":"1037:7:1"}],"functionName":{"name":"abi_decode_t_uint256_fromMemory","nativeSrc":"981:31:1","nodeType":"YulIdentifier","src":"981:31:1"},"nativeSrc":"981:64:1","nodeType":"YulFunctionCall","src":"981:64:1"},"variableNames":[{"name":"value0","nativeSrc":"971:6:1","nodeType":"YulIdentifier","src":"971:6:1"}]}]},{"nativeSrc":"1065:129:1","nodeType":"YulBlock","src":"1065:129:1","statements":[{"nativeSrc":"1080:16:1","nodeType":"YulVariableDeclaration","src":"1080:16:1","value":{"kind":"number","nativeSrc":"1094:2:1","nodeType":"YulLiteral","src":"1094:2:1","type":"","value":"32"},"variables":[{"name":"offset","nativeSrc":"1084:6:1","nodeType":"YulTypedName","src":"1084:6:1","type":""}]},{"nativeSrc":"1110:74:1","nodeType":"YulAssignment","src":"1110:74:1","value":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"1156:9:1","nodeType":"YulIdentifier","src":"1156:9:1"},{"name":"offset","nativeSrc":"1167:6:1","nodeType":"YulIdentifier","src":"1167:6:1"}],"functionName":{"name":"add","nativeSrc":"1152:3:1","nodeType":"YulIdentifier","src":"1152:3:1"},"nativeSrc":"1152:22:1","nodeType":"YulFunctionCall","src":"1152:22:1"},{"name":"dataEnd","nativeSrc":"1176:7:1","nodeType":"YulIdentifier","src":"1176:7:1"}],"functionName":{"name":"abi_decode_t_uint256_fromMemory","nativeSrc":"1120:31:1","nodeType":"YulIdentifier","src":"1120:31:1"},"nativeSrc":"1120:64:1","nodeType":"YulFunctionCall","src":"1120:64:1"},"variableNames":[{"name":"value1","nativeSrc":"1110:6:1","nodeType":"YulIdentifier","src":"1110:6:1"}]}]}]},"name":"abi_decode_tuple_t_uint256t_uint256_fromMemory","nativeSrc":"694:507:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"750:9:1","nodeType":"YulTypedName","src":"750:9:1","type":""},{"name":"dataEnd","nativeSrc":"761:7:1","nodeType":"YulTypedName","src":"761:7:1","type":""}],"returnVariables":[{"name":"value0","nativeSrc":"773:6:1","nodeType":"YulTypedName","src":"773:6:1","type":""},{"name":"value1","nativeSrc":"781:6:1","nodeType":"YulTypedName","src":"781:6:1","type":""}],"src":"694:507:1"},{"body":{"nativeSrc":"1303:73:1","nodeType":"YulBlock","src":"1303:73:1","statements":[{"expression":{"arguments":[{"name":"pos","nativeSrc":"1320:3:1","nodeType":"YulIdentifier","src":"1320:3:1"},{"name":"length","nativeSrc":"1325:6:1","nodeType":"YulIdentifier","src":"1325:6:1"}],"functionName":{"name":"mstore","nativeSrc":"1313:6:1","nodeType":"YulIdentifier","src":"1313:6:1"},"nativeSrc":"1313:19:1","nodeType":"YulFunctionCall","src":"1313:19:1"},"nativeSrc":"1313:19:1","nodeType":"YulExpressionStatement","src":"1313:19:1"},{"nativeSrc":"1341:29:1","nodeType":"YulAssignment","src":"1341:29:1","value":{"arguments":[{"name":"pos","nativeSrc":"1360:3:1","nodeType":"YulIdentifier","src":"1360:3:1"},{"kind":"number","nativeSrc":"1365:4:1","nodeType":"YulLiteral","src":"1365:4:1","type":"","value":"0x20"}],"functionName":{"name":"add","nativeSrc":"1356:3:1","nodeType":"YulIdentifier","src":"1356:3:1"},"nativeSrc":"1356:14:1","nodeType":"YulFunctionCall","src":"1356:14:1"},"variableNames":[{"name":"updated_pos","nativeSrc":"1341:11:1","nodeType":"YulIdentifier","src":"1341:11:1"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nativeSrc":"1207:169:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"1275:3:1","nodeType":"YulTypedName","src":"1275:3:1","type":""},{"name":"length","nativeSrc":"1280:6:1","nodeType":"YulTypedName","src":"1280:6:1","type":""}],"returnVariables":[{"name":"updated_pos","nativeSrc":"1291:11:1","nodeType":"YulTypedName","src":"1291:11:1","type":""}],"src":"1207:169:1"},{"body":{"nativeSrc":"1488:70:1","nodeType":"YulBlock","src":"1488:70:1","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nativeSrc":"1510:6:1","nodeType":"YulIdentifier","src":"1510:6:1"},{"kind":"number","nativeSrc":"1518:1:1","nodeType":"YulLiteral","src":"1518:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"1506:3:1","nodeType":"YulIdentifier","src":"1506:3:1"},"nativeSrc":"1506:14:1","nodeType":"YulFunctionCall","src":"1506:14:1"},{"hexValue":"5374617274696e67207072696365206d757374206265203e2030","kind":"string","nativeSrc":"1522:28:1","nodeType":"YulLiteral","src":"1522:28:1","type":"","value":"Starting price must be > 0"}],"functionName":{"name":"mstore","nativeSrc":"1499:6:1","nodeType":"YulIdentifier","src":"1499:6:1"},"nativeSrc":"1499:52:1","nodeType":"YulFunctionCall","src":"1499:52:1"},"nativeSrc":"1499:52:1","nodeType":"YulExpressionStatement","src":"1499:52:1"}]},"name":"store_literal_in_memory_3d62e4e23f203bdeaa2b3326c3134bd4ba42ec2c22fb012c25ad94d36532cb4f","nativeSrc":"1382:176:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nativeSrc":"1480:6:1","nodeType":"YulTypedName","src":"1480:6:1","type":""}],"src":"1382:176:1"},{"body":{"nativeSrc":"1710:220:1","nodeType":"YulBlock","src":"1710:220:1","statements":[{"nativeSrc":"1720:74:1","nodeType":"YulAssignment","src":"1720:74:1","value":{"arguments":[{"name":"pos","nativeSrc":"1786:3:1","nodeType":"YulIdentifier","src":"1786:3:1"},{"kind":"number","nativeSrc":"1791:2:1","nodeType":"YulLiteral","src":"1791:2:1","type":"","value":"26"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nativeSrc":"1727:58:1","nodeType":"YulIdentifier","src":"1727:58:1"},"nativeSrc":"1727:67:1","nodeType":"YulFunctionCall","src":"1727:67:1"},"variableNames":[{"name":"pos","nativeSrc":"1720:3:1","nodeType":"YulIdentifier","src":"1720:3:1"}]},{"expression":{"arguments":[{"name":"pos","nativeSrc":"1892:3:1","nodeType":"YulIdentifier","src":"1892:3:1"}],"functionName":{"name":"store_literal_in_memory_3d62e4e23f203bdeaa2b3326c3134bd4ba42ec2c22fb012c25ad94d36532cb4f","nativeSrc":"1803:88:1","nodeType":"YulIdentifier","src":"1803:88:1"},"nativeSrc":"1803:93:1","nodeType":"YulFunctionCall","src":"1803:93:1"},"nativeSrc":"1803:93:1","nodeType":"YulExpressionStatement","src":"1803:93:1"},{"nativeSrc":"1905:19:1","nodeType":"YulAssignment","src":"1905:19:1","value":{"arguments":[{"name":"pos","nativeSrc":"1916:3:1","nodeType":"YulIdentifier","src":"1916:3:1"},{"kind":"number","nativeSrc":"1921:2:1","nodeType":"YulLiteral","src":"1921:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"1912:3:1","nodeType":"YulIdentifier","src":"1912:3:1"},"nativeSrc":"1912:12:1","nodeType":"YulFunctionCall","src":"1912:12:1"},"variableNames":[{"name":"end","nativeSrc":"1905:3:1","nodeType":"YulIdentifier","src":"1905:3:1"}]}]},"name":"abi_encode_t_stringliteral_3d62e4e23f203bdeaa2b3326c3134bd4ba42ec2c22fb012c25ad94d36532cb4f_to_t_string_memory_ptr_fromStack","nativeSrc":"1564:366:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"1698:3:1","nodeType":"YulTypedName","src":"1698:3:1","type":""}],"returnVariables":[{"name":"end","nativeSrc":"1706:3:1","nodeType":"YulTypedName","src":"1706:3:1","type":""}],"src":"1564:366:1"},{"body":{"nativeSrc":"2107:248:1","nodeType":"YulBlock","src":"2107:248:1","statements":[{"nativeSrc":"2117:26:1","nodeType":"YulAssignment","src":"2117:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"2129:9:1","nodeType":"YulIdentifier","src":"2129:9:1"},{"kind":"number","nativeSrc":"2140:2:1","nodeType":"YulLiteral","src":"2140:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"2125:3:1","nodeType":"YulIdentifier","src":"2125:3:1"},"nativeSrc":"2125:18:1","nodeType":"YulFunctionCall","src":"2125:18:1"},"variableNames":[{"name":"tail","nativeSrc":"2117:4:1","nodeType":"YulIdentifier","src":"2117:4:1"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"2164:9:1","nodeType":"YulIdentifier","src":"2164:9:1"},{"kind":"number","nativeSrc":"2175:1:1","nodeType":"YulLiteral","src":"2175:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"2160:3:1","nodeType":"YulIdentifier","src":"2160:3:1"},"nativeSrc":"2160:17:1","nodeType":"YulFunctionCall","src":"2160:17:1"},{"arguments":[{"name":"tail","nativeSrc":"2183:4:1","nodeType":"YulIdentifier","src":"2183:4:1"},{"name":"headStart","nativeSrc":"2189:9:1","nodeType":"YulIdentifier","src":"2189:9:1"}],"functionName":{"name":"sub","nativeSrc":"2179:3:1","nodeType":"YulIdentifier","src":"2179:3:1"},"nativeSrc":"2179:20:1","nodeType":"YulFunctionCall","src":"2179:20:1"}],"functionName":{"name":"mstore","nativeSrc":"2153:6:1","nodeType":"YulIdentifier","src":"2153:6:1"},"nativeSrc":"2153:47:1","nodeType":"YulFunctionCall","src":"2153:47:1"},"nativeSrc":"2153:47:1","nodeType":"YulExpressionStatement","src":"2153:47:1"},{"nativeSrc":"2209:139:1","nodeType":"YulAssignment","src":"2209:139:1","value":{"arguments":[{"name":"tail","nativeSrc":"2343:4:1","nodeType":"YulIdentifier","src":"2343:4:1"}],"functionName":{"name":"abi_encode_t_stringliteral_3d62e4e23f203bdeaa2b3326c3134bd4ba42ec2c22fb012c25ad94d36532cb4f_to_t_string_memory_ptr_fromStack","nativeSrc":"2217:124:1","nodeType":"YulIdentifier","src":"2217:124:1"},"nativeSrc":"2217:131:1","nodeType":"YulFunctionCall","src":"2217:131:1"},"variableNames":[{"name":"tail","nativeSrc":"2209:4:1","nodeType":"YulIdentifier","src":"2209:4:1"}]}]},"name":"abi_encode_tuple_t_stringliteral_3d62e4e23f203bdeaa2b3326c3134bd4ba42ec2c22fb012c25ad94d36532cb4f__to_t_string_memory_ptr__fromStack_reversed","nativeSrc":"1936:419:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"2087:9:1","nodeType":"YulTypedName","src":"2087:9:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"2102:4:1","nodeType":"YulTypedName","src":"2102:4:1","type":""}],"src":"1936:419:1"},{"body":{"nativeSrc":"2467:64:1","nodeType":"YulBlock","src":"2467:64:1","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nativeSrc":"2489:6:1","nodeType":"YulIdentifier","src":"2489:6:1"},{"kind":"number","nativeSrc":"2497:1:1","nodeType":"YulLiteral","src":"2497:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"2485:3:1","nodeType":"YulIdentifier","src":"2485:3:1"},"nativeSrc":"2485:14:1","nodeType":"YulFunctionCall","src":"2485:14:1"},{"hexValue":"4475726174696f6e206d757374206265203e2030","kind":"string","nativeSrc":"2501:22:1","nodeType":"YulLiteral","src":"2501:22:1","type":"","value":"Duration must be > 0"}],"functionName":{"name":"mstore","nativeSrc":"2478:6:1","nodeType":"YulIdentifier","src":"2478:6:1"},"nativeSrc":"2478:46:1","nodeType":"YulFunctionCall","src":"2478:46:1"},"nativeSrc":"2478:46:1","nodeType":"YulExpressionStatement","src":"2478:46:1"}]},"name":"store_literal_in_memory_8e11b6d2923bf8c6b9080d06aaf81f8e74ef4ded2c8e4af3b95302a90884a4cd","nativeSrc":"2361:170:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nativeSrc":"2459:6:1","nodeType":"YulTypedName","src":"2459:6:1","type":""}],"src":"2361:170:1"},{"body":{"nativeSrc":"2683:220:1","nodeType":"YulBlock","src":"2683:220:1","statements":[{"nativeSrc":"2693:74:1","nodeType":"YulAssignment","src":"2693:74:1","value":{"arguments":[{"name":"pos","nativeSrc":"2759:3:1","nodeType":"YulIdentifier","src":"2759:3:1"},{"kind":"number","nativeSrc":"2764:2:1","nodeType":"YulLiteral","src":"2764:2:1","type":"","value":"20"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nativeSrc":"2700:58:1","nodeType":"YulIdentifier","src":"2700:58:1"},"nativeSrc":"2700:67:1","nodeType":"YulFunctionCall","src":"2700:67:1"},"variableNames":[{"name":"pos","nativeSrc":"2693:3:1","nodeType":"YulIdentifier","src":"2693:3:1"}]},{"expression":{"arguments":[{"name":"pos","nativeSrc":"2865:3:1","nodeType":"YulIdentifier","src":"2865:3:1"}],"functionName":{"name":"store_literal_in_memory_8e11b6d2923bf8c6b9080d06aaf81f8e74ef4ded2c8e4af3b95302a90884a4cd","nativeSrc":"2776:88:1","nodeType":"YulIdentifier","src":"2776:88:1"},"nativeSrc":"2776:93:1","nodeType":"YulFunctionCall","src":"2776:93:1"},"nativeSrc":"2776:93:1","nodeType":"YulExpressionStatement","src":"2776:93:1"},{"nativeSrc":"2878:19:1","nodeType":"YulAssignment","src":"2878:19:1","value":{"arguments":[{"name":"pos","nativeSrc":"2889:3:1","nodeType":"YulIdentifier","src":"2889:3:1"},{"kind":"number","nativeSrc":"2894:2:1","nodeType":"YulLiteral","src":"2894:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"2885:3:1","nodeType":"YulIdentifier","src":"2885:3:1"},"nativeSrc":"2885:12:1","nodeType":"YulFunctionCall","src":"2885:12:1"},"variableNames":[{"name":"end","nativeSrc":"2878:3:1","nodeType":"YulIdentifier","src":"2878:3:1"}]}]},"name":"abi_encode_t_stringliteral_8e11b6d2923bf8c6b9080d06aaf81f8e74ef4ded2c8e4af3b95302a90884a4cd_to_t_string_memory_ptr_fromStack","nativeSrc":"2537:366:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"2671:3:1","nodeType":"YulTypedName","src":"2671:3:1","type":""}],"returnVariables":[{"name":"end","nativeSrc":"2679:3:1","nodeType":"YulTypedName","src":"2679:3:1","type":""}],"src":"2537:366:1"},{"body":{"nativeSrc":"3080:248:1","nodeType":"YulBlock","src":"3080:248:1","statements":[{"nativeSrc":"3090:26:1","nodeType":"YulAssignment","src":"3090:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"3102:9:1","nodeType":"YulIdentifier","src":"3102:9:1"},{"kind":"number","nativeSrc":"3113:2:1","nodeType":"YulLiteral","src":"3113:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"3098:3:1","nodeType":"YulIdentifier","src":"3098:3:1"},"nativeSrc":"3098:18:1","nodeType":"YulFunctionCall","src":"3098:18:1"},"variableNames":[{"name":"tail","nativeSrc":"3090:4:1","nodeType":"YulIdentifier","src":"3090:4:1"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"3137:9:1","nodeType":"YulIdentifier","src":"3137:9:1"},{"kind":"number","nativeSrc":"3148:1:1","nodeType":"YulLiteral","src":"3148:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"3133:3:1","nodeType":"YulIdentifier","src":"3133:3:1"},"nativeSrc":"3133:17:1","nodeType":"YulFunctionCall","src":"3133:17:1"},{"arguments":[{"name":"tail","nativeSrc":"3156:4:1","nodeType":"YulIdentifier","src":"3156:4:1"},{"name":"headStart","nativeSrc":"3162:9:1","nodeType":"YulIdentifier","src":"3162:9:1"}],"functionName":{"name":"sub","nativeSrc":"3152:3:1","nodeType":"YulIdentifier","src":"3152:3:1"},"nativeSrc":"3152:20:1","nodeType":"YulFunctionCall","src":"3152:20:1"}],"functionName":{"name":"mstore","nativeSrc":"3126:6:1","nodeType":"YulIdentifier","src":"3126:6:1"},"nativeSrc":"3126:47:1","nodeType":"YulFunctionCall","src":"3126:47:1"},"nativeSrc":"3126:47:1","nodeType":"YulExpressionStatement","src":"3126:47:1"},{"nativeSrc":"3182:139:1","nodeType":"YulAssignment","src":"3182:139:1","value":{"arguments":[{"name":"tail","nativeSrc":"3316:4:1","nodeType":"YulIdentifier","src":"3316:4:1"}],"functionName":{"name":"abi_encode_t_stringliteral_8e11b6d2923bf8c6b9080d06aaf81f8e74ef4ded2c8e4af3b95302a90884a4cd_to_t_string_memory_ptr_fromStack","nativeSrc":"3190:124:1","nodeType":"YulIdentifier","src":"3190:124:1"},"nativeSrc":"3190:131:1","nodeType":"YulFunctionCall","src":"3190:131:1"},"variableNames":[{"name":"tail","nativeSrc":"3182:4:1","nodeType":"YulIdentifier","src":"3182:4:1"}]}]},"name":"abi_encode_tuple_t_stringliteral_8e11b6d2923bf8c6b9080d06aaf81f8e74ef4ded2c8e4af3b95302a90884a4cd__to_t_string_memory_ptr__fromStack_reversed","nativeSrc":"2909:419:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"3060:9:1","nodeType":"YulTypedName","src":"3060:9:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"3075:4:1","nodeType":"YulTypedName","src":"3075:4:1","type":""}],"src":"2909:419:1"},{"body":{"nativeSrc":"3362:152:1","nodeType":"YulBlock","src":"3362:152:1","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"3379:1:1","nodeType":"YulLiteral","src":"3379:1:1","type":"","value":"0"},{"kind":"number","nativeSrc":"3382:77:1","nodeType":"YulLiteral","src":"3382:77:1","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nativeSrc":"3372:6:1","nodeType":"YulIdentifier","src":"3372:6:1"},"nativeSrc":"3372:88:1","nodeType":"YulFunctionCall","src":"3372:88:1"},"nativeSrc":"3372:88:1","nodeType":"YulExpressionStatement","src":"3372:88:1"},{"expression":{"arguments":[{"kind":"number","nativeSrc":"3476:1:1","nodeType":"YulLiteral","src":"3476:1:1","type":"","value":"4"},{"kind":"number","nativeSrc":"3479:4:1","nodeType":"YulLiteral","src":"3479:4:1","type":"","value":"0x11"}],"functionName":{"name":"mstore","nativeSrc":"3469:6:1","nodeType":"YulIdentifier","src":"3469:6:1"},"nativeSrc":"3469:15:1","nodeType":"YulFunctionCall","src":"3469:15:1"},"nativeSrc":"3469:15:1","nodeType":"YulExpressionStatement","src":"3469:15:1"},{"expression":{"arguments":[{"kind":"number","nativeSrc":"3500:1:1","nodeType":"YulLiteral","src":"3500:1:1","type":"","value":"0"},{"kind":"number","nativeSrc":"3503:4:1","nodeType":"YulLiteral","src":"3503:4:1","type":"","value":"0x24"}],"functionName":{"name":"revert","nativeSrc":"3493:6:1","nodeType":"YulIdentifier","src":"3493:6:1"},"nativeSrc":"3493:15:1","nodeType":"YulFunctionCall","src":"3493:15:1"},"nativeSrc":"3493:15:1","nodeType":"YulExpressionStatement","src":"3493:15:1"}]},"name":"panic_error_0x11","nativeSrc":"3334:180:1","nodeType":"YulFunctionDefinition","src":"3334:180:1"},{"body":{"nativeSrc":"3564:147:1","nodeType":"YulBlock","src":"3564:147:1","statements":[{"nativeSrc":"3574:25:1","nodeType":"YulAssignment","src":"3574:25:1","value":{"arguments":[{"name":"x","nativeSrc":"3597:1:1","nodeType":"YulIdentifier","src":"3597:1:1"}],"functionName":{"name":"cleanup_t_uint256","nativeSrc":"3579:17:1","nodeType":"YulIdentifier","src":"3579:17:1"},"nativeSrc":"3579:20:1","nodeType":"YulFunctionCall","src":"3579:20:1"},"variableNames":[{"name":"x","nativeSrc":"3574:1:1","nodeType":"YulIdentifier","src":"3574:1:1"}]},{"nativeSrc":"3608:25:1","nodeType":"YulAssignment","src":"3608:25:1","value":{"arguments":[{"name":"y","nativeSrc":"3631:1:1","nodeType":"YulIdentifier","src":"3631:1:1"}],"functionName":{"name":"cleanup_t_uint256","nativeSrc":"3613:17:1","nodeType":"YulIdentifier","src":"3613:17:1"},"nativeSrc":"3613:20:1","nodeType":"YulFunctionCall","src":"3613:20:1"},"variableNames":[{"name":"y","nativeSrc":"3608:1:1","nodeType":"YulIdentifier","src":"3608:1:1"}]},{"nativeSrc":"3642:16:1","nodeType":"YulAssignment","src":"3642:16:1","value":{"arguments":[{"name":"x","nativeSrc":"3653:1:1","nodeType":"YulIdentifier","src":"3653:1:1"},{"name":"y","nativeSrc":"3656:1:1","nodeType":"YulIdentifier","src":"3656:1:1"}],"functionName":{"name":"add","nativeSrc":"3649:3:1","nodeType":"YulIdentifier","src":"3649:3:1"},"nativeSrc":"3649:9:1","nodeType":"YulFunctionCall","src":"3649:9:1"},"variableNames":[{"name":"sum","nativeSrc":"3642:3:1","nodeType":"YulIdentifier","src":"3642:3:1"}]},{"body":{"nativeSrc":"3682:22:1","nodeType":"YulBlock","src":"3682:22:1","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nativeSrc":"3684:16:1","nodeType":"YulIdentifier","src":"3684:16:1"},"nativeSrc":"3684:18:1","nodeType":"YulFunctionCall","src":"3684:18:1"},"nativeSrc":"3684:18:1","nodeType":"YulExpressionStatement","src":"3684:18:1"}]},"condition":{"arguments":[{"name":"x","nativeSrc":"3674:1:1","nodeType":"YulIdentifier","src":"3674:1:1"},{"name":"sum","nativeSrc":"3677:3:1","nodeType":"YulIdentifier","src":"3677:3:1"}],"functionName":{"name":"gt","nativeSrc":"3671:2:1","nodeType":"YulIdentifier","src":"3671:2:1"},"nativeSrc":"3671:10:1","nodeType":"YulFunctionCall","src":"3671:10:1"},"nativeSrc":"3668:36:1","nodeType":"YulIf","src":"3668:36:1"}]},"name":"checked_add_t_uint256","nativeSrc":"3520:191:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nativeSrc":"3551:1:1","nodeType":"YulTypedName","src":"3551:1:1","type":""},{"name":"y","nativeSrc":"3554:1:1","nodeType":"YulTypedName","src":"3554:1:1","type":""}],"returnVariables":[{"name":"sum","nativeSrc":"3560:3:1","nodeType":"YulTypedName","src":"3560:3:1","type":""}],"src":"3520:191:1"}]},"contents":"{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_uint256t_uint256_fromMemory(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_3d62e4e23f203bdeaa2b3326c3134bd4ba42ec2c22fb012c25ad94d36532cb4f(memPtr) {\n\n mstore(add(memPtr, 0), \"Starting price must be > 0\")\n\n }\n\n function abi_encode_t_stringliteral_3d62e4e23f203bdeaa2b3326c3134bd4ba42ec2c22fb012c25ad94d36532cb4f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 26)\n store_literal_in_memory_3d62e4e23f203bdeaa2b3326c3134bd4ba42ec2c22fb012c25ad94d36532cb4f(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_3d62e4e23f203bdeaa2b3326c3134bd4ba42ec2c22fb012c25ad94d36532cb4f__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_3d62e4e23f203bdeaa2b3326c3134bd4ba42ec2c22fb012c25ad94d36532cb4f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_8e11b6d2923bf8c6b9080d06aaf81f8e74ef4ded2c8e4af3b95302a90884a4cd(memPtr) {\n\n mstore(add(memPtr, 0), \"Duration must be > 0\")\n\n }\n\n function abi_encode_t_stringliteral_8e11b6d2923bf8c6b9080d06aaf81f8e74ef4ded2c8e4af3b95302a90884a4cd_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 20)\n store_literal_in_memory_8e11b6d2923bf8c6b9080d06aaf81f8e74ef4ded2c8e4af3b95302a90884a4cd(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_8e11b6d2923bf8c6b9080d06aaf81f8e74ef4ded2c8e4af3b95302a90884a4cd__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_8e11b6d2923bf8c6b9080d06aaf81f8e74ef4ded2c8e4af3b95302a90884a4cd_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n sum := add(x, y)\n\n if gt(x, sum) { panic_error_0x11() }\n\n }\n\n}\n","id":1,"language":"Yul","name":"#utility.yul"}],"linkReferences":{},"object":"608060405234801561000f575f5ffd5b506040516114b43803806114b483398181016040528101906100319190610153565b5f8211610073576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161006a906101eb565b60405180910390fd5b5f81116100b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100ac90610253565b60405180910390fd5b335f60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816001819055508042610108919061029e565b6002819055508160048190555050506102d1565b5f5ffd5b5f819050919050565b61013281610120565b811461013c575f5ffd5b50565b5f8151905061014d81610129565b92915050565b5f5f604083850312156101695761016861011c565b5b5f6101768582860161013f565b92505060206101878582860161013f565b9150509250929050565b5f82825260208201905092915050565b7f5374617274696e67207072696365206d757374206265203e20300000000000005f82015250565b5f6101d5601a83610191565b91506101e0826101a1565b602082019050919050565b5f6020820190508181035f830152610202816101c9565b9050919050565b7f4475726174696f6e206d757374206265203e20300000000000000000000000005f82015250565b5f61023d601483610191565b915061024882610209565b602082019050919050565b5f6020820190508181035f83015261026a81610231565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6102a882610120565b91506102b383610120565b92508282019050808211156102cb576102ca610271565b5b92915050565b6111d6806102de5f395ff3fe608060405260043610610094575f3560e01c80638da5cb5b116100585780638da5cb5b1461015757806391f9015714610181578063d57bde79146101ab578063d6fbf202146101d5578063fe67a54b146101ff576100a3565b8063110f8874146100a757806312fa6feb146100bd5780631998aeef146100e757806326b387bb146100f15780633197cbb61461012d576100a3565b366100a3576100a1610215565b005b5f5ffd5b3480156100b2575f5ffd5b506100bb6104e0565b005b3480156100c8575f5ffd5b506100d161071e565b6040516100de9190610b55565b60405180910390f35b6100ef610215565b005b3480156100fc575f5ffd5b5061011760048036038101906101129190610bcc565b610730565b6040516101249190610c0f565b60405180910390f35b348015610138575f5ffd5b50610141610745565b60405161014e9190610c0f565b60405180910390f35b348015610162575f5ffd5b5061016b61074b565b6040516101789190610c37565b60405180910390f35b34801561018c575f5ffd5b50610195610770565b6040516101a29190610c37565b60405180910390f35b3480156101b6575f5ffd5b506101bf610796565b6040516101cc9190610c0f565b60405180910390f35b3480156101e0575f5ffd5b506101e961079c565b6040516101f69190610c0f565b60405180910390f35b34801561020a575f5ffd5b506102136107a2565b005b6002544210610259576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161025090610caa565b60405180910390fd5b60035f9054906101000a900460ff16156102a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161029f90610d12565b60405180910390fd5b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603610337576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032e90610d7a565b60405180910390fd5b600454341161037b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161037290610de2565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104485760045460055f600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546104409190610e2d565b925050819055505b33600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550346004819055503373ffffffffffffffffffffffffffffffffffffffff167f3fabff0a9c3ecd6814702e247fa9733e5d0aa69e3a38590f92cb18f623a2254d346040516104d69190610c0f565b60405180910390a2565b5f5f9054906101000a900460ff161561052e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052590610eaa565b60405180910390fd5b60015f5f6101000a81548160ff0219169083151502179055505f60055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f81116105ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c190610f12565b60405180910390fd5b5f60055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f3373ffffffffffffffffffffffffffffffffffffffff168260405161063190610f5d565b5f6040518083038185875af1925050503d805f811461066b576040519150601f19603f3d011682016040523d82523d5f602084013e610670565b606091505b50509050806106b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ab90610fbb565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff167f3d97f39b86d061200a7834082f5926e58ec10fd85a9d6930f497729d5e6cc35c836040516106fa9190610c0f565b60405180910390a250505f5f5f6101000a81548160ff021916908315150217905550565b60035f9054906101000a900460ff1681565b6005602052805f5260405f205f915090505481565b60025481565b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b60015481565b5f5f9054906101000a900460ff16156107f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e790610eaa565b60405180910390fd5b60015f5f6101000a81548160ff0219169083151502179055505f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610898576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088f90611023565b60405180910390fd5b6002544210156108dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d49061108b565b60405180910390fd5b60035f9054906101000a900460ff161561092c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610923906110f3565b60405180910390fd5b600160035f6101000a81548160ff0219169083151502179055505f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a68575f5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166004546040516109e390610f5d565b5f6040518083038185875af1925050503d805f8114610a1d576040519150601f19603f3d011682016040523d82523d5f602084013e610a22565b606091505b5050905080610a66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5d9061115b565b60405180910390fd5b505b7fdaec4582d5d9595688c8c98545fdd1c696d41c6aeaeb636737e84ed2f5c00eda600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b0957600454610b0b565b5f5b604051610b19929190611179565b60405180910390a15f5f5f6101000a81548160ff021916908315150217905550565b5f8115159050919050565b610b4f81610b3b565b82525050565b5f602082019050610b685f830184610b46565b92915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610b9b82610b72565b9050919050565b610bab81610b91565b8114610bb5575f5ffd5b50565b5f81359050610bc681610ba2565b92915050565b5f60208284031215610be157610be0610b6e565b5b5f610bee84828501610bb8565b91505092915050565b5f819050919050565b610c0981610bf7565b82525050565b5f602082019050610c225f830184610c00565b92915050565b610c3181610b91565b82525050565b5f602082019050610c4a5f830184610c28565b92915050565b5f82825260208201905092915050565b7f41756374696f6e20656e646564000000000000000000000000000000000000005f82015250565b5f610c94600d83610c50565b9150610c9f82610c60565b602082019050919050565b5f6020820190508181035f830152610cc181610c88565b9050919050565b7f41756374696f6e20616c726561647920656e64656400000000000000000000005f82015250565b5f610cfc601583610c50565b9150610d0782610cc8565b602082019050919050565b5f6020820190508181035f830152610d2981610cf0565b9050919050565b7f4f776e65722063616e6e6f7420626964000000000000000000000000000000005f82015250565b5f610d64601083610c50565b9150610d6f82610d30565b602082019050919050565b5f6020820190508181035f830152610d9181610d58565b9050919050565b7f42696420746f6f206c6f770000000000000000000000000000000000000000005f82015250565b5f610dcc600b83610c50565b9150610dd782610d98565b602082019050919050565b5f6020820190508181035f830152610df981610dc0565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610e3782610bf7565b9150610e4283610bf7565b9250828201905080821115610e5a57610e59610e00565b5b92915050565b7f5265656e7472616e6379000000000000000000000000000000000000000000005f82015250565b5f610e94600a83610c50565b9150610e9f82610e60565b602082019050919050565b5f6020820190508181035f830152610ec181610e88565b9050919050565b7f4e6f20726566756e6400000000000000000000000000000000000000000000005f82015250565b5f610efc600983610c50565b9150610f0782610ec8565b602082019050919050565b5f6020820190508181035f830152610f2981610ef0565b9050919050565b5f81905092915050565b50565b5f610f485f83610f30565b9150610f5382610f3a565b5f82019050919050565b5f610f6782610f3d565b9150819050919050565b7f526566756e64206661696c6564000000000000000000000000000000000000005f82015250565b5f610fa5600d83610c50565b9150610fb082610f71565b602082019050919050565b5f6020820190508181035f830152610fd281610f99565b9050919050565b7f4f6e6c79206f776e6572000000000000000000000000000000000000000000005f82015250565b5f61100d600a83610c50565b915061101882610fd9565b602082019050919050565b5f6020820190508181035f83015261103a81611001565b9050919050565b7f41756374696f6e206e6f7420656e6465640000000000000000000000000000005f82015250565b5f611075601183610c50565b915061108082611041565b602082019050919050565b5f6020820190508181035f8301526110a281611069565b9050919050565b7f416c726561647920656e646564000000000000000000000000000000000000005f82015250565b5f6110dd600d83610c50565b91506110e8826110a9565b602082019050919050565b5f6020820190508181035f83015261110a816110d1565b9050919050565b7f5061796f7574206661696c6564000000000000000000000000000000000000005f82015250565b5f611145600d83610c50565b915061115082611111565b602082019050919050565b5f6020820190508181035f83015261117281611139565b9050919050565b5f60408201905061118c5f830185610c28565b6111996020830184610c00565b939250505056fea2646970667358221220b4cab015f24706cbee44fc3831dbe04cb5b66c2516259d109be60d76a5668b6564736f6c634300081c0033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0xF JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x14B4 CODESIZE SUB DUP1 PUSH2 0x14B4 DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH2 0x31 SWAP2 SWAP1 PUSH2 0x153 JUMP JUMPDEST PUSH0 DUP3 GT PUSH2 0x73 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6A SWAP1 PUSH2 0x1EB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH0 DUP2 GT PUSH2 0xB5 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xAC SWAP1 PUSH2 0x253 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLER PUSH0 PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH1 0x1 DUP2 SWAP1 SSTORE POP DUP1 TIMESTAMP PUSH2 0x108 SWAP2 SWAP1 PUSH2 0x29E JUMP JUMPDEST PUSH1 0x2 DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x4 DUP2 SWAP1 SSTORE POP POP POP PUSH2 0x2D1 JUMP JUMPDEST PUSH0 PUSH0 REVERT JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x132 DUP2 PUSH2 0x120 JUMP JUMPDEST DUP2 EQ PUSH2 0x13C JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x14D DUP2 PUSH2 0x129 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH0 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x169 JUMPI PUSH2 0x168 PUSH2 0x11C JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x176 DUP6 DUP3 DUP7 ADD PUSH2 0x13F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x187 DUP6 DUP3 DUP7 ADD PUSH2 0x13F JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x5374617274696E67207072696365206D757374206265203E2030000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x1D5 PUSH1 0x1A DUP4 PUSH2 0x191 JUMP JUMPDEST SWAP2 POP PUSH2 0x1E0 DUP3 PUSH2 0x1A1 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x202 DUP2 PUSH2 0x1C9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4475726174696F6E206D757374206265203E2030000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x23D PUSH1 0x14 DUP4 PUSH2 0x191 JUMP JUMPDEST SWAP2 POP PUSH2 0x248 DUP3 PUSH2 0x209 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x26A DUP2 PUSH2 0x231 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 PUSH2 0x2A8 DUP3 PUSH2 0x120 JUMP JUMPDEST SWAP2 POP PUSH2 0x2B3 DUP4 PUSH2 0x120 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x2CB JUMPI PUSH2 0x2CA PUSH2 0x271 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x11D6 DUP1 PUSH2 0x2DE PUSH0 CODECOPY PUSH0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x94 JUMPI PUSH0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8DA5CB5B GT PUSH2 0x58 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x157 JUMPI DUP1 PUSH4 0x91F90157 EQ PUSH2 0x181 JUMPI DUP1 PUSH4 0xD57BDE79 EQ PUSH2 0x1AB JUMPI DUP1 PUSH4 0xD6FBF202 EQ PUSH2 0x1D5 JUMPI DUP1 PUSH4 0xFE67A54B EQ PUSH2 0x1FF JUMPI PUSH2 0xA3 JUMP JUMPDEST DUP1 PUSH4 0x110F8874 EQ PUSH2 0xA7 JUMPI DUP1 PUSH4 0x12FA6FEB EQ PUSH2 0xBD JUMPI DUP1 PUSH4 0x1998AEEF EQ PUSH2 0xE7 JUMPI DUP1 PUSH4 0x26B387BB EQ PUSH2 0xF1 JUMPI DUP1 PUSH4 0x3197CBB6 EQ PUSH2 0x12D JUMPI PUSH2 0xA3 JUMP JUMPDEST CALLDATASIZE PUSH2 0xA3 JUMPI PUSH2 0xA1 PUSH2 0x215 JUMP JUMPDEST STOP JUMPDEST PUSH0 PUSH0 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xB2 JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0xBB PUSH2 0x4E0 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xC8 JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0xD1 PUSH2 0x71E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xDE SWAP2 SWAP1 PUSH2 0xB55 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xEF PUSH2 0x215 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xFC JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0x117 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x112 SWAP2 SWAP1 PUSH2 0xBCC JUMP JUMPDEST PUSH2 0x730 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x124 SWAP2 SWAP1 PUSH2 0xC0F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x138 JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0x141 PUSH2 0x745 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x14E SWAP2 SWAP1 PUSH2 0xC0F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x162 JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0x16B PUSH2 0x74B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x178 SWAP2 SWAP1 PUSH2 0xC37 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x18C JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0x195 PUSH2 0x770 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1A2 SWAP2 SWAP1 PUSH2 0xC37 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1B6 JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0x1BF PUSH2 0x796 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1CC SWAP2 SWAP1 PUSH2 0xC0F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1E0 JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0x1E9 PUSH2 0x79C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1F6 SWAP2 SWAP1 PUSH2 0xC0F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x20A JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0x213 PUSH2 0x7A2 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x2 SLOAD TIMESTAMP LT PUSH2 0x259 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x250 SWAP1 PUSH2 0xCAA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x3 PUSH0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x2A8 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x29F SWAP1 PUSH2 0xD12 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH0 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x337 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x32E SWAP1 PUSH2 0xD7A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x4 SLOAD CALLVALUE GT PUSH2 0x37B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x372 SWAP1 PUSH2 0xDE2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x3 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x448 JUMPI PUSH1 0x4 SLOAD PUSH1 0x5 PUSH0 PUSH1 0x3 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 PUSH0 DUP3 DUP3 SLOAD PUSH2 0x440 SWAP2 SWAP1 PUSH2 0xE2D JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP JUMPDEST CALLER PUSH1 0x3 PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP CALLVALUE PUSH1 0x4 DUP2 SWAP1 SSTORE POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x3FABFF0A9C3ECD6814702E247FA9733E5D0AA69E3A38590F92CB18F623A2254D CALLVALUE PUSH1 0x40 MLOAD PUSH2 0x4D6 SWAP2 SWAP1 PUSH2 0xC0F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 JUMP JUMPDEST PUSH0 PUSH0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x52E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x525 SWAP1 PUSH2 0xEAA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH0 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH0 PUSH1 0x5 PUSH0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 SLOAD SWAP1 POP PUSH0 DUP2 GT PUSH2 0x5CA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5C1 SWAP1 PUSH2 0xF12 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH0 PUSH1 0x5 PUSH0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 DUP2 SWAP1 SSTORE POP PUSH0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH1 0x40 MLOAD PUSH2 0x631 SWAP1 PUSH2 0xF5D JUMP JUMPDEST PUSH0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP8 GAS CALL SWAP3 POP POP POP RETURNDATASIZE DUP1 PUSH0 DUP2 EQ PUSH2 0x66B JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x670 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP POP SWAP1 POP DUP1 PUSH2 0x6B4 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6AB SWAP1 PUSH2 0xFBB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x3D97F39B86D061200A7834082F5926E58EC10FD85A9D6930F497729D5E6CC35C DUP4 PUSH1 0x40 MLOAD PUSH2 0x6FA SWAP2 SWAP1 PUSH2 0xC0F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP PUSH0 PUSH0 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x3 PUSH0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x5 PUSH1 0x20 MSTORE DUP1 PUSH0 MSTORE PUSH1 0x40 PUSH0 KECCAK256 PUSH0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x2 SLOAD DUP2 JUMP JUMPDEST PUSH0 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x3 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x4 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH0 PUSH0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x7F0 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7E7 SWAP1 PUSH2 0xEAA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH0 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH0 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x898 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x88F SWAP1 PUSH2 0x1023 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x2 SLOAD TIMESTAMP LT ISZERO PUSH2 0x8DD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x8D4 SWAP1 PUSH2 0x108B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x3 PUSH0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x92C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x923 SWAP1 PUSH2 0x10F3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x3 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x3 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xA68 JUMPI PUSH0 PUSH0 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x4 SLOAD PUSH1 0x40 MLOAD PUSH2 0x9E3 SWAP1 PUSH2 0xF5D JUMP JUMPDEST PUSH0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP8 GAS CALL SWAP3 POP POP POP RETURNDATASIZE DUP1 PUSH0 DUP2 EQ PUSH2 0xA1D JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0xA22 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP POP SWAP1 POP DUP1 PUSH2 0xA66 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA5D SWAP1 PUSH2 0x115B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMPDEST PUSH32 0xDAEC4582D5D9595688C8C98545FDD1C696D41C6AEAEB636737E84ED2F5C00EDA PUSH1 0x3 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x3 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xB09 JUMPI PUSH1 0x4 SLOAD PUSH2 0xB0B JUMP JUMPDEST PUSH0 JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB19 SWAP3 SWAP2 SWAP1 PUSH2 0x1179 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 PUSH0 PUSH0 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP JUMP JUMPDEST PUSH0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xB4F DUP2 PUSH2 0xB3B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xB68 PUSH0 DUP4 ADD DUP5 PUSH2 0xB46 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH0 REVERT JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0xB9B DUP3 PUSH2 0xB72 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xBAB DUP2 PUSH2 0xB91 JUMP JUMPDEST DUP2 EQ PUSH2 0xBB5 JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xBC6 DUP2 PUSH2 0xBA2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xBE1 JUMPI PUSH2 0xBE0 PUSH2 0xB6E JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0xBEE DUP5 DUP3 DUP6 ADD PUSH2 0xBB8 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xC09 DUP2 PUSH2 0xBF7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xC22 PUSH0 DUP4 ADD DUP5 PUSH2 0xC00 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0xC31 DUP2 PUSH2 0xB91 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xC4A PUSH0 DUP4 ADD DUP5 PUSH2 0xC28 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x41756374696F6E20656E64656400000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0xC94 PUSH1 0xD DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0xC9F DUP3 PUSH2 0xC60 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0xCC1 DUP2 PUSH2 0xC88 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x41756374696F6E20616C726561647920656E6465640000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0xCFC PUSH1 0x15 DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0xD07 DUP3 PUSH2 0xCC8 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0xD29 DUP2 PUSH2 0xCF0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E65722063616E6E6F742062696400000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0xD64 PUSH1 0x10 DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0xD6F DUP3 PUSH2 0xD30 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0xD91 DUP2 PUSH2 0xD58 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x42696420746F6F206C6F77000000000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0xDCC PUSH1 0xB DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0xDD7 DUP3 PUSH2 0xD98 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0xDF9 DUP2 PUSH2 0xDC0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 PUSH2 0xE37 DUP3 PUSH2 0xBF7 JUMP JUMPDEST SWAP2 POP PUSH2 0xE42 DUP4 PUSH2 0xBF7 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0xE5A JUMPI PUSH2 0xE59 PUSH2 0xE00 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x5265656E7472616E637900000000000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0xE94 PUSH1 0xA DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0xE9F DUP3 PUSH2 0xE60 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0xEC1 DUP2 PUSH2 0xE88 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E6F20726566756E640000000000000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0xEFC PUSH1 0x9 DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0xF07 DUP3 PUSH2 0xEC8 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0xF29 DUP2 PUSH2 0xEF0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST POP JUMP JUMPDEST PUSH0 PUSH2 0xF48 PUSH0 DUP4 PUSH2 0xF30 JUMP JUMPDEST SWAP2 POP PUSH2 0xF53 DUP3 PUSH2 0xF3A JUMP JUMPDEST PUSH0 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0xF67 DUP3 PUSH2 0xF3D JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x526566756E64206661696C656400000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0xFA5 PUSH1 0xD DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0xFB0 DUP3 PUSH2 0xF71 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0xFD2 DUP2 PUSH2 0xF99 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F6E6C79206F776E657200000000000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x100D PUSH1 0xA DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0x1018 DUP3 PUSH2 0xFD9 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x103A DUP2 PUSH2 0x1001 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x41756374696F6E206E6F7420656E646564000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x1075 PUSH1 0x11 DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0x1080 DUP3 PUSH2 0x1041 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x10A2 DUP2 PUSH2 0x1069 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x416C726561647920656E64656400000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x10DD PUSH1 0xD DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0x10E8 DUP3 PUSH2 0x10A9 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x110A DUP2 PUSH2 0x10D1 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5061796F7574206661696C656400000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x1145 PUSH1 0xD DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0x1150 DUP3 PUSH2 0x1111 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x1172 DUP2 PUSH2 0x1139 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x118C PUSH0 DUP4 ADD DUP6 PUSH2 0xC28 JUMP JUMPDEST PUSH2 0x1199 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0xC00 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB4 0xCA 0xB0 ISZERO CALLCODE SELFBALANCE MOD 0xCB 0xEE PREVRANDAO 0xFC CODESIZE BALANCE 0xDB 0xE0 0x4C 0xB5 0xB6 PUSH13 0x2516259D109BE60D76A5668B65 PUSH5 0x736F6C6343 STOP ADDMOD SHR STOP CALLER ","sourceMap":"57:2165:0:-:0;;;621:332;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;714:1;697:14;:18;689:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;779:1;760:16;:20;752:53;;;;;;;;;;;;:::i;:::-;;;;;;;;;819:10;811:5;;:18;;;;;;;;;;;;;;;;;;851:14;835:13;:30;;;;899:16;881:15;:34;;;;:::i;:::-;871:7;:44;;;;934:14;921:10;:27;;;;621:332;;57:2165;;88:117:1;197:1;194;187:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:143::-;602:5;633:6;627:13;618:22;;649:33;676:5;649:33;:::i;:::-;545:143;;;;:::o;694:507::-;773:6;781;830:2;818:9;809:7;805:23;801:32;798:119;;;836:79;;:::i;:::-;798:119;956:1;981:64;1037:7;1028:6;1017:9;1013:22;981:64;:::i;:::-;971:74;;927:128;1094:2;1120:64;1176:7;1167:6;1156:9;1152:22;1120:64;:::i;:::-;1110:74;;1065:129;694:507;;;;;:::o;1207:169::-;1291:11;1325:6;1320:3;1313:19;1365:4;1360:3;1356:14;1341:29;;1207:169;;;;:::o;1382:176::-;1522:28;1518:1;1510:6;1506:14;1499:52;1382:176;:::o;1564:366::-;1706:3;1727:67;1791:2;1786:3;1727:67;:::i;:::-;1720:74;;1803:93;1892:3;1803:93;:::i;:::-;1921:2;1916:3;1912:12;1905:19;;1564:366;;;:::o;1936:419::-;2102:4;2140:2;2129:9;2125:18;2117:26;;2189:9;2183:4;2179:20;2175:1;2164:9;2160:17;2153:47;2217:131;2343:4;2217:131;:::i;:::-;2209:139;;1936:419;;;:::o;2361:170::-;2501:22;2497:1;2489:6;2485:14;2478:46;2361:170;:::o;2537:366::-;2679:3;2700:67;2764:2;2759:3;2700:67;:::i;:::-;2693:74;;2776:93;2865:3;2776:93;:::i;:::-;2894:2;2889:3;2885:12;2878:19;;2537:366;;;:::o;2909:419::-;3075:4;3113:2;3102:9;3098:18;3090:26;;3162:9;3156:4;3152:20;3148:1;3137:9;3133:17;3126:47;3190:131;3316:4;3190:131;:::i;:::-;3182:139;;2909:419;;;:::o;3334:180::-;3382:77;3379:1;3372:88;3479:4;3476:1;3469:15;3503:4;3500:1;3493:15;3520:191;3560:3;3579:20;3597:1;3579:20;:::i;:::-;3574:25;;3613:20;3631:1;3613:20;:::i;:::-;3608:25;;3656:1;3653;3649:9;3642:16;;3677:3;3674:1;3671:10;3668:36;;;3684:18;;:::i;:::-;3668:36;3520:191;;;;:::o;57:2165:0:-;;;;;;;"},"deployedBytecode":{"functionDebugData":{"@_290":{"entryPoint":null,"id":290,"parameterSlots":0,"returnSlots":0},"@bid_162":{"entryPoint":533,"id":162,"parameterSlots":0,"returnSlots":0},"@endAuction_283":{"entryPoint":1954,"id":283,"parameterSlots":0,"returnSlots":0},"@endTime_27":{"entryPoint":1861,"id":27,"parameterSlots":0,"returnSlots":0},"@ended_29":{"entryPoint":1822,"id":29,"parameterSlots":0,"returnSlots":0},"@highestBid_33":{"entryPoint":1942,"id":33,"parameterSlots":0,"returnSlots":0},"@highestBidder_31":{"entryPoint":1904,"id":31,"parameterSlots":0,"returnSlots":0},"@owner_23":{"entryPoint":1867,"id":23,"parameterSlots":0,"returnSlots":0},"@pendingReturns_37":{"entryPoint":1840,"id":37,"parameterSlots":0,"returnSlots":0},"@startingPrice_25":{"entryPoint":1948,"id":25,"parameterSlots":0,"returnSlots":0},"@withdrawRefund_213":{"entryPoint":1248,"id":213,"parameterSlots":0,"returnSlots":0},"abi_decode_t_address":{"entryPoint":3000,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_address":{"entryPoint":3020,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_address_to_t_address_fromStack":{"entryPoint":3112,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bool_to_t_bool_fromStack":{"entryPoint":2886,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_stringliteral_03a0ef2274e5fa9c92bd6c8904f1025dd04b34d1da74eba1106c91ebdbd13a59_to_t_string_memory_ptr_fromStack":{"entryPoint":4305,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_13e75ff1b0a6ca9bca87c24c1936118dd10a3ec174f359ad2a8c3d901173470e_to_t_string_memory_ptr_fromStack":{"entryPoint":3520,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_17d9f114efaa93d67eedad749dd7fd16a6895ff93e28b7a30c667a069f2ed42d_to_t_string_memory_ptr_fromStack":{"entryPoint":4097,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_36020d7b7b79be3186d0224484952c41e479aaf134eacdd764b3d17624762006_to_t_string_memory_ptr_fromStack":{"entryPoint":3312,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_42d486eee70463b52369225e27fce2709665a17be45e65becee48f6af14cf90b_to_t_string_memory_ptr_fromStack":{"entryPoint":4409,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_467b8b8587ba88511be913c7407f7cca76ad98c06a2fa45de2edfa50da724f97_to_t_string_memory_ptr_fromStack":{"entryPoint":3720,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_567737202f93ce47caa4eb871cc7b9aa316148459129941c928400c1649aa5d4_to_t_string_memory_ptr_fromStack":{"entryPoint":4201,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_6550a6289f93e91f607ed5f062d48d2a2f49dff99feaaa73478c8f1be16aa901_to_t_string_memory_ptr_fromStack":{"entryPoint":3824,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_940ea0545bf4a4779ef86217d18a28c86bb09c07d43dd7635f3da6878953d25e_to_t_string_memory_ptr_fromStack":{"entryPoint":3993,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_b069a3605a760977e488740e57d20a45915ea0c3b96c47ae687173d31aadf0b7_to_t_string_memory_ptr_fromStack":{"entryPoint":3416,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":3901,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_d8e1c4c687c6e649f550c1facb02105a23d7eff39fa63adff9d993b8e468c13b_to_t_string_memory_ptr_fromStack":{"entryPoint":3208,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_uint256_to_t_uint256_fromStack":{"entryPoint":3072,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_tuple_packed_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":3933,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_address__to_t_address__fromStack_reversed":{"entryPoint":3127,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed":{"entryPoint":4473,"id":null,"parameterSlots":3,"returnSlots":1},"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed":{"entryPoint":2901,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_stringliteral_03a0ef2274e5fa9c92bd6c8904f1025dd04b34d1da74eba1106c91ebdbd13a59__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":4339,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_13e75ff1b0a6ca9bca87c24c1936118dd10a3ec174f359ad2a8c3d901173470e__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3554,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_17d9f114efaa93d67eedad749dd7fd16a6895ff93e28b7a30c667a069f2ed42d__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":4131,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_36020d7b7b79be3186d0224484952c41e479aaf134eacdd764b3d17624762006__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3346,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_42d486eee70463b52369225e27fce2709665a17be45e65becee48f6af14cf90b__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":4443,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_467b8b8587ba88511be913c7407f7cca76ad98c06a2fa45de2edfa50da724f97__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3754,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_567737202f93ce47caa4eb871cc7b9aa316148459129941c928400c1649aa5d4__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":4235,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_6550a6289f93e91f607ed5f062d48d2a2f49dff99feaaa73478c8f1be16aa901__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3858,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_940ea0545bf4a4779ef86217d18a28c86bb09c07d43dd7635f3da6878953d25e__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":4027,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_b069a3605a760977e488740e57d20a45915ea0c3b96c47ae687173d31aadf0b7__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3450,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_d8e1c4c687c6e649f550c1facb02105a23d7eff39fa63adff9d993b8e468c13b__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3242,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed":{"entryPoint":3087,"id":null,"parameterSlots":2,"returnSlots":1},"allocate_unbounded":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":3888,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack":{"entryPoint":3152,"id":null,"parameterSlots":2,"returnSlots":1},"checked_add_t_uint256":{"entryPoint":3629,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_address":{"entryPoint":2961,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_bool":{"entryPoint":2875,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint160":{"entryPoint":2930,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint256":{"entryPoint":3063,"id":null,"parameterSlots":1,"returnSlots":1},"panic_error_0x11":{"entryPoint":3584,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":2926,"id":null,"parameterSlots":0,"returnSlots":0},"store_literal_in_memory_03a0ef2274e5fa9c92bd6c8904f1025dd04b34d1da74eba1106c91ebdbd13a59":{"entryPoint":4265,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_13e75ff1b0a6ca9bca87c24c1936118dd10a3ec174f359ad2a8c3d901173470e":{"entryPoint":3480,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_17d9f114efaa93d67eedad749dd7fd16a6895ff93e28b7a30c667a069f2ed42d":{"entryPoint":4057,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_36020d7b7b79be3186d0224484952c41e479aaf134eacdd764b3d17624762006":{"entryPoint":3272,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_42d486eee70463b52369225e27fce2709665a17be45e65becee48f6af14cf90b":{"entryPoint":4369,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_467b8b8587ba88511be913c7407f7cca76ad98c06a2fa45de2edfa50da724f97":{"entryPoint":3680,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_567737202f93ce47caa4eb871cc7b9aa316148459129941c928400c1649aa5d4":{"entryPoint":4161,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_6550a6289f93e91f607ed5f062d48d2a2f49dff99feaaa73478c8f1be16aa901":{"entryPoint":3784,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_940ea0545bf4a4779ef86217d18a28c86bb09c07d43dd7635f3da6878953d25e":{"entryPoint":3953,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_b069a3605a760977e488740e57d20a45915ea0c3b96c47ae687173d31aadf0b7":{"entryPoint":3376,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470":{"entryPoint":3898,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_d8e1c4c687c6e649f550c1facb02105a23d7eff39fa63adff9d993b8e468c13b":{"entryPoint":3168,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_address":{"entryPoint":2978,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nativeSrc":"0:14973:1","nodeType":"YulBlock","src":"0:14973:1","statements":[{"body":{"nativeSrc":"49:48:1","nodeType":"YulBlock","src":"49:48:1","statements":[{"nativeSrc":"59:32:1","nodeType":"YulAssignment","src":"59:32:1","value":{"arguments":[{"arguments":[{"name":"value","nativeSrc":"84:5:1","nodeType":"YulIdentifier","src":"84:5:1"}],"functionName":{"name":"iszero","nativeSrc":"77:6:1","nodeType":"YulIdentifier","src":"77:6:1"},"nativeSrc":"77:13:1","nodeType":"YulFunctionCall","src":"77:13:1"}],"functionName":{"name":"iszero","nativeSrc":"70:6:1","nodeType":"YulIdentifier","src":"70:6:1"},"nativeSrc":"70:21:1","nodeType":"YulFunctionCall","src":"70:21:1"},"variableNames":[{"name":"cleaned","nativeSrc":"59:7:1","nodeType":"YulIdentifier","src":"59:7:1"}]}]},"name":"cleanup_t_bool","nativeSrc":"7:90:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nativeSrc":"31:5:1","nodeType":"YulTypedName","src":"31:5:1","type":""}],"returnVariables":[{"name":"cleaned","nativeSrc":"41:7:1","nodeType":"YulTypedName","src":"41:7:1","type":""}],"src":"7:90:1"},{"body":{"nativeSrc":"162:50:1","nodeType":"YulBlock","src":"162:50:1","statements":[{"expression":{"arguments":[{"name":"pos","nativeSrc":"179:3:1","nodeType":"YulIdentifier","src":"179:3:1"},{"arguments":[{"name":"value","nativeSrc":"199:5:1","nodeType":"YulIdentifier","src":"199:5:1"}],"functionName":{"name":"cleanup_t_bool","nativeSrc":"184:14:1","nodeType":"YulIdentifier","src":"184:14:1"},"nativeSrc":"184:21:1","nodeType":"YulFunctionCall","src":"184:21:1"}],"functionName":{"name":"mstore","nativeSrc":"172:6:1","nodeType":"YulIdentifier","src":"172:6:1"},"nativeSrc":"172:34:1","nodeType":"YulFunctionCall","src":"172:34:1"},"nativeSrc":"172:34:1","nodeType":"YulExpressionStatement","src":"172:34:1"}]},"name":"abi_encode_t_bool_to_t_bool_fromStack","nativeSrc":"103:109:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nativeSrc":"150:5:1","nodeType":"YulTypedName","src":"150:5:1","type":""},{"name":"pos","nativeSrc":"157:3:1","nodeType":"YulTypedName","src":"157:3:1","type":""}],"src":"103:109:1"},{"body":{"nativeSrc":"310:118:1","nodeType":"YulBlock","src":"310:118:1","statements":[{"nativeSrc":"320:26:1","nodeType":"YulAssignment","src":"320:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"332:9:1","nodeType":"YulIdentifier","src":"332:9:1"},{"kind":"number","nativeSrc":"343:2:1","nodeType":"YulLiteral","src":"343:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"328:3:1","nodeType":"YulIdentifier","src":"328:3:1"},"nativeSrc":"328:18:1","nodeType":"YulFunctionCall","src":"328:18:1"},"variableNames":[{"name":"tail","nativeSrc":"320:4:1","nodeType":"YulIdentifier","src":"320:4:1"}]},{"expression":{"arguments":[{"name":"value0","nativeSrc":"394:6:1","nodeType":"YulIdentifier","src":"394:6:1"},{"arguments":[{"name":"headStart","nativeSrc":"407:9:1","nodeType":"YulIdentifier","src":"407:9:1"},{"kind":"number","nativeSrc":"418:1:1","nodeType":"YulLiteral","src":"418:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"403:3:1","nodeType":"YulIdentifier","src":"403:3:1"},"nativeSrc":"403:17:1","nodeType":"YulFunctionCall","src":"403:17:1"}],"functionName":{"name":"abi_encode_t_bool_to_t_bool_fromStack","nativeSrc":"356:37:1","nodeType":"YulIdentifier","src":"356:37:1"},"nativeSrc":"356:65:1","nodeType":"YulFunctionCall","src":"356:65:1"},"nativeSrc":"356:65:1","nodeType":"YulExpressionStatement","src":"356:65:1"}]},"name":"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed","nativeSrc":"218:210:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"282:9:1","nodeType":"YulTypedName","src":"282:9:1","type":""},{"name":"value0","nativeSrc":"294:6:1","nodeType":"YulTypedName","src":"294:6:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"305:4:1","nodeType":"YulTypedName","src":"305:4:1","type":""}],"src":"218:210:1"},{"body":{"nativeSrc":"474:35:1","nodeType":"YulBlock","src":"474:35:1","statements":[{"nativeSrc":"484:19:1","nodeType":"YulAssignment","src":"484:19:1","value":{"arguments":[{"kind":"number","nativeSrc":"500:2:1","nodeType":"YulLiteral","src":"500:2:1","type":"","value":"64"}],"functionName":{"name":"mload","nativeSrc":"494:5:1","nodeType":"YulIdentifier","src":"494:5:1"},"nativeSrc":"494:9:1","nodeType":"YulFunctionCall","src":"494:9:1"},"variableNames":[{"name":"memPtr","nativeSrc":"484:6:1","nodeType":"YulIdentifier","src":"484:6:1"}]}]},"name":"allocate_unbounded","nativeSrc":"434:75:1","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nativeSrc":"467:6:1","nodeType":"YulTypedName","src":"467:6:1","type":""}],"src":"434:75:1"},{"body":{"nativeSrc":"604:28:1","nodeType":"YulBlock","src":"604:28:1","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"621:1:1","nodeType":"YulLiteral","src":"621:1:1","type":"","value":"0"},{"kind":"number","nativeSrc":"624:1:1","nodeType":"YulLiteral","src":"624:1:1","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"614:6:1","nodeType":"YulIdentifier","src":"614:6:1"},"nativeSrc":"614:12:1","nodeType":"YulFunctionCall","src":"614:12:1"},"nativeSrc":"614:12:1","nodeType":"YulExpressionStatement","src":"614:12:1"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nativeSrc":"515:117:1","nodeType":"YulFunctionDefinition","src":"515:117:1"},{"body":{"nativeSrc":"727:28:1","nodeType":"YulBlock","src":"727:28:1","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"744:1:1","nodeType":"YulLiteral","src":"744:1:1","type":"","value":"0"},{"kind":"number","nativeSrc":"747:1:1","nodeType":"YulLiteral","src":"747:1:1","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"737:6:1","nodeType":"YulIdentifier","src":"737:6:1"},"nativeSrc":"737:12:1","nodeType":"YulFunctionCall","src":"737:12:1"},"nativeSrc":"737:12:1","nodeType":"YulExpressionStatement","src":"737:12:1"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nativeSrc":"638:117:1","nodeType":"YulFunctionDefinition","src":"638:117:1"},{"body":{"nativeSrc":"806:81:1","nodeType":"YulBlock","src":"806:81:1","statements":[{"nativeSrc":"816:65:1","nodeType":"YulAssignment","src":"816:65:1","value":{"arguments":[{"name":"value","nativeSrc":"831:5:1","nodeType":"YulIdentifier","src":"831:5:1"},{"kind":"number","nativeSrc":"838:42:1","nodeType":"YulLiteral","src":"838:42:1","type":"","value":"0xffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"and","nativeSrc":"827:3:1","nodeType":"YulIdentifier","src":"827:3:1"},"nativeSrc":"827:54:1","nodeType":"YulFunctionCall","src":"827:54:1"},"variableNames":[{"name":"cleaned","nativeSrc":"816:7:1","nodeType":"YulIdentifier","src":"816:7:1"}]}]},"name":"cleanup_t_uint160","nativeSrc":"761:126:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nativeSrc":"788:5:1","nodeType":"YulTypedName","src":"788:5:1","type":""}],"returnVariables":[{"name":"cleaned","nativeSrc":"798:7:1","nodeType":"YulTypedName","src":"798:7:1","type":""}],"src":"761:126:1"},{"body":{"nativeSrc":"938:51:1","nodeType":"YulBlock","src":"938:51:1","statements":[{"nativeSrc":"948:35:1","nodeType":"YulAssignment","src":"948:35:1","value":{"arguments":[{"name":"value","nativeSrc":"977:5:1","nodeType":"YulIdentifier","src":"977:5:1"}],"functionName":{"name":"cleanup_t_uint160","nativeSrc":"959:17:1","nodeType":"YulIdentifier","src":"959:17:1"},"nativeSrc":"959:24:1","nodeType":"YulFunctionCall","src":"959:24:1"},"variableNames":[{"name":"cleaned","nativeSrc":"948:7:1","nodeType":"YulIdentifier","src":"948:7:1"}]}]},"name":"cleanup_t_address","nativeSrc":"893:96:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nativeSrc":"920:5:1","nodeType":"YulTypedName","src":"920:5:1","type":""}],"returnVariables":[{"name":"cleaned","nativeSrc":"930:7:1","nodeType":"YulTypedName","src":"930:7:1","type":""}],"src":"893:96:1"},{"body":{"nativeSrc":"1038:79:1","nodeType":"YulBlock","src":"1038:79:1","statements":[{"body":{"nativeSrc":"1095:16:1","nodeType":"YulBlock","src":"1095:16:1","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"1104:1:1","nodeType":"YulLiteral","src":"1104:1:1","type":"","value":"0"},{"kind":"number","nativeSrc":"1107:1:1","nodeType":"YulLiteral","src":"1107:1:1","type":"","value":"0"}],"functionName":{"name":"revert","nativeSrc":"1097:6:1","nodeType":"YulIdentifier","src":"1097:6:1"},"nativeSrc":"1097:12:1","nodeType":"YulFunctionCall","src":"1097:12:1"},"nativeSrc":"1097:12:1","nodeType":"YulExpressionStatement","src":"1097:12:1"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nativeSrc":"1061:5:1","nodeType":"YulIdentifier","src":"1061:5:1"},{"arguments":[{"name":"value","nativeSrc":"1086:5:1","nodeType":"YulIdentifier","src":"1086:5:1"}],"functionName":{"name":"cleanup_t_address","nativeSrc":"1068:17:1","nodeType":"YulIdentifier","src":"1068:17:1"},"nativeSrc":"1068:24:1","nodeType":"YulFunctionCall","src":"1068:24:1"}],"functionName":{"name":"eq","nativeSrc":"1058:2:1","nodeType":"YulIdentifier","src":"1058:2:1"},"nativeSrc":"1058:35:1","nodeType":"YulFunctionCall","src":"1058:35:1"}],"functionName":{"name":"iszero","nativeSrc":"1051:6:1","nodeType":"YulIdentifier","src":"1051:6:1"},"nativeSrc":"1051:43:1","nodeType":"YulFunctionCall","src":"1051:43:1"},"nativeSrc":"1048:63:1","nodeType":"YulIf","src":"1048:63:1"}]},"name":"validator_revert_t_address","nativeSrc":"995:122:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nativeSrc":"1031:5:1","nodeType":"YulTypedName","src":"1031:5:1","type":""}],"src":"995:122:1"},{"body":{"nativeSrc":"1175:87:1","nodeType":"YulBlock","src":"1175:87:1","statements":[{"nativeSrc":"1185:29:1","nodeType":"YulAssignment","src":"1185:29:1","value":{"arguments":[{"name":"offset","nativeSrc":"1207:6:1","nodeType":"YulIdentifier","src":"1207:6:1"}],"functionName":{"name":"calldataload","nativeSrc":"1194:12:1","nodeType":"YulIdentifier","src":"1194:12:1"},"nativeSrc":"1194:20:1","nodeType":"YulFunctionCall","src":"1194:20:1"},"variableNames":[{"name":"value","nativeSrc":"1185:5:1","nodeType":"YulIdentifier","src":"1185:5:1"}]},{"expression":{"arguments":[{"name":"value","nativeSrc":"1250:5:1","nodeType":"YulIdentifier","src":"1250:5:1"}],"functionName":{"name":"validator_revert_t_address","nativeSrc":"1223:26:1","nodeType":"YulIdentifier","src":"1223:26:1"},"nativeSrc":"1223:33:1","nodeType":"YulFunctionCall","src":"1223:33:1"},"nativeSrc":"1223:33:1","nodeType":"YulExpressionStatement","src":"1223:33:1"}]},"name":"abi_decode_t_address","nativeSrc":"1123:139:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nativeSrc":"1153:6:1","nodeType":"YulTypedName","src":"1153:6:1","type":""},{"name":"end","nativeSrc":"1161:3:1","nodeType":"YulTypedName","src":"1161:3:1","type":""}],"returnVariables":[{"name":"value","nativeSrc":"1169:5:1","nodeType":"YulTypedName","src":"1169:5:1","type":""}],"src":"1123:139:1"},{"body":{"nativeSrc":"1334:263:1","nodeType":"YulBlock","src":"1334:263:1","statements":[{"body":{"nativeSrc":"1380:83:1","nodeType":"YulBlock","src":"1380:83:1","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nativeSrc":"1382:77:1","nodeType":"YulIdentifier","src":"1382:77:1"},"nativeSrc":"1382:79:1","nodeType":"YulFunctionCall","src":"1382:79:1"},"nativeSrc":"1382:79:1","nodeType":"YulExpressionStatement","src":"1382:79:1"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nativeSrc":"1355:7:1","nodeType":"YulIdentifier","src":"1355:7:1"},{"name":"headStart","nativeSrc":"1364:9:1","nodeType":"YulIdentifier","src":"1364:9:1"}],"functionName":{"name":"sub","nativeSrc":"1351:3:1","nodeType":"YulIdentifier","src":"1351:3:1"},"nativeSrc":"1351:23:1","nodeType":"YulFunctionCall","src":"1351:23:1"},{"kind":"number","nativeSrc":"1376:2:1","nodeType":"YulLiteral","src":"1376:2:1","type":"","value":"32"}],"functionName":{"name":"slt","nativeSrc":"1347:3:1","nodeType":"YulIdentifier","src":"1347:3:1"},"nativeSrc":"1347:32:1","nodeType":"YulFunctionCall","src":"1347:32:1"},"nativeSrc":"1344:119:1","nodeType":"YulIf","src":"1344:119:1"},{"nativeSrc":"1473:117:1","nodeType":"YulBlock","src":"1473:117:1","statements":[{"nativeSrc":"1488:15:1","nodeType":"YulVariableDeclaration","src":"1488:15:1","value":{"kind":"number","nativeSrc":"1502:1:1","nodeType":"YulLiteral","src":"1502:1:1","type":"","value":"0"},"variables":[{"name":"offset","nativeSrc":"1492:6:1","nodeType":"YulTypedName","src":"1492:6:1","type":""}]},{"nativeSrc":"1517:63:1","nodeType":"YulAssignment","src":"1517:63:1","value":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"1552:9:1","nodeType":"YulIdentifier","src":"1552:9:1"},{"name":"offset","nativeSrc":"1563:6:1","nodeType":"YulIdentifier","src":"1563:6:1"}],"functionName":{"name":"add","nativeSrc":"1548:3:1","nodeType":"YulIdentifier","src":"1548:3:1"},"nativeSrc":"1548:22:1","nodeType":"YulFunctionCall","src":"1548:22:1"},{"name":"dataEnd","nativeSrc":"1572:7:1","nodeType":"YulIdentifier","src":"1572:7:1"}],"functionName":{"name":"abi_decode_t_address","nativeSrc":"1527:20:1","nodeType":"YulIdentifier","src":"1527:20:1"},"nativeSrc":"1527:53:1","nodeType":"YulFunctionCall","src":"1527:53:1"},"variableNames":[{"name":"value0","nativeSrc":"1517:6:1","nodeType":"YulIdentifier","src":"1517:6:1"}]}]}]},"name":"abi_decode_tuple_t_address","nativeSrc":"1268:329:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"1304:9:1","nodeType":"YulTypedName","src":"1304:9:1","type":""},{"name":"dataEnd","nativeSrc":"1315:7:1","nodeType":"YulTypedName","src":"1315:7:1","type":""}],"returnVariables":[{"name":"value0","nativeSrc":"1327:6:1","nodeType":"YulTypedName","src":"1327:6:1","type":""}],"src":"1268:329:1"},{"body":{"nativeSrc":"1648:32:1","nodeType":"YulBlock","src":"1648:32:1","statements":[{"nativeSrc":"1658:16:1","nodeType":"YulAssignment","src":"1658:16:1","value":{"name":"value","nativeSrc":"1669:5:1","nodeType":"YulIdentifier","src":"1669:5:1"},"variableNames":[{"name":"cleaned","nativeSrc":"1658:7:1","nodeType":"YulIdentifier","src":"1658:7:1"}]}]},"name":"cleanup_t_uint256","nativeSrc":"1603:77:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nativeSrc":"1630:5:1","nodeType":"YulTypedName","src":"1630:5:1","type":""}],"returnVariables":[{"name":"cleaned","nativeSrc":"1640:7:1","nodeType":"YulTypedName","src":"1640:7:1","type":""}],"src":"1603:77:1"},{"body":{"nativeSrc":"1751:53:1","nodeType":"YulBlock","src":"1751:53:1","statements":[{"expression":{"arguments":[{"name":"pos","nativeSrc":"1768:3:1","nodeType":"YulIdentifier","src":"1768:3:1"},{"arguments":[{"name":"value","nativeSrc":"1791:5:1","nodeType":"YulIdentifier","src":"1791:5:1"}],"functionName":{"name":"cleanup_t_uint256","nativeSrc":"1773:17:1","nodeType":"YulIdentifier","src":"1773:17:1"},"nativeSrc":"1773:24:1","nodeType":"YulFunctionCall","src":"1773:24:1"}],"functionName":{"name":"mstore","nativeSrc":"1761:6:1","nodeType":"YulIdentifier","src":"1761:6:1"},"nativeSrc":"1761:37:1","nodeType":"YulFunctionCall","src":"1761:37:1"},"nativeSrc":"1761:37:1","nodeType":"YulExpressionStatement","src":"1761:37:1"}]},"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nativeSrc":"1686:118:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nativeSrc":"1739:5:1","nodeType":"YulTypedName","src":"1739:5:1","type":""},{"name":"pos","nativeSrc":"1746:3:1","nodeType":"YulTypedName","src":"1746:3:1","type":""}],"src":"1686:118:1"},{"body":{"nativeSrc":"1908:124:1","nodeType":"YulBlock","src":"1908:124:1","statements":[{"nativeSrc":"1918:26:1","nodeType":"YulAssignment","src":"1918:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"1930:9:1","nodeType":"YulIdentifier","src":"1930:9:1"},{"kind":"number","nativeSrc":"1941:2:1","nodeType":"YulLiteral","src":"1941:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"1926:3:1","nodeType":"YulIdentifier","src":"1926:3:1"},"nativeSrc":"1926:18:1","nodeType":"YulFunctionCall","src":"1926:18:1"},"variableNames":[{"name":"tail","nativeSrc":"1918:4:1","nodeType":"YulIdentifier","src":"1918:4:1"}]},{"expression":{"arguments":[{"name":"value0","nativeSrc":"1998:6:1","nodeType":"YulIdentifier","src":"1998:6:1"},{"arguments":[{"name":"headStart","nativeSrc":"2011:9:1","nodeType":"YulIdentifier","src":"2011:9:1"},{"kind":"number","nativeSrc":"2022:1:1","nodeType":"YulLiteral","src":"2022:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"2007:3:1","nodeType":"YulIdentifier","src":"2007:3:1"},"nativeSrc":"2007:17:1","nodeType":"YulFunctionCall","src":"2007:17:1"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nativeSrc":"1954:43:1","nodeType":"YulIdentifier","src":"1954:43:1"},"nativeSrc":"1954:71:1","nodeType":"YulFunctionCall","src":"1954:71:1"},"nativeSrc":"1954:71:1","nodeType":"YulExpressionStatement","src":"1954:71:1"}]},"name":"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed","nativeSrc":"1810:222:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"1880:9:1","nodeType":"YulTypedName","src":"1880:9:1","type":""},{"name":"value0","nativeSrc":"1892:6:1","nodeType":"YulTypedName","src":"1892:6:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"1903:4:1","nodeType":"YulTypedName","src":"1903:4:1","type":""}],"src":"1810:222:1"},{"body":{"nativeSrc":"2103:53:1","nodeType":"YulBlock","src":"2103:53:1","statements":[{"expression":{"arguments":[{"name":"pos","nativeSrc":"2120:3:1","nodeType":"YulIdentifier","src":"2120:3:1"},{"arguments":[{"name":"value","nativeSrc":"2143:5:1","nodeType":"YulIdentifier","src":"2143:5:1"}],"functionName":{"name":"cleanup_t_address","nativeSrc":"2125:17:1","nodeType":"YulIdentifier","src":"2125:17:1"},"nativeSrc":"2125:24:1","nodeType":"YulFunctionCall","src":"2125:24:1"}],"functionName":{"name":"mstore","nativeSrc":"2113:6:1","nodeType":"YulIdentifier","src":"2113:6:1"},"nativeSrc":"2113:37:1","nodeType":"YulFunctionCall","src":"2113:37:1"},"nativeSrc":"2113:37:1","nodeType":"YulExpressionStatement","src":"2113:37:1"}]},"name":"abi_encode_t_address_to_t_address_fromStack","nativeSrc":"2038:118:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nativeSrc":"2091:5:1","nodeType":"YulTypedName","src":"2091:5:1","type":""},{"name":"pos","nativeSrc":"2098:3:1","nodeType":"YulTypedName","src":"2098:3:1","type":""}],"src":"2038:118:1"},{"body":{"nativeSrc":"2260:124:1","nodeType":"YulBlock","src":"2260:124:1","statements":[{"nativeSrc":"2270:26:1","nodeType":"YulAssignment","src":"2270:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"2282:9:1","nodeType":"YulIdentifier","src":"2282:9:1"},{"kind":"number","nativeSrc":"2293:2:1","nodeType":"YulLiteral","src":"2293:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"2278:3:1","nodeType":"YulIdentifier","src":"2278:3:1"},"nativeSrc":"2278:18:1","nodeType":"YulFunctionCall","src":"2278:18:1"},"variableNames":[{"name":"tail","nativeSrc":"2270:4:1","nodeType":"YulIdentifier","src":"2270:4:1"}]},{"expression":{"arguments":[{"name":"value0","nativeSrc":"2350:6:1","nodeType":"YulIdentifier","src":"2350:6:1"},{"arguments":[{"name":"headStart","nativeSrc":"2363:9:1","nodeType":"YulIdentifier","src":"2363:9:1"},{"kind":"number","nativeSrc":"2374:1:1","nodeType":"YulLiteral","src":"2374:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"2359:3:1","nodeType":"YulIdentifier","src":"2359:3:1"},"nativeSrc":"2359:17:1","nodeType":"YulFunctionCall","src":"2359:17:1"}],"functionName":{"name":"abi_encode_t_address_to_t_address_fromStack","nativeSrc":"2306:43:1","nodeType":"YulIdentifier","src":"2306:43:1"},"nativeSrc":"2306:71:1","nodeType":"YulFunctionCall","src":"2306:71:1"},"nativeSrc":"2306:71:1","nodeType":"YulExpressionStatement","src":"2306:71:1"}]},"name":"abi_encode_tuple_t_address__to_t_address__fromStack_reversed","nativeSrc":"2162:222:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"2232:9:1","nodeType":"YulTypedName","src":"2232:9:1","type":""},{"name":"value0","nativeSrc":"2244:6:1","nodeType":"YulTypedName","src":"2244:6:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"2255:4:1","nodeType":"YulTypedName","src":"2255:4:1","type":""}],"src":"2162:222:1"},{"body":{"nativeSrc":"2486:73:1","nodeType":"YulBlock","src":"2486:73:1","statements":[{"expression":{"arguments":[{"name":"pos","nativeSrc":"2503:3:1","nodeType":"YulIdentifier","src":"2503:3:1"},{"name":"length","nativeSrc":"2508:6:1","nodeType":"YulIdentifier","src":"2508:6:1"}],"functionName":{"name":"mstore","nativeSrc":"2496:6:1","nodeType":"YulIdentifier","src":"2496:6:1"},"nativeSrc":"2496:19:1","nodeType":"YulFunctionCall","src":"2496:19:1"},"nativeSrc":"2496:19:1","nodeType":"YulExpressionStatement","src":"2496:19:1"},{"nativeSrc":"2524:29:1","nodeType":"YulAssignment","src":"2524:29:1","value":{"arguments":[{"name":"pos","nativeSrc":"2543:3:1","nodeType":"YulIdentifier","src":"2543:3:1"},{"kind":"number","nativeSrc":"2548:4:1","nodeType":"YulLiteral","src":"2548:4:1","type":"","value":"0x20"}],"functionName":{"name":"add","nativeSrc":"2539:3:1","nodeType":"YulIdentifier","src":"2539:3:1"},"nativeSrc":"2539:14:1","nodeType":"YulFunctionCall","src":"2539:14:1"},"variableNames":[{"name":"updated_pos","nativeSrc":"2524:11:1","nodeType":"YulIdentifier","src":"2524:11:1"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nativeSrc":"2390:169:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"2458:3:1","nodeType":"YulTypedName","src":"2458:3:1","type":""},{"name":"length","nativeSrc":"2463:6:1","nodeType":"YulTypedName","src":"2463:6:1","type":""}],"returnVariables":[{"name":"updated_pos","nativeSrc":"2474:11:1","nodeType":"YulTypedName","src":"2474:11:1","type":""}],"src":"2390:169:1"},{"body":{"nativeSrc":"2671:57:1","nodeType":"YulBlock","src":"2671:57:1","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nativeSrc":"2693:6:1","nodeType":"YulIdentifier","src":"2693:6:1"},{"kind":"number","nativeSrc":"2701:1:1","nodeType":"YulLiteral","src":"2701:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"2689:3:1","nodeType":"YulIdentifier","src":"2689:3:1"},"nativeSrc":"2689:14:1","nodeType":"YulFunctionCall","src":"2689:14:1"},{"hexValue":"41756374696f6e20656e646564","kind":"string","nativeSrc":"2705:15:1","nodeType":"YulLiteral","src":"2705:15:1","type":"","value":"Auction ended"}],"functionName":{"name":"mstore","nativeSrc":"2682:6:1","nodeType":"YulIdentifier","src":"2682:6:1"},"nativeSrc":"2682:39:1","nodeType":"YulFunctionCall","src":"2682:39:1"},"nativeSrc":"2682:39:1","nodeType":"YulExpressionStatement","src":"2682:39:1"}]},"name":"store_literal_in_memory_d8e1c4c687c6e649f550c1facb02105a23d7eff39fa63adff9d993b8e468c13b","nativeSrc":"2565:163:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nativeSrc":"2663:6:1","nodeType":"YulTypedName","src":"2663:6:1","type":""}],"src":"2565:163:1"},{"body":{"nativeSrc":"2880:220:1","nodeType":"YulBlock","src":"2880:220:1","statements":[{"nativeSrc":"2890:74:1","nodeType":"YulAssignment","src":"2890:74:1","value":{"arguments":[{"name":"pos","nativeSrc":"2956:3:1","nodeType":"YulIdentifier","src":"2956:3:1"},{"kind":"number","nativeSrc":"2961:2:1","nodeType":"YulLiteral","src":"2961:2:1","type":"","value":"13"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nativeSrc":"2897:58:1","nodeType":"YulIdentifier","src":"2897:58:1"},"nativeSrc":"2897:67:1","nodeType":"YulFunctionCall","src":"2897:67:1"},"variableNames":[{"name":"pos","nativeSrc":"2890:3:1","nodeType":"YulIdentifier","src":"2890:3:1"}]},{"expression":{"arguments":[{"name":"pos","nativeSrc":"3062:3:1","nodeType":"YulIdentifier","src":"3062:3:1"}],"functionName":{"name":"store_literal_in_memory_d8e1c4c687c6e649f550c1facb02105a23d7eff39fa63adff9d993b8e468c13b","nativeSrc":"2973:88:1","nodeType":"YulIdentifier","src":"2973:88:1"},"nativeSrc":"2973:93:1","nodeType":"YulFunctionCall","src":"2973:93:1"},"nativeSrc":"2973:93:1","nodeType":"YulExpressionStatement","src":"2973:93:1"},{"nativeSrc":"3075:19:1","nodeType":"YulAssignment","src":"3075:19:1","value":{"arguments":[{"name":"pos","nativeSrc":"3086:3:1","nodeType":"YulIdentifier","src":"3086:3:1"},{"kind":"number","nativeSrc":"3091:2:1","nodeType":"YulLiteral","src":"3091:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"3082:3:1","nodeType":"YulIdentifier","src":"3082:3:1"},"nativeSrc":"3082:12:1","nodeType":"YulFunctionCall","src":"3082:12:1"},"variableNames":[{"name":"end","nativeSrc":"3075:3:1","nodeType":"YulIdentifier","src":"3075:3:1"}]}]},"name":"abi_encode_t_stringliteral_d8e1c4c687c6e649f550c1facb02105a23d7eff39fa63adff9d993b8e468c13b_to_t_string_memory_ptr_fromStack","nativeSrc":"2734:366:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"2868:3:1","nodeType":"YulTypedName","src":"2868:3:1","type":""}],"returnVariables":[{"name":"end","nativeSrc":"2876:3:1","nodeType":"YulTypedName","src":"2876:3:1","type":""}],"src":"2734:366:1"},{"body":{"nativeSrc":"3277:248:1","nodeType":"YulBlock","src":"3277:248:1","statements":[{"nativeSrc":"3287:26:1","nodeType":"YulAssignment","src":"3287:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"3299:9:1","nodeType":"YulIdentifier","src":"3299:9:1"},{"kind":"number","nativeSrc":"3310:2:1","nodeType":"YulLiteral","src":"3310:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"3295:3:1","nodeType":"YulIdentifier","src":"3295:3:1"},"nativeSrc":"3295:18:1","nodeType":"YulFunctionCall","src":"3295:18:1"},"variableNames":[{"name":"tail","nativeSrc":"3287:4:1","nodeType":"YulIdentifier","src":"3287:4:1"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"3334:9:1","nodeType":"YulIdentifier","src":"3334:9:1"},{"kind":"number","nativeSrc":"3345:1:1","nodeType":"YulLiteral","src":"3345:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"3330:3:1","nodeType":"YulIdentifier","src":"3330:3:1"},"nativeSrc":"3330:17:1","nodeType":"YulFunctionCall","src":"3330:17:1"},{"arguments":[{"name":"tail","nativeSrc":"3353:4:1","nodeType":"YulIdentifier","src":"3353:4:1"},{"name":"headStart","nativeSrc":"3359:9:1","nodeType":"YulIdentifier","src":"3359:9:1"}],"functionName":{"name":"sub","nativeSrc":"3349:3:1","nodeType":"YulIdentifier","src":"3349:3:1"},"nativeSrc":"3349:20:1","nodeType":"YulFunctionCall","src":"3349:20:1"}],"functionName":{"name":"mstore","nativeSrc":"3323:6:1","nodeType":"YulIdentifier","src":"3323:6:1"},"nativeSrc":"3323:47:1","nodeType":"YulFunctionCall","src":"3323:47:1"},"nativeSrc":"3323:47:1","nodeType":"YulExpressionStatement","src":"3323:47:1"},{"nativeSrc":"3379:139:1","nodeType":"YulAssignment","src":"3379:139:1","value":{"arguments":[{"name":"tail","nativeSrc":"3513:4:1","nodeType":"YulIdentifier","src":"3513:4:1"}],"functionName":{"name":"abi_encode_t_stringliteral_d8e1c4c687c6e649f550c1facb02105a23d7eff39fa63adff9d993b8e468c13b_to_t_string_memory_ptr_fromStack","nativeSrc":"3387:124:1","nodeType":"YulIdentifier","src":"3387:124:1"},"nativeSrc":"3387:131:1","nodeType":"YulFunctionCall","src":"3387:131:1"},"variableNames":[{"name":"tail","nativeSrc":"3379:4:1","nodeType":"YulIdentifier","src":"3379:4:1"}]}]},"name":"abi_encode_tuple_t_stringliteral_d8e1c4c687c6e649f550c1facb02105a23d7eff39fa63adff9d993b8e468c13b__to_t_string_memory_ptr__fromStack_reversed","nativeSrc":"3106:419:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"3257:9:1","nodeType":"YulTypedName","src":"3257:9:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"3272:4:1","nodeType":"YulTypedName","src":"3272:4:1","type":""}],"src":"3106:419:1"},{"body":{"nativeSrc":"3637:65:1","nodeType":"YulBlock","src":"3637:65:1","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nativeSrc":"3659:6:1","nodeType":"YulIdentifier","src":"3659:6:1"},{"kind":"number","nativeSrc":"3667:1:1","nodeType":"YulLiteral","src":"3667:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"3655:3:1","nodeType":"YulIdentifier","src":"3655:3:1"},"nativeSrc":"3655:14:1","nodeType":"YulFunctionCall","src":"3655:14:1"},{"hexValue":"41756374696f6e20616c726561647920656e646564","kind":"string","nativeSrc":"3671:23:1","nodeType":"YulLiteral","src":"3671:23:1","type":"","value":"Auction already ended"}],"functionName":{"name":"mstore","nativeSrc":"3648:6:1","nodeType":"YulIdentifier","src":"3648:6:1"},"nativeSrc":"3648:47:1","nodeType":"YulFunctionCall","src":"3648:47:1"},"nativeSrc":"3648:47:1","nodeType":"YulExpressionStatement","src":"3648:47:1"}]},"name":"store_literal_in_memory_36020d7b7b79be3186d0224484952c41e479aaf134eacdd764b3d17624762006","nativeSrc":"3531:171:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nativeSrc":"3629:6:1","nodeType":"YulTypedName","src":"3629:6:1","type":""}],"src":"3531:171:1"},{"body":{"nativeSrc":"3854:220:1","nodeType":"YulBlock","src":"3854:220:1","statements":[{"nativeSrc":"3864:74:1","nodeType":"YulAssignment","src":"3864:74:1","value":{"arguments":[{"name":"pos","nativeSrc":"3930:3:1","nodeType":"YulIdentifier","src":"3930:3:1"},{"kind":"number","nativeSrc":"3935:2:1","nodeType":"YulLiteral","src":"3935:2:1","type":"","value":"21"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nativeSrc":"3871:58:1","nodeType":"YulIdentifier","src":"3871:58:1"},"nativeSrc":"3871:67:1","nodeType":"YulFunctionCall","src":"3871:67:1"},"variableNames":[{"name":"pos","nativeSrc":"3864:3:1","nodeType":"YulIdentifier","src":"3864:3:1"}]},{"expression":{"arguments":[{"name":"pos","nativeSrc":"4036:3:1","nodeType":"YulIdentifier","src":"4036:3:1"}],"functionName":{"name":"store_literal_in_memory_36020d7b7b79be3186d0224484952c41e479aaf134eacdd764b3d17624762006","nativeSrc":"3947:88:1","nodeType":"YulIdentifier","src":"3947:88:1"},"nativeSrc":"3947:93:1","nodeType":"YulFunctionCall","src":"3947:93:1"},"nativeSrc":"3947:93:1","nodeType":"YulExpressionStatement","src":"3947:93:1"},{"nativeSrc":"4049:19:1","nodeType":"YulAssignment","src":"4049:19:1","value":{"arguments":[{"name":"pos","nativeSrc":"4060:3:1","nodeType":"YulIdentifier","src":"4060:3:1"},{"kind":"number","nativeSrc":"4065:2:1","nodeType":"YulLiteral","src":"4065:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"4056:3:1","nodeType":"YulIdentifier","src":"4056:3:1"},"nativeSrc":"4056:12:1","nodeType":"YulFunctionCall","src":"4056:12:1"},"variableNames":[{"name":"end","nativeSrc":"4049:3:1","nodeType":"YulIdentifier","src":"4049:3:1"}]}]},"name":"abi_encode_t_stringliteral_36020d7b7b79be3186d0224484952c41e479aaf134eacdd764b3d17624762006_to_t_string_memory_ptr_fromStack","nativeSrc":"3708:366:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"3842:3:1","nodeType":"YulTypedName","src":"3842:3:1","type":""}],"returnVariables":[{"name":"end","nativeSrc":"3850:3:1","nodeType":"YulTypedName","src":"3850:3:1","type":""}],"src":"3708:366:1"},{"body":{"nativeSrc":"4251:248:1","nodeType":"YulBlock","src":"4251:248:1","statements":[{"nativeSrc":"4261:26:1","nodeType":"YulAssignment","src":"4261:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"4273:9:1","nodeType":"YulIdentifier","src":"4273:9:1"},{"kind":"number","nativeSrc":"4284:2:1","nodeType":"YulLiteral","src":"4284:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"4269:3:1","nodeType":"YulIdentifier","src":"4269:3:1"},"nativeSrc":"4269:18:1","nodeType":"YulFunctionCall","src":"4269:18:1"},"variableNames":[{"name":"tail","nativeSrc":"4261:4:1","nodeType":"YulIdentifier","src":"4261:4:1"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"4308:9:1","nodeType":"YulIdentifier","src":"4308:9:1"},{"kind":"number","nativeSrc":"4319:1:1","nodeType":"YulLiteral","src":"4319:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"4304:3:1","nodeType":"YulIdentifier","src":"4304:3:1"},"nativeSrc":"4304:17:1","nodeType":"YulFunctionCall","src":"4304:17:1"},{"arguments":[{"name":"tail","nativeSrc":"4327:4:1","nodeType":"YulIdentifier","src":"4327:4:1"},{"name":"headStart","nativeSrc":"4333:9:1","nodeType":"YulIdentifier","src":"4333:9:1"}],"functionName":{"name":"sub","nativeSrc":"4323:3:1","nodeType":"YulIdentifier","src":"4323:3:1"},"nativeSrc":"4323:20:1","nodeType":"YulFunctionCall","src":"4323:20:1"}],"functionName":{"name":"mstore","nativeSrc":"4297:6:1","nodeType":"YulIdentifier","src":"4297:6:1"},"nativeSrc":"4297:47:1","nodeType":"YulFunctionCall","src":"4297:47:1"},"nativeSrc":"4297:47:1","nodeType":"YulExpressionStatement","src":"4297:47:1"},{"nativeSrc":"4353:139:1","nodeType":"YulAssignment","src":"4353:139:1","value":{"arguments":[{"name":"tail","nativeSrc":"4487:4:1","nodeType":"YulIdentifier","src":"4487:4:1"}],"functionName":{"name":"abi_encode_t_stringliteral_36020d7b7b79be3186d0224484952c41e479aaf134eacdd764b3d17624762006_to_t_string_memory_ptr_fromStack","nativeSrc":"4361:124:1","nodeType":"YulIdentifier","src":"4361:124:1"},"nativeSrc":"4361:131:1","nodeType":"YulFunctionCall","src":"4361:131:1"},"variableNames":[{"name":"tail","nativeSrc":"4353:4:1","nodeType":"YulIdentifier","src":"4353:4:1"}]}]},"name":"abi_encode_tuple_t_stringliteral_36020d7b7b79be3186d0224484952c41e479aaf134eacdd764b3d17624762006__to_t_string_memory_ptr__fromStack_reversed","nativeSrc":"4080:419:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"4231:9:1","nodeType":"YulTypedName","src":"4231:9:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"4246:4:1","nodeType":"YulTypedName","src":"4246:4:1","type":""}],"src":"4080:419:1"},{"body":{"nativeSrc":"4611:60:1","nodeType":"YulBlock","src":"4611:60:1","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nativeSrc":"4633:6:1","nodeType":"YulIdentifier","src":"4633:6:1"},{"kind":"number","nativeSrc":"4641:1:1","nodeType":"YulLiteral","src":"4641:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"4629:3:1","nodeType":"YulIdentifier","src":"4629:3:1"},"nativeSrc":"4629:14:1","nodeType":"YulFunctionCall","src":"4629:14:1"},{"hexValue":"4f776e65722063616e6e6f7420626964","kind":"string","nativeSrc":"4645:18:1","nodeType":"YulLiteral","src":"4645:18:1","type":"","value":"Owner cannot bid"}],"functionName":{"name":"mstore","nativeSrc":"4622:6:1","nodeType":"YulIdentifier","src":"4622:6:1"},"nativeSrc":"4622:42:1","nodeType":"YulFunctionCall","src":"4622:42:1"},"nativeSrc":"4622:42:1","nodeType":"YulExpressionStatement","src":"4622:42:1"}]},"name":"store_literal_in_memory_b069a3605a760977e488740e57d20a45915ea0c3b96c47ae687173d31aadf0b7","nativeSrc":"4505:166:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nativeSrc":"4603:6:1","nodeType":"YulTypedName","src":"4603:6:1","type":""}],"src":"4505:166:1"},{"body":{"nativeSrc":"4823:220:1","nodeType":"YulBlock","src":"4823:220:1","statements":[{"nativeSrc":"4833:74:1","nodeType":"YulAssignment","src":"4833:74:1","value":{"arguments":[{"name":"pos","nativeSrc":"4899:3:1","nodeType":"YulIdentifier","src":"4899:3:1"},{"kind":"number","nativeSrc":"4904:2:1","nodeType":"YulLiteral","src":"4904:2:1","type":"","value":"16"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nativeSrc":"4840:58:1","nodeType":"YulIdentifier","src":"4840:58:1"},"nativeSrc":"4840:67:1","nodeType":"YulFunctionCall","src":"4840:67:1"},"variableNames":[{"name":"pos","nativeSrc":"4833:3:1","nodeType":"YulIdentifier","src":"4833:3:1"}]},{"expression":{"arguments":[{"name":"pos","nativeSrc":"5005:3:1","nodeType":"YulIdentifier","src":"5005:3:1"}],"functionName":{"name":"store_literal_in_memory_b069a3605a760977e488740e57d20a45915ea0c3b96c47ae687173d31aadf0b7","nativeSrc":"4916:88:1","nodeType":"YulIdentifier","src":"4916:88:1"},"nativeSrc":"4916:93:1","nodeType":"YulFunctionCall","src":"4916:93:1"},"nativeSrc":"4916:93:1","nodeType":"YulExpressionStatement","src":"4916:93:1"},{"nativeSrc":"5018:19:1","nodeType":"YulAssignment","src":"5018:19:1","value":{"arguments":[{"name":"pos","nativeSrc":"5029:3:1","nodeType":"YulIdentifier","src":"5029:3:1"},{"kind":"number","nativeSrc":"5034:2:1","nodeType":"YulLiteral","src":"5034:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"5025:3:1","nodeType":"YulIdentifier","src":"5025:3:1"},"nativeSrc":"5025:12:1","nodeType":"YulFunctionCall","src":"5025:12:1"},"variableNames":[{"name":"end","nativeSrc":"5018:3:1","nodeType":"YulIdentifier","src":"5018:3:1"}]}]},"name":"abi_encode_t_stringliteral_b069a3605a760977e488740e57d20a45915ea0c3b96c47ae687173d31aadf0b7_to_t_string_memory_ptr_fromStack","nativeSrc":"4677:366:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"4811:3:1","nodeType":"YulTypedName","src":"4811:3:1","type":""}],"returnVariables":[{"name":"end","nativeSrc":"4819:3:1","nodeType":"YulTypedName","src":"4819:3:1","type":""}],"src":"4677:366:1"},{"body":{"nativeSrc":"5220:248:1","nodeType":"YulBlock","src":"5220:248:1","statements":[{"nativeSrc":"5230:26:1","nodeType":"YulAssignment","src":"5230:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"5242:9:1","nodeType":"YulIdentifier","src":"5242:9:1"},{"kind":"number","nativeSrc":"5253:2:1","nodeType":"YulLiteral","src":"5253:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"5238:3:1","nodeType":"YulIdentifier","src":"5238:3:1"},"nativeSrc":"5238:18:1","nodeType":"YulFunctionCall","src":"5238:18:1"},"variableNames":[{"name":"tail","nativeSrc":"5230:4:1","nodeType":"YulIdentifier","src":"5230:4:1"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"5277:9:1","nodeType":"YulIdentifier","src":"5277:9:1"},{"kind":"number","nativeSrc":"5288:1:1","nodeType":"YulLiteral","src":"5288:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"5273:3:1","nodeType":"YulIdentifier","src":"5273:3:1"},"nativeSrc":"5273:17:1","nodeType":"YulFunctionCall","src":"5273:17:1"},{"arguments":[{"name":"tail","nativeSrc":"5296:4:1","nodeType":"YulIdentifier","src":"5296:4:1"},{"name":"headStart","nativeSrc":"5302:9:1","nodeType":"YulIdentifier","src":"5302:9:1"}],"functionName":{"name":"sub","nativeSrc":"5292:3:1","nodeType":"YulIdentifier","src":"5292:3:1"},"nativeSrc":"5292:20:1","nodeType":"YulFunctionCall","src":"5292:20:1"}],"functionName":{"name":"mstore","nativeSrc":"5266:6:1","nodeType":"YulIdentifier","src":"5266:6:1"},"nativeSrc":"5266:47:1","nodeType":"YulFunctionCall","src":"5266:47:1"},"nativeSrc":"5266:47:1","nodeType":"YulExpressionStatement","src":"5266:47:1"},{"nativeSrc":"5322:139:1","nodeType":"YulAssignment","src":"5322:139:1","value":{"arguments":[{"name":"tail","nativeSrc":"5456:4:1","nodeType":"YulIdentifier","src":"5456:4:1"}],"functionName":{"name":"abi_encode_t_stringliteral_b069a3605a760977e488740e57d20a45915ea0c3b96c47ae687173d31aadf0b7_to_t_string_memory_ptr_fromStack","nativeSrc":"5330:124:1","nodeType":"YulIdentifier","src":"5330:124:1"},"nativeSrc":"5330:131:1","nodeType":"YulFunctionCall","src":"5330:131:1"},"variableNames":[{"name":"tail","nativeSrc":"5322:4:1","nodeType":"YulIdentifier","src":"5322:4:1"}]}]},"name":"abi_encode_tuple_t_stringliteral_b069a3605a760977e488740e57d20a45915ea0c3b96c47ae687173d31aadf0b7__to_t_string_memory_ptr__fromStack_reversed","nativeSrc":"5049:419:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"5200:9:1","nodeType":"YulTypedName","src":"5200:9:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"5215:4:1","nodeType":"YulTypedName","src":"5215:4:1","type":""}],"src":"5049:419:1"},{"body":{"nativeSrc":"5580:55:1","nodeType":"YulBlock","src":"5580:55:1","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nativeSrc":"5602:6:1","nodeType":"YulIdentifier","src":"5602:6:1"},{"kind":"number","nativeSrc":"5610:1:1","nodeType":"YulLiteral","src":"5610:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"5598:3:1","nodeType":"YulIdentifier","src":"5598:3:1"},"nativeSrc":"5598:14:1","nodeType":"YulFunctionCall","src":"5598:14:1"},{"hexValue":"42696420746f6f206c6f77","kind":"string","nativeSrc":"5614:13:1","nodeType":"YulLiteral","src":"5614:13:1","type":"","value":"Bid too low"}],"functionName":{"name":"mstore","nativeSrc":"5591:6:1","nodeType":"YulIdentifier","src":"5591:6:1"},"nativeSrc":"5591:37:1","nodeType":"YulFunctionCall","src":"5591:37:1"},"nativeSrc":"5591:37:1","nodeType":"YulExpressionStatement","src":"5591:37:1"}]},"name":"store_literal_in_memory_13e75ff1b0a6ca9bca87c24c1936118dd10a3ec174f359ad2a8c3d901173470e","nativeSrc":"5474:161:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nativeSrc":"5572:6:1","nodeType":"YulTypedName","src":"5572:6:1","type":""}],"src":"5474:161:1"},{"body":{"nativeSrc":"5787:220:1","nodeType":"YulBlock","src":"5787:220:1","statements":[{"nativeSrc":"5797:74:1","nodeType":"YulAssignment","src":"5797:74:1","value":{"arguments":[{"name":"pos","nativeSrc":"5863:3:1","nodeType":"YulIdentifier","src":"5863:3:1"},{"kind":"number","nativeSrc":"5868:2:1","nodeType":"YulLiteral","src":"5868:2:1","type":"","value":"11"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nativeSrc":"5804:58:1","nodeType":"YulIdentifier","src":"5804:58:1"},"nativeSrc":"5804:67:1","nodeType":"YulFunctionCall","src":"5804:67:1"},"variableNames":[{"name":"pos","nativeSrc":"5797:3:1","nodeType":"YulIdentifier","src":"5797:3:1"}]},{"expression":{"arguments":[{"name":"pos","nativeSrc":"5969:3:1","nodeType":"YulIdentifier","src":"5969:3:1"}],"functionName":{"name":"store_literal_in_memory_13e75ff1b0a6ca9bca87c24c1936118dd10a3ec174f359ad2a8c3d901173470e","nativeSrc":"5880:88:1","nodeType":"YulIdentifier","src":"5880:88:1"},"nativeSrc":"5880:93:1","nodeType":"YulFunctionCall","src":"5880:93:1"},"nativeSrc":"5880:93:1","nodeType":"YulExpressionStatement","src":"5880:93:1"},{"nativeSrc":"5982:19:1","nodeType":"YulAssignment","src":"5982:19:1","value":{"arguments":[{"name":"pos","nativeSrc":"5993:3:1","nodeType":"YulIdentifier","src":"5993:3:1"},{"kind":"number","nativeSrc":"5998:2:1","nodeType":"YulLiteral","src":"5998:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"5989:3:1","nodeType":"YulIdentifier","src":"5989:3:1"},"nativeSrc":"5989:12:1","nodeType":"YulFunctionCall","src":"5989:12:1"},"variableNames":[{"name":"end","nativeSrc":"5982:3:1","nodeType":"YulIdentifier","src":"5982:3:1"}]}]},"name":"abi_encode_t_stringliteral_13e75ff1b0a6ca9bca87c24c1936118dd10a3ec174f359ad2a8c3d901173470e_to_t_string_memory_ptr_fromStack","nativeSrc":"5641:366:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"5775:3:1","nodeType":"YulTypedName","src":"5775:3:1","type":""}],"returnVariables":[{"name":"end","nativeSrc":"5783:3:1","nodeType":"YulTypedName","src":"5783:3:1","type":""}],"src":"5641:366:1"},{"body":{"nativeSrc":"6184:248:1","nodeType":"YulBlock","src":"6184:248:1","statements":[{"nativeSrc":"6194:26:1","nodeType":"YulAssignment","src":"6194:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"6206:9:1","nodeType":"YulIdentifier","src":"6206:9:1"},{"kind":"number","nativeSrc":"6217:2:1","nodeType":"YulLiteral","src":"6217:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"6202:3:1","nodeType":"YulIdentifier","src":"6202:3:1"},"nativeSrc":"6202:18:1","nodeType":"YulFunctionCall","src":"6202:18:1"},"variableNames":[{"name":"tail","nativeSrc":"6194:4:1","nodeType":"YulIdentifier","src":"6194:4:1"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"6241:9:1","nodeType":"YulIdentifier","src":"6241:9:1"},{"kind":"number","nativeSrc":"6252:1:1","nodeType":"YulLiteral","src":"6252:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"6237:3:1","nodeType":"YulIdentifier","src":"6237:3:1"},"nativeSrc":"6237:17:1","nodeType":"YulFunctionCall","src":"6237:17:1"},{"arguments":[{"name":"tail","nativeSrc":"6260:4:1","nodeType":"YulIdentifier","src":"6260:4:1"},{"name":"headStart","nativeSrc":"6266:9:1","nodeType":"YulIdentifier","src":"6266:9:1"}],"functionName":{"name":"sub","nativeSrc":"6256:3:1","nodeType":"YulIdentifier","src":"6256:3:1"},"nativeSrc":"6256:20:1","nodeType":"YulFunctionCall","src":"6256:20:1"}],"functionName":{"name":"mstore","nativeSrc":"6230:6:1","nodeType":"YulIdentifier","src":"6230:6:1"},"nativeSrc":"6230:47:1","nodeType":"YulFunctionCall","src":"6230:47:1"},"nativeSrc":"6230:47:1","nodeType":"YulExpressionStatement","src":"6230:47:1"},{"nativeSrc":"6286:139:1","nodeType":"YulAssignment","src":"6286:139:1","value":{"arguments":[{"name":"tail","nativeSrc":"6420:4:1","nodeType":"YulIdentifier","src":"6420:4:1"}],"functionName":{"name":"abi_encode_t_stringliteral_13e75ff1b0a6ca9bca87c24c1936118dd10a3ec174f359ad2a8c3d901173470e_to_t_string_memory_ptr_fromStack","nativeSrc":"6294:124:1","nodeType":"YulIdentifier","src":"6294:124:1"},"nativeSrc":"6294:131:1","nodeType":"YulFunctionCall","src":"6294:131:1"},"variableNames":[{"name":"tail","nativeSrc":"6286:4:1","nodeType":"YulIdentifier","src":"6286:4:1"}]}]},"name":"abi_encode_tuple_t_stringliteral_13e75ff1b0a6ca9bca87c24c1936118dd10a3ec174f359ad2a8c3d901173470e__to_t_string_memory_ptr__fromStack_reversed","nativeSrc":"6013:419:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"6164:9:1","nodeType":"YulTypedName","src":"6164:9:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"6179:4:1","nodeType":"YulTypedName","src":"6179:4:1","type":""}],"src":"6013:419:1"},{"body":{"nativeSrc":"6466:152:1","nodeType":"YulBlock","src":"6466:152:1","statements":[{"expression":{"arguments":[{"kind":"number","nativeSrc":"6483:1:1","nodeType":"YulLiteral","src":"6483:1:1","type":"","value":"0"},{"kind":"number","nativeSrc":"6486:77:1","nodeType":"YulLiteral","src":"6486:77:1","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nativeSrc":"6476:6:1","nodeType":"YulIdentifier","src":"6476:6:1"},"nativeSrc":"6476:88:1","nodeType":"YulFunctionCall","src":"6476:88:1"},"nativeSrc":"6476:88:1","nodeType":"YulExpressionStatement","src":"6476:88:1"},{"expression":{"arguments":[{"kind":"number","nativeSrc":"6580:1:1","nodeType":"YulLiteral","src":"6580:1:1","type":"","value":"4"},{"kind":"number","nativeSrc":"6583:4:1","nodeType":"YulLiteral","src":"6583:4:1","type":"","value":"0x11"}],"functionName":{"name":"mstore","nativeSrc":"6573:6:1","nodeType":"YulIdentifier","src":"6573:6:1"},"nativeSrc":"6573:15:1","nodeType":"YulFunctionCall","src":"6573:15:1"},"nativeSrc":"6573:15:1","nodeType":"YulExpressionStatement","src":"6573:15:1"},{"expression":{"arguments":[{"kind":"number","nativeSrc":"6604:1:1","nodeType":"YulLiteral","src":"6604:1:1","type":"","value":"0"},{"kind":"number","nativeSrc":"6607:4:1","nodeType":"YulLiteral","src":"6607:4:1","type":"","value":"0x24"}],"functionName":{"name":"revert","nativeSrc":"6597:6:1","nodeType":"YulIdentifier","src":"6597:6:1"},"nativeSrc":"6597:15:1","nodeType":"YulFunctionCall","src":"6597:15:1"},"nativeSrc":"6597:15:1","nodeType":"YulExpressionStatement","src":"6597:15:1"}]},"name":"panic_error_0x11","nativeSrc":"6438:180:1","nodeType":"YulFunctionDefinition","src":"6438:180:1"},{"body":{"nativeSrc":"6668:147:1","nodeType":"YulBlock","src":"6668:147:1","statements":[{"nativeSrc":"6678:25:1","nodeType":"YulAssignment","src":"6678:25:1","value":{"arguments":[{"name":"x","nativeSrc":"6701:1:1","nodeType":"YulIdentifier","src":"6701:1:1"}],"functionName":{"name":"cleanup_t_uint256","nativeSrc":"6683:17:1","nodeType":"YulIdentifier","src":"6683:17:1"},"nativeSrc":"6683:20:1","nodeType":"YulFunctionCall","src":"6683:20:1"},"variableNames":[{"name":"x","nativeSrc":"6678:1:1","nodeType":"YulIdentifier","src":"6678:1:1"}]},{"nativeSrc":"6712:25:1","nodeType":"YulAssignment","src":"6712:25:1","value":{"arguments":[{"name":"y","nativeSrc":"6735:1:1","nodeType":"YulIdentifier","src":"6735:1:1"}],"functionName":{"name":"cleanup_t_uint256","nativeSrc":"6717:17:1","nodeType":"YulIdentifier","src":"6717:17:1"},"nativeSrc":"6717:20:1","nodeType":"YulFunctionCall","src":"6717:20:1"},"variableNames":[{"name":"y","nativeSrc":"6712:1:1","nodeType":"YulIdentifier","src":"6712:1:1"}]},{"nativeSrc":"6746:16:1","nodeType":"YulAssignment","src":"6746:16:1","value":{"arguments":[{"name":"x","nativeSrc":"6757:1:1","nodeType":"YulIdentifier","src":"6757:1:1"},{"name":"y","nativeSrc":"6760:1:1","nodeType":"YulIdentifier","src":"6760:1:1"}],"functionName":{"name":"add","nativeSrc":"6753:3:1","nodeType":"YulIdentifier","src":"6753:3:1"},"nativeSrc":"6753:9:1","nodeType":"YulFunctionCall","src":"6753:9:1"},"variableNames":[{"name":"sum","nativeSrc":"6746:3:1","nodeType":"YulIdentifier","src":"6746:3:1"}]},{"body":{"nativeSrc":"6786:22:1","nodeType":"YulBlock","src":"6786:22:1","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nativeSrc":"6788:16:1","nodeType":"YulIdentifier","src":"6788:16:1"},"nativeSrc":"6788:18:1","nodeType":"YulFunctionCall","src":"6788:18:1"},"nativeSrc":"6788:18:1","nodeType":"YulExpressionStatement","src":"6788:18:1"}]},"condition":{"arguments":[{"name":"x","nativeSrc":"6778:1:1","nodeType":"YulIdentifier","src":"6778:1:1"},{"name":"sum","nativeSrc":"6781:3:1","nodeType":"YulIdentifier","src":"6781:3:1"}],"functionName":{"name":"gt","nativeSrc":"6775:2:1","nodeType":"YulIdentifier","src":"6775:2:1"},"nativeSrc":"6775:10:1","nodeType":"YulFunctionCall","src":"6775:10:1"},"nativeSrc":"6772:36:1","nodeType":"YulIf","src":"6772:36:1"}]},"name":"checked_add_t_uint256","nativeSrc":"6624:191:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nativeSrc":"6655:1:1","nodeType":"YulTypedName","src":"6655:1:1","type":""},{"name":"y","nativeSrc":"6658:1:1","nodeType":"YulTypedName","src":"6658:1:1","type":""}],"returnVariables":[{"name":"sum","nativeSrc":"6664:3:1","nodeType":"YulTypedName","src":"6664:3:1","type":""}],"src":"6624:191:1"},{"body":{"nativeSrc":"6927:54:1","nodeType":"YulBlock","src":"6927:54:1","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nativeSrc":"6949:6:1","nodeType":"YulIdentifier","src":"6949:6:1"},{"kind":"number","nativeSrc":"6957:1:1","nodeType":"YulLiteral","src":"6957:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"6945:3:1","nodeType":"YulIdentifier","src":"6945:3:1"},"nativeSrc":"6945:14:1","nodeType":"YulFunctionCall","src":"6945:14:1"},{"hexValue":"5265656e7472616e6379","kind":"string","nativeSrc":"6961:12:1","nodeType":"YulLiteral","src":"6961:12:1","type":"","value":"Reentrancy"}],"functionName":{"name":"mstore","nativeSrc":"6938:6:1","nodeType":"YulIdentifier","src":"6938:6:1"},"nativeSrc":"6938:36:1","nodeType":"YulFunctionCall","src":"6938:36:1"},"nativeSrc":"6938:36:1","nodeType":"YulExpressionStatement","src":"6938:36:1"}]},"name":"store_literal_in_memory_467b8b8587ba88511be913c7407f7cca76ad98c06a2fa45de2edfa50da724f97","nativeSrc":"6821:160:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nativeSrc":"6919:6:1","nodeType":"YulTypedName","src":"6919:6:1","type":""}],"src":"6821:160:1"},{"body":{"nativeSrc":"7133:220:1","nodeType":"YulBlock","src":"7133:220:1","statements":[{"nativeSrc":"7143:74:1","nodeType":"YulAssignment","src":"7143:74:1","value":{"arguments":[{"name":"pos","nativeSrc":"7209:3:1","nodeType":"YulIdentifier","src":"7209:3:1"},{"kind":"number","nativeSrc":"7214:2:1","nodeType":"YulLiteral","src":"7214:2:1","type":"","value":"10"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nativeSrc":"7150:58:1","nodeType":"YulIdentifier","src":"7150:58:1"},"nativeSrc":"7150:67:1","nodeType":"YulFunctionCall","src":"7150:67:1"},"variableNames":[{"name":"pos","nativeSrc":"7143:3:1","nodeType":"YulIdentifier","src":"7143:3:1"}]},{"expression":{"arguments":[{"name":"pos","nativeSrc":"7315:3:1","nodeType":"YulIdentifier","src":"7315:3:1"}],"functionName":{"name":"store_literal_in_memory_467b8b8587ba88511be913c7407f7cca76ad98c06a2fa45de2edfa50da724f97","nativeSrc":"7226:88:1","nodeType":"YulIdentifier","src":"7226:88:1"},"nativeSrc":"7226:93:1","nodeType":"YulFunctionCall","src":"7226:93:1"},"nativeSrc":"7226:93:1","nodeType":"YulExpressionStatement","src":"7226:93:1"},{"nativeSrc":"7328:19:1","nodeType":"YulAssignment","src":"7328:19:1","value":{"arguments":[{"name":"pos","nativeSrc":"7339:3:1","nodeType":"YulIdentifier","src":"7339:3:1"},{"kind":"number","nativeSrc":"7344:2:1","nodeType":"YulLiteral","src":"7344:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"7335:3:1","nodeType":"YulIdentifier","src":"7335:3:1"},"nativeSrc":"7335:12:1","nodeType":"YulFunctionCall","src":"7335:12:1"},"variableNames":[{"name":"end","nativeSrc":"7328:3:1","nodeType":"YulIdentifier","src":"7328:3:1"}]}]},"name":"abi_encode_t_stringliteral_467b8b8587ba88511be913c7407f7cca76ad98c06a2fa45de2edfa50da724f97_to_t_string_memory_ptr_fromStack","nativeSrc":"6987:366:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"7121:3:1","nodeType":"YulTypedName","src":"7121:3:1","type":""}],"returnVariables":[{"name":"end","nativeSrc":"7129:3:1","nodeType":"YulTypedName","src":"7129:3:1","type":""}],"src":"6987:366:1"},{"body":{"nativeSrc":"7530:248:1","nodeType":"YulBlock","src":"7530:248:1","statements":[{"nativeSrc":"7540:26:1","nodeType":"YulAssignment","src":"7540:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"7552:9:1","nodeType":"YulIdentifier","src":"7552:9:1"},{"kind":"number","nativeSrc":"7563:2:1","nodeType":"YulLiteral","src":"7563:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"7548:3:1","nodeType":"YulIdentifier","src":"7548:3:1"},"nativeSrc":"7548:18:1","nodeType":"YulFunctionCall","src":"7548:18:1"},"variableNames":[{"name":"tail","nativeSrc":"7540:4:1","nodeType":"YulIdentifier","src":"7540:4:1"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"7587:9:1","nodeType":"YulIdentifier","src":"7587:9:1"},{"kind":"number","nativeSrc":"7598:1:1","nodeType":"YulLiteral","src":"7598:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"7583:3:1","nodeType":"YulIdentifier","src":"7583:3:1"},"nativeSrc":"7583:17:1","nodeType":"YulFunctionCall","src":"7583:17:1"},{"arguments":[{"name":"tail","nativeSrc":"7606:4:1","nodeType":"YulIdentifier","src":"7606:4:1"},{"name":"headStart","nativeSrc":"7612:9:1","nodeType":"YulIdentifier","src":"7612:9:1"}],"functionName":{"name":"sub","nativeSrc":"7602:3:1","nodeType":"YulIdentifier","src":"7602:3:1"},"nativeSrc":"7602:20:1","nodeType":"YulFunctionCall","src":"7602:20:1"}],"functionName":{"name":"mstore","nativeSrc":"7576:6:1","nodeType":"YulIdentifier","src":"7576:6:1"},"nativeSrc":"7576:47:1","nodeType":"YulFunctionCall","src":"7576:47:1"},"nativeSrc":"7576:47:1","nodeType":"YulExpressionStatement","src":"7576:47:1"},{"nativeSrc":"7632:139:1","nodeType":"YulAssignment","src":"7632:139:1","value":{"arguments":[{"name":"tail","nativeSrc":"7766:4:1","nodeType":"YulIdentifier","src":"7766:4:1"}],"functionName":{"name":"abi_encode_t_stringliteral_467b8b8587ba88511be913c7407f7cca76ad98c06a2fa45de2edfa50da724f97_to_t_string_memory_ptr_fromStack","nativeSrc":"7640:124:1","nodeType":"YulIdentifier","src":"7640:124:1"},"nativeSrc":"7640:131:1","nodeType":"YulFunctionCall","src":"7640:131:1"},"variableNames":[{"name":"tail","nativeSrc":"7632:4:1","nodeType":"YulIdentifier","src":"7632:4:1"}]}]},"name":"abi_encode_tuple_t_stringliteral_467b8b8587ba88511be913c7407f7cca76ad98c06a2fa45de2edfa50da724f97__to_t_string_memory_ptr__fromStack_reversed","nativeSrc":"7359:419:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"7510:9:1","nodeType":"YulTypedName","src":"7510:9:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"7525:4:1","nodeType":"YulTypedName","src":"7525:4:1","type":""}],"src":"7359:419:1"},{"body":{"nativeSrc":"7890:53:1","nodeType":"YulBlock","src":"7890:53:1","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nativeSrc":"7912:6:1","nodeType":"YulIdentifier","src":"7912:6:1"},{"kind":"number","nativeSrc":"7920:1:1","nodeType":"YulLiteral","src":"7920:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"7908:3:1","nodeType":"YulIdentifier","src":"7908:3:1"},"nativeSrc":"7908:14:1","nodeType":"YulFunctionCall","src":"7908:14:1"},{"hexValue":"4e6f20726566756e64","kind":"string","nativeSrc":"7924:11:1","nodeType":"YulLiteral","src":"7924:11:1","type":"","value":"No refund"}],"functionName":{"name":"mstore","nativeSrc":"7901:6:1","nodeType":"YulIdentifier","src":"7901:6:1"},"nativeSrc":"7901:35:1","nodeType":"YulFunctionCall","src":"7901:35:1"},"nativeSrc":"7901:35:1","nodeType":"YulExpressionStatement","src":"7901:35:1"}]},"name":"store_literal_in_memory_6550a6289f93e91f607ed5f062d48d2a2f49dff99feaaa73478c8f1be16aa901","nativeSrc":"7784:159:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nativeSrc":"7882:6:1","nodeType":"YulTypedName","src":"7882:6:1","type":""}],"src":"7784:159:1"},{"body":{"nativeSrc":"8095:219:1","nodeType":"YulBlock","src":"8095:219:1","statements":[{"nativeSrc":"8105:73:1","nodeType":"YulAssignment","src":"8105:73:1","value":{"arguments":[{"name":"pos","nativeSrc":"8171:3:1","nodeType":"YulIdentifier","src":"8171:3:1"},{"kind":"number","nativeSrc":"8176:1:1","nodeType":"YulLiteral","src":"8176:1:1","type":"","value":"9"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nativeSrc":"8112:58:1","nodeType":"YulIdentifier","src":"8112:58:1"},"nativeSrc":"8112:66:1","nodeType":"YulFunctionCall","src":"8112:66:1"},"variableNames":[{"name":"pos","nativeSrc":"8105:3:1","nodeType":"YulIdentifier","src":"8105:3:1"}]},{"expression":{"arguments":[{"name":"pos","nativeSrc":"8276:3:1","nodeType":"YulIdentifier","src":"8276:3:1"}],"functionName":{"name":"store_literal_in_memory_6550a6289f93e91f607ed5f062d48d2a2f49dff99feaaa73478c8f1be16aa901","nativeSrc":"8187:88:1","nodeType":"YulIdentifier","src":"8187:88:1"},"nativeSrc":"8187:93:1","nodeType":"YulFunctionCall","src":"8187:93:1"},"nativeSrc":"8187:93:1","nodeType":"YulExpressionStatement","src":"8187:93:1"},{"nativeSrc":"8289:19:1","nodeType":"YulAssignment","src":"8289:19:1","value":{"arguments":[{"name":"pos","nativeSrc":"8300:3:1","nodeType":"YulIdentifier","src":"8300:3:1"},{"kind":"number","nativeSrc":"8305:2:1","nodeType":"YulLiteral","src":"8305:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"8296:3:1","nodeType":"YulIdentifier","src":"8296:3:1"},"nativeSrc":"8296:12:1","nodeType":"YulFunctionCall","src":"8296:12:1"},"variableNames":[{"name":"end","nativeSrc":"8289:3:1","nodeType":"YulIdentifier","src":"8289:3:1"}]}]},"name":"abi_encode_t_stringliteral_6550a6289f93e91f607ed5f062d48d2a2f49dff99feaaa73478c8f1be16aa901_to_t_string_memory_ptr_fromStack","nativeSrc":"7949:365:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"8083:3:1","nodeType":"YulTypedName","src":"8083:3:1","type":""}],"returnVariables":[{"name":"end","nativeSrc":"8091:3:1","nodeType":"YulTypedName","src":"8091:3:1","type":""}],"src":"7949:365:1"},{"body":{"nativeSrc":"8491:248:1","nodeType":"YulBlock","src":"8491:248:1","statements":[{"nativeSrc":"8501:26:1","nodeType":"YulAssignment","src":"8501:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"8513:9:1","nodeType":"YulIdentifier","src":"8513:9:1"},{"kind":"number","nativeSrc":"8524:2:1","nodeType":"YulLiteral","src":"8524:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"8509:3:1","nodeType":"YulIdentifier","src":"8509:3:1"},"nativeSrc":"8509:18:1","nodeType":"YulFunctionCall","src":"8509:18:1"},"variableNames":[{"name":"tail","nativeSrc":"8501:4:1","nodeType":"YulIdentifier","src":"8501:4:1"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"8548:9:1","nodeType":"YulIdentifier","src":"8548:9:1"},{"kind":"number","nativeSrc":"8559:1:1","nodeType":"YulLiteral","src":"8559:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"8544:3:1","nodeType":"YulIdentifier","src":"8544:3:1"},"nativeSrc":"8544:17:1","nodeType":"YulFunctionCall","src":"8544:17:1"},{"arguments":[{"name":"tail","nativeSrc":"8567:4:1","nodeType":"YulIdentifier","src":"8567:4:1"},{"name":"headStart","nativeSrc":"8573:9:1","nodeType":"YulIdentifier","src":"8573:9:1"}],"functionName":{"name":"sub","nativeSrc":"8563:3:1","nodeType":"YulIdentifier","src":"8563:3:1"},"nativeSrc":"8563:20:1","nodeType":"YulFunctionCall","src":"8563:20:1"}],"functionName":{"name":"mstore","nativeSrc":"8537:6:1","nodeType":"YulIdentifier","src":"8537:6:1"},"nativeSrc":"8537:47:1","nodeType":"YulFunctionCall","src":"8537:47:1"},"nativeSrc":"8537:47:1","nodeType":"YulExpressionStatement","src":"8537:47:1"},{"nativeSrc":"8593:139:1","nodeType":"YulAssignment","src":"8593:139:1","value":{"arguments":[{"name":"tail","nativeSrc":"8727:4:1","nodeType":"YulIdentifier","src":"8727:4:1"}],"functionName":{"name":"abi_encode_t_stringliteral_6550a6289f93e91f607ed5f062d48d2a2f49dff99feaaa73478c8f1be16aa901_to_t_string_memory_ptr_fromStack","nativeSrc":"8601:124:1","nodeType":"YulIdentifier","src":"8601:124:1"},"nativeSrc":"8601:131:1","nodeType":"YulFunctionCall","src":"8601:131:1"},"variableNames":[{"name":"tail","nativeSrc":"8593:4:1","nodeType":"YulIdentifier","src":"8593:4:1"}]}]},"name":"abi_encode_tuple_t_stringliteral_6550a6289f93e91f607ed5f062d48d2a2f49dff99feaaa73478c8f1be16aa901__to_t_string_memory_ptr__fromStack_reversed","nativeSrc":"8320:419:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"8471:9:1","nodeType":"YulTypedName","src":"8471:9:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"8486:4:1","nodeType":"YulTypedName","src":"8486:4:1","type":""}],"src":"8320:419:1"},{"body":{"nativeSrc":"8858:34:1","nodeType":"YulBlock","src":"8858:34:1","statements":[{"nativeSrc":"8868:18:1","nodeType":"YulAssignment","src":"8868:18:1","value":{"name":"pos","nativeSrc":"8883:3:1","nodeType":"YulIdentifier","src":"8883:3:1"},"variableNames":[{"name":"updated_pos","nativeSrc":"8868:11:1","nodeType":"YulIdentifier","src":"8868:11:1"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nativeSrc":"8745:147:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"8830:3:1","nodeType":"YulTypedName","src":"8830:3:1","type":""},{"name":"length","nativeSrc":"8835:6:1","nodeType":"YulTypedName","src":"8835:6:1","type":""}],"returnVariables":[{"name":"updated_pos","nativeSrc":"8846:11:1","nodeType":"YulTypedName","src":"8846:11:1","type":""}],"src":"8745:147:1"},{"body":{"nativeSrc":"9004:8:1","nodeType":"YulBlock","src":"9004:8:1","statements":[]},"name":"store_literal_in_memory_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","nativeSrc":"8898:114:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nativeSrc":"8996:6:1","nodeType":"YulTypedName","src":"8996:6:1","type":""}],"src":"8898:114:1"},{"body":{"nativeSrc":"9181:235:1","nodeType":"YulBlock","src":"9181:235:1","statements":[{"nativeSrc":"9191:90:1","nodeType":"YulAssignment","src":"9191:90:1","value":{"arguments":[{"name":"pos","nativeSrc":"9274:3:1","nodeType":"YulIdentifier","src":"9274:3:1"},{"kind":"number","nativeSrc":"9279:1:1","nodeType":"YulLiteral","src":"9279:1:1","type":"","value":"0"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nativeSrc":"9198:75:1","nodeType":"YulIdentifier","src":"9198:75:1"},"nativeSrc":"9198:83:1","nodeType":"YulFunctionCall","src":"9198:83:1"},"variableNames":[{"name":"pos","nativeSrc":"9191:3:1","nodeType":"YulIdentifier","src":"9191:3:1"}]},{"expression":{"arguments":[{"name":"pos","nativeSrc":"9379:3:1","nodeType":"YulIdentifier","src":"9379:3:1"}],"functionName":{"name":"store_literal_in_memory_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","nativeSrc":"9290:88:1","nodeType":"YulIdentifier","src":"9290:88:1"},"nativeSrc":"9290:93:1","nodeType":"YulFunctionCall","src":"9290:93:1"},"nativeSrc":"9290:93:1","nodeType":"YulExpressionStatement","src":"9290:93:1"},{"nativeSrc":"9392:18:1","nodeType":"YulAssignment","src":"9392:18:1","value":{"arguments":[{"name":"pos","nativeSrc":"9403:3:1","nodeType":"YulIdentifier","src":"9403:3:1"},{"kind":"number","nativeSrc":"9408:1:1","nodeType":"YulLiteral","src":"9408:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"9399:3:1","nodeType":"YulIdentifier","src":"9399:3:1"},"nativeSrc":"9399:11:1","nodeType":"YulFunctionCall","src":"9399:11:1"},"variableNames":[{"name":"end","nativeSrc":"9392:3:1","nodeType":"YulIdentifier","src":"9392:3:1"}]}]},"name":"abi_encode_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nativeSrc":"9018:398:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"9169:3:1","nodeType":"YulTypedName","src":"9169:3:1","type":""}],"returnVariables":[{"name":"end","nativeSrc":"9177:3:1","nodeType":"YulTypedName","src":"9177:3:1","type":""}],"src":"9018:398:1"},{"body":{"nativeSrc":"9610:191:1","nodeType":"YulBlock","src":"9610:191:1","statements":[{"nativeSrc":"9621:154:1","nodeType":"YulAssignment","src":"9621:154:1","value":{"arguments":[{"name":"pos","nativeSrc":"9771:3:1","nodeType":"YulIdentifier","src":"9771:3:1"}],"functionName":{"name":"abi_encode_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nativeSrc":"9628:141:1","nodeType":"YulIdentifier","src":"9628:141:1"},"nativeSrc":"9628:147:1","nodeType":"YulFunctionCall","src":"9628:147:1"},"variableNames":[{"name":"pos","nativeSrc":"9621:3:1","nodeType":"YulIdentifier","src":"9621:3:1"}]},{"nativeSrc":"9785:10:1","nodeType":"YulAssignment","src":"9785:10:1","value":{"name":"pos","nativeSrc":"9792:3:1","nodeType":"YulIdentifier","src":"9792:3:1"},"variableNames":[{"name":"end","nativeSrc":"9785:3:1","nodeType":"YulIdentifier","src":"9785:3:1"}]}]},"name":"abi_encode_tuple_packed_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed","nativeSrc":"9422:379:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"9597:3:1","nodeType":"YulTypedName","src":"9597:3:1","type":""}],"returnVariables":[{"name":"end","nativeSrc":"9606:3:1","nodeType":"YulTypedName","src":"9606:3:1","type":""}],"src":"9422:379:1"},{"body":{"nativeSrc":"9913:57:1","nodeType":"YulBlock","src":"9913:57:1","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nativeSrc":"9935:6:1","nodeType":"YulIdentifier","src":"9935:6:1"},{"kind":"number","nativeSrc":"9943:1:1","nodeType":"YulLiteral","src":"9943:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"9931:3:1","nodeType":"YulIdentifier","src":"9931:3:1"},"nativeSrc":"9931:14:1","nodeType":"YulFunctionCall","src":"9931:14:1"},{"hexValue":"526566756e64206661696c6564","kind":"string","nativeSrc":"9947:15:1","nodeType":"YulLiteral","src":"9947:15:1","type":"","value":"Refund failed"}],"functionName":{"name":"mstore","nativeSrc":"9924:6:1","nodeType":"YulIdentifier","src":"9924:6:1"},"nativeSrc":"9924:39:1","nodeType":"YulFunctionCall","src":"9924:39:1"},"nativeSrc":"9924:39:1","nodeType":"YulExpressionStatement","src":"9924:39:1"}]},"name":"store_literal_in_memory_940ea0545bf4a4779ef86217d18a28c86bb09c07d43dd7635f3da6878953d25e","nativeSrc":"9807:163:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nativeSrc":"9905:6:1","nodeType":"YulTypedName","src":"9905:6:1","type":""}],"src":"9807:163:1"},{"body":{"nativeSrc":"10122:220:1","nodeType":"YulBlock","src":"10122:220:1","statements":[{"nativeSrc":"10132:74:1","nodeType":"YulAssignment","src":"10132:74:1","value":{"arguments":[{"name":"pos","nativeSrc":"10198:3:1","nodeType":"YulIdentifier","src":"10198:3:1"},{"kind":"number","nativeSrc":"10203:2:1","nodeType":"YulLiteral","src":"10203:2:1","type":"","value":"13"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nativeSrc":"10139:58:1","nodeType":"YulIdentifier","src":"10139:58:1"},"nativeSrc":"10139:67:1","nodeType":"YulFunctionCall","src":"10139:67:1"},"variableNames":[{"name":"pos","nativeSrc":"10132:3:1","nodeType":"YulIdentifier","src":"10132:3:1"}]},{"expression":{"arguments":[{"name":"pos","nativeSrc":"10304:3:1","nodeType":"YulIdentifier","src":"10304:3:1"}],"functionName":{"name":"store_literal_in_memory_940ea0545bf4a4779ef86217d18a28c86bb09c07d43dd7635f3da6878953d25e","nativeSrc":"10215:88:1","nodeType":"YulIdentifier","src":"10215:88:1"},"nativeSrc":"10215:93:1","nodeType":"YulFunctionCall","src":"10215:93:1"},"nativeSrc":"10215:93:1","nodeType":"YulExpressionStatement","src":"10215:93:1"},{"nativeSrc":"10317:19:1","nodeType":"YulAssignment","src":"10317:19:1","value":{"arguments":[{"name":"pos","nativeSrc":"10328:3:1","nodeType":"YulIdentifier","src":"10328:3:1"},{"kind":"number","nativeSrc":"10333:2:1","nodeType":"YulLiteral","src":"10333:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"10324:3:1","nodeType":"YulIdentifier","src":"10324:3:1"},"nativeSrc":"10324:12:1","nodeType":"YulFunctionCall","src":"10324:12:1"},"variableNames":[{"name":"end","nativeSrc":"10317:3:1","nodeType":"YulIdentifier","src":"10317:3:1"}]}]},"name":"abi_encode_t_stringliteral_940ea0545bf4a4779ef86217d18a28c86bb09c07d43dd7635f3da6878953d25e_to_t_string_memory_ptr_fromStack","nativeSrc":"9976:366:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"10110:3:1","nodeType":"YulTypedName","src":"10110:3:1","type":""}],"returnVariables":[{"name":"end","nativeSrc":"10118:3:1","nodeType":"YulTypedName","src":"10118:3:1","type":""}],"src":"9976:366:1"},{"body":{"nativeSrc":"10519:248:1","nodeType":"YulBlock","src":"10519:248:1","statements":[{"nativeSrc":"10529:26:1","nodeType":"YulAssignment","src":"10529:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"10541:9:1","nodeType":"YulIdentifier","src":"10541:9:1"},{"kind":"number","nativeSrc":"10552:2:1","nodeType":"YulLiteral","src":"10552:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"10537:3:1","nodeType":"YulIdentifier","src":"10537:3:1"},"nativeSrc":"10537:18:1","nodeType":"YulFunctionCall","src":"10537:18:1"},"variableNames":[{"name":"tail","nativeSrc":"10529:4:1","nodeType":"YulIdentifier","src":"10529:4:1"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"10576:9:1","nodeType":"YulIdentifier","src":"10576:9:1"},{"kind":"number","nativeSrc":"10587:1:1","nodeType":"YulLiteral","src":"10587:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"10572:3:1","nodeType":"YulIdentifier","src":"10572:3:1"},"nativeSrc":"10572:17:1","nodeType":"YulFunctionCall","src":"10572:17:1"},{"arguments":[{"name":"tail","nativeSrc":"10595:4:1","nodeType":"YulIdentifier","src":"10595:4:1"},{"name":"headStart","nativeSrc":"10601:9:1","nodeType":"YulIdentifier","src":"10601:9:1"}],"functionName":{"name":"sub","nativeSrc":"10591:3:1","nodeType":"YulIdentifier","src":"10591:3:1"},"nativeSrc":"10591:20:1","nodeType":"YulFunctionCall","src":"10591:20:1"}],"functionName":{"name":"mstore","nativeSrc":"10565:6:1","nodeType":"YulIdentifier","src":"10565:6:1"},"nativeSrc":"10565:47:1","nodeType":"YulFunctionCall","src":"10565:47:1"},"nativeSrc":"10565:47:1","nodeType":"YulExpressionStatement","src":"10565:47:1"},{"nativeSrc":"10621:139:1","nodeType":"YulAssignment","src":"10621:139:1","value":{"arguments":[{"name":"tail","nativeSrc":"10755:4:1","nodeType":"YulIdentifier","src":"10755:4:1"}],"functionName":{"name":"abi_encode_t_stringliteral_940ea0545bf4a4779ef86217d18a28c86bb09c07d43dd7635f3da6878953d25e_to_t_string_memory_ptr_fromStack","nativeSrc":"10629:124:1","nodeType":"YulIdentifier","src":"10629:124:1"},"nativeSrc":"10629:131:1","nodeType":"YulFunctionCall","src":"10629:131:1"},"variableNames":[{"name":"tail","nativeSrc":"10621:4:1","nodeType":"YulIdentifier","src":"10621:4:1"}]}]},"name":"abi_encode_tuple_t_stringliteral_940ea0545bf4a4779ef86217d18a28c86bb09c07d43dd7635f3da6878953d25e__to_t_string_memory_ptr__fromStack_reversed","nativeSrc":"10348:419:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"10499:9:1","nodeType":"YulTypedName","src":"10499:9:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"10514:4:1","nodeType":"YulTypedName","src":"10514:4:1","type":""}],"src":"10348:419:1"},{"body":{"nativeSrc":"10879:54:1","nodeType":"YulBlock","src":"10879:54:1","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nativeSrc":"10901:6:1","nodeType":"YulIdentifier","src":"10901:6:1"},{"kind":"number","nativeSrc":"10909:1:1","nodeType":"YulLiteral","src":"10909:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"10897:3:1","nodeType":"YulIdentifier","src":"10897:3:1"},"nativeSrc":"10897:14:1","nodeType":"YulFunctionCall","src":"10897:14:1"},{"hexValue":"4f6e6c79206f776e6572","kind":"string","nativeSrc":"10913:12:1","nodeType":"YulLiteral","src":"10913:12:1","type":"","value":"Only owner"}],"functionName":{"name":"mstore","nativeSrc":"10890:6:1","nodeType":"YulIdentifier","src":"10890:6:1"},"nativeSrc":"10890:36:1","nodeType":"YulFunctionCall","src":"10890:36:1"},"nativeSrc":"10890:36:1","nodeType":"YulExpressionStatement","src":"10890:36:1"}]},"name":"store_literal_in_memory_17d9f114efaa93d67eedad749dd7fd16a6895ff93e28b7a30c667a069f2ed42d","nativeSrc":"10773:160:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nativeSrc":"10871:6:1","nodeType":"YulTypedName","src":"10871:6:1","type":""}],"src":"10773:160:1"},{"body":{"nativeSrc":"11085:220:1","nodeType":"YulBlock","src":"11085:220:1","statements":[{"nativeSrc":"11095:74:1","nodeType":"YulAssignment","src":"11095:74:1","value":{"arguments":[{"name":"pos","nativeSrc":"11161:3:1","nodeType":"YulIdentifier","src":"11161:3:1"},{"kind":"number","nativeSrc":"11166:2:1","nodeType":"YulLiteral","src":"11166:2:1","type":"","value":"10"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nativeSrc":"11102:58:1","nodeType":"YulIdentifier","src":"11102:58:1"},"nativeSrc":"11102:67:1","nodeType":"YulFunctionCall","src":"11102:67:1"},"variableNames":[{"name":"pos","nativeSrc":"11095:3:1","nodeType":"YulIdentifier","src":"11095:3:1"}]},{"expression":{"arguments":[{"name":"pos","nativeSrc":"11267:3:1","nodeType":"YulIdentifier","src":"11267:3:1"}],"functionName":{"name":"store_literal_in_memory_17d9f114efaa93d67eedad749dd7fd16a6895ff93e28b7a30c667a069f2ed42d","nativeSrc":"11178:88:1","nodeType":"YulIdentifier","src":"11178:88:1"},"nativeSrc":"11178:93:1","nodeType":"YulFunctionCall","src":"11178:93:1"},"nativeSrc":"11178:93:1","nodeType":"YulExpressionStatement","src":"11178:93:1"},{"nativeSrc":"11280:19:1","nodeType":"YulAssignment","src":"11280:19:1","value":{"arguments":[{"name":"pos","nativeSrc":"11291:3:1","nodeType":"YulIdentifier","src":"11291:3:1"},{"kind":"number","nativeSrc":"11296:2:1","nodeType":"YulLiteral","src":"11296:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"11287:3:1","nodeType":"YulIdentifier","src":"11287:3:1"},"nativeSrc":"11287:12:1","nodeType":"YulFunctionCall","src":"11287:12:1"},"variableNames":[{"name":"end","nativeSrc":"11280:3:1","nodeType":"YulIdentifier","src":"11280:3:1"}]}]},"name":"abi_encode_t_stringliteral_17d9f114efaa93d67eedad749dd7fd16a6895ff93e28b7a30c667a069f2ed42d_to_t_string_memory_ptr_fromStack","nativeSrc":"10939:366:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"11073:3:1","nodeType":"YulTypedName","src":"11073:3:1","type":""}],"returnVariables":[{"name":"end","nativeSrc":"11081:3:1","nodeType":"YulTypedName","src":"11081:3:1","type":""}],"src":"10939:366:1"},{"body":{"nativeSrc":"11482:248:1","nodeType":"YulBlock","src":"11482:248:1","statements":[{"nativeSrc":"11492:26:1","nodeType":"YulAssignment","src":"11492:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"11504:9:1","nodeType":"YulIdentifier","src":"11504:9:1"},{"kind":"number","nativeSrc":"11515:2:1","nodeType":"YulLiteral","src":"11515:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"11500:3:1","nodeType":"YulIdentifier","src":"11500:3:1"},"nativeSrc":"11500:18:1","nodeType":"YulFunctionCall","src":"11500:18:1"},"variableNames":[{"name":"tail","nativeSrc":"11492:4:1","nodeType":"YulIdentifier","src":"11492:4:1"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"11539:9:1","nodeType":"YulIdentifier","src":"11539:9:1"},{"kind":"number","nativeSrc":"11550:1:1","nodeType":"YulLiteral","src":"11550:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"11535:3:1","nodeType":"YulIdentifier","src":"11535:3:1"},"nativeSrc":"11535:17:1","nodeType":"YulFunctionCall","src":"11535:17:1"},{"arguments":[{"name":"tail","nativeSrc":"11558:4:1","nodeType":"YulIdentifier","src":"11558:4:1"},{"name":"headStart","nativeSrc":"11564:9:1","nodeType":"YulIdentifier","src":"11564:9:1"}],"functionName":{"name":"sub","nativeSrc":"11554:3:1","nodeType":"YulIdentifier","src":"11554:3:1"},"nativeSrc":"11554:20:1","nodeType":"YulFunctionCall","src":"11554:20:1"}],"functionName":{"name":"mstore","nativeSrc":"11528:6:1","nodeType":"YulIdentifier","src":"11528:6:1"},"nativeSrc":"11528:47:1","nodeType":"YulFunctionCall","src":"11528:47:1"},"nativeSrc":"11528:47:1","nodeType":"YulExpressionStatement","src":"11528:47:1"},{"nativeSrc":"11584:139:1","nodeType":"YulAssignment","src":"11584:139:1","value":{"arguments":[{"name":"tail","nativeSrc":"11718:4:1","nodeType":"YulIdentifier","src":"11718:4:1"}],"functionName":{"name":"abi_encode_t_stringliteral_17d9f114efaa93d67eedad749dd7fd16a6895ff93e28b7a30c667a069f2ed42d_to_t_string_memory_ptr_fromStack","nativeSrc":"11592:124:1","nodeType":"YulIdentifier","src":"11592:124:1"},"nativeSrc":"11592:131:1","nodeType":"YulFunctionCall","src":"11592:131:1"},"variableNames":[{"name":"tail","nativeSrc":"11584:4:1","nodeType":"YulIdentifier","src":"11584:4:1"}]}]},"name":"abi_encode_tuple_t_stringliteral_17d9f114efaa93d67eedad749dd7fd16a6895ff93e28b7a30c667a069f2ed42d__to_t_string_memory_ptr__fromStack_reversed","nativeSrc":"11311:419:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"11462:9:1","nodeType":"YulTypedName","src":"11462:9:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"11477:4:1","nodeType":"YulTypedName","src":"11477:4:1","type":""}],"src":"11311:419:1"},{"body":{"nativeSrc":"11842:61:1","nodeType":"YulBlock","src":"11842:61:1","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nativeSrc":"11864:6:1","nodeType":"YulIdentifier","src":"11864:6:1"},{"kind":"number","nativeSrc":"11872:1:1","nodeType":"YulLiteral","src":"11872:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"11860:3:1","nodeType":"YulIdentifier","src":"11860:3:1"},"nativeSrc":"11860:14:1","nodeType":"YulFunctionCall","src":"11860:14:1"},{"hexValue":"41756374696f6e206e6f7420656e646564","kind":"string","nativeSrc":"11876:19:1","nodeType":"YulLiteral","src":"11876:19:1","type":"","value":"Auction not ended"}],"functionName":{"name":"mstore","nativeSrc":"11853:6:1","nodeType":"YulIdentifier","src":"11853:6:1"},"nativeSrc":"11853:43:1","nodeType":"YulFunctionCall","src":"11853:43:1"},"nativeSrc":"11853:43:1","nodeType":"YulExpressionStatement","src":"11853:43:1"}]},"name":"store_literal_in_memory_567737202f93ce47caa4eb871cc7b9aa316148459129941c928400c1649aa5d4","nativeSrc":"11736:167:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nativeSrc":"11834:6:1","nodeType":"YulTypedName","src":"11834:6:1","type":""}],"src":"11736:167:1"},{"body":{"nativeSrc":"12055:220:1","nodeType":"YulBlock","src":"12055:220:1","statements":[{"nativeSrc":"12065:74:1","nodeType":"YulAssignment","src":"12065:74:1","value":{"arguments":[{"name":"pos","nativeSrc":"12131:3:1","nodeType":"YulIdentifier","src":"12131:3:1"},{"kind":"number","nativeSrc":"12136:2:1","nodeType":"YulLiteral","src":"12136:2:1","type":"","value":"17"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nativeSrc":"12072:58:1","nodeType":"YulIdentifier","src":"12072:58:1"},"nativeSrc":"12072:67:1","nodeType":"YulFunctionCall","src":"12072:67:1"},"variableNames":[{"name":"pos","nativeSrc":"12065:3:1","nodeType":"YulIdentifier","src":"12065:3:1"}]},{"expression":{"arguments":[{"name":"pos","nativeSrc":"12237:3:1","nodeType":"YulIdentifier","src":"12237:3:1"}],"functionName":{"name":"store_literal_in_memory_567737202f93ce47caa4eb871cc7b9aa316148459129941c928400c1649aa5d4","nativeSrc":"12148:88:1","nodeType":"YulIdentifier","src":"12148:88:1"},"nativeSrc":"12148:93:1","nodeType":"YulFunctionCall","src":"12148:93:1"},"nativeSrc":"12148:93:1","nodeType":"YulExpressionStatement","src":"12148:93:1"},{"nativeSrc":"12250:19:1","nodeType":"YulAssignment","src":"12250:19:1","value":{"arguments":[{"name":"pos","nativeSrc":"12261:3:1","nodeType":"YulIdentifier","src":"12261:3:1"},{"kind":"number","nativeSrc":"12266:2:1","nodeType":"YulLiteral","src":"12266:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"12257:3:1","nodeType":"YulIdentifier","src":"12257:3:1"},"nativeSrc":"12257:12:1","nodeType":"YulFunctionCall","src":"12257:12:1"},"variableNames":[{"name":"end","nativeSrc":"12250:3:1","nodeType":"YulIdentifier","src":"12250:3:1"}]}]},"name":"abi_encode_t_stringliteral_567737202f93ce47caa4eb871cc7b9aa316148459129941c928400c1649aa5d4_to_t_string_memory_ptr_fromStack","nativeSrc":"11909:366:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"12043:3:1","nodeType":"YulTypedName","src":"12043:3:1","type":""}],"returnVariables":[{"name":"end","nativeSrc":"12051:3:1","nodeType":"YulTypedName","src":"12051:3:1","type":""}],"src":"11909:366:1"},{"body":{"nativeSrc":"12452:248:1","nodeType":"YulBlock","src":"12452:248:1","statements":[{"nativeSrc":"12462:26:1","nodeType":"YulAssignment","src":"12462:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"12474:9:1","nodeType":"YulIdentifier","src":"12474:9:1"},{"kind":"number","nativeSrc":"12485:2:1","nodeType":"YulLiteral","src":"12485:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"12470:3:1","nodeType":"YulIdentifier","src":"12470:3:1"},"nativeSrc":"12470:18:1","nodeType":"YulFunctionCall","src":"12470:18:1"},"variableNames":[{"name":"tail","nativeSrc":"12462:4:1","nodeType":"YulIdentifier","src":"12462:4:1"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"12509:9:1","nodeType":"YulIdentifier","src":"12509:9:1"},{"kind":"number","nativeSrc":"12520:1:1","nodeType":"YulLiteral","src":"12520:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"12505:3:1","nodeType":"YulIdentifier","src":"12505:3:1"},"nativeSrc":"12505:17:1","nodeType":"YulFunctionCall","src":"12505:17:1"},{"arguments":[{"name":"tail","nativeSrc":"12528:4:1","nodeType":"YulIdentifier","src":"12528:4:1"},{"name":"headStart","nativeSrc":"12534:9:1","nodeType":"YulIdentifier","src":"12534:9:1"}],"functionName":{"name":"sub","nativeSrc":"12524:3:1","nodeType":"YulIdentifier","src":"12524:3:1"},"nativeSrc":"12524:20:1","nodeType":"YulFunctionCall","src":"12524:20:1"}],"functionName":{"name":"mstore","nativeSrc":"12498:6:1","nodeType":"YulIdentifier","src":"12498:6:1"},"nativeSrc":"12498:47:1","nodeType":"YulFunctionCall","src":"12498:47:1"},"nativeSrc":"12498:47:1","nodeType":"YulExpressionStatement","src":"12498:47:1"},{"nativeSrc":"12554:139:1","nodeType":"YulAssignment","src":"12554:139:1","value":{"arguments":[{"name":"tail","nativeSrc":"12688:4:1","nodeType":"YulIdentifier","src":"12688:4:1"}],"functionName":{"name":"abi_encode_t_stringliteral_567737202f93ce47caa4eb871cc7b9aa316148459129941c928400c1649aa5d4_to_t_string_memory_ptr_fromStack","nativeSrc":"12562:124:1","nodeType":"YulIdentifier","src":"12562:124:1"},"nativeSrc":"12562:131:1","nodeType":"YulFunctionCall","src":"12562:131:1"},"variableNames":[{"name":"tail","nativeSrc":"12554:4:1","nodeType":"YulIdentifier","src":"12554:4:1"}]}]},"name":"abi_encode_tuple_t_stringliteral_567737202f93ce47caa4eb871cc7b9aa316148459129941c928400c1649aa5d4__to_t_string_memory_ptr__fromStack_reversed","nativeSrc":"12281:419:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"12432:9:1","nodeType":"YulTypedName","src":"12432:9:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"12447:4:1","nodeType":"YulTypedName","src":"12447:4:1","type":""}],"src":"12281:419:1"},{"body":{"nativeSrc":"12812:57:1","nodeType":"YulBlock","src":"12812:57:1","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nativeSrc":"12834:6:1","nodeType":"YulIdentifier","src":"12834:6:1"},{"kind":"number","nativeSrc":"12842:1:1","nodeType":"YulLiteral","src":"12842:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"12830:3:1","nodeType":"YulIdentifier","src":"12830:3:1"},"nativeSrc":"12830:14:1","nodeType":"YulFunctionCall","src":"12830:14:1"},{"hexValue":"416c726561647920656e646564","kind":"string","nativeSrc":"12846:15:1","nodeType":"YulLiteral","src":"12846:15:1","type":"","value":"Already ended"}],"functionName":{"name":"mstore","nativeSrc":"12823:6:1","nodeType":"YulIdentifier","src":"12823:6:1"},"nativeSrc":"12823:39:1","nodeType":"YulFunctionCall","src":"12823:39:1"},"nativeSrc":"12823:39:1","nodeType":"YulExpressionStatement","src":"12823:39:1"}]},"name":"store_literal_in_memory_03a0ef2274e5fa9c92bd6c8904f1025dd04b34d1da74eba1106c91ebdbd13a59","nativeSrc":"12706:163:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nativeSrc":"12804:6:1","nodeType":"YulTypedName","src":"12804:6:1","type":""}],"src":"12706:163:1"},{"body":{"nativeSrc":"13021:220:1","nodeType":"YulBlock","src":"13021:220:1","statements":[{"nativeSrc":"13031:74:1","nodeType":"YulAssignment","src":"13031:74:1","value":{"arguments":[{"name":"pos","nativeSrc":"13097:3:1","nodeType":"YulIdentifier","src":"13097:3:1"},{"kind":"number","nativeSrc":"13102:2:1","nodeType":"YulLiteral","src":"13102:2:1","type":"","value":"13"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nativeSrc":"13038:58:1","nodeType":"YulIdentifier","src":"13038:58:1"},"nativeSrc":"13038:67:1","nodeType":"YulFunctionCall","src":"13038:67:1"},"variableNames":[{"name":"pos","nativeSrc":"13031:3:1","nodeType":"YulIdentifier","src":"13031:3:1"}]},{"expression":{"arguments":[{"name":"pos","nativeSrc":"13203:3:1","nodeType":"YulIdentifier","src":"13203:3:1"}],"functionName":{"name":"store_literal_in_memory_03a0ef2274e5fa9c92bd6c8904f1025dd04b34d1da74eba1106c91ebdbd13a59","nativeSrc":"13114:88:1","nodeType":"YulIdentifier","src":"13114:88:1"},"nativeSrc":"13114:93:1","nodeType":"YulFunctionCall","src":"13114:93:1"},"nativeSrc":"13114:93:1","nodeType":"YulExpressionStatement","src":"13114:93:1"},{"nativeSrc":"13216:19:1","nodeType":"YulAssignment","src":"13216:19:1","value":{"arguments":[{"name":"pos","nativeSrc":"13227:3:1","nodeType":"YulIdentifier","src":"13227:3:1"},{"kind":"number","nativeSrc":"13232:2:1","nodeType":"YulLiteral","src":"13232:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"13223:3:1","nodeType":"YulIdentifier","src":"13223:3:1"},"nativeSrc":"13223:12:1","nodeType":"YulFunctionCall","src":"13223:12:1"},"variableNames":[{"name":"end","nativeSrc":"13216:3:1","nodeType":"YulIdentifier","src":"13216:3:1"}]}]},"name":"abi_encode_t_stringliteral_03a0ef2274e5fa9c92bd6c8904f1025dd04b34d1da74eba1106c91ebdbd13a59_to_t_string_memory_ptr_fromStack","nativeSrc":"12875:366:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"13009:3:1","nodeType":"YulTypedName","src":"13009:3:1","type":""}],"returnVariables":[{"name":"end","nativeSrc":"13017:3:1","nodeType":"YulTypedName","src":"13017:3:1","type":""}],"src":"12875:366:1"},{"body":{"nativeSrc":"13418:248:1","nodeType":"YulBlock","src":"13418:248:1","statements":[{"nativeSrc":"13428:26:1","nodeType":"YulAssignment","src":"13428:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"13440:9:1","nodeType":"YulIdentifier","src":"13440:9:1"},{"kind":"number","nativeSrc":"13451:2:1","nodeType":"YulLiteral","src":"13451:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"13436:3:1","nodeType":"YulIdentifier","src":"13436:3:1"},"nativeSrc":"13436:18:1","nodeType":"YulFunctionCall","src":"13436:18:1"},"variableNames":[{"name":"tail","nativeSrc":"13428:4:1","nodeType":"YulIdentifier","src":"13428:4:1"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"13475:9:1","nodeType":"YulIdentifier","src":"13475:9:1"},{"kind":"number","nativeSrc":"13486:1:1","nodeType":"YulLiteral","src":"13486:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"13471:3:1","nodeType":"YulIdentifier","src":"13471:3:1"},"nativeSrc":"13471:17:1","nodeType":"YulFunctionCall","src":"13471:17:1"},{"arguments":[{"name":"tail","nativeSrc":"13494:4:1","nodeType":"YulIdentifier","src":"13494:4:1"},{"name":"headStart","nativeSrc":"13500:9:1","nodeType":"YulIdentifier","src":"13500:9:1"}],"functionName":{"name":"sub","nativeSrc":"13490:3:1","nodeType":"YulIdentifier","src":"13490:3:1"},"nativeSrc":"13490:20:1","nodeType":"YulFunctionCall","src":"13490:20:1"}],"functionName":{"name":"mstore","nativeSrc":"13464:6:1","nodeType":"YulIdentifier","src":"13464:6:1"},"nativeSrc":"13464:47:1","nodeType":"YulFunctionCall","src":"13464:47:1"},"nativeSrc":"13464:47:1","nodeType":"YulExpressionStatement","src":"13464:47:1"},{"nativeSrc":"13520:139:1","nodeType":"YulAssignment","src":"13520:139:1","value":{"arguments":[{"name":"tail","nativeSrc":"13654:4:1","nodeType":"YulIdentifier","src":"13654:4:1"}],"functionName":{"name":"abi_encode_t_stringliteral_03a0ef2274e5fa9c92bd6c8904f1025dd04b34d1da74eba1106c91ebdbd13a59_to_t_string_memory_ptr_fromStack","nativeSrc":"13528:124:1","nodeType":"YulIdentifier","src":"13528:124:1"},"nativeSrc":"13528:131:1","nodeType":"YulFunctionCall","src":"13528:131:1"},"variableNames":[{"name":"tail","nativeSrc":"13520:4:1","nodeType":"YulIdentifier","src":"13520:4:1"}]}]},"name":"abi_encode_tuple_t_stringliteral_03a0ef2274e5fa9c92bd6c8904f1025dd04b34d1da74eba1106c91ebdbd13a59__to_t_string_memory_ptr__fromStack_reversed","nativeSrc":"13247:419:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"13398:9:1","nodeType":"YulTypedName","src":"13398:9:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"13413:4:1","nodeType":"YulTypedName","src":"13413:4:1","type":""}],"src":"13247:419:1"},{"body":{"nativeSrc":"13778:57:1","nodeType":"YulBlock","src":"13778:57:1","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nativeSrc":"13800:6:1","nodeType":"YulIdentifier","src":"13800:6:1"},{"kind":"number","nativeSrc":"13808:1:1","nodeType":"YulLiteral","src":"13808:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"13796:3:1","nodeType":"YulIdentifier","src":"13796:3:1"},"nativeSrc":"13796:14:1","nodeType":"YulFunctionCall","src":"13796:14:1"},{"hexValue":"5061796f7574206661696c6564","kind":"string","nativeSrc":"13812:15:1","nodeType":"YulLiteral","src":"13812:15:1","type":"","value":"Payout failed"}],"functionName":{"name":"mstore","nativeSrc":"13789:6:1","nodeType":"YulIdentifier","src":"13789:6:1"},"nativeSrc":"13789:39:1","nodeType":"YulFunctionCall","src":"13789:39:1"},"nativeSrc":"13789:39:1","nodeType":"YulExpressionStatement","src":"13789:39:1"}]},"name":"store_literal_in_memory_42d486eee70463b52369225e27fce2709665a17be45e65becee48f6af14cf90b","nativeSrc":"13672:163:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nativeSrc":"13770:6:1","nodeType":"YulTypedName","src":"13770:6:1","type":""}],"src":"13672:163:1"},{"body":{"nativeSrc":"13987:220:1","nodeType":"YulBlock","src":"13987:220:1","statements":[{"nativeSrc":"13997:74:1","nodeType":"YulAssignment","src":"13997:74:1","value":{"arguments":[{"name":"pos","nativeSrc":"14063:3:1","nodeType":"YulIdentifier","src":"14063:3:1"},{"kind":"number","nativeSrc":"14068:2:1","nodeType":"YulLiteral","src":"14068:2:1","type":"","value":"13"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nativeSrc":"14004:58:1","nodeType":"YulIdentifier","src":"14004:58:1"},"nativeSrc":"14004:67:1","nodeType":"YulFunctionCall","src":"14004:67:1"},"variableNames":[{"name":"pos","nativeSrc":"13997:3:1","nodeType":"YulIdentifier","src":"13997:3:1"}]},{"expression":{"arguments":[{"name":"pos","nativeSrc":"14169:3:1","nodeType":"YulIdentifier","src":"14169:3:1"}],"functionName":{"name":"store_literal_in_memory_42d486eee70463b52369225e27fce2709665a17be45e65becee48f6af14cf90b","nativeSrc":"14080:88:1","nodeType":"YulIdentifier","src":"14080:88:1"},"nativeSrc":"14080:93:1","nodeType":"YulFunctionCall","src":"14080:93:1"},"nativeSrc":"14080:93:1","nodeType":"YulExpressionStatement","src":"14080:93:1"},{"nativeSrc":"14182:19:1","nodeType":"YulAssignment","src":"14182:19:1","value":{"arguments":[{"name":"pos","nativeSrc":"14193:3:1","nodeType":"YulIdentifier","src":"14193:3:1"},{"kind":"number","nativeSrc":"14198:2:1","nodeType":"YulLiteral","src":"14198:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"14189:3:1","nodeType":"YulIdentifier","src":"14189:3:1"},"nativeSrc":"14189:12:1","nodeType":"YulFunctionCall","src":"14189:12:1"},"variableNames":[{"name":"end","nativeSrc":"14182:3:1","nodeType":"YulIdentifier","src":"14182:3:1"}]}]},"name":"abi_encode_t_stringliteral_42d486eee70463b52369225e27fce2709665a17be45e65becee48f6af14cf90b_to_t_string_memory_ptr_fromStack","nativeSrc":"13841:366:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nativeSrc":"13975:3:1","nodeType":"YulTypedName","src":"13975:3:1","type":""}],"returnVariables":[{"name":"end","nativeSrc":"13983:3:1","nodeType":"YulTypedName","src":"13983:3:1","type":""}],"src":"13841:366:1"},{"body":{"nativeSrc":"14384:248:1","nodeType":"YulBlock","src":"14384:248:1","statements":[{"nativeSrc":"14394:26:1","nodeType":"YulAssignment","src":"14394:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"14406:9:1","nodeType":"YulIdentifier","src":"14406:9:1"},{"kind":"number","nativeSrc":"14417:2:1","nodeType":"YulLiteral","src":"14417:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"14402:3:1","nodeType":"YulIdentifier","src":"14402:3:1"},"nativeSrc":"14402:18:1","nodeType":"YulFunctionCall","src":"14402:18:1"},"variableNames":[{"name":"tail","nativeSrc":"14394:4:1","nodeType":"YulIdentifier","src":"14394:4:1"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nativeSrc":"14441:9:1","nodeType":"YulIdentifier","src":"14441:9:1"},{"kind":"number","nativeSrc":"14452:1:1","nodeType":"YulLiteral","src":"14452:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"14437:3:1","nodeType":"YulIdentifier","src":"14437:3:1"},"nativeSrc":"14437:17:1","nodeType":"YulFunctionCall","src":"14437:17:1"},{"arguments":[{"name":"tail","nativeSrc":"14460:4:1","nodeType":"YulIdentifier","src":"14460:4:1"},{"name":"headStart","nativeSrc":"14466:9:1","nodeType":"YulIdentifier","src":"14466:9:1"}],"functionName":{"name":"sub","nativeSrc":"14456:3:1","nodeType":"YulIdentifier","src":"14456:3:1"},"nativeSrc":"14456:20:1","nodeType":"YulFunctionCall","src":"14456:20:1"}],"functionName":{"name":"mstore","nativeSrc":"14430:6:1","nodeType":"YulIdentifier","src":"14430:6:1"},"nativeSrc":"14430:47:1","nodeType":"YulFunctionCall","src":"14430:47:1"},"nativeSrc":"14430:47:1","nodeType":"YulExpressionStatement","src":"14430:47:1"},{"nativeSrc":"14486:139:1","nodeType":"YulAssignment","src":"14486:139:1","value":{"arguments":[{"name":"tail","nativeSrc":"14620:4:1","nodeType":"YulIdentifier","src":"14620:4:1"}],"functionName":{"name":"abi_encode_t_stringliteral_42d486eee70463b52369225e27fce2709665a17be45e65becee48f6af14cf90b_to_t_string_memory_ptr_fromStack","nativeSrc":"14494:124:1","nodeType":"YulIdentifier","src":"14494:124:1"},"nativeSrc":"14494:131:1","nodeType":"YulFunctionCall","src":"14494:131:1"},"variableNames":[{"name":"tail","nativeSrc":"14486:4:1","nodeType":"YulIdentifier","src":"14486:4:1"}]}]},"name":"abi_encode_tuple_t_stringliteral_42d486eee70463b52369225e27fce2709665a17be45e65becee48f6af14cf90b__to_t_string_memory_ptr__fromStack_reversed","nativeSrc":"14213:419:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"14364:9:1","nodeType":"YulTypedName","src":"14364:9:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"14379:4:1","nodeType":"YulTypedName","src":"14379:4:1","type":""}],"src":"14213:419:1"},{"body":{"nativeSrc":"14764:206:1","nodeType":"YulBlock","src":"14764:206:1","statements":[{"nativeSrc":"14774:26:1","nodeType":"YulAssignment","src":"14774:26:1","value":{"arguments":[{"name":"headStart","nativeSrc":"14786:9:1","nodeType":"YulIdentifier","src":"14786:9:1"},{"kind":"number","nativeSrc":"14797:2:1","nodeType":"YulLiteral","src":"14797:2:1","type":"","value":"64"}],"functionName":{"name":"add","nativeSrc":"14782:3:1","nodeType":"YulIdentifier","src":"14782:3:1"},"nativeSrc":"14782:18:1","nodeType":"YulFunctionCall","src":"14782:18:1"},"variableNames":[{"name":"tail","nativeSrc":"14774:4:1","nodeType":"YulIdentifier","src":"14774:4:1"}]},{"expression":{"arguments":[{"name":"value0","nativeSrc":"14854:6:1","nodeType":"YulIdentifier","src":"14854:6:1"},{"arguments":[{"name":"headStart","nativeSrc":"14867:9:1","nodeType":"YulIdentifier","src":"14867:9:1"},{"kind":"number","nativeSrc":"14878:1:1","nodeType":"YulLiteral","src":"14878:1:1","type":"","value":"0"}],"functionName":{"name":"add","nativeSrc":"14863:3:1","nodeType":"YulIdentifier","src":"14863:3:1"},"nativeSrc":"14863:17:1","nodeType":"YulFunctionCall","src":"14863:17:1"}],"functionName":{"name":"abi_encode_t_address_to_t_address_fromStack","nativeSrc":"14810:43:1","nodeType":"YulIdentifier","src":"14810:43:1"},"nativeSrc":"14810:71:1","nodeType":"YulFunctionCall","src":"14810:71:1"},"nativeSrc":"14810:71:1","nodeType":"YulExpressionStatement","src":"14810:71:1"},{"expression":{"arguments":[{"name":"value1","nativeSrc":"14935:6:1","nodeType":"YulIdentifier","src":"14935:6:1"},{"arguments":[{"name":"headStart","nativeSrc":"14948:9:1","nodeType":"YulIdentifier","src":"14948:9:1"},{"kind":"number","nativeSrc":"14959:2:1","nodeType":"YulLiteral","src":"14959:2:1","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"14944:3:1","nodeType":"YulIdentifier","src":"14944:3:1"},"nativeSrc":"14944:18:1","nodeType":"YulFunctionCall","src":"14944:18:1"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nativeSrc":"14891:43:1","nodeType":"YulIdentifier","src":"14891:43:1"},"nativeSrc":"14891:72:1","nodeType":"YulFunctionCall","src":"14891:72:1"},"nativeSrc":"14891:72:1","nodeType":"YulExpressionStatement","src":"14891:72:1"}]},"name":"abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed","nativeSrc":"14638:332:1","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nativeSrc":"14728:9:1","nodeType":"YulTypedName","src":"14728:9:1","type":""},{"name":"value1","nativeSrc":"14740:6:1","nodeType":"YulTypedName","src":"14740:6:1","type":""},{"name":"value0","nativeSrc":"14748:6:1","nodeType":"YulTypedName","src":"14748:6:1","type":""}],"returnVariables":[{"name":"tail","nativeSrc":"14759:4:1","nodeType":"YulTypedName","src":"14759:4:1","type":""}],"src":"14638:332:1"}]},"contents":"{\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_d8e1c4c687c6e649f550c1facb02105a23d7eff39fa63adff9d993b8e468c13b(memPtr) {\n\n mstore(add(memPtr, 0), \"Auction ended\")\n\n }\n\n function abi_encode_t_stringliteral_d8e1c4c687c6e649f550c1facb02105a23d7eff39fa63adff9d993b8e468c13b_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 13)\n store_literal_in_memory_d8e1c4c687c6e649f550c1facb02105a23d7eff39fa63adff9d993b8e468c13b(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_d8e1c4c687c6e649f550c1facb02105a23d7eff39fa63adff9d993b8e468c13b__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_d8e1c4c687c6e649f550c1facb02105a23d7eff39fa63adff9d993b8e468c13b_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_36020d7b7b79be3186d0224484952c41e479aaf134eacdd764b3d17624762006(memPtr) {\n\n mstore(add(memPtr, 0), \"Auction already ended\")\n\n }\n\n function abi_encode_t_stringliteral_36020d7b7b79be3186d0224484952c41e479aaf134eacdd764b3d17624762006_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 21)\n store_literal_in_memory_36020d7b7b79be3186d0224484952c41e479aaf134eacdd764b3d17624762006(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_36020d7b7b79be3186d0224484952c41e479aaf134eacdd764b3d17624762006__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_36020d7b7b79be3186d0224484952c41e479aaf134eacdd764b3d17624762006_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_b069a3605a760977e488740e57d20a45915ea0c3b96c47ae687173d31aadf0b7(memPtr) {\n\n mstore(add(memPtr, 0), \"Owner cannot bid\")\n\n }\n\n function abi_encode_t_stringliteral_b069a3605a760977e488740e57d20a45915ea0c3b96c47ae687173d31aadf0b7_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 16)\n store_literal_in_memory_b069a3605a760977e488740e57d20a45915ea0c3b96c47ae687173d31aadf0b7(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_b069a3605a760977e488740e57d20a45915ea0c3b96c47ae687173d31aadf0b7__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_b069a3605a760977e488740e57d20a45915ea0c3b96c47ae687173d31aadf0b7_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_13e75ff1b0a6ca9bca87c24c1936118dd10a3ec174f359ad2a8c3d901173470e(memPtr) {\n\n mstore(add(memPtr, 0), \"Bid too low\")\n\n }\n\n function abi_encode_t_stringliteral_13e75ff1b0a6ca9bca87c24c1936118dd10a3ec174f359ad2a8c3d901173470e_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 11)\n store_literal_in_memory_13e75ff1b0a6ca9bca87c24c1936118dd10a3ec174f359ad2a8c3d901173470e(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_13e75ff1b0a6ca9bca87c24c1936118dd10a3ec174f359ad2a8c3d901173470e__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_13e75ff1b0a6ca9bca87c24c1936118dd10a3ec174f359ad2a8c3d901173470e_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n sum := add(x, y)\n\n if gt(x, sum) { panic_error_0x11() }\n\n }\n\n function store_literal_in_memory_467b8b8587ba88511be913c7407f7cca76ad98c06a2fa45de2edfa50da724f97(memPtr) {\n\n mstore(add(memPtr, 0), \"Reentrancy\")\n\n }\n\n function abi_encode_t_stringliteral_467b8b8587ba88511be913c7407f7cca76ad98c06a2fa45de2edfa50da724f97_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 10)\n store_literal_in_memory_467b8b8587ba88511be913c7407f7cca76ad98c06a2fa45de2edfa50da724f97(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_467b8b8587ba88511be913c7407f7cca76ad98c06a2fa45de2edfa50da724f97__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_467b8b8587ba88511be913c7407f7cca76ad98c06a2fa45de2edfa50da724f97_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_6550a6289f93e91f607ed5f062d48d2a2f49dff99feaaa73478c8f1be16aa901(memPtr) {\n\n mstore(add(memPtr, 0), \"No refund\")\n\n }\n\n function abi_encode_t_stringliteral_6550a6289f93e91f607ed5f062d48d2a2f49dff99feaaa73478c8f1be16aa901_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 9)\n store_literal_in_memory_6550a6289f93e91f607ed5f062d48d2a2f49dff99feaaa73478c8f1be16aa901(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_6550a6289f93e91f607ed5f062d48d2a2f49dff99feaaa73478c8f1be16aa901__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_6550a6289f93e91f607ed5f062d48d2a2f49dff99feaaa73478c8f1be16aa901_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n updated_pos := pos\n }\n\n function store_literal_in_memory_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470(memPtr) {\n\n }\n\n function abi_encode_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, 0)\n store_literal_in_memory_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470(pos)\n end := add(pos, 0)\n }\n\n function abi_encode_tuple_packed_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos ) -> end {\n\n pos := abi_encode_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n end := pos\n }\n\n function store_literal_in_memory_940ea0545bf4a4779ef86217d18a28c86bb09c07d43dd7635f3da6878953d25e(memPtr) {\n\n mstore(add(memPtr, 0), \"Refund failed\")\n\n }\n\n function abi_encode_t_stringliteral_940ea0545bf4a4779ef86217d18a28c86bb09c07d43dd7635f3da6878953d25e_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 13)\n store_literal_in_memory_940ea0545bf4a4779ef86217d18a28c86bb09c07d43dd7635f3da6878953d25e(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_940ea0545bf4a4779ef86217d18a28c86bb09c07d43dd7635f3da6878953d25e__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_940ea0545bf4a4779ef86217d18a28c86bb09c07d43dd7635f3da6878953d25e_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_17d9f114efaa93d67eedad749dd7fd16a6895ff93e28b7a30c667a069f2ed42d(memPtr) {\n\n mstore(add(memPtr, 0), \"Only owner\")\n\n }\n\n function abi_encode_t_stringliteral_17d9f114efaa93d67eedad749dd7fd16a6895ff93e28b7a30c667a069f2ed42d_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 10)\n store_literal_in_memory_17d9f114efaa93d67eedad749dd7fd16a6895ff93e28b7a30c667a069f2ed42d(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_17d9f114efaa93d67eedad749dd7fd16a6895ff93e28b7a30c667a069f2ed42d__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_17d9f114efaa93d67eedad749dd7fd16a6895ff93e28b7a30c667a069f2ed42d_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_567737202f93ce47caa4eb871cc7b9aa316148459129941c928400c1649aa5d4(memPtr) {\n\n mstore(add(memPtr, 0), \"Auction not ended\")\n\n }\n\n function abi_encode_t_stringliteral_567737202f93ce47caa4eb871cc7b9aa316148459129941c928400c1649aa5d4_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 17)\n store_literal_in_memory_567737202f93ce47caa4eb871cc7b9aa316148459129941c928400c1649aa5d4(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_567737202f93ce47caa4eb871cc7b9aa316148459129941c928400c1649aa5d4__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_567737202f93ce47caa4eb871cc7b9aa316148459129941c928400c1649aa5d4_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_03a0ef2274e5fa9c92bd6c8904f1025dd04b34d1da74eba1106c91ebdbd13a59(memPtr) {\n\n mstore(add(memPtr, 0), \"Already ended\")\n\n }\n\n function abi_encode_t_stringliteral_03a0ef2274e5fa9c92bd6c8904f1025dd04b34d1da74eba1106c91ebdbd13a59_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 13)\n store_literal_in_memory_03a0ef2274e5fa9c92bd6c8904f1025dd04b34d1da74eba1106c91ebdbd13a59(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_03a0ef2274e5fa9c92bd6c8904f1025dd04b34d1da74eba1106c91ebdbd13a59__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_03a0ef2274e5fa9c92bd6c8904f1025dd04b34d1da74eba1106c91ebdbd13a59_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_42d486eee70463b52369225e27fce2709665a17be45e65becee48f6af14cf90b(memPtr) {\n\n mstore(add(memPtr, 0), \"Payout failed\")\n\n }\n\n function abi_encode_t_stringliteral_42d486eee70463b52369225e27fce2709665a17be45e65becee48f6af14cf90b_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 13)\n store_literal_in_memory_42d486eee70463b52369225e27fce2709665a17be45e65becee48f6af14cf90b(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_42d486eee70463b52369225e27fce2709665a17be45e65becee48f6af14cf90b__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_42d486eee70463b52369225e27fce2709665a17be45e65becee48f6af14cf90b_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n}\n","id":1,"language":"Yul","name":"#utility.yul"}],"immutableReferences":{},"linkReferences":{},"object":"608060405260043610610094575f3560e01c80638da5cb5b116100585780638da5cb5b1461015757806391f9015714610181578063d57bde79146101ab578063d6fbf202146101d5578063fe67a54b146101ff576100a3565b8063110f8874146100a757806312fa6feb146100bd5780631998aeef146100e757806326b387bb146100f15780633197cbb61461012d576100a3565b366100a3576100a1610215565b005b5f5ffd5b3480156100b2575f5ffd5b506100bb6104e0565b005b3480156100c8575f5ffd5b506100d161071e565b6040516100de9190610b55565b60405180910390f35b6100ef610215565b005b3480156100fc575f5ffd5b5061011760048036038101906101129190610bcc565b610730565b6040516101249190610c0f565b60405180910390f35b348015610138575f5ffd5b50610141610745565b60405161014e9190610c0f565b60405180910390f35b348015610162575f5ffd5b5061016b61074b565b6040516101789190610c37565b60405180910390f35b34801561018c575f5ffd5b50610195610770565b6040516101a29190610c37565b60405180910390f35b3480156101b6575f5ffd5b506101bf610796565b6040516101cc9190610c0f565b60405180910390f35b3480156101e0575f5ffd5b506101e961079c565b6040516101f69190610c0f565b60405180910390f35b34801561020a575f5ffd5b506102136107a2565b005b6002544210610259576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161025090610caa565b60405180910390fd5b60035f9054906101000a900460ff16156102a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161029f90610d12565b60405180910390fd5b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603610337576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032e90610d7a565b60405180910390fd5b600454341161037b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161037290610de2565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104485760045460055f600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546104409190610e2d565b925050819055505b33600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550346004819055503373ffffffffffffffffffffffffffffffffffffffff167f3fabff0a9c3ecd6814702e247fa9733e5d0aa69e3a38590f92cb18f623a2254d346040516104d69190610c0f565b60405180910390a2565b5f5f9054906101000a900460ff161561052e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052590610eaa565b60405180910390fd5b60015f5f6101000a81548160ff0219169083151502179055505f60055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f81116105ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c190610f12565b60405180910390fd5b5f60055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f3373ffffffffffffffffffffffffffffffffffffffff168260405161063190610f5d565b5f6040518083038185875af1925050503d805f811461066b576040519150601f19603f3d011682016040523d82523d5f602084013e610670565b606091505b50509050806106b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ab90610fbb565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff167f3d97f39b86d061200a7834082f5926e58ec10fd85a9d6930f497729d5e6cc35c836040516106fa9190610c0f565b60405180910390a250505f5f5f6101000a81548160ff021916908315150217905550565b60035f9054906101000a900460ff1681565b6005602052805f5260405f205f915090505481565b60025481565b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b60015481565b5f5f9054906101000a900460ff16156107f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e790610eaa565b60405180910390fd5b60015f5f6101000a81548160ff0219169083151502179055505f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610898576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088f90611023565b60405180910390fd5b6002544210156108dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d49061108b565b60405180910390fd5b60035f9054906101000a900460ff161561092c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610923906110f3565b60405180910390fd5b600160035f6101000a81548160ff0219169083151502179055505f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a68575f5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166004546040516109e390610f5d565b5f6040518083038185875af1925050503d805f8114610a1d576040519150601f19603f3d011682016040523d82523d5f602084013e610a22565b606091505b5050905080610a66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5d9061115b565b60405180910390fd5b505b7fdaec4582d5d9595688c8c98545fdd1c696d41c6aeaeb636737e84ed2f5c00eda600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b0957600454610b0b565b5f5b604051610b19929190611179565b60405180910390a15f5f5f6101000a81548160ff021916908315150217905550565b5f8115159050919050565b610b4f81610b3b565b82525050565b5f602082019050610b685f830184610b46565b92915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610b9b82610b72565b9050919050565b610bab81610b91565b8114610bb5575f5ffd5b50565b5f81359050610bc681610ba2565b92915050565b5f60208284031215610be157610be0610b6e565b5b5f610bee84828501610bb8565b91505092915050565b5f819050919050565b610c0981610bf7565b82525050565b5f602082019050610c225f830184610c00565b92915050565b610c3181610b91565b82525050565b5f602082019050610c4a5f830184610c28565b92915050565b5f82825260208201905092915050565b7f41756374696f6e20656e646564000000000000000000000000000000000000005f82015250565b5f610c94600d83610c50565b9150610c9f82610c60565b602082019050919050565b5f6020820190508181035f830152610cc181610c88565b9050919050565b7f41756374696f6e20616c726561647920656e64656400000000000000000000005f82015250565b5f610cfc601583610c50565b9150610d0782610cc8565b602082019050919050565b5f6020820190508181035f830152610d2981610cf0565b9050919050565b7f4f776e65722063616e6e6f7420626964000000000000000000000000000000005f82015250565b5f610d64601083610c50565b9150610d6f82610d30565b602082019050919050565b5f6020820190508181035f830152610d9181610d58565b9050919050565b7f42696420746f6f206c6f770000000000000000000000000000000000000000005f82015250565b5f610dcc600b83610c50565b9150610dd782610d98565b602082019050919050565b5f6020820190508181035f830152610df981610dc0565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610e3782610bf7565b9150610e4283610bf7565b9250828201905080821115610e5a57610e59610e00565b5b92915050565b7f5265656e7472616e6379000000000000000000000000000000000000000000005f82015250565b5f610e94600a83610c50565b9150610e9f82610e60565b602082019050919050565b5f6020820190508181035f830152610ec181610e88565b9050919050565b7f4e6f20726566756e6400000000000000000000000000000000000000000000005f82015250565b5f610efc600983610c50565b9150610f0782610ec8565b602082019050919050565b5f6020820190508181035f830152610f2981610ef0565b9050919050565b5f81905092915050565b50565b5f610f485f83610f30565b9150610f5382610f3a565b5f82019050919050565b5f610f6782610f3d565b9150819050919050565b7f526566756e64206661696c6564000000000000000000000000000000000000005f82015250565b5f610fa5600d83610c50565b9150610fb082610f71565b602082019050919050565b5f6020820190508181035f830152610fd281610f99565b9050919050565b7f4f6e6c79206f776e6572000000000000000000000000000000000000000000005f82015250565b5f61100d600a83610c50565b915061101882610fd9565b602082019050919050565b5f6020820190508181035f83015261103a81611001565b9050919050565b7f41756374696f6e206e6f7420656e6465640000000000000000000000000000005f82015250565b5f611075601183610c50565b915061108082611041565b602082019050919050565b5f6020820190508181035f8301526110a281611069565b9050919050565b7f416c726561647920656e646564000000000000000000000000000000000000005f82015250565b5f6110dd600d83610c50565b91506110e8826110a9565b602082019050919050565b5f6020820190508181035f83015261110a816110d1565b9050919050565b7f5061796f7574206661696c6564000000000000000000000000000000000000005f82015250565b5f611145600d83610c50565b915061115082611111565b602082019050919050565b5f6020820190508181035f83015261117281611139565b9050919050565b5f60408201905061118c5f830185610c28565b6111996020830184610c00565b939250505056fea2646970667358221220b4cab015f24706cbee44fc3831dbe04cb5b66c2516259d109be60d76a5668b6564736f6c634300081c0033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x94 JUMPI PUSH0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8DA5CB5B GT PUSH2 0x58 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x157 JUMPI DUP1 PUSH4 0x91F90157 EQ PUSH2 0x181 JUMPI DUP1 PUSH4 0xD57BDE79 EQ PUSH2 0x1AB JUMPI DUP1 PUSH4 0xD6FBF202 EQ PUSH2 0x1D5 JUMPI DUP1 PUSH4 0xFE67A54B EQ PUSH2 0x1FF JUMPI PUSH2 0xA3 JUMP JUMPDEST DUP1 PUSH4 0x110F8874 EQ PUSH2 0xA7 JUMPI DUP1 PUSH4 0x12FA6FEB EQ PUSH2 0xBD JUMPI DUP1 PUSH4 0x1998AEEF EQ PUSH2 0xE7 JUMPI DUP1 PUSH4 0x26B387BB EQ PUSH2 0xF1 JUMPI DUP1 PUSH4 0x3197CBB6 EQ PUSH2 0x12D JUMPI PUSH2 0xA3 JUMP JUMPDEST CALLDATASIZE PUSH2 0xA3 JUMPI PUSH2 0xA1 PUSH2 0x215 JUMP JUMPDEST STOP JUMPDEST PUSH0 PUSH0 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xB2 JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0xBB PUSH2 0x4E0 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xC8 JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0xD1 PUSH2 0x71E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xDE SWAP2 SWAP1 PUSH2 0xB55 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xEF PUSH2 0x215 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xFC JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0x117 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x112 SWAP2 SWAP1 PUSH2 0xBCC JUMP JUMPDEST PUSH2 0x730 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x124 SWAP2 SWAP1 PUSH2 0xC0F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x138 JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0x141 PUSH2 0x745 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x14E SWAP2 SWAP1 PUSH2 0xC0F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x162 JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0x16B PUSH2 0x74B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x178 SWAP2 SWAP1 PUSH2 0xC37 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x18C JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0x195 PUSH2 0x770 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1A2 SWAP2 SWAP1 PUSH2 0xC37 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1B6 JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0x1BF PUSH2 0x796 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1CC SWAP2 SWAP1 PUSH2 0xC0F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1E0 JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0x1E9 PUSH2 0x79C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1F6 SWAP2 SWAP1 PUSH2 0xC0F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x20A JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH2 0x213 PUSH2 0x7A2 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x2 SLOAD TIMESTAMP LT PUSH2 0x259 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x250 SWAP1 PUSH2 0xCAA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x3 PUSH0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x2A8 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x29F SWAP1 PUSH2 0xD12 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH0 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x337 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x32E SWAP1 PUSH2 0xD7A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x4 SLOAD CALLVALUE GT PUSH2 0x37B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x372 SWAP1 PUSH2 0xDE2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x3 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x448 JUMPI PUSH1 0x4 SLOAD PUSH1 0x5 PUSH0 PUSH1 0x3 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 PUSH0 DUP3 DUP3 SLOAD PUSH2 0x440 SWAP2 SWAP1 PUSH2 0xE2D JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP JUMPDEST CALLER PUSH1 0x3 PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP CALLVALUE PUSH1 0x4 DUP2 SWAP1 SSTORE POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x3FABFF0A9C3ECD6814702E247FA9733E5D0AA69E3A38590F92CB18F623A2254D CALLVALUE PUSH1 0x40 MLOAD PUSH2 0x4D6 SWAP2 SWAP1 PUSH2 0xC0F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 JUMP JUMPDEST PUSH0 PUSH0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x52E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x525 SWAP1 PUSH2 0xEAA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH0 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH0 PUSH1 0x5 PUSH0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 SLOAD SWAP1 POP PUSH0 DUP2 GT PUSH2 0x5CA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5C1 SWAP1 PUSH2 0xF12 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH0 PUSH1 0x5 PUSH0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 DUP2 SWAP1 SSTORE POP PUSH0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH1 0x40 MLOAD PUSH2 0x631 SWAP1 PUSH2 0xF5D JUMP JUMPDEST PUSH0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP8 GAS CALL SWAP3 POP POP POP RETURNDATASIZE DUP1 PUSH0 DUP2 EQ PUSH2 0x66B JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x670 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP POP SWAP1 POP DUP1 PUSH2 0x6B4 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6AB SWAP1 PUSH2 0xFBB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x3D97F39B86D061200A7834082F5926E58EC10FD85A9D6930F497729D5E6CC35C DUP4 PUSH1 0x40 MLOAD PUSH2 0x6FA SWAP2 SWAP1 PUSH2 0xC0F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP PUSH0 PUSH0 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x3 PUSH0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x5 PUSH1 0x20 MSTORE DUP1 PUSH0 MSTORE PUSH1 0x40 PUSH0 KECCAK256 PUSH0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x2 SLOAD DUP2 JUMP JUMPDEST PUSH0 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x3 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x4 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH0 PUSH0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x7F0 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7E7 SWAP1 PUSH2 0xEAA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH0 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH0 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x898 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x88F SWAP1 PUSH2 0x1023 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x2 SLOAD TIMESTAMP LT ISZERO PUSH2 0x8DD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x8D4 SWAP1 PUSH2 0x108B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x3 PUSH0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x92C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x923 SWAP1 PUSH2 0x10F3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x3 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x3 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xA68 JUMPI PUSH0 PUSH0 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x4 SLOAD PUSH1 0x40 MLOAD PUSH2 0x9E3 SWAP1 PUSH2 0xF5D JUMP JUMPDEST PUSH0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP8 GAS CALL SWAP3 POP POP POP RETURNDATASIZE DUP1 PUSH0 DUP2 EQ PUSH2 0xA1D JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0xA22 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP POP SWAP1 POP DUP1 PUSH2 0xA66 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA5D SWAP1 PUSH2 0x115B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP JUMPDEST PUSH32 0xDAEC4582D5D9595688C8C98545FDD1C696D41C6AEAEB636737E84ED2F5C00EDA PUSH1 0x3 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x3 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xB09 JUMPI PUSH1 0x4 SLOAD PUSH2 0xB0B JUMP JUMPDEST PUSH0 JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB19 SWAP3 SWAP2 SWAP1 PUSH2 0x1179 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 PUSH0 PUSH0 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP JUMP JUMPDEST PUSH0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xB4F DUP2 PUSH2 0xB3B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xB68 PUSH0 DUP4 ADD DUP5 PUSH2 0xB46 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH0 REVERT JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0xB9B DUP3 PUSH2 0xB72 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xBAB DUP2 PUSH2 0xB91 JUMP JUMPDEST DUP2 EQ PUSH2 0xBB5 JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xBC6 DUP2 PUSH2 0xBA2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xBE1 JUMPI PUSH2 0xBE0 PUSH2 0xB6E JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0xBEE DUP5 DUP3 DUP6 ADD PUSH2 0xBB8 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xC09 DUP2 PUSH2 0xBF7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xC22 PUSH0 DUP4 ADD DUP5 PUSH2 0xC00 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0xC31 DUP2 PUSH2 0xB91 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xC4A PUSH0 DUP4 ADD DUP5 PUSH2 0xC28 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x41756374696F6E20656E64656400000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0xC94 PUSH1 0xD DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0xC9F DUP3 PUSH2 0xC60 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0xCC1 DUP2 PUSH2 0xC88 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x41756374696F6E20616C726561647920656E6465640000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0xCFC PUSH1 0x15 DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0xD07 DUP3 PUSH2 0xCC8 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0xD29 DUP2 PUSH2 0xCF0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E65722063616E6E6F742062696400000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0xD64 PUSH1 0x10 DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0xD6F DUP3 PUSH2 0xD30 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0xD91 DUP2 PUSH2 0xD58 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x42696420746F6F206C6F77000000000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0xDCC PUSH1 0xB DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0xDD7 DUP3 PUSH2 0xD98 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0xDF9 DUP2 PUSH2 0xDC0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 PUSH2 0xE37 DUP3 PUSH2 0xBF7 JUMP JUMPDEST SWAP2 POP PUSH2 0xE42 DUP4 PUSH2 0xBF7 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0xE5A JUMPI PUSH2 0xE59 PUSH2 0xE00 JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x5265656E7472616E637900000000000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0xE94 PUSH1 0xA DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0xE9F DUP3 PUSH2 0xE60 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0xEC1 DUP2 PUSH2 0xE88 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E6F20726566756E640000000000000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0xEFC PUSH1 0x9 DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0xF07 DUP3 PUSH2 0xEC8 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0xF29 DUP2 PUSH2 0xEF0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST POP JUMP JUMPDEST PUSH0 PUSH2 0xF48 PUSH0 DUP4 PUSH2 0xF30 JUMP JUMPDEST SWAP2 POP PUSH2 0xF53 DUP3 PUSH2 0xF3A JUMP JUMPDEST PUSH0 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0xF67 DUP3 PUSH2 0xF3D JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x526566756E64206661696C656400000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0xFA5 PUSH1 0xD DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0xFB0 DUP3 PUSH2 0xF71 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0xFD2 DUP2 PUSH2 0xF99 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F6E6C79206F776E657200000000000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x100D PUSH1 0xA DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0x1018 DUP3 PUSH2 0xFD9 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x103A DUP2 PUSH2 0x1001 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x41756374696F6E206E6F7420656E646564000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x1075 PUSH1 0x11 DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0x1080 DUP3 PUSH2 0x1041 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x10A2 DUP2 PUSH2 0x1069 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x416C726561647920656E64656400000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x10DD PUSH1 0xD DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0x10E8 DUP3 PUSH2 0x10A9 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x110A DUP2 PUSH2 0x10D1 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5061796F7574206661696C656400000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x1145 PUSH1 0xD DUP4 PUSH2 0xC50 JUMP JUMPDEST SWAP2 POP PUSH2 0x1150 DUP3 PUSH2 0x1111 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x1172 DUP2 PUSH2 0x1139 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x118C PUSH0 DUP4 ADD DUP6 PUSH2 0xC28 JUMP JUMPDEST PUSH2 0x1199 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0xC00 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB4 0xCA 0xB0 ISZERO CALLCODE SELFBALANCE MOD 0xCB 0xEE PREVRANDAO 0xFC CODESIZE BALANCE 0xDB 0xE0 0x4C 0xB5 0xB6 PUSH13 0x2516259D109BE60D76A5668B65 PUSH5 0x736F6C6343 STOP ADDMOD SHR STOP CALLER ","sourceMap":"57:2165:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2210:5;:3;:5::i;:::-;57:2165;;;;;1406:319;;;;;;;;;;;;;:::i;:::-;;304:17;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;957:445;;;:::i;:::-;;388:49;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;278:22;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;222:20;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;326:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;358:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;246:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1729:444;;;;;;;;;;;;;:::i;:::-;;957:445;1019:7;;1001:15;:25;993:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;1059:5;;;;;;;;;;;1058:6;1050:40;;;;;;;;;;;;:::i;:::-;;;;;;;;;1118:5;;;;;;;;;;;1104:19;;:10;:19;;;1096:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;1170:10;;1158:9;:22;1150:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1232:1;1207:27;;:13;;;;;;;;;;;:27;;;1203:91;;1277:10;;1244:14;:29;1259:13;;;;;;;;;;;1244:29;;;;;;;;;;;;;;;;:43;;;;;;;:::i;:::-;;;;;;;;1203:91;1316:10;1300:13;;:26;;;;;;;;;;;;;;;;;;1345:9;1332:10;:22;;;;1375:10;1365:32;;;1387:9;1365:32;;;;;;:::i;:::-;;;;;;;;957:445::o;1406:319::-;147:6;;;;;;;;;;;146:7;138:30;;;;;;;;;;;;:::i;:::-;;;;;;;;;183:4;174:6;;:13;;;;;;;;;;;;;;;;;;1460:14:::1;1477;:26;1492:10;1477:26;;;;;;;;;;;;;;;;1460:43;;1526:1;1517:6;:10;1509:32;;;;;;;;;;;;:::i;:::-;;;;;;;;;1576:1;1547:14;:26;1562:10;1547:26;;;;;;;;;;;;;;;:30;;;;1584:7;1605:10;1597:24;;1629:6;1597:43;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1583:57;;;1654:2;1646:28;;;;;;;;;;;;:::i;:::-;;;;;;;;;1701:10;1685:35;;;1713:6;1685:35;;;;;;:::i;:::-;;;;;;;;1454:271;;209:5:::0;200:6;;:14;;;;;;;;;;;;;;;;;;1406:319::o;304:17::-;;;;;;;;;;;;;:::o;388:49::-;;;;;;;;;;;;;;;;;:::o;278:22::-;;;;:::o;222:20::-;;;;;;;;;;;;;:::o;326:28::-;;;;;;;;;;;;;:::o;358:25::-;;;;:::o;246:28::-;;;;:::o;1729:444::-;147:6;;;;;;;;;;;146:7;138:30;;;;;;;;;;;;:::i;:::-;;;;;;;;;183:4;174:6;;:13;;;;;;;;;;;;;;;;;;1801:5:::1;;;;;;;;;;;1787:19;;:10;:19;;;1779:42;;;;;;;;;;;;:::i;:::-;;;;;;;;;1854:7;;1835:15;:26;;1827:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1898:5;;;;;;;;;;;1897:6;1889:32;;;;;;;;;;;;:::i;:::-;;;;;;;;;1935:4;1927:5;;:12;;;;;;;;;;;;;;;;;;1974:1;1949:27;;:13;;;;;;;;;;;:27;;;1945:140;;1987:7;2008:5;;;;;;;;;;;2000:19;;2027:10;;2000:42;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1986:56;;;2058:2;2050:28;;;;;;;;;;;;:::i;:::-;;;;;;;;;1978:107;1945:140;2095:73;2108:13;;;;;;;;;;;2148:1;2123:27;;:13;;;;;;;;;;;:27;;;:44;;2157:10;;2123:44;;;2153:1;2123:44;2095:73;;;;;;;:::i;:::-;;;;;;;;209:5:::0;200:6;;:14;;;;;;;;;;;;;;;;;;1729:444::o;7:90:1:-;41:7;84:5;77:13;70:21;59:32;;7:90;;;:::o;103:109::-;184:21;199:5;184:21;:::i;:::-;179:3;172:34;103:109;;:::o;218:210::-;305:4;343:2;332:9;328:18;320:26;;356:65;418:1;407:9;403:17;394:6;356:65;:::i;:::-;218:210;;;;:::o;515:117::-;624:1;621;614:12;761:126;798:7;838:42;831:5;827:54;816:65;;761:126;;;:::o;893:96::-;930:7;959:24;977:5;959:24;:::i;:::-;948:35;;893:96;;;:::o;995:122::-;1068:24;1086:5;1068:24;:::i;:::-;1061:5;1058:35;1048:63;;1107:1;1104;1097:12;1048:63;995:122;:::o;1123:139::-;1169:5;1207:6;1194:20;1185:29;;1223:33;1250:5;1223:33;:::i;:::-;1123:139;;;;:::o;1268:329::-;1327:6;1376:2;1364:9;1355:7;1351:23;1347:32;1344:119;;;1382:79;;:::i;:::-;1344:119;1502:1;1527:53;1572:7;1563:6;1552:9;1548:22;1527:53;:::i;:::-;1517:63;;1473:117;1268:329;;;;:::o;1603:77::-;1640:7;1669:5;1658:16;;1603:77;;;:::o;1686:118::-;1773:24;1791:5;1773:24;:::i;:::-;1768:3;1761:37;1686:118;;:::o;1810:222::-;1903:4;1941:2;1930:9;1926:18;1918:26;;1954:71;2022:1;2011:9;2007:17;1998:6;1954:71;:::i;:::-;1810:222;;;;:::o;2038:118::-;2125:24;2143:5;2125:24;:::i;:::-;2120:3;2113:37;2038:118;;:::o;2162:222::-;2255:4;2293:2;2282:9;2278:18;2270:26;;2306:71;2374:1;2363:9;2359:17;2350:6;2306:71;:::i;:::-;2162:222;;;;:::o;2390:169::-;2474:11;2508:6;2503:3;2496:19;2548:4;2543:3;2539:14;2524:29;;2390:169;;;;:::o;2565:163::-;2705:15;2701:1;2693:6;2689:14;2682:39;2565:163;:::o;2734:366::-;2876:3;2897:67;2961:2;2956:3;2897:67;:::i;:::-;2890:74;;2973:93;3062:3;2973:93;:::i;:::-;3091:2;3086:3;3082:12;3075:19;;2734:366;;;:::o;3106:419::-;3272:4;3310:2;3299:9;3295:18;3287:26;;3359:9;3353:4;3349:20;3345:1;3334:9;3330:17;3323:47;3387:131;3513:4;3387:131;:::i;:::-;3379:139;;3106:419;;;:::o;3531:171::-;3671:23;3667:1;3659:6;3655:14;3648:47;3531:171;:::o;3708:366::-;3850:3;3871:67;3935:2;3930:3;3871:67;:::i;:::-;3864:74;;3947:93;4036:3;3947:93;:::i;:::-;4065:2;4060:3;4056:12;4049:19;;3708:366;;;:::o;4080:419::-;4246:4;4284:2;4273:9;4269:18;4261:26;;4333:9;4327:4;4323:20;4319:1;4308:9;4304:17;4297:47;4361:131;4487:4;4361:131;:::i;:::-;4353:139;;4080:419;;;:::o;4505:166::-;4645:18;4641:1;4633:6;4629:14;4622:42;4505:166;:::o;4677:366::-;4819:3;4840:67;4904:2;4899:3;4840:67;:::i;:::-;4833:74;;4916:93;5005:3;4916:93;:::i;:::-;5034:2;5029:3;5025:12;5018:19;;4677:366;;;:::o;5049:419::-;5215:4;5253:2;5242:9;5238:18;5230:26;;5302:9;5296:4;5292:20;5288:1;5277:9;5273:17;5266:47;5330:131;5456:4;5330:131;:::i;:::-;5322:139;;5049:419;;;:::o;5474:161::-;5614:13;5610:1;5602:6;5598:14;5591:37;5474:161;:::o;5641:366::-;5783:3;5804:67;5868:2;5863:3;5804:67;:::i;:::-;5797:74;;5880:93;5969:3;5880:93;:::i;:::-;5998:2;5993:3;5989:12;5982:19;;5641:366;;;:::o;6013:419::-;6179:4;6217:2;6206:9;6202:18;6194:26;;6266:9;6260:4;6256:20;6252:1;6241:9;6237:17;6230:47;6294:131;6420:4;6294:131;:::i;:::-;6286:139;;6013:419;;;:::o;6438:180::-;6486:77;6483:1;6476:88;6583:4;6580:1;6573:15;6607:4;6604:1;6597:15;6624:191;6664:3;6683:20;6701:1;6683:20;:::i;:::-;6678:25;;6717:20;6735:1;6717:20;:::i;:::-;6712:25;;6760:1;6757;6753:9;6746:16;;6781:3;6778:1;6775:10;6772:36;;;6788:18;;:::i;:::-;6772:36;6624:191;;;;:::o;6821:160::-;6961:12;6957:1;6949:6;6945:14;6938:36;6821:160;:::o;6987:366::-;7129:3;7150:67;7214:2;7209:3;7150:67;:::i;:::-;7143:74;;7226:93;7315:3;7226:93;:::i;:::-;7344:2;7339:3;7335:12;7328:19;;6987:366;;;:::o;7359:419::-;7525:4;7563:2;7552:9;7548:18;7540:26;;7612:9;7606:4;7602:20;7598:1;7587:9;7583:17;7576:47;7640:131;7766:4;7640:131;:::i;:::-;7632:139;;7359:419;;;:::o;7784:159::-;7924:11;7920:1;7912:6;7908:14;7901:35;7784:159;:::o;7949:365::-;8091:3;8112:66;8176:1;8171:3;8112:66;:::i;:::-;8105:73;;8187:93;8276:3;8187:93;:::i;:::-;8305:2;8300:3;8296:12;8289:19;;7949:365;;;:::o;8320:419::-;8486:4;8524:2;8513:9;8509:18;8501:26;;8573:9;8567:4;8563:20;8559:1;8548:9;8544:17;8537:47;8601:131;8727:4;8601:131;:::i;:::-;8593:139;;8320:419;;;:::o;8745:147::-;8846:11;8883:3;8868:18;;8745:147;;;;:::o;8898:114::-;;:::o;9018:398::-;9177:3;9198:83;9279:1;9274:3;9198:83;:::i;:::-;9191:90;;9290:93;9379:3;9290:93;:::i;:::-;9408:1;9403:3;9399:11;9392:18;;9018:398;;;:::o;9422:379::-;9606:3;9628:147;9771:3;9628:147;:::i;:::-;9621:154;;9792:3;9785:10;;9422:379;;;:::o;9807:163::-;9947:15;9943:1;9935:6;9931:14;9924:39;9807:163;:::o;9976:366::-;10118:3;10139:67;10203:2;10198:3;10139:67;:::i;:::-;10132:74;;10215:93;10304:3;10215:93;:::i;:::-;10333:2;10328:3;10324:12;10317:19;;9976:366;;;:::o;10348:419::-;10514:4;10552:2;10541:9;10537:18;10529:26;;10601:9;10595:4;10591:20;10587:1;10576:9;10572:17;10565:47;10629:131;10755:4;10629:131;:::i;:::-;10621:139;;10348:419;;;:::o;10773:160::-;10913:12;10909:1;10901:6;10897:14;10890:36;10773:160;:::o;10939:366::-;11081:3;11102:67;11166:2;11161:3;11102:67;:::i;:::-;11095:74;;11178:93;11267:3;11178:93;:::i;:::-;11296:2;11291:3;11287:12;11280:19;;10939:366;;;:::o;11311:419::-;11477:4;11515:2;11504:9;11500:18;11492:26;;11564:9;11558:4;11554:20;11550:1;11539:9;11535:17;11528:47;11592:131;11718:4;11592:131;:::i;:::-;11584:139;;11311:419;;;:::o;11736:167::-;11876:19;11872:1;11864:6;11860:14;11853:43;11736:167;:::o;11909:366::-;12051:3;12072:67;12136:2;12131:3;12072:67;:::i;:::-;12065:74;;12148:93;12237:3;12148:93;:::i;:::-;12266:2;12261:3;12257:12;12250:19;;11909:366;;;:::o;12281:419::-;12447:4;12485:2;12474:9;12470:18;12462:26;;12534:9;12528:4;12524:20;12520:1;12509:9;12505:17;12498:47;12562:131;12688:4;12562:131;:::i;:::-;12554:139;;12281:419;;;:::o;12706:163::-;12846:15;12842:1;12834:6;12830:14;12823:39;12706:163;:::o;12875:366::-;13017:3;13038:67;13102:2;13097:3;13038:67;:::i;:::-;13031:74;;13114:93;13203:3;13114:93;:::i;:::-;13232:2;13227:3;13223:12;13216:19;;12875:366;;;:::o;13247:419::-;13413:4;13451:2;13440:9;13436:18;13428:26;;13500:9;13494:4;13490:20;13486:1;13475:9;13471:17;13464:47;13528:131;13654:4;13528:131;:::i;:::-;13520:139;;13247:419;;;:::o;13672:163::-;13812:15;13808:1;13800:6;13796:14;13789:39;13672:163;:::o;13841:366::-;13983:3;14004:67;14068:2;14063:3;14004:67;:::i;:::-;13997:74;;14080:93;14169:3;14080:93;:::i;:::-;14198:2;14193:3;14189:12;14182:19;;13841:366;;;:::o;14213:419::-;14379:4;14417:2;14406:9;14402:18;14394:26;;14466:9;14460:4;14456:20;14452:1;14441:9;14437:17;14430:47;14494:131;14620:4;14494:131;:::i;:::-;14486:139;;14213:419;;;:::o;14638:332::-;14759:4;14797:2;14786:9;14782:18;14774:26;;14810:71;14878:1;14867:9;14863:17;14854:6;14810:71;:::i;:::-;14891:72;14959:2;14948:9;14944:18;14935:6;14891:72;:::i;:::-;14638:332;;;;;:::o"},"methodIdentifiers":{"bid()":"1998aeef","endAuction()":"fe67a54b","endTime()":"3197cbb6","ended()":"12fa6feb","highestBid()":"d57bde79","highestBidder()":"91f90157","owner()":"8da5cb5b","pendingReturns(address)":"26b387bb","startingPrice()":"d6fbf202","withdrawRefund()":"110f8874"}},"metadata":"{\"compiler\":{\"version\":\"0.8.28+commit.7893614a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_startingPrice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_auctionDuration\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"winner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"AuctionEnded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"bidder\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BidPlaced\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"bidder\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"RefundWithdrawn\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"bid\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"endAuction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"endTime\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ended\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"highestBid\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"highestBidder\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"pendingReturns\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"startingPrice\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawRefund\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project/contracts/auction.sol\":\"SimpleAuction\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"project/contracts/auction.sol\":{\"keccak256\":\"0x302596e6c853b4830c78a4839cd6469eb903f0d35ba7a3442bc7c1c06eaa7538\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://eada5cbdf81117d7a6c5cf649173887ebfd61d8177ed3a0b103f0d60175d5133\",\"dweb:/ipfs/QmZrqzXEbrrxxnCZe5g5rcByC1vejP86VPnCaxbVPyZ2Pk\"]}},\"version\":1}"}}},"sources":{"project/contracts/auction.sol":{"ast":{"absolutePath":"project/contracts/auction.sol","exportedSymbols":{"SimpleAuction":[291]},"id":292,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":1,"literals":["solidity","0.8",".28"],"nodeType":"PragmaDirective","src":"32:23:0"},{"abstract":false,"baseContracts":[],"canonicalName":"SimpleAuction","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"id":291,"linearizedBaseContracts":[291],"name":"SimpleAuction","nameLocation":"66:13:0","nodeType":"ContractDefinition","nodes":[{"constant":false,"id":3,"mutability":"mutable","name":"locked","nameLocation":"97:6:0","nodeType":"VariableDeclaration","scope":291,"src":"84:19:0","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":2,"name":"bool","nodeType":"ElementaryTypeName","src":"84:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"private"},{"body":{"id":20,"nodeType":"Block","src":"132:87:0","statements":[{"expression":{"arguments":[{"id":7,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"146:7:0","subExpression":{"id":6,"name":"locked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3,"src":"147:6:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5265656e7472616e6379","id":8,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"155:12:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_467b8b8587ba88511be913c7407f7cca76ad98c06a2fa45de2edfa50da724f97","typeString":"literal_string \"Reentrancy\""},"value":"Reentrancy"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_467b8b8587ba88511be913c7407f7cca76ad98c06a2fa45de2edfa50da724f97","typeString":"literal_string \"Reentrancy\""}],"id":5,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18,-18],"referencedDeclaration":-18,"src":"138:7:0","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":9,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"138:30:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":10,"nodeType":"ExpressionStatement","src":"138:30:0"},{"expression":{"id":13,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":11,"name":"locked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3,"src":"174:6:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":12,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"183:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"174:13:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":14,"nodeType":"ExpressionStatement","src":"174:13:0"},{"id":15,"nodeType":"PlaceholderStatement","src":"193:1:0"},{"expression":{"id":18,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":16,"name":"locked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3,"src":"200:6:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":17,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"209:5:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"200:14:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":19,"nodeType":"ExpressionStatement","src":"200:14:0"}]},"id":21,"name":"nonReentrant","nameLocation":"117:12:0","nodeType":"ModifierDefinition","parameters":{"id":4,"nodeType":"ParameterList","parameters":[],"src":"129:2:0"},"src":"108:111:0","virtual":false,"visibility":"internal"},{"constant":false,"functionSelector":"8da5cb5b","id":23,"mutability":"mutable","name":"owner","nameLocation":"237:5:0","nodeType":"VariableDeclaration","scope":291,"src":"222:20:0","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":22,"name":"address","nodeType":"ElementaryTypeName","src":"222:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"constant":false,"functionSelector":"d6fbf202","id":25,"mutability":"mutable","name":"startingPrice","nameLocation":"261:13:0","nodeType":"VariableDeclaration","scope":291,"src":"246:28:0","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":24,"name":"uint256","nodeType":"ElementaryTypeName","src":"246:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"constant":false,"functionSelector":"3197cbb6","id":27,"mutability":"mutable","name":"endTime","nameLocation":"293:7:0","nodeType":"VariableDeclaration","scope":291,"src":"278:22:0","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26,"name":"uint256","nodeType":"ElementaryTypeName","src":"278:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"constant":false,"functionSelector":"12fa6feb","id":29,"mutability":"mutable","name":"ended","nameLocation":"316:5:0","nodeType":"VariableDeclaration","scope":291,"src":"304:17:0","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":28,"name":"bool","nodeType":"ElementaryTypeName","src":"304:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"public"},{"constant":false,"functionSelector":"91f90157","id":31,"mutability":"mutable","name":"highestBidder","nameLocation":"341:13:0","nodeType":"VariableDeclaration","scope":291,"src":"326:28:0","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30,"name":"address","nodeType":"ElementaryTypeName","src":"326:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"constant":false,"functionSelector":"d57bde79","id":33,"mutability":"mutable","name":"highestBid","nameLocation":"373:10:0","nodeType":"VariableDeclaration","scope":291,"src":"358:25:0","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32,"name":"uint256","nodeType":"ElementaryTypeName","src":"358:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"constant":false,"functionSelector":"26b387bb","id":37,"mutability":"mutable","name":"pendingReturns","nameLocation":"423:14:0","nodeType":"VariableDeclaration","scope":291,"src":"388:49:0","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":36,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":34,"name":"address","nodeType":"ElementaryTypeName","src":"396:7:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"388:27:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":35,"name":"uint256","nodeType":"ElementaryTypeName","src":"407:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"anonymous":false,"eventSelector":"3fabff0a9c3ecd6814702e247fa9733e5d0aa69e3a38590f92cb18f623a2254d","id":43,"name":"BidPlaced","nameLocation":"448:9:0","nodeType":"EventDefinition","parameters":{"id":42,"nodeType":"ParameterList","parameters":[{"constant":false,"id":39,"indexed":true,"mutability":"mutable","name":"bidder","nameLocation":"474:6:0","nodeType":"VariableDeclaration","scope":43,"src":"458:22:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":38,"name":"address","nodeType":"ElementaryTypeName","src":"458:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":41,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"490:6:0","nodeType":"VariableDeclaration","scope":43,"src":"482:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":40,"name":"uint256","nodeType":"ElementaryTypeName","src":"482:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"457:40:0"},"src":"442:56:0"},{"anonymous":false,"eventSelector":"daec4582d5d9595688c8c98545fdd1c696d41c6aeaeb636737e84ed2f5c00eda","id":49,"name":"AuctionEnded","nameLocation":"507:12:0","nodeType":"EventDefinition","parameters":{"id":48,"nodeType":"ParameterList","parameters":[{"constant":false,"id":45,"indexed":false,"mutability":"mutable","name":"winner","nameLocation":"528:6:0","nodeType":"VariableDeclaration","scope":49,"src":"520:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":44,"name":"address","nodeType":"ElementaryTypeName","src":"520:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":47,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"544:6:0","nodeType":"VariableDeclaration","scope":49,"src":"536:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":46,"name":"uint256","nodeType":"ElementaryTypeName","src":"536:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"519:32:0"},"src":"501:51:0"},{"anonymous":false,"eventSelector":"3d97f39b86d061200a7834082f5926e58ec10fd85a9d6930f497729d5e6cc35c","id":55,"name":"RefundWithdrawn","nameLocation":"561:15:0","nodeType":"EventDefinition","parameters":{"id":54,"nodeType":"ParameterList","parameters":[{"constant":false,"id":51,"indexed":true,"mutability":"mutable","name":"bidder","nameLocation":"593:6:0","nodeType":"VariableDeclaration","scope":55,"src":"577:22:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":50,"name":"address","nodeType":"ElementaryTypeName","src":"577:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":53,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"609:6:0","nodeType":"VariableDeclaration","scope":55,"src":"601:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":52,"name":"uint256","nodeType":"ElementaryTypeName","src":"601:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"576:40:0"},"src":"555:62:0"},{"body":{"id":96,"nodeType":"Block","src":"683:270:0","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":65,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":63,"name":"_startingPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57,"src":"697:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":64,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"714:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"697:18:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5374617274696e67207072696365206d757374206265203e2030","id":66,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"717:28:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_3d62e4e23f203bdeaa2b3326c3134bd4ba42ec2c22fb012c25ad94d36532cb4f","typeString":"literal_string \"Starting price must be > 0\""},"value":"Starting price must be > 0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_3d62e4e23f203bdeaa2b3326c3134bd4ba42ec2c22fb012c25ad94d36532cb4f","typeString":"literal_string \"Starting price must be > 0\""}],"id":62,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18,-18],"referencedDeclaration":-18,"src":"689:7:0","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":67,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"689:57:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68,"nodeType":"ExpressionStatement","src":"689:57:0"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70,"name":"_auctionDuration","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59,"src":"760:16:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":71,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"779:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"760:20:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"4475726174696f6e206d757374206265203e2030","id":73,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"782:22:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_8e11b6d2923bf8c6b9080d06aaf81f8e74ef4ded2c8e4af3b95302a90884a4cd","typeString":"literal_string \"Duration must be > 0\""},"value":"Duration must be > 0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8e11b6d2923bf8c6b9080d06aaf81f8e74ef4ded2c8e4af3b95302a90884a4cd","typeString":"literal_string \"Duration must be > 0\""}],"id":69,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18,-18],"referencedDeclaration":-18,"src":"752:7:0","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":74,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"752:53:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75,"nodeType":"ExpressionStatement","src":"752:53:0"},{"expression":{"id":79,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":76,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23,"src":"811:5:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":77,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"819:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":78,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"823:6:0","memberName":"sender","nodeType":"MemberAccess","src":"819:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"811:18:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":80,"nodeType":"ExpressionStatement","src":"811:18:0"},{"expression":{"id":83,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":81,"name":"startingPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25,"src":"835:13:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":82,"name":"_startingPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57,"src":"851:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"835:30:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":84,"nodeType":"ExpressionStatement","src":"835:30:0"},{"expression":{"id":90,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":85,"name":"endTime","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27,"src":"871:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":89,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":86,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"881:5:0","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":87,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"887:9:0","memberName":"timestamp","nodeType":"MemberAccess","src":"881:15:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":88,"name":"_auctionDuration","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59,"src":"899:16:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"881:34:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"871:44:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":91,"nodeType":"ExpressionStatement","src":"871:44:0"},{"expression":{"id":94,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":92,"name":"highestBid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33,"src":"921:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":93,"name":"_startingPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57,"src":"934:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"921:27:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":95,"nodeType":"ExpressionStatement","src":"921:27:0"}]},"id":97,"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":60,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57,"mutability":"mutable","name":"_startingPrice","nameLocation":"641:14:0","nodeType":"VariableDeclaration","scope":97,"src":"633:22:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":56,"name":"uint256","nodeType":"ElementaryTypeName","src":"633:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":59,"mutability":"mutable","name":"_auctionDuration","nameLocation":"665:16:0","nodeType":"VariableDeclaration","scope":97,"src":"657:24:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":58,"name":"uint256","nodeType":"ElementaryTypeName","src":"657:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"632:50:0"},"returnParameters":{"id":61,"nodeType":"ParameterList","parameters":[],"src":"683:0:0"},"scope":291,"src":"621:332:0","stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"body":{"id":161,"nodeType":"Block","src":"987:415:0","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":104,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":101,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"1001:5:0","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":102,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1007:9:0","memberName":"timestamp","nodeType":"MemberAccess","src":"1001:15:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":103,"name":"endTime","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27,"src":"1019:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1001:25:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"41756374696f6e20656e646564","id":105,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1028:15:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_d8e1c4c687c6e649f550c1facb02105a23d7eff39fa63adff9d993b8e468c13b","typeString":"literal_string \"Auction ended\""},"value":"Auction ended"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_d8e1c4c687c6e649f550c1facb02105a23d7eff39fa63adff9d993b8e468c13b","typeString":"literal_string \"Auction ended\""}],"id":100,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18,-18],"referencedDeclaration":-18,"src":"993:7:0","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":106,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"993:51:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":107,"nodeType":"ExpressionStatement","src":"993:51:0"},{"expression":{"arguments":[{"id":110,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"1058:6:0","subExpression":{"id":109,"name":"ended","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29,"src":"1059:5:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"41756374696f6e20616c726561647920656e646564","id":111,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1066:23:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_36020d7b7b79be3186d0224484952c41e479aaf134eacdd764b3d17624762006","typeString":"literal_string \"Auction already ended\""},"value":"Auction already ended"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_36020d7b7b79be3186d0224484952c41e479aaf134eacdd764b3d17624762006","typeString":"literal_string \"Auction already ended\""}],"id":108,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18,-18],"referencedDeclaration":-18,"src":"1050:7:0","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":112,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1050:40:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":113,"nodeType":"ExpressionStatement","src":"1050:40:0"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":118,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":115,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1104:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":116,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1108:6:0","memberName":"sender","nodeType":"MemberAccess","src":"1104:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":117,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23,"src":"1118:5:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1104:19:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"4f776e65722063616e6e6f7420626964","id":119,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1125:18:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_b069a3605a760977e488740e57d20a45915ea0c3b96c47ae687173d31aadf0b7","typeString":"literal_string \"Owner cannot bid\""},"value":"Owner cannot bid"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_b069a3605a760977e488740e57d20a45915ea0c3b96c47ae687173d31aadf0b7","typeString":"literal_string \"Owner cannot bid\""}],"id":114,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18,-18],"referencedDeclaration":-18,"src":"1096:7:0","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":120,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1096:48:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":121,"nodeType":"ExpressionStatement","src":"1096:48:0"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":126,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":123,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1158:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":124,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1162:5:0","memberName":"value","nodeType":"MemberAccess","src":"1158:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":125,"name":"highestBid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33,"src":"1170:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1158:22:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"42696420746f6f206c6f77","id":127,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1182:13:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_13e75ff1b0a6ca9bca87c24c1936118dd10a3ec174f359ad2a8c3d901173470e","typeString":"literal_string \"Bid too low\""},"value":"Bid too low"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_13e75ff1b0a6ca9bca87c24c1936118dd10a3ec174f359ad2a8c3d901173470e","typeString":"literal_string \"Bid too low\""}],"id":122,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18,-18],"referencedDeclaration":-18,"src":"1150:7:0","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":128,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1150:46:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":129,"nodeType":"ExpressionStatement","src":"1150:46:0"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":135,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":130,"name":"highestBidder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31,"src":"1207:13:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":133,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1232:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":132,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1224:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":131,"name":"address","nodeType":"ElementaryTypeName","src":"1224:7:0","typeDescriptions":{}}},"id":134,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1224:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1207:27:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":143,"nodeType":"IfStatement","src":"1203:91:0","trueBody":{"id":142,"nodeType":"Block","src":"1236:58:0","statements":[{"expression":{"id":140,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":136,"name":"pendingReturns","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"1244:14:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":138,"indexExpression":{"id":137,"name":"highestBidder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31,"src":"1259:13:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"1244:29:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":139,"name":"highestBid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33,"src":"1277:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1244:43:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":141,"nodeType":"ExpressionStatement","src":"1244:43:0"}]}},{"expression":{"id":147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":144,"name":"highestBidder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31,"src":"1300:13:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":145,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1316:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1320:6:0","memberName":"sender","nodeType":"MemberAccess","src":"1316:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1300:26:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":148,"nodeType":"ExpressionStatement","src":"1300:26:0"},{"expression":{"id":152,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":149,"name":"highestBid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33,"src":"1332:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":150,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1345:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":151,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1349:5:0","memberName":"value","nodeType":"MemberAccess","src":"1345:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1332:22:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":153,"nodeType":"ExpressionStatement","src":"1332:22:0"},{"eventCall":{"arguments":[{"expression":{"id":155,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1375:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":156,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1379:6:0","memberName":"sender","nodeType":"MemberAccess","src":"1375:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":157,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1387:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":158,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1391:5:0","memberName":"value","nodeType":"MemberAccess","src":"1387:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":154,"name":"BidPlaced","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"1365:9:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":159,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1365:32:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":160,"nodeType":"EmitStatement","src":"1360:37:0"}]},"functionSelector":"1998aeef","id":162,"implemented":true,"kind":"function","modifiers":[],"name":"bid","nameLocation":"966:3:0","nodeType":"FunctionDefinition","parameters":{"id":98,"nodeType":"ParameterList","parameters":[],"src":"969:2:0"},"returnParameters":{"id":99,"nodeType":"ParameterList","parameters":[],"src":"987:0:0"},"scope":291,"src":"957:445:0","stateMutability":"payable","virtual":false,"visibility":"public"},{"body":{"id":212,"nodeType":"Block","src":"1454:271:0","statements":[{"assignments":[168],"declarations":[{"constant":false,"id":168,"mutability":"mutable","name":"amount","nameLocation":"1468:6:0","nodeType":"VariableDeclaration","scope":212,"src":"1460:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":167,"name":"uint256","nodeType":"ElementaryTypeName","src":"1460:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":173,"initialValue":{"baseExpression":{"id":169,"name":"pendingReturns","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"1477:14:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":172,"indexExpression":{"expression":{"id":170,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1492:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":171,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1496:6:0","memberName":"sender","nodeType":"MemberAccess","src":"1492:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1477:26:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"1460:43:0"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":177,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":175,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":168,"src":"1517:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":176,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1526:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"1517:10:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"4e6f20726566756e64","id":178,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1529:11:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_6550a6289f93e91f607ed5f062d48d2a2f49dff99feaaa73478c8f1be16aa901","typeString":"literal_string \"No refund\""},"value":"No refund"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_6550a6289f93e91f607ed5f062d48d2a2f49dff99feaaa73478c8f1be16aa901","typeString":"literal_string \"No refund\""}],"id":174,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18,-18],"referencedDeclaration":-18,"src":"1509:7:0","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":179,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1509:32:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":180,"nodeType":"ExpressionStatement","src":"1509:32:0"},{"expression":{"id":186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":181,"name":"pendingReturns","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"1547:14:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":184,"indexExpression":{"expression":{"id":182,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1562:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":183,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1566:6:0","memberName":"sender","nodeType":"MemberAccess","src":"1562:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"1547:26:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":185,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1576:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"1547:30:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":187,"nodeType":"ExpressionStatement","src":"1547:30:0"},{"assignments":[189,null],"declarations":[{"constant":false,"id":189,"mutability":"mutable","name":"ok","nameLocation":"1589:2:0","nodeType":"VariableDeclaration","scope":212,"src":"1584:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":188,"name":"bool","nodeType":"ElementaryTypeName","src":"1584:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},null],"id":200,"initialValue":{"arguments":[{"hexValue":"","id":198,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1637:2:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""},"value":""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"arguments":[{"expression":{"id":192,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1605:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":193,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1609:6:0","memberName":"sender","nodeType":"MemberAccess","src":"1605:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":191,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1597:8:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":190,"name":"address","nodeType":"ElementaryTypeName","src":"1597:8:0","stateMutability":"payable","typeDescriptions":{}}},"id":194,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1597:19:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":195,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1617:4:0","memberName":"call","nodeType":"MemberAccess","src":"1597:24:0","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":197,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":196,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":168,"src":"1629:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"1597:39:0","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":199,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1597:43:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bool_$_t_bytes_memory_ptr_$","typeString":"tuple(bool,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"1583:57:0"},{"expression":{"arguments":[{"id":202,"name":"ok","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":189,"src":"1654:2:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"526566756e64206661696c6564","id":203,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1658:15:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_940ea0545bf4a4779ef86217d18a28c86bb09c07d43dd7635f3da6878953d25e","typeString":"literal_string \"Refund failed\""},"value":"Refund failed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_940ea0545bf4a4779ef86217d18a28c86bb09c07d43dd7635f3da6878953d25e","typeString":"literal_string \"Refund failed\""}],"id":201,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18,-18],"referencedDeclaration":-18,"src":"1646:7:0","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":204,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1646:28:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":205,"nodeType":"ExpressionStatement","src":"1646:28:0"},{"eventCall":{"arguments":[{"expression":{"id":207,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1701:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":208,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1705:6:0","memberName":"sender","nodeType":"MemberAccess","src":"1701:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":209,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":168,"src":"1713:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":206,"name":"RefundWithdrawn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55,"src":"1685:15:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":210,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1685:35:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":211,"nodeType":"EmitStatement","src":"1680:40:0"}]},"functionSelector":"110f8874","id":213,"implemented":true,"kind":"function","modifiers":[{"id":165,"kind":"modifierInvocation","modifierName":{"id":164,"name":"nonReentrant","nameLocations":["1441:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":21,"src":"1441:12:0"},"nodeType":"ModifierInvocation","src":"1441:12:0"}],"name":"withdrawRefund","nameLocation":"1415:14:0","nodeType":"FunctionDefinition","parameters":{"id":163,"nodeType":"ParameterList","parameters":[],"src":"1429:2:0"},"returnParameters":{"id":166,"nodeType":"ParameterList","parameters":[],"src":"1454:0:0"},"scope":291,"src":"1406:319:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"body":{"id":282,"nodeType":"Block","src":"1773:400:0","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":222,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":219,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1787:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":220,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1791:6:0","memberName":"sender","nodeType":"MemberAccess","src":"1787:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":221,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23,"src":"1801:5:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1787:19:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"4f6e6c79206f776e6572","id":223,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1808:12:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_17d9f114efaa93d67eedad749dd7fd16a6895ff93e28b7a30c667a069f2ed42d","typeString":"literal_string \"Only owner\""},"value":"Only owner"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_17d9f114efaa93d67eedad749dd7fd16a6895ff93e28b7a30c667a069f2ed42d","typeString":"literal_string \"Only owner\""}],"id":218,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18,-18],"referencedDeclaration":-18,"src":"1779:7:0","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":224,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1779:42:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":225,"nodeType":"ExpressionStatement","src":"1779:42:0"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":230,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":227,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"1835:5:0","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":228,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1841:9:0","memberName":"timestamp","nodeType":"MemberAccess","src":"1835:15:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":229,"name":"endTime","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27,"src":"1854:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1835:26:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"41756374696f6e206e6f7420656e646564","id":231,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1863:19:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_567737202f93ce47caa4eb871cc7b9aa316148459129941c928400c1649aa5d4","typeString":"literal_string \"Auction not ended\""},"value":"Auction not ended"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_567737202f93ce47caa4eb871cc7b9aa316148459129941c928400c1649aa5d4","typeString":"literal_string \"Auction not ended\""}],"id":226,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18,-18],"referencedDeclaration":-18,"src":"1827:7:0","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":232,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1827:56:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":233,"nodeType":"ExpressionStatement","src":"1827:56:0"},{"expression":{"arguments":[{"id":236,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"1897:6:0","subExpression":{"id":235,"name":"ended","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29,"src":"1898:5:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"416c726561647920656e646564","id":237,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1905:15:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_03a0ef2274e5fa9c92bd6c8904f1025dd04b34d1da74eba1106c91ebdbd13a59","typeString":"literal_string \"Already ended\""},"value":"Already ended"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_03a0ef2274e5fa9c92bd6c8904f1025dd04b34d1da74eba1106c91ebdbd13a59","typeString":"literal_string \"Already ended\""}],"id":234,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18,-18],"referencedDeclaration":-18,"src":"1889:7:0","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":238,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1889:32:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":239,"nodeType":"ExpressionStatement","src":"1889:32:0"},{"expression":{"id":242,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":240,"name":"ended","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29,"src":"1927:5:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":241,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"1935:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"1927:12:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":243,"nodeType":"ExpressionStatement","src":"1927:12:0"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":249,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":244,"name":"highestBidder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31,"src":"1949:13:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":247,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1974:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":246,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1966:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":245,"name":"address","nodeType":"ElementaryTypeName","src":"1966:7:0","typeDescriptions":{}}},"id":248,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1966:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1949:27:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":268,"nodeType":"IfStatement","src":"1945:140:0","trueBody":{"id":267,"nodeType":"Block","src":"1978:107:0","statements":[{"assignments":[251,null],"declarations":[{"constant":false,"id":251,"mutability":"mutable","name":"ok","nameLocation":"1992:2:0","nodeType":"VariableDeclaration","scope":267,"src":"1987:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":250,"name":"bool","nodeType":"ElementaryTypeName","src":"1987:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},null],"id":261,"initialValue":{"arguments":[{"hexValue":"","id":259,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2039:2:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""},"value":""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"arguments":[{"id":254,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23,"src":"2008:5:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":253,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2000:8:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":252,"name":"address","nodeType":"ElementaryTypeName","src":"2000:8:0","stateMutability":"payable","typeDescriptions":{}}},"id":255,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2000:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":256,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2015:4:0","memberName":"call","nodeType":"MemberAccess","src":"2000:19:0","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":258,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":257,"name":"highestBid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33,"src":"2027:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"2000:38:0","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":260,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2000:42:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bool_$_t_bytes_memory_ptr_$","typeString":"tuple(bool,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"1986:56:0"},{"expression":{"arguments":[{"id":263,"name":"ok","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":251,"src":"2058:2:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5061796f7574206661696c6564","id":264,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2062:15:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_42d486eee70463b52369225e27fce2709665a17be45e65becee48f6af14cf90b","typeString":"literal_string \"Payout failed\""},"value":"Payout failed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_42d486eee70463b52369225e27fce2709665a17be45e65becee48f6af14cf90b","typeString":"literal_string \"Payout failed\""}],"id":262,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18,-18],"referencedDeclaration":-18,"src":"2050:7:0","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":265,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2050:28:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":266,"nodeType":"ExpressionStatement","src":"2050:28:0"}]}},{"eventCall":{"arguments":[{"id":270,"name":"highestBidder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31,"src":"2108:13:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":276,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":271,"name":"highestBidder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31,"src":"2123:13:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":274,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2148:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":273,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2140:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":272,"name":"address","nodeType":"ElementaryTypeName","src":"2140:7:0","typeDescriptions":{}}},"id":275,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2140:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2123:27:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"id":278,"name":"highestBid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33,"src":"2157:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":279,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"2123:44:0","trueExpression":{"hexValue":"30","id":277,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2153:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":269,"name":"AuctionEnded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":49,"src":"2095:12:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":280,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2095:73:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":281,"nodeType":"EmitStatement","src":"2090:78:0"}]},"functionSelector":"fe67a54b","id":283,"implemented":true,"kind":"function","modifiers":[{"id":216,"kind":"modifierInvocation","modifierName":{"id":215,"name":"nonReentrant","nameLocations":["1760:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":21,"src":"1760:12:0"},"nodeType":"ModifierInvocation","src":"1760:12:0"}],"name":"endAuction","nameLocation":"1738:10:0","nodeType":"FunctionDefinition","parameters":{"id":214,"nodeType":"ParameterList","parameters":[],"src":"1748:2:0"},"returnParameters":{"id":217,"nodeType":"ParameterList","parameters":[],"src":"1773:0:0"},"scope":291,"src":"1729:444:0","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"body":{"id":289,"nodeType":"Block","src":"2204:16:0","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":286,"name":"bid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":162,"src":"2210:3:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":287,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2210:5:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":288,"nodeType":"ExpressionStatement","src":"2210:5:0"}]},"id":290,"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":284,"nodeType":"ParameterList","parameters":[],"src":"2184:2:0"},"returnParameters":{"id":285,"nodeType":"ParameterList","parameters":[],"src":"2204:0:0"},"scope":291,"src":"2177:43:0","stateMutability":"payable","virtual":false,"visibility":"external"}],"scope":292,"src":"57:2165:0","usedErrors":[],"usedEvents":[43,49,55]}],"src":"32:2191:0"},"id":0}}}} \ No newline at end of file diff --git a/Assignment/solidity-assignment7/contracts/auction/artifacts/contracts/auction.sol/SimpleAuction.json b/Assignment/solidity-assignment7/contracts/auction/artifacts/contracts/auction.sol/SimpleAuction.json new file mode 100644 index 00000000..518cfb75 --- /dev/null +++ b/Assignment/solidity-assignment7/contracts/auction/artifacts/contracts/auction.sol/SimpleAuction.json @@ -0,0 +1,209 @@ +{ + "_format": "hh3-artifact-1", + "contractName": "SimpleAuction", + "sourceName": "contracts/auction.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "_startingPrice", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_auctionDuration", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "winner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "AuctionEnded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "bidder", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BidPlaced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "bidder", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "RefundWithdrawn", + "type": "event" + }, + { + "inputs": [], + "name": "bid", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "endAuction", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "endTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "ended", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "highestBid", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "highestBidder", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "pendingReturns", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "startingPrice", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "withdrawRefund", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561000f575f5ffd5b506040516114b43803806114b483398181016040528101906100319190610153565b5f8211610073576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161006a906101eb565b60405180910390fd5b5f81116100b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100ac90610253565b60405180910390fd5b335f60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816001819055508042610108919061029e565b6002819055508160048190555050506102d1565b5f5ffd5b5f819050919050565b61013281610120565b811461013c575f5ffd5b50565b5f8151905061014d81610129565b92915050565b5f5f604083850312156101695761016861011c565b5b5f6101768582860161013f565b92505060206101878582860161013f565b9150509250929050565b5f82825260208201905092915050565b7f5374617274696e67207072696365206d757374206265203e20300000000000005f82015250565b5f6101d5601a83610191565b91506101e0826101a1565b602082019050919050565b5f6020820190508181035f830152610202816101c9565b9050919050565b7f4475726174696f6e206d757374206265203e20300000000000000000000000005f82015250565b5f61023d601483610191565b915061024882610209565b602082019050919050565b5f6020820190508181035f83015261026a81610231565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6102a882610120565b91506102b383610120565b92508282019050808211156102cb576102ca610271565b5b92915050565b6111d6806102de5f395ff3fe608060405260043610610094575f3560e01c80638da5cb5b116100585780638da5cb5b1461015757806391f9015714610181578063d57bde79146101ab578063d6fbf202146101d5578063fe67a54b146101ff576100a3565b8063110f8874146100a757806312fa6feb146100bd5780631998aeef146100e757806326b387bb146100f15780633197cbb61461012d576100a3565b366100a3576100a1610215565b005b5f5ffd5b3480156100b2575f5ffd5b506100bb6104e0565b005b3480156100c8575f5ffd5b506100d161071e565b6040516100de9190610b55565b60405180910390f35b6100ef610215565b005b3480156100fc575f5ffd5b5061011760048036038101906101129190610bcc565b610730565b6040516101249190610c0f565b60405180910390f35b348015610138575f5ffd5b50610141610745565b60405161014e9190610c0f565b60405180910390f35b348015610162575f5ffd5b5061016b61074b565b6040516101789190610c37565b60405180910390f35b34801561018c575f5ffd5b50610195610770565b6040516101a29190610c37565b60405180910390f35b3480156101b6575f5ffd5b506101bf610796565b6040516101cc9190610c0f565b60405180910390f35b3480156101e0575f5ffd5b506101e961079c565b6040516101f69190610c0f565b60405180910390f35b34801561020a575f5ffd5b506102136107a2565b005b6002544210610259576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161025090610caa565b60405180910390fd5b60035f9054906101000a900460ff16156102a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161029f90610d12565b60405180910390fd5b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603610337576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032e90610d7a565b60405180910390fd5b600454341161037b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161037290610de2565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104485760045460055f600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546104409190610e2d565b925050819055505b33600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550346004819055503373ffffffffffffffffffffffffffffffffffffffff167f3fabff0a9c3ecd6814702e247fa9733e5d0aa69e3a38590f92cb18f623a2254d346040516104d69190610c0f565b60405180910390a2565b5f5f9054906101000a900460ff161561052e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052590610eaa565b60405180910390fd5b60015f5f6101000a81548160ff0219169083151502179055505f60055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f81116105ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c190610f12565b60405180910390fd5b5f60055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f3373ffffffffffffffffffffffffffffffffffffffff168260405161063190610f5d565b5f6040518083038185875af1925050503d805f811461066b576040519150601f19603f3d011682016040523d82523d5f602084013e610670565b606091505b50509050806106b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ab90610fbb565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff167f3d97f39b86d061200a7834082f5926e58ec10fd85a9d6930f497729d5e6cc35c836040516106fa9190610c0f565b60405180910390a250505f5f5f6101000a81548160ff021916908315150217905550565b60035f9054906101000a900460ff1681565b6005602052805f5260405f205f915090505481565b60025481565b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b60015481565b5f5f9054906101000a900460ff16156107f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e790610eaa565b60405180910390fd5b60015f5f6101000a81548160ff0219169083151502179055505f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610898576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088f90611023565b60405180910390fd5b6002544210156108dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d49061108b565b60405180910390fd5b60035f9054906101000a900460ff161561092c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610923906110f3565b60405180910390fd5b600160035f6101000a81548160ff0219169083151502179055505f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a68575f5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166004546040516109e390610f5d565b5f6040518083038185875af1925050503d805f8114610a1d576040519150601f19603f3d011682016040523d82523d5f602084013e610a22565b606091505b5050905080610a66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5d9061115b565b60405180910390fd5b505b7fdaec4582d5d9595688c8c98545fdd1c696d41c6aeaeb636737e84ed2f5c00eda600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b0957600454610b0b565b5f5b604051610b19929190611179565b60405180910390a15f5f5f6101000a81548160ff021916908315150217905550565b5f8115159050919050565b610b4f81610b3b565b82525050565b5f602082019050610b685f830184610b46565b92915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610b9b82610b72565b9050919050565b610bab81610b91565b8114610bb5575f5ffd5b50565b5f81359050610bc681610ba2565b92915050565b5f60208284031215610be157610be0610b6e565b5b5f610bee84828501610bb8565b91505092915050565b5f819050919050565b610c0981610bf7565b82525050565b5f602082019050610c225f830184610c00565b92915050565b610c3181610b91565b82525050565b5f602082019050610c4a5f830184610c28565b92915050565b5f82825260208201905092915050565b7f41756374696f6e20656e646564000000000000000000000000000000000000005f82015250565b5f610c94600d83610c50565b9150610c9f82610c60565b602082019050919050565b5f6020820190508181035f830152610cc181610c88565b9050919050565b7f41756374696f6e20616c726561647920656e64656400000000000000000000005f82015250565b5f610cfc601583610c50565b9150610d0782610cc8565b602082019050919050565b5f6020820190508181035f830152610d2981610cf0565b9050919050565b7f4f776e65722063616e6e6f7420626964000000000000000000000000000000005f82015250565b5f610d64601083610c50565b9150610d6f82610d30565b602082019050919050565b5f6020820190508181035f830152610d9181610d58565b9050919050565b7f42696420746f6f206c6f770000000000000000000000000000000000000000005f82015250565b5f610dcc600b83610c50565b9150610dd782610d98565b602082019050919050565b5f6020820190508181035f830152610df981610dc0565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610e3782610bf7565b9150610e4283610bf7565b9250828201905080821115610e5a57610e59610e00565b5b92915050565b7f5265656e7472616e6379000000000000000000000000000000000000000000005f82015250565b5f610e94600a83610c50565b9150610e9f82610e60565b602082019050919050565b5f6020820190508181035f830152610ec181610e88565b9050919050565b7f4e6f20726566756e6400000000000000000000000000000000000000000000005f82015250565b5f610efc600983610c50565b9150610f0782610ec8565b602082019050919050565b5f6020820190508181035f830152610f2981610ef0565b9050919050565b5f81905092915050565b50565b5f610f485f83610f30565b9150610f5382610f3a565b5f82019050919050565b5f610f6782610f3d565b9150819050919050565b7f526566756e64206661696c6564000000000000000000000000000000000000005f82015250565b5f610fa5600d83610c50565b9150610fb082610f71565b602082019050919050565b5f6020820190508181035f830152610fd281610f99565b9050919050565b7f4f6e6c79206f776e6572000000000000000000000000000000000000000000005f82015250565b5f61100d600a83610c50565b915061101882610fd9565b602082019050919050565b5f6020820190508181035f83015261103a81611001565b9050919050565b7f41756374696f6e206e6f7420656e6465640000000000000000000000000000005f82015250565b5f611075601183610c50565b915061108082611041565b602082019050919050565b5f6020820190508181035f8301526110a281611069565b9050919050565b7f416c726561647920656e646564000000000000000000000000000000000000005f82015250565b5f6110dd600d83610c50565b91506110e8826110a9565b602082019050919050565b5f6020820190508181035f83015261110a816110d1565b9050919050565b7f5061796f7574206661696c6564000000000000000000000000000000000000005f82015250565b5f611145600d83610c50565b915061115082611111565b602082019050919050565b5f6020820190508181035f83015261117281611139565b9050919050565b5f60408201905061118c5f830185610c28565b6111996020830184610c00565b939250505056fea2646970667358221220b4cab015f24706cbee44fc3831dbe04cb5b66c2516259d109be60d76a5668b6564736f6c634300081c0033", + "deployedBytecode": "0x608060405260043610610094575f3560e01c80638da5cb5b116100585780638da5cb5b1461015757806391f9015714610181578063d57bde79146101ab578063d6fbf202146101d5578063fe67a54b146101ff576100a3565b8063110f8874146100a757806312fa6feb146100bd5780631998aeef146100e757806326b387bb146100f15780633197cbb61461012d576100a3565b366100a3576100a1610215565b005b5f5ffd5b3480156100b2575f5ffd5b506100bb6104e0565b005b3480156100c8575f5ffd5b506100d161071e565b6040516100de9190610b55565b60405180910390f35b6100ef610215565b005b3480156100fc575f5ffd5b5061011760048036038101906101129190610bcc565b610730565b6040516101249190610c0f565b60405180910390f35b348015610138575f5ffd5b50610141610745565b60405161014e9190610c0f565b60405180910390f35b348015610162575f5ffd5b5061016b61074b565b6040516101789190610c37565b60405180910390f35b34801561018c575f5ffd5b50610195610770565b6040516101a29190610c37565b60405180910390f35b3480156101b6575f5ffd5b506101bf610796565b6040516101cc9190610c0f565b60405180910390f35b3480156101e0575f5ffd5b506101e961079c565b6040516101f69190610c0f565b60405180910390f35b34801561020a575f5ffd5b506102136107a2565b005b6002544210610259576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161025090610caa565b60405180910390fd5b60035f9054906101000a900460ff16156102a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161029f90610d12565b60405180910390fd5b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603610337576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032e90610d7a565b60405180910390fd5b600454341161037b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161037290610de2565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104485760045460055f600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546104409190610e2d565b925050819055505b33600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550346004819055503373ffffffffffffffffffffffffffffffffffffffff167f3fabff0a9c3ecd6814702e247fa9733e5d0aa69e3a38590f92cb18f623a2254d346040516104d69190610c0f565b60405180910390a2565b5f5f9054906101000a900460ff161561052e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052590610eaa565b60405180910390fd5b60015f5f6101000a81548160ff0219169083151502179055505f60055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f81116105ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c190610f12565b60405180910390fd5b5f60055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f3373ffffffffffffffffffffffffffffffffffffffff168260405161063190610f5d565b5f6040518083038185875af1925050503d805f811461066b576040519150601f19603f3d011682016040523d82523d5f602084013e610670565b606091505b50509050806106b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ab90610fbb565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff167f3d97f39b86d061200a7834082f5926e58ec10fd85a9d6930f497729d5e6cc35c836040516106fa9190610c0f565b60405180910390a250505f5f5f6101000a81548160ff021916908315150217905550565b60035f9054906101000a900460ff1681565b6005602052805f5260405f205f915090505481565b60025481565b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b60015481565b5f5f9054906101000a900460ff16156107f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e790610eaa565b60405180910390fd5b60015f5f6101000a81548160ff0219169083151502179055505f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610898576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088f90611023565b60405180910390fd5b6002544210156108dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d49061108b565b60405180910390fd5b60035f9054906101000a900460ff161561092c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610923906110f3565b60405180910390fd5b600160035f6101000a81548160ff0219169083151502179055505f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a68575f5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166004546040516109e390610f5d565b5f6040518083038185875af1925050503d805f8114610a1d576040519150601f19603f3d011682016040523d82523d5f602084013e610a22565b606091505b5050905080610a66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5d9061115b565b60405180910390fd5b505b7fdaec4582d5d9595688c8c98545fdd1c696d41c6aeaeb636737e84ed2f5c00eda600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b0957600454610b0b565b5f5b604051610b19929190611179565b60405180910390a15f5f5f6101000a81548160ff021916908315150217905550565b5f8115159050919050565b610b4f81610b3b565b82525050565b5f602082019050610b685f830184610b46565b92915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610b9b82610b72565b9050919050565b610bab81610b91565b8114610bb5575f5ffd5b50565b5f81359050610bc681610ba2565b92915050565b5f60208284031215610be157610be0610b6e565b5b5f610bee84828501610bb8565b91505092915050565b5f819050919050565b610c0981610bf7565b82525050565b5f602082019050610c225f830184610c00565b92915050565b610c3181610b91565b82525050565b5f602082019050610c4a5f830184610c28565b92915050565b5f82825260208201905092915050565b7f41756374696f6e20656e646564000000000000000000000000000000000000005f82015250565b5f610c94600d83610c50565b9150610c9f82610c60565b602082019050919050565b5f6020820190508181035f830152610cc181610c88565b9050919050565b7f41756374696f6e20616c726561647920656e64656400000000000000000000005f82015250565b5f610cfc601583610c50565b9150610d0782610cc8565b602082019050919050565b5f6020820190508181035f830152610d2981610cf0565b9050919050565b7f4f776e65722063616e6e6f7420626964000000000000000000000000000000005f82015250565b5f610d64601083610c50565b9150610d6f82610d30565b602082019050919050565b5f6020820190508181035f830152610d9181610d58565b9050919050565b7f42696420746f6f206c6f770000000000000000000000000000000000000000005f82015250565b5f610dcc600b83610c50565b9150610dd782610d98565b602082019050919050565b5f6020820190508181035f830152610df981610dc0565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610e3782610bf7565b9150610e4283610bf7565b9250828201905080821115610e5a57610e59610e00565b5b92915050565b7f5265656e7472616e6379000000000000000000000000000000000000000000005f82015250565b5f610e94600a83610c50565b9150610e9f82610e60565b602082019050919050565b5f6020820190508181035f830152610ec181610e88565b9050919050565b7f4e6f20726566756e6400000000000000000000000000000000000000000000005f82015250565b5f610efc600983610c50565b9150610f0782610ec8565b602082019050919050565b5f6020820190508181035f830152610f2981610ef0565b9050919050565b5f81905092915050565b50565b5f610f485f83610f30565b9150610f5382610f3a565b5f82019050919050565b5f610f6782610f3d565b9150819050919050565b7f526566756e64206661696c6564000000000000000000000000000000000000005f82015250565b5f610fa5600d83610c50565b9150610fb082610f71565b602082019050919050565b5f6020820190508181035f830152610fd281610f99565b9050919050565b7f4f6e6c79206f776e6572000000000000000000000000000000000000000000005f82015250565b5f61100d600a83610c50565b915061101882610fd9565b602082019050919050565b5f6020820190508181035f83015261103a81611001565b9050919050565b7f41756374696f6e206e6f7420656e6465640000000000000000000000000000005f82015250565b5f611075601183610c50565b915061108082611041565b602082019050919050565b5f6020820190508181035f8301526110a281611069565b9050919050565b7f416c726561647920656e646564000000000000000000000000000000000000005f82015250565b5f6110dd600d83610c50565b91506110e8826110a9565b602082019050919050565b5f6020820190508181035f83015261110a816110d1565b9050919050565b7f5061796f7574206661696c6564000000000000000000000000000000000000005f82015250565b5f611145600d83610c50565b915061115082611111565b602082019050919050565b5f6020820190508181035f83015261117281611139565b9050919050565b5f60408201905061118c5f830185610c28565b6111996020830184610c00565b939250505056fea2646970667358221220b4cab015f24706cbee44fc3831dbe04cb5b66c2516259d109be60d76a5668b6564736f6c634300081c0033", + "linkReferences": {}, + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/contracts/auction.sol", + "buildInfoId": "solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058" +} \ No newline at end of file diff --git a/Assignment/solidity-assignment7/contracts/auction/artifacts/contracts/auction.sol/artifacts.d.ts b/Assignment/solidity-assignment7/contracts/auction/artifacts/contracts/auction.sol/artifacts.d.ts new file mode 100644 index 00000000..da59a497 --- /dev/null +++ b/Assignment/solidity-assignment7/contracts/auction/artifacts/contracts/auction.sol/artifacts.d.ts @@ -0,0 +1,27 @@ +// This file was autogenerated by Hardhat, do not edit it. +// prettier-ignore +// tslint:disable +// eslint-disable +// biome-ignore format: see above + +export interface SimpleAuction$Type { + readonly _format: "hh3-artifact-1"; + readonly contractName: "SimpleAuction"; + readonly sourceName: "contracts/auction.sol"; + readonly abi: [{"inputs":[{"internalType":"uint256","name":"_startingPrice","type":"uint256"},{"internalType":"uint256","name":"_auctionDuration","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"winner","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"AuctionEnded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"bidder","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"BidPlaced","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"bidder","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"RefundWithdrawn","type":"event"},{"inputs":[],"name":"bid","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"endAuction","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"endTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ended","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"highestBid","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"highestBidder","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"pendingReturns","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"startingPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawRefund","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]; + readonly bytecode: "0x608060405234801561000f575f5ffd5b506040516114b43803806114b483398181016040528101906100319190610153565b5f8211610073576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161006a906101eb565b60405180910390fd5b5f81116100b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100ac90610253565b60405180910390fd5b335f60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816001819055508042610108919061029e565b6002819055508160048190555050506102d1565b5f5ffd5b5f819050919050565b61013281610120565b811461013c575f5ffd5b50565b5f8151905061014d81610129565b92915050565b5f5f604083850312156101695761016861011c565b5b5f6101768582860161013f565b92505060206101878582860161013f565b9150509250929050565b5f82825260208201905092915050565b7f5374617274696e67207072696365206d757374206265203e20300000000000005f82015250565b5f6101d5601a83610191565b91506101e0826101a1565b602082019050919050565b5f6020820190508181035f830152610202816101c9565b9050919050565b7f4475726174696f6e206d757374206265203e20300000000000000000000000005f82015250565b5f61023d601483610191565b915061024882610209565b602082019050919050565b5f6020820190508181035f83015261026a81610231565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6102a882610120565b91506102b383610120565b92508282019050808211156102cb576102ca610271565b5b92915050565b6111d6806102de5f395ff3fe608060405260043610610094575f3560e01c80638da5cb5b116100585780638da5cb5b1461015757806391f9015714610181578063d57bde79146101ab578063d6fbf202146101d5578063fe67a54b146101ff576100a3565b8063110f8874146100a757806312fa6feb146100bd5780631998aeef146100e757806326b387bb146100f15780633197cbb61461012d576100a3565b366100a3576100a1610215565b005b5f5ffd5b3480156100b2575f5ffd5b506100bb6104e0565b005b3480156100c8575f5ffd5b506100d161071e565b6040516100de9190610b55565b60405180910390f35b6100ef610215565b005b3480156100fc575f5ffd5b5061011760048036038101906101129190610bcc565b610730565b6040516101249190610c0f565b60405180910390f35b348015610138575f5ffd5b50610141610745565b60405161014e9190610c0f565b60405180910390f35b348015610162575f5ffd5b5061016b61074b565b6040516101789190610c37565b60405180910390f35b34801561018c575f5ffd5b50610195610770565b6040516101a29190610c37565b60405180910390f35b3480156101b6575f5ffd5b506101bf610796565b6040516101cc9190610c0f565b60405180910390f35b3480156101e0575f5ffd5b506101e961079c565b6040516101f69190610c0f565b60405180910390f35b34801561020a575f5ffd5b506102136107a2565b005b6002544210610259576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161025090610caa565b60405180910390fd5b60035f9054906101000a900460ff16156102a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161029f90610d12565b60405180910390fd5b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603610337576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032e90610d7a565b60405180910390fd5b600454341161037b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161037290610de2565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104485760045460055f600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546104409190610e2d565b925050819055505b33600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550346004819055503373ffffffffffffffffffffffffffffffffffffffff167f3fabff0a9c3ecd6814702e247fa9733e5d0aa69e3a38590f92cb18f623a2254d346040516104d69190610c0f565b60405180910390a2565b5f5f9054906101000a900460ff161561052e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052590610eaa565b60405180910390fd5b60015f5f6101000a81548160ff0219169083151502179055505f60055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f81116105ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c190610f12565b60405180910390fd5b5f60055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f3373ffffffffffffffffffffffffffffffffffffffff168260405161063190610f5d565b5f6040518083038185875af1925050503d805f811461066b576040519150601f19603f3d011682016040523d82523d5f602084013e610670565b606091505b50509050806106b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ab90610fbb565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff167f3d97f39b86d061200a7834082f5926e58ec10fd85a9d6930f497729d5e6cc35c836040516106fa9190610c0f565b60405180910390a250505f5f5f6101000a81548160ff021916908315150217905550565b60035f9054906101000a900460ff1681565b6005602052805f5260405f205f915090505481565b60025481565b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b60015481565b5f5f9054906101000a900460ff16156107f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e790610eaa565b60405180910390fd5b60015f5f6101000a81548160ff0219169083151502179055505f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610898576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088f90611023565b60405180910390fd5b6002544210156108dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d49061108b565b60405180910390fd5b60035f9054906101000a900460ff161561092c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610923906110f3565b60405180910390fd5b600160035f6101000a81548160ff0219169083151502179055505f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a68575f5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166004546040516109e390610f5d565b5f6040518083038185875af1925050503d805f8114610a1d576040519150601f19603f3d011682016040523d82523d5f602084013e610a22565b606091505b5050905080610a66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5d9061115b565b60405180910390fd5b505b7fdaec4582d5d9595688c8c98545fdd1c696d41c6aeaeb636737e84ed2f5c00eda600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b0957600454610b0b565b5f5b604051610b19929190611179565b60405180910390a15f5f5f6101000a81548160ff021916908315150217905550565b5f8115159050919050565b610b4f81610b3b565b82525050565b5f602082019050610b685f830184610b46565b92915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610b9b82610b72565b9050919050565b610bab81610b91565b8114610bb5575f5ffd5b50565b5f81359050610bc681610ba2565b92915050565b5f60208284031215610be157610be0610b6e565b5b5f610bee84828501610bb8565b91505092915050565b5f819050919050565b610c0981610bf7565b82525050565b5f602082019050610c225f830184610c00565b92915050565b610c3181610b91565b82525050565b5f602082019050610c4a5f830184610c28565b92915050565b5f82825260208201905092915050565b7f41756374696f6e20656e646564000000000000000000000000000000000000005f82015250565b5f610c94600d83610c50565b9150610c9f82610c60565b602082019050919050565b5f6020820190508181035f830152610cc181610c88565b9050919050565b7f41756374696f6e20616c726561647920656e64656400000000000000000000005f82015250565b5f610cfc601583610c50565b9150610d0782610cc8565b602082019050919050565b5f6020820190508181035f830152610d2981610cf0565b9050919050565b7f4f776e65722063616e6e6f7420626964000000000000000000000000000000005f82015250565b5f610d64601083610c50565b9150610d6f82610d30565b602082019050919050565b5f6020820190508181035f830152610d9181610d58565b9050919050565b7f42696420746f6f206c6f770000000000000000000000000000000000000000005f82015250565b5f610dcc600b83610c50565b9150610dd782610d98565b602082019050919050565b5f6020820190508181035f830152610df981610dc0565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610e3782610bf7565b9150610e4283610bf7565b9250828201905080821115610e5a57610e59610e00565b5b92915050565b7f5265656e7472616e6379000000000000000000000000000000000000000000005f82015250565b5f610e94600a83610c50565b9150610e9f82610e60565b602082019050919050565b5f6020820190508181035f830152610ec181610e88565b9050919050565b7f4e6f20726566756e6400000000000000000000000000000000000000000000005f82015250565b5f610efc600983610c50565b9150610f0782610ec8565b602082019050919050565b5f6020820190508181035f830152610f2981610ef0565b9050919050565b5f81905092915050565b50565b5f610f485f83610f30565b9150610f5382610f3a565b5f82019050919050565b5f610f6782610f3d565b9150819050919050565b7f526566756e64206661696c6564000000000000000000000000000000000000005f82015250565b5f610fa5600d83610c50565b9150610fb082610f71565b602082019050919050565b5f6020820190508181035f830152610fd281610f99565b9050919050565b7f4f6e6c79206f776e6572000000000000000000000000000000000000000000005f82015250565b5f61100d600a83610c50565b915061101882610fd9565b602082019050919050565b5f6020820190508181035f83015261103a81611001565b9050919050565b7f41756374696f6e206e6f7420656e6465640000000000000000000000000000005f82015250565b5f611075601183610c50565b915061108082611041565b602082019050919050565b5f6020820190508181035f8301526110a281611069565b9050919050565b7f416c726561647920656e646564000000000000000000000000000000000000005f82015250565b5f6110dd600d83610c50565b91506110e8826110a9565b602082019050919050565b5f6020820190508181035f83015261110a816110d1565b9050919050565b7f5061796f7574206661696c6564000000000000000000000000000000000000005f82015250565b5f611145600d83610c50565b915061115082611111565b602082019050919050565b5f6020820190508181035f83015261117281611139565b9050919050565b5f60408201905061118c5f830185610c28565b6111996020830184610c00565b939250505056fea2646970667358221220b4cab015f24706cbee44fc3831dbe04cb5b66c2516259d109be60d76a5668b6564736f6c634300081c0033"; + readonly deployedBytecode: "0x608060405260043610610094575f3560e01c80638da5cb5b116100585780638da5cb5b1461015757806391f9015714610181578063d57bde79146101ab578063d6fbf202146101d5578063fe67a54b146101ff576100a3565b8063110f8874146100a757806312fa6feb146100bd5780631998aeef146100e757806326b387bb146100f15780633197cbb61461012d576100a3565b366100a3576100a1610215565b005b5f5ffd5b3480156100b2575f5ffd5b506100bb6104e0565b005b3480156100c8575f5ffd5b506100d161071e565b6040516100de9190610b55565b60405180910390f35b6100ef610215565b005b3480156100fc575f5ffd5b5061011760048036038101906101129190610bcc565b610730565b6040516101249190610c0f565b60405180910390f35b348015610138575f5ffd5b50610141610745565b60405161014e9190610c0f565b60405180910390f35b348015610162575f5ffd5b5061016b61074b565b6040516101789190610c37565b60405180910390f35b34801561018c575f5ffd5b50610195610770565b6040516101a29190610c37565b60405180910390f35b3480156101b6575f5ffd5b506101bf610796565b6040516101cc9190610c0f565b60405180910390f35b3480156101e0575f5ffd5b506101e961079c565b6040516101f69190610c0f565b60405180910390f35b34801561020a575f5ffd5b506102136107a2565b005b6002544210610259576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161025090610caa565b60405180910390fd5b60035f9054906101000a900460ff16156102a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161029f90610d12565b60405180910390fd5b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603610337576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032e90610d7a565b60405180910390fd5b600454341161037b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161037290610de2565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104485760045460055f600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546104409190610e2d565b925050819055505b33600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550346004819055503373ffffffffffffffffffffffffffffffffffffffff167f3fabff0a9c3ecd6814702e247fa9733e5d0aa69e3a38590f92cb18f623a2254d346040516104d69190610c0f565b60405180910390a2565b5f5f9054906101000a900460ff161561052e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052590610eaa565b60405180910390fd5b60015f5f6101000a81548160ff0219169083151502179055505f60055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f81116105ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c190610f12565b60405180910390fd5b5f60055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f3373ffffffffffffffffffffffffffffffffffffffff168260405161063190610f5d565b5f6040518083038185875af1925050503d805f811461066b576040519150601f19603f3d011682016040523d82523d5f602084013e610670565b606091505b50509050806106b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ab90610fbb565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff167f3d97f39b86d061200a7834082f5926e58ec10fd85a9d6930f497729d5e6cc35c836040516106fa9190610c0f565b60405180910390a250505f5f5f6101000a81548160ff021916908315150217905550565b60035f9054906101000a900460ff1681565b6005602052805f5260405f205f915090505481565b60025481565b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b60015481565b5f5f9054906101000a900460ff16156107f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e790610eaa565b60405180910390fd5b60015f5f6101000a81548160ff0219169083151502179055505f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610898576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088f90611023565b60405180910390fd5b6002544210156108dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d49061108b565b60405180910390fd5b60035f9054906101000a900460ff161561092c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610923906110f3565b60405180910390fd5b600160035f6101000a81548160ff0219169083151502179055505f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a68575f5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166004546040516109e390610f5d565b5f6040518083038185875af1925050503d805f8114610a1d576040519150601f19603f3d011682016040523d82523d5f602084013e610a22565b606091505b5050905080610a66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5d9061115b565b60405180910390fd5b505b7fdaec4582d5d9595688c8c98545fdd1c696d41c6aeaeb636737e84ed2f5c00eda600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b0957600454610b0b565b5f5b604051610b19929190611179565b60405180910390a15f5f5f6101000a81548160ff021916908315150217905550565b5f8115159050919050565b610b4f81610b3b565b82525050565b5f602082019050610b685f830184610b46565b92915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610b9b82610b72565b9050919050565b610bab81610b91565b8114610bb5575f5ffd5b50565b5f81359050610bc681610ba2565b92915050565b5f60208284031215610be157610be0610b6e565b5b5f610bee84828501610bb8565b91505092915050565b5f819050919050565b610c0981610bf7565b82525050565b5f602082019050610c225f830184610c00565b92915050565b610c3181610b91565b82525050565b5f602082019050610c4a5f830184610c28565b92915050565b5f82825260208201905092915050565b7f41756374696f6e20656e646564000000000000000000000000000000000000005f82015250565b5f610c94600d83610c50565b9150610c9f82610c60565b602082019050919050565b5f6020820190508181035f830152610cc181610c88565b9050919050565b7f41756374696f6e20616c726561647920656e64656400000000000000000000005f82015250565b5f610cfc601583610c50565b9150610d0782610cc8565b602082019050919050565b5f6020820190508181035f830152610d2981610cf0565b9050919050565b7f4f776e65722063616e6e6f7420626964000000000000000000000000000000005f82015250565b5f610d64601083610c50565b9150610d6f82610d30565b602082019050919050565b5f6020820190508181035f830152610d9181610d58565b9050919050565b7f42696420746f6f206c6f770000000000000000000000000000000000000000005f82015250565b5f610dcc600b83610c50565b9150610dd782610d98565b602082019050919050565b5f6020820190508181035f830152610df981610dc0565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610e3782610bf7565b9150610e4283610bf7565b9250828201905080821115610e5a57610e59610e00565b5b92915050565b7f5265656e7472616e6379000000000000000000000000000000000000000000005f82015250565b5f610e94600a83610c50565b9150610e9f82610e60565b602082019050919050565b5f6020820190508181035f830152610ec181610e88565b9050919050565b7f4e6f20726566756e6400000000000000000000000000000000000000000000005f82015250565b5f610efc600983610c50565b9150610f0782610ec8565b602082019050919050565b5f6020820190508181035f830152610f2981610ef0565b9050919050565b5f81905092915050565b50565b5f610f485f83610f30565b9150610f5382610f3a565b5f82019050919050565b5f610f6782610f3d565b9150819050919050565b7f526566756e64206661696c6564000000000000000000000000000000000000005f82015250565b5f610fa5600d83610c50565b9150610fb082610f71565b602082019050919050565b5f6020820190508181035f830152610fd281610f99565b9050919050565b7f4f6e6c79206f776e6572000000000000000000000000000000000000000000005f82015250565b5f61100d600a83610c50565b915061101882610fd9565b602082019050919050565b5f6020820190508181035f83015261103a81611001565b9050919050565b7f41756374696f6e206e6f7420656e6465640000000000000000000000000000005f82015250565b5f611075601183610c50565b915061108082611041565b602082019050919050565b5f6020820190508181035f8301526110a281611069565b9050919050565b7f416c726561647920656e646564000000000000000000000000000000000000005f82015250565b5f6110dd600d83610c50565b91506110e8826110a9565b602082019050919050565b5f6020820190508181035f83015261110a816110d1565b9050919050565b7f5061796f7574206661696c6564000000000000000000000000000000000000005f82015250565b5f611145600d83610c50565b915061115082611111565b602082019050919050565b5f6020820190508181035f83015261117281611139565b9050919050565b5f60408201905061118c5f830185610c28565b6111996020830184610c00565b939250505056fea2646970667358221220b4cab015f24706cbee44fc3831dbe04cb5b66c2516259d109be60d76a5668b6564736f6c634300081c0033"; + readonly linkReferences: {}; + readonly deployedLinkReferences: {}; + readonly immutableReferences: {}; + readonly inputSourceName: "project/contracts/auction.sol"; + readonly buildInfoId: "solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058"; +}; + +import "hardhat/types/artifacts"; +declare module "hardhat/types/artifacts" { + interface ArtifactMap { + ["SimpleAuction"]: SimpleAuction$Type; + ["contracts/auction.sol:SimpleAuction"]: SimpleAuction$Type; + } +} \ No newline at end of file diff --git a/Assignment/solidity-assignment7/contracts/auction/cache/compile-cache.json b/Assignment/solidity-assignment7/contracts/auction/cache/compile-cache.json new file mode 100644 index 00000000..9804a625 --- /dev/null +++ b/Assignment/solidity-assignment7/contracts/auction/cache/compile-cache.json @@ -0,0 +1 @@ +{"/home/luhrhenz/Desktop/New Folder/contracts/auction/contracts/auction.sol":{"jobHash":"solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058","isolated":false,"artifactPaths":["/home/luhrhenz/Desktop/New Folder/contracts/auction/artifacts/contracts/auction.sol/SimpleAuction.json"],"buildInfoPath":"/home/luhrhenz/Desktop/New Folder/contracts/auction/artifacts/build-info/solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058.json","buildInfoOutputPath":"/home/luhrhenz/Desktop/New Folder/contracts/auction/artifacts/build-info/solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058.output.json","typeFilePath":"/home/luhrhenz/Desktop/New Folder/contracts/auction/artifacts/contracts/auction.sol/artifacts.d.ts","wasm":false},"/home/luhrhenz/Desktop/blockchain/assignments/7-assignment-solidity/contracts/auction/contracts/auction.sol":{"jobHash":"solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058","isolated":false,"artifactPaths":["/home/luhrhenz/Desktop/blockchain/assignments/7-assignment-solidity/contracts/auction/artifacts/contracts/auction.sol/SimpleAuction.json"],"buildInfoPath":"/home/luhrhenz/Desktop/blockchain/assignments/7-assignment-solidity/contracts/auction/artifacts/build-info/solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058.json","buildInfoOutputPath":"/home/luhrhenz/Desktop/blockchain/assignments/7-assignment-solidity/contracts/auction/artifacts/build-info/solc-0_8_28-d561e92d8769fccdba4d2cfc37ea3a101e655058.output.json","typeFilePath":"/home/luhrhenz/Desktop/blockchain/assignments/7-assignment-solidity/contracts/auction/artifacts/contracts/auction.sol/artifacts.d.ts","wasm":false}} \ No newline at end of file diff --git a/Assignment/solidity-assignment7/contracts/auction/contracts/auction.sol b/Assignment/solidity-assignment7/contracts/auction/contracts/auction.sol new file mode 100644 index 00000000..8ffeb56b --- /dev/null +++ b/Assignment/solidity-assignment7/contracts/auction/contracts/auction.sol @@ -0,0 +1,75 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.28; + +contract SimpleAuction { + bool private locked; + + modifier nonReentrant() { + require(!locked, "Reentrancy"); + locked = true; + _; + locked = false; + } + address public owner; + uint256 public startingPrice; + uint256 public endTime; + bool public ended; + + address public highestBidder; + uint256 public highestBid; + + mapping(address => uint256) public pendingReturns; + + event BidPlaced(address indexed bidder, uint256 amount); + event AuctionEnded(address winner, uint256 amount); + event RefundWithdrawn(address indexed bidder, uint256 amount); + + constructor(uint256 _startingPrice, uint256 _auctionDuration) { + require(_startingPrice > 0, "Starting price must be > 0"); + require(_auctionDuration > 0, "Duration must be > 0"); + owner = msg.sender; + startingPrice = _startingPrice; + endTime = block.timestamp + _auctionDuration; + highestBid = _startingPrice; + } + + function bid() public payable { + require(block.timestamp < endTime, "Auction ended"); + require(!ended, "Auction already ended"); + require(msg.sender != owner, "Owner cannot bid"); + require(msg.value > highestBid, "Bid too low"); + + if (highestBidder != address(0)) { + pendingReturns[highestBidder] += highestBid; + } + + highestBidder = msg.sender; + highestBid = msg.value; + emit BidPlaced(msg.sender, msg.value); + } + + function withdrawRefund() external nonReentrant { + uint256 amount = pendingReturns[msg.sender]; + require(amount > 0, "No refund"); + pendingReturns[msg.sender] = 0; + (bool ok, ) = payable(msg.sender).call{value: amount}(""); + require(ok, "Refund failed"); + emit RefundWithdrawn(msg.sender, amount); + } + + function endAuction() external nonReentrant { + require(msg.sender == owner, "Only owner"); + require(block.timestamp >= endTime, "Auction not ended"); + require(!ended, "Already ended"); + ended = true; + if (highestBidder != address(0)) { + (bool ok, ) = payable(owner).call{value: highestBid}(""); + require(ok, "Payout failed"); + } + emit AuctionEnded(highestBidder, highestBidder == address(0) ? 0 : highestBid); + } + + receive() external payable { + bid(); + } +} diff --git a/Assignment/solidity-assignment7/contracts/auction/hardhat.config.ts b/Assignment/solidity-assignment7/contracts/auction/hardhat.config.ts new file mode 100644 index 00000000..5a11c3e9 --- /dev/null +++ b/Assignment/solidity-assignment7/contracts/auction/hardhat.config.ts @@ -0,0 +1,45 @@ +import dotenv from "dotenv"; +dotenv.config({ path: "../../.env" }); +import hardhatToolboxViemPlugin from "@nomicfoundation/hardhat-toolbox-viem"; +import { configVariable, defineConfig } from "hardhat/config"; + +export default defineConfig({ + plugins: [hardhatToolboxViemPlugin], + solidity: { + profiles: { + default: { + version: "0.8.28", + }, + production: { + version: "0.8.28", + settings: { + optimizer: { + enabled: true, + runs: 200, + }, + }, + }, + }, + }, + networks: { + hardhatMainnet: { + type: "edr-simulated", + chainType: "l1", + }, + hardhatOp: { + type: "edr-simulated", + chainType: "op", + }, + sepolia: { + type: "http", + chainType: "l1", + url: configVariable("SEPOLIA_RPC_URL"), + accounts: [configVariable("SEPOLIA_PRIVATE_KEY")], + }, + }, + verify: { + etherscan: { + apiKey: configVariable("ETHERSCAN_API_KEY"), + }, + }, +}); diff --git a/Assignment/solidity-assignment7/contracts/auction/ignition/modules/Auction.ts b/Assignment/solidity-assignment7/contracts/auction/ignition/modules/Auction.ts new file mode 100644 index 00000000..936b96c9 --- /dev/null +++ b/Assignment/solidity-assignment7/contracts/auction/ignition/modules/Auction.ts @@ -0,0 +1,10 @@ +import { buildModule } from "@nomicfoundation/hardhat-ignition/modules"; + +export default buildModule("AuctionModule", (m) => { + const startingPrice = m.getParameter("startingPrice", 1n); + const auctionDuration = m.getParameter("auctionDuration", 3600n); + + const auction = m.contract("SimpleAuction", [startingPrice, auctionDuration]); + + return { auction }; +}); diff --git a/Assignment/solidity-assignment7/contracts/auction/package.json b/Assignment/solidity-assignment7/contracts/auction/package.json new file mode 100644 index 00000000..8327a2fb --- /dev/null +++ b/Assignment/solidity-assignment7/contracts/auction/package.json @@ -0,0 +1,17 @@ +{ + "name": "New Folder", + "version": "1.0.0", + "type": "module", + "devDependencies": { + "@nomicfoundation/hardhat-ignition": "^3.0.7", + "@nomicfoundation/hardhat-toolbox-viem": "^5.0.2", + "@types/node": "^22.19.8", + "forge-std": "github:foundry-rs/forge-std#v1.9.4", + "hardhat": "^3.1.6", + "typescript": "~5.8.0", + "viem": "^2.45.1" + }, + "dependencies": { + "dotenv": "^17.2.4" + } +} diff --git a/Assignment/solidity-assignment7/contracts/auction/test/Auction.ts b/Assignment/solidity-assignment7/contracts/auction/test/Auction.ts new file mode 100644 index 00000000..999db3fa --- /dev/null +++ b/Assignment/solidity-assignment7/contracts/auction/test/Auction.ts @@ -0,0 +1,115 @@ +import assert from "node:assert/strict"; +import { describe, it } from "node:test"; + +import { network } from "hardhat"; + +describe("SimpleAuction", async function () { + const { viem } = await network.connect(); + const publicClient = await viem.getPublicClient(); + const testClient = await viem.getTestClient(); + const [owner, bidder1, bidder2] = await viem.getWalletClients(); + + const startingPrice = 1n; + const duration = 3600n; + + async function deployAuction() { + return viem.deployContract( + "SimpleAuction", + [startingPrice, duration], + { client: { wallet: owner, public: publicClient } }, + ); + } + + it("accepts higher bids and tracks refunds for outbid users", async function () { + const auction = await deployAuction(); + + const auctionAsBidder1 = await viem.getContractAt( + "SimpleAuction", + auction.address, + { client: { wallet: bidder1, public: publicClient } }, + ); + const auctionAsBidder2 = await viem.getContractAt( + "SimpleAuction", + auction.address, + { client: { wallet: bidder2, public: publicClient } }, + ); + + await auctionAsBidder1.write.bid({ value: 2n }); + await auctionAsBidder2.write.bid({ value: 3n }); + + const refund = await auction.read.pendingReturns([bidder1.account.address]); + assert.equal(refund, 2n); + + await auctionAsBidder1.write.withdrawRefund(); + const refundAfter = await auction.read.pendingReturns([bidder1.account.address]); + assert.equal(refundAfter, 0n); + }); + + it("rejects low or equal bids and owner bidding", async function () { + const auction = await deployAuction(); + + const auctionAsBidder1 = await viem.getContractAt( + "SimpleAuction", + auction.address, + { client: { wallet: bidder1, public: publicClient } }, + ); + + await auctionAsBidder1.write.bid({ value: 2n }); + + await assert.rejects(async () => { + await auctionAsBidder1.write.bid({ value: 2n }); + }); + + await assert.rejects(async () => { + await auction.write.bid({ value: 2n }); + }); + }); + + it("allows owner to end after duration and prevents double end", async function () { + const auction = await deployAuction(); + + const auctionAsBidder1 = await viem.getContractAt( + "SimpleAuction", + auction.address, + { client: { wallet: bidder1, public: publicClient } }, + ); + + await auctionAsBidder1.write.bid({ value: 2n }); + + await testClient.increaseTime({ seconds: 3600 }); + await testClient.mine({ blocks: 1 }); + + await auction.write.endAuction(); + assert.equal(await auction.read.ended(), true); + + await assert.rejects(async () => { + await auction.write.endAuction(); + }); + }); + + it("rejects bids after auction ends", async function () { + const auction = await deployAuction(); + + const auctionAsBidder1 = await viem.getContractAt( + "SimpleAuction", + auction.address, + { client: { wallet: bidder1, public: publicClient } }, + ); + + await testClient.increaseTime({ seconds: 3600 }); + await testClient.mine({ blocks: 1 }); + await auction.write.endAuction(); + + await assert.rejects(async () => { + await auctionAsBidder1.write.bid({ value: 2n }); + }); + }); + + it("rejects refund when no pending returns", async function () { + const auction = await deployAuction(); + + await assert.rejects(async () => { + await auction.write.withdrawRefund(); + }); + }); +}); diff --git a/Assignment/solidity-assignment7/contracts/auction/tsconfig.json b/Assignment/solidity-assignment7/contracts/auction/tsconfig.json new file mode 100644 index 00000000..9b1380cc --- /dev/null +++ b/Assignment/solidity-assignment7/contracts/auction/tsconfig.json @@ -0,0 +1,13 @@ +/* Based on https://github.com/tsconfig/bases/blob/501da2bcd640cf95c95805783e1012b992338f28/bases/node22.json */ +{ + "compilerOptions": { + "lib": ["es2023"], + "module": "node16", + "target": "es2022", + "strict": true, + "esModuleInterop": true, + "skipLibCheck": true, + "moduleResolution": "node16", + "outDir": "dist" + } +} diff --git a/template/.github/pull_request_template.md b/template/.github/pull_request_template.md new file mode 100644 index 00000000..60af44d0 --- /dev/null +++ b/template/.github/pull_request_template.md @@ -0,0 +1,9 @@ +## Summary +What does this PR implement? + +## Testing +- [ ] Unit tests added +- [ ] Tests passing locally + +## Notes +Any assumptions or trade-offs? \ No newline at end of file diff --git a/template/.github/workflows/.yml b/template/.github/workflows/.yml new file mode 100644 index 00000000..3aed9df2 --- /dev/null +++ b/template/.github/workflows/.yml @@ -0,0 +1,24 @@ +name: CI + +on: + pull_request: + branches: [main] + push: + branches: [main] + +jobs: + formatting: + name: Code Formatting (Prettier) + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Set up Node.js + uses: actions/setup-node@v4 + with: + node-version: 20 + + - name: Run Prettier check + run: npx prettier --check . diff --git a/template/.gitignore b/template/.gitignore new file mode 100644 index 00000000..962c2511 --- /dev/null +++ b/template/.gitignore @@ -0,0 +1,5 @@ +.env +.vscode/ + +package-lock.json +node_modules \ No newline at end of file diff --git a/template/.prettierignore b/template/.prettierignore new file mode 100644 index 00000000..2603b336 --- /dev/null +++ b/template/.prettierignore @@ -0,0 +1,4 @@ +node_modules +dist +build +.env* \ No newline at end of file diff --git a/template/.prettierrc b/template/.prettierrc new file mode 100644 index 00000000..d4fed1f5 --- /dev/null +++ b/template/.prettierrc @@ -0,0 +1,7 @@ +{ + "semi": true, + "singleQuote": true, + "trailingComma": "es5", + "printWidth": 80, + "tabWidth": 2 +} \ No newline at end of file diff --git a/template/CONTRIBUTING.md b/template/CONTRIBUTING.md new file mode 100644 index 00000000..cbd55a65 --- /dev/null +++ b/template/CONTRIBUTING.md @@ -0,0 +1,35 @@ +# How to Contribute + +1. Getting Started + - Fork the repository + - Sync with upstream + - Create a feature branch + +2. Branch Naming Convention +Example: +`submission/assignment-01/` + +3. Commit Message Guidelines + +Example (Conventional Commits–lite): +``` +feat: implement token transfer logic +fix: handle zero-address edge case +test: add coverage for revert conditions +``` + +4. Pull Request Checklist +- [x] Code compiles +- [x] Tests pass +- [x] README included +- [x] No changes outside /submissions + +5. PR Review Process +- [x] Automated checks +- [x] Manual review by mentors +- [x] Required fixes before merge + +6. Common Mistakes to Avoid +- Editing assignment specs +- Submitting compiled artifacts +- Force-pushing after review \ No newline at end of file diff --git a/template/README.md b/template/README.md new file mode 100644 index 00000000..1f9b46e7 --- /dev/null +++ b/template/README.md @@ -0,0 +1,26 @@ +# Cohort 8 +Blockchain Development Bootcamp — Cohort 8 + +This repository contains official technical materials, specifications, assignments, and collaboration artifacts for the 8th edition of our blockchain program. Dev participants are expected to actively use this repository throughout the program for learning, development, version control, and peer collaboration. + +#### Repository Structure +The repository will evolve over time, but a typical structure looks like: +```cohort-8/ +├── README.md # Repository overview and instructions +├── assignments/ # Coding exercises and assessments +├── projects/ +│ ├── templates/ # Starter project templates +│ └── submissions/ # Participant or team submissions +└── resources/ # Technical references & reading material +``` + +#### Setup +Clone the repository: +``` +git clone https://github.com/BlockheaderWeb3-Community/cohort-8.git +cd cohort-8 +``` + +#### Code Formatting +This repository uses Prettier for formatting. Install the Prettier extension in your editor and enable Format on Save. +