{"id":"1609d04d1cf51e5e89f7924789751eed","_format":"hh-sol-build-info-1","solcVersion":"0.8.30","solcLongVersion":"0.8.30+commit.73712a01","input":{"language":"Solidity","sources":{"contracts/Counter.sol":{"content":"// SPDX-License-Identifier: FSL-1.1-MIT\npragma solidity ^0.8.24;\n\ncontract Counter {\n    event CounterIncremented(uint256 indexed newValue);\n\n    uint256 public number;\n\n    function setNumber(uint256 newNumber) public {\n        number = newNumber;\n    }\n\n    function increment() public {\n        ++number;\n        emit CounterIncremented(number);\n    }\n}\n"}},"settings":{"evmVersion":"cancun","viaIR":true,"optimizer":{"enabled":true,"runs":200},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"],"":["ast"]}}}},"output":{"sources":{"contracts/Counter.sol":{"ast":{"absolutePath":"contracts/Counter.sol","exportedSymbols":{"Counter":[29]},"id":30,"license":"FSL-1.1-MIT","nodeType":"SourceUnit","nodes":[{"id":1,"literals":["solidity","^","0.8",".24"],"nodeType":"PragmaDirective","src":"40:24:0"},{"abstract":false,"baseContracts":[],"canonicalName":"Counter","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"id":29,"linearizedBaseContracts":[29],"name":"Counter","nameLocation":"75:7:0","nodeType":"ContractDefinition","nodes":[{"anonymous":false,"eventSelector":"3cf8b50771c17d723f2cb711ca7dadde485b222e13c84ba0730a14093fad6d5c","id":5,"name":"CounterIncremented","nameLocation":"95:18:0","nodeType":"EventDefinition","parameters":{"id":4,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3,"indexed":true,"mutability":"mutable","name":"newValue","nameLocation":"130:8:0","nodeType":"VariableDeclaration","scope":5,"src":"114:24:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2,"name":"uint256","nodeType":"ElementaryTypeName","src":"114:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"113:26:0"},"src":"89:51:0"},{"constant":false,"functionSelector":"8381f58a","id":7,"mutability":"mutable","name":"number","nameLocation":"161:6:0","nodeType":"VariableDeclaration","scope":29,"src":"146:21:0","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":6,"name":"uint256","nodeType":"ElementaryTypeName","src":"146:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"body":{"id":16,"nodeType":"Block","src":"219:35:0","statements":[{"expression":{"id":14,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":12,"name":"number","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7,"src":"229:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":13,"name":"newNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9,"src":"238:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"229:18:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":15,"nodeType":"ExpressionStatement","src":"229:18:0"}]},"functionSelector":"3fb5c1cb","id":17,"implemented":true,"kind":"function","modifiers":[],"name":"setNumber","nameLocation":"183:9:0","nodeType":"FunctionDefinition","parameters":{"id":10,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9,"mutability":"mutable","name":"newNumber","nameLocation":"201:9:0","nodeType":"VariableDeclaration","scope":17,"src":"193:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":8,"name":"uint256","nodeType":"ElementaryTypeName","src":"193:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"192:19:0"},"returnParameters":{"id":11,"nodeType":"ParameterList","parameters":[],"src":"219:0:0"},"scope":29,"src":"174:80:0","stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"body":{"id":27,"nodeType":"Block","src":"288:66:0","statements":[{"expression":{"id":21,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"298:8:0","subExpression":{"id":20,"name":"number","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7,"src":"300:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":22,"nodeType":"ExpressionStatement","src":"298:8:0"},{"eventCall":{"arguments":[{"id":24,"name":"number","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7,"src":"340:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":23,"name":"CounterIncremented","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5,"src":"321:18:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":25,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"321:26:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26,"nodeType":"EmitStatement","src":"316:31:0"}]},"functionSelector":"d09de08a","id":28,"implemented":true,"kind":"function","modifiers":[],"name":"increment","nameLocation":"269:9:0","nodeType":"FunctionDefinition","parameters":{"id":18,"nodeType":"ParameterList","parameters":[],"src":"278:2:0"},"returnParameters":{"id":19,"nodeType":"ParameterList","parameters":[],"src":"288:0:0"},"scope":29,"src":"260:94:0","stateMutability":"nonpayable","virtual":false,"visibility":"public"}],"scope":30,"src":"66:290:0","usedErrors":[],"usedEvents":[5]}],"src":"40:317:0"},"id":0}},"contracts":{"contracts/Counter.sol":{"Counter":{"abi":[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"newValue","type":"uint256"}],"name":"CounterIncremented","type":"event"},{"inputs":[],"name":"increment","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"number","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newNumber","type":"uint256"}],"name":"setNumber","outputs":[],"stateMutability":"nonpayable","type":"function"}],"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"6080806040523460145760f790816100198239f35b5f80fdfe60808060405260043610156011575f80fd5b5f3560e01c9081633fb5c1cb1460ab5781638381f58a146094575063d09de08a146039575f80fd5b346090575f3660031901126090575f545f198114607c57600101805f557f3cf8b50771c17d723f2cb711ca7dadde485b222e13c84ba0730a14093fad6d5c5f80a2005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b346090575f3660031901126090576020905f548152f35b3460905760203660031901126090576004355f5500fea2646970667358221220ee4ca102cd5ef88076821ba7fed49ab71de097134a05242f8762f2f0b8df319964736f6c634300081e0033","opcodes":"PUSH1 0x80 DUP1 PUSH1 0x40 MSTORE CALLVALUE PUSH1 0x14 JUMPI PUSH1 0xF7 SWAP1 DUP2 PUSH2 0x19 DUP3 CODECOPY RETURN JUMPDEST PUSH0 DUP1 REVERT INVALID PUSH1 0x80 DUP1 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT ISZERO PUSH1 0x11 JUMPI PUSH0 DUP1 REVERT JUMPDEST PUSH0 CALLDATALOAD PUSH1 0xE0 SHR SWAP1 DUP2 PUSH4 0x3FB5C1CB EQ PUSH1 0xAB JUMPI DUP2 PUSH4 0x8381F58A EQ PUSH1 0x94 JUMPI POP PUSH4 0xD09DE08A EQ PUSH1 0x39 JUMPI PUSH0 DUP1 REVERT JUMPDEST CALLVALUE PUSH1 0x90 JUMPI PUSH0 CALLDATASIZE PUSH1 0x3 NOT ADD SLT PUSH1 0x90 JUMPI PUSH0 SLOAD PUSH0 NOT DUP2 EQ PUSH1 0x7C JUMPI PUSH1 0x1 ADD DUP1 PUSH0 SSTORE PUSH32 0x3CF8B50771C17D723F2CB711CA7DADDE485B222E13C84BA0730A14093FAD6D5C PUSH0 DUP1 LOG2 STOP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 DUP1 REVERT JUMPDEST CALLVALUE PUSH1 0x90 JUMPI PUSH0 CALLDATASIZE PUSH1 0x3 NOT ADD SLT PUSH1 0x90 JUMPI PUSH1 0x20 SWAP1 PUSH0 SLOAD DUP2 MSTORE RETURN JUMPDEST CALLVALUE PUSH1 0x90 JUMPI PUSH1 0x20 CALLDATASIZE PUSH1 0x3 NOT ADD SLT PUSH1 0x90 JUMPI PUSH1 0x4 CALLDATALOAD PUSH0 SSTORE STOP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 RETURNCONTRACT 0x4C LOG1 MUL 0xCD MCOPY EXTCALL DUP1 PUSH23 0x821BA7FED49AB71DE097134A05242F8762F2F0B8DF3199 PUSH5 0x736F6C6343 STOP ADDMOD 0x1E STOP CALLER ","sourceMap":"66:290:0:-:0;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"60808060405260043610156011575f80fd5b5f3560e01c9081633fb5c1cb1460ab5781638381f58a146094575063d09de08a146039575f80fd5b346090575f3660031901126090575f545f198114607c57600101805f557f3cf8b50771c17d723f2cb711ca7dadde485b222e13c84ba0730a14093fad6d5c5f80a2005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b346090575f3660031901126090576020905f548152f35b3460905760203660031901126090576004355f5500fea2646970667358221220ee4ca102cd5ef88076821ba7fed49ab71de097134a05242f8762f2f0b8df319964736f6c634300081e0033","opcodes":"PUSH1 0x80 DUP1 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT ISZERO PUSH1 0x11 JUMPI PUSH0 DUP1 REVERT JUMPDEST PUSH0 CALLDATALOAD PUSH1 0xE0 SHR SWAP1 DUP2 PUSH4 0x3FB5C1CB EQ PUSH1 0xAB JUMPI DUP2 PUSH4 0x8381F58A EQ PUSH1 0x94 JUMPI POP PUSH4 0xD09DE08A EQ PUSH1 0x39 JUMPI PUSH0 DUP1 REVERT JUMPDEST CALLVALUE PUSH1 0x90 JUMPI PUSH0 CALLDATASIZE PUSH1 0x3 NOT ADD SLT PUSH1 0x90 JUMPI PUSH0 SLOAD PUSH0 NOT DUP2 EQ PUSH1 0x7C JUMPI PUSH1 0x1 ADD DUP1 PUSH0 SSTORE PUSH32 0x3CF8B50771C17D723F2CB711CA7DADDE485B222E13C84BA0730A14093FAD6D5C PUSH0 DUP1 LOG2 STOP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 DUP1 REVERT JUMPDEST CALLVALUE PUSH1 0x90 JUMPI PUSH0 CALLDATASIZE PUSH1 0x3 NOT ADD SLT PUSH1 0x90 JUMPI PUSH1 0x20 SWAP1 PUSH0 SLOAD DUP2 MSTORE RETURN JUMPDEST CALLVALUE PUSH1 0x90 JUMPI PUSH1 0x20 CALLDATASIZE PUSH1 0x3 NOT ADD SLT PUSH1 0x90 JUMPI PUSH1 0x4 CALLDATALOAD PUSH0 SSTORE STOP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 RETURNCONTRACT 0x4C LOG1 MUL 0xCD MCOPY EXTCALL DUP1 PUSH23 0x821BA7FED49AB71DE097134A05242F8762F2F0B8DF3199 PUSH5 0x736F6C6343 STOP ADDMOD 0x1E STOP CALLER ","sourceMap":"66:290:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;66:290:0;;;;;;-1:-1:-1;;66:290:0;;;;;;;;;321:26;66:290;321:26;;66:290;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;66:290:0;;;;;;;;;;;;;;;;;-1:-1:-1;;66:290:0;;;;;;;;"},"methodIdentifiers":{"increment()":"d09de08a","number()":"8381f58a","setNumber(uint256)":"3fb5c1cb"}},"metadata":"{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"newValue\",\"type\":\"uint256\"}],\"name\":\"CounterIncremented\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"increment\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"number\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newNumber\",\"type\":\"uint256\"}],\"name\":\"setNumber\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/Counter.sol\":\"Counter\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[],\"viaIR\":true},\"sources\":{\"contracts/Counter.sol\":{\"keccak256\":\"0x64b14ccdf971163beca30779f02ce20b9e0a97a184a249d62c962b5453fe56f4\",\"license\":\"FSL-1.1-MIT\",\"urls\":[\"bzz-raw://27a3562a427bdd60c0339dc253d4e6ffb67f4842c9181a7945a9b678c145bec0\",\"dweb:/ipfs/QmW8d2ApwA9z6VfvQHssMLDEwWFwpNYxoErqLrRGqybw79\"]}},\"version\":1}"}}}}}