{"abi":[{"type":"constructor","inputs":[{"name":"inputBox","type":"address","internalType":"contract IInputBox"}],"stateMutability":"nonpayable"},{"type":"function","name":"depositEther","inputs":[{"name":"appContract","type":"address","internalType":"address"},{"name":"execLayerData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"getInputBox","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IInputBox"}],"stateMutability":"view"},{"type":"error","name":"EtherTransferFailed","inputs":[]}],"bytecode":{"object":"0x60a034606d57601f61030638819003918201601f19168301916001600160401b03831184841017607157808492602094604052833981010312606d57516001600160a01b0381168103606d576080526040516102809081610086823960805181818161015b01526101f90152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015610012575f80fd5b5f3560e01c908162aace9a146101e7575063938c054f14610031575f80fd5b60403660031901126101a9576004356001600160a01b0381168082036101a9576024359167ffffffffffffffff83116101a957366023840112156101a95782600401359067ffffffffffffffff82116101a95736602483860101116101a9575f8080809334905af13d156101e2573d67ffffffffffffffff81116101ce57604051906100c7601f8201601f191660200183610228565b81525f60203d92013e5b156101bf576064602092610113605460405185819660248984019a3360601b8c52346034860152018484013781015f838201520301601f198101855284610228565b6040519485938492631789cd6360e01b84526004840152604060248401525180918160448501528484015e5f838284010152601f801991011681010301815f60018060a01b037f0000000000000000000000000000000000000000000000000000000000000000165af180156101b45761018957005b602090813d83116101ad575b61019f8183610228565b810103126101a957005b5f80fd5b503d610195565b6040513d5f823e3d90fd5b630ce8f45160e31b5f5260045ffd5b634e487b7160e01b5f52604160045260245ffd5b6100d1565b346101a9575f3660031901126101a9577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b90601f8019910116810190811067ffffffffffffffff8211176101ce5760405256fea2646970667358221220fc90662f48a64aa802601f5526371bc36cc00bf091e9dcaf865db77026ca18fc64736f6c634300081e0033","sourceMap":"496:654:54:-:0;;;;;;;;;;;;;-1:-1:-1;;496:654:54;;;;-1:-1:-1;;;;;496:654:54;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;496:654:54;;;;;;567:20:61;;496:654:54;;;;;;;;567:20:61;496:654:54;;;;;;;;;;;;-1:-1:-1;496:654:54;;;;;;-1:-1:-1;496:654:54;;;;;-1:-1:-1;496:654:54","linkReferences":{}},"deployedBytecode":{"object":"0x6080806040526004361015610012575f80fd5b5f3560e01c908162aace9a146101e7575063938c054f14610031575f80fd5b60403660031901126101a9576004356001600160a01b0381168082036101a9576024359167ffffffffffffffff83116101a957366023840112156101a95782600401359067ffffffffffffffff82116101a95736602483860101116101a9575f8080809334905af13d156101e2573d67ffffffffffffffff81116101ce57604051906100c7601f8201601f191660200183610228565b81525f60203d92013e5b156101bf576064602092610113605460405185819660248984019a3360601b8c52346034860152018484013781015f838201520301601f198101855284610228565b6040519485938492631789cd6360e01b84526004840152604060248401525180918160448501528484015e5f838284010152601f801991011681010301815f60018060a01b037f0000000000000000000000000000000000000000000000000000000000000000165af180156101b45761018957005b602090813d83116101ad575b61019f8183610228565b810103126101a957005b5f80fd5b503d610195565b6040513d5f823e3d90fd5b630ce8f45160e31b5f5260045ffd5b634e487b7160e01b5f52604160045260245ffd5b6100d1565b346101a9575f3660031901126101a9577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b90601f8019910116810190811067ffffffffffffffff8211176101ce5760405256fea2646970667358221220fc90662f48a64aa802601f5526371bc36cc00bf091e9dcaf865db77026ca18fc64736f6c634300081e0033","sourceMap":"496:654:54:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;496:654:54;;;;;;-1:-1:-1;;;;;496:654:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;879:9;;;;;855:38;;;496:654;;;;;;;;;;;;;;;;;-1:-1:-1;;496:654:54;;;;;:::i;:::-;;;;;;;;;;908:8;904:67;;496:654;;;984:158:22;496:654:54;;;984:158:22;;;496:654:54;984:158:22;;;1049:10:54;;496:654;;;;879:9;496:654;;;;;;;;;;;;;;;;984:158:22;;496:654:54;;984:158:22;;;;;;:::i;:::-;496:654:54;;;;;;;;;;1097:44;;496:654;1097:44;;496:654;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1097:44;;496:654;;;;;;;681:9:61;496:654:54;1097:44;;;;;;;;496:654;1097:44;496:654;1097:44;;;;;;;;;;;;:::i;:::-;;;496:654;;;;;;;;;1097:44;;;;;;496:654;;;;;;;;;904:67;939:21;;;496:654;939:21;496:654;;939:21;496:654;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;496:654:54;;;;681:9:61;-1:-1:-1;;;;;496:654:54;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o","linkReferences":{},"immutableReferences":{"5443":[{"start":347,"length":32},{"start":505,"length":32}]}},"methodIdentifiers":{"depositEther(address,bytes)":"938c054f","getInputBox()":"00aace9a"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IInputBox\",\"name\":\"inputBox\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"EtherTransferFailed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"appContract\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"execLayerData\",\"type\":\"bytes\"}],\"name\":\"depositEther\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getInputBox\",\"outputs\":[{\"internalType\":\"contract IInputBox\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"constructor\":{\"params\":{\"inputBox\":\"The input box used by the portal\"}},\"depositEther(address,bytes)\":{\"details\":\"Any Ether sent through this function will be forwarded to the application contract.      If the transfer fails, an `EtherTransferFailed` error will be raised.\",\"params\":{\"appContract\":\"The application contract address\",\"execLayerData\":\"Additional data to be interpreted by the execution layer\"}},\"getInputBox()\":{\"returns\":{\"_0\":\"The input box\"}}},\"title\":\"Ether Portal\",\"version\":1},\"userdoc\":{\"errors\":{\"EtherTransferFailed()\":[{\"notice\":\"Failed to transfer Ether to application\"}]},\"kind\":\"user\",\"methods\":{\"constructor\":{\"notice\":\"Constructs the portal.\"},\"depositEther(address,bytes)\":{\"notice\":\"Transfer Ether to an application contract and add an input to the application's input box to signal such operation.\"},\"getInputBox()\":{\"notice\":\"Get the input box used by this portal.\"}},\"notice\":\"This contract allows anyone to perform transfers of Ether to an application contract while informing the off-chain machine.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/portals/EtherPortal.sol\":\"EtherPortal\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin-contracts-5.2.0/=dependencies/@openzeppelin-contracts-5.2.0/\",\":forge-std-1.9.6/=dependencies/forge-std-1.9.6/\"],\"viaIR\":true},\"sources\":{\"dependencies/@openzeppelin-contracts-5.2.0/token/ERC1155/IERC1155.sol\":{\"keccak256\":\"0x68d6fdbeb467192c3627a46aa7bf5cbb73267363b740abc511f521a5a41a446e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7ce608c19d5e917c60f9c8aa3e5f0eb05b326280ac0a235e8bb9a848a3a64a91\",\"dweb:/ipfs/QmdLPsWQJj7JvRae8MM13GEo4PBXaEFmD4b4heqcyMJNPG\"]},\"dependencies/@openzeppelin-contracts-5.2.0/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xe06a3f08a987af6ad2e1c1e774405d4fe08f1694b67517438b467cecf0da0ef7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://df6f0c459663c9858b6cba2cda1d14a7d05a985bed6d2de72bd8e78c25ee79db\",\"dweb:/ipfs/QmeTTxZ7qVk9rjEv2R4CpCwdf8UMCcRqDNMvzNxHc3Fnn9\"]},\"dependencies/@openzeppelin-contracts-5.2.0/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5dc63d1c6a12fe1b17793e1745877b2fcbe1964c3edfd0a482fac21ca8f18261\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6b7f97c5960a50fd1822cb298551ffc908e37b7893a68d6d08bce18a11cb0f11\",\"dweb:/ipfs/QmQQvxBytoY1eBt3pRQDmvH2hZ2yjhs12YqVfzGm7KSURq\"]},\"dependencies/@openzeppelin-contracts-5.2.0/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621\",\"dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL\"]},\"src/common/InputEncoding.sol\":{\"keccak256\":\"0xd041b3bb0de75e8415fb1976b1269a396053e7f43975449d0b172bf096f032c1\",\"license\":\"Apache-2.0 (see LICENSE)\",\"urls\":[\"bzz-raw://d954aaea18fcfcd72ff7180551629e40a60a625445ecb0e01ffdf225c7048cc5\",\"dweb:/ipfs/QmeuK58dJc8tD2Tm5ygf9Chf5wVQ73wtuGibf8wtKQd8oX\"]},\"src/inputs/IInputBox.sol\":{\"keccak256\":\"0x960495e2fc963df610c0152c9a3d34038da51d1e8fcee8eb8ec85890b74b0940\",\"license\":\"Apache-2.0 (see LICENSE)\",\"urls\":[\"bzz-raw://c0a1a72fe4331032c23101a6026a61f5926744f7e2c189f557165ba6597b0de8\",\"dweb:/ipfs/QmU7ZuL7gcQYA7vDV37xArLBqzZ3c9k5pFDYPRd3rn9jgY\"]},\"src/portals/EtherPortal.sol\":{\"keccak256\":\"0x91facd39b97b6718c25d6e0ab43b9861929bba92c6b102f86ba5df9c920c5344\",\"license\":\"Apache-2.0 (see LICENSE)\",\"urls\":[\"bzz-raw://aa052950a921c3782f0d3afca3c95160994de454e1bd53e3c831cd33f6ef9733\",\"dweb:/ipfs/QmYmwhoPDDY8wwCKkUv1vX3eC7XRUSUQ4fShi8qAE7pGNz\"]},\"src/portals/IEtherPortal.sol\":{\"keccak256\":\"0xf3b2e231d2cf99976a69cbf5eb7bef2782ef64a3cbe2f62198569f1a78676936\",\"license\":\"Apache-2.0 (see LICENSE)\",\"urls\":[\"bzz-raw://0044ce4a028f97650648a60c8918f30d0daa1d73e200c839f4831ea74ca796aa\",\"dweb:/ipfs/QmRkFERnqSwgGQQ7MqUXz9bZtEN2QvQS7z5upNmnLFdZzC\"]},\"src/portals/IPortal.sol\":{\"keccak256\":\"0x390bc7ed84639e38e40bef8085486119d6c42057f91f3ab8286a9246198682e2\",\"license\":\"Apache-2.0 (see LICENSE)\",\"urls\":[\"bzz-raw://382a0d34ef36bde5b783849c21105b25a8d6909809c21cad267ed34e9d0f8afa\",\"dweb:/ipfs/QmfQMKGcz2jjzh2krTCSgcGBMQZE9uRVB5QUSsT3gF1oTs\"]},\"src/portals/Portal.sol\":{\"keccak256\":\"0x856903fa5afea5caaae8418f3c7f9314d88825ddec9177f6d4a9f0defe685c45\",\"license\":\"Apache-2.0 (see LICENSE)\",\"urls\":[\"bzz-raw://e99efb07ff4e54dd4b0aa0f1f0908e280e2a842aa75824e0328aa1e7e8f0d1c0\",\"dweb:/ipfs/QmUftUnphDm5DjCxBxsUYCJfEdUCLNYcStK2Q4j5kW58N1\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.30+commit.73712a01"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"contract IInputBox","name":"inputBox","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"error","name":"EtherTransferFailed"},{"inputs":[{"internalType":"address","name":"appContract","type":"address"},{"internalType":"bytes","name":"execLayerData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"depositEther"},{"inputs":[],"stateMutability":"view","type":"function","name":"getInputBox","outputs":[{"internalType":"contract IInputBox","name":"","type":"address"}]}],"devdoc":{"kind":"dev","methods":{"constructor":{"params":{"inputBox":"The input box used by the portal"}},"depositEther(address,bytes)":{"details":"Any Ether sent through this function will be forwarded to the application contract.      If the transfer fails, an `EtherTransferFailed` error will be raised.","params":{"appContract":"The application contract address","execLayerData":"Additional data to be interpreted by the execution layer"}},"getInputBox()":{"returns":{"_0":"The input box"}}},"version":1},"userdoc":{"kind":"user","methods":{"constructor":{"notice":"Constructs the portal."},"depositEther(address,bytes)":{"notice":"Transfer Ether to an application contract and add an input to the application's input box to signal such operation."},"getInputBox()":{"notice":"Get the input box used by this portal."}},"version":1}},"settings":{"remappings":["@openzeppelin-contracts-5.2.0/=dependencies/@openzeppelin-contracts-5.2.0/","forge-std-1.9.6/=dependencies/forge-std-1.9.6/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/portals/EtherPortal.sol":"EtherPortal"},"evmVersion":"prague","libraries":{},"viaIR":true},"sources":{"dependencies/@openzeppelin-contracts-5.2.0/token/ERC1155/IERC1155.sol":{"keccak256":"0x68d6fdbeb467192c3627a46aa7bf5cbb73267363b740abc511f521a5a41a446e","urls":["bzz-raw://7ce608c19d5e917c60f9c8aa3e5f0eb05b326280ac0a235e8bb9a848a3a64a91","dweb:/ipfs/QmdLPsWQJj7JvRae8MM13GEo4PBXaEFmD4b4heqcyMJNPG"],"license":"MIT"},"dependencies/@openzeppelin-contracts-5.2.0/token/ERC20/IERC20.sol":{"keccak256":"0xe06a3f08a987af6ad2e1c1e774405d4fe08f1694b67517438b467cecf0da0ef7","urls":["bzz-raw://df6f0c459663c9858b6cba2cda1d14a7d05a985bed6d2de72bd8e78c25ee79db","dweb:/ipfs/QmeTTxZ7qVk9rjEv2R4CpCwdf8UMCcRqDNMvzNxHc3Fnn9"],"license":"MIT"},"dependencies/@openzeppelin-contracts-5.2.0/token/ERC721/IERC721.sol":{"keccak256":"0x5dc63d1c6a12fe1b17793e1745877b2fcbe1964c3edfd0a482fac21ca8f18261","urls":["bzz-raw://6b7f97c5960a50fd1822cb298551ffc908e37b7893a68d6d08bce18a11cb0f11","dweb:/ipfs/QmQQvxBytoY1eBt3pRQDmvH2hZ2yjhs12YqVfzGm7KSURq"],"license":"MIT"},"dependencies/@openzeppelin-contracts-5.2.0/utils/introspection/IERC165.sol":{"keccak256":"0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8","urls":["bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621","dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL"],"license":"MIT"},"src/common/InputEncoding.sol":{"keccak256":"0xd041b3bb0de75e8415fb1976b1269a396053e7f43975449d0b172bf096f032c1","urls":["bzz-raw://d954aaea18fcfcd72ff7180551629e40a60a625445ecb0e01ffdf225c7048cc5","dweb:/ipfs/QmeuK58dJc8tD2Tm5ygf9Chf5wVQ73wtuGibf8wtKQd8oX"],"license":"Apache-2.0 (see LICENSE)"},"src/inputs/IInputBox.sol":{"keccak256":"0x960495e2fc963df610c0152c9a3d34038da51d1e8fcee8eb8ec85890b74b0940","urls":["bzz-raw://c0a1a72fe4331032c23101a6026a61f5926744f7e2c189f557165ba6597b0de8","dweb:/ipfs/QmU7ZuL7gcQYA7vDV37xArLBqzZ3c9k5pFDYPRd3rn9jgY"],"license":"Apache-2.0 (see LICENSE)"},"src/portals/EtherPortal.sol":{"keccak256":"0x91facd39b97b6718c25d6e0ab43b9861929bba92c6b102f86ba5df9c920c5344","urls":["bzz-raw://aa052950a921c3782f0d3afca3c95160994de454e1bd53e3c831cd33f6ef9733","dweb:/ipfs/QmYmwhoPDDY8wwCKkUv1vX3eC7XRUSUQ4fShi8qAE7pGNz"],"license":"Apache-2.0 (see LICENSE)"},"src/portals/IEtherPortal.sol":{"keccak256":"0xf3b2e231d2cf99976a69cbf5eb7bef2782ef64a3cbe2f62198569f1a78676936","urls":["bzz-raw://0044ce4a028f97650648a60c8918f30d0daa1d73e200c839f4831ea74ca796aa","dweb:/ipfs/QmRkFERnqSwgGQQ7MqUXz9bZtEN2QvQS7z5upNmnLFdZzC"],"license":"Apache-2.0 (see LICENSE)"},"src/portals/IPortal.sol":{"keccak256":"0x390bc7ed84639e38e40bef8085486119d6c42057f91f3ab8286a9246198682e2","urls":["bzz-raw://382a0d34ef36bde5b783849c21105b25a8d6909809c21cad267ed34e9d0f8afa","dweb:/ipfs/QmfQMKGcz2jjzh2krTCSgcGBMQZE9uRVB5QUSsT3gF1oTs"],"license":"Apache-2.0 (see LICENSE)"},"src/portals/Portal.sol":{"keccak256":"0x856903fa5afea5caaae8418f3c7f9314d88825ddec9177f6d4a9f0defe685c45","urls":["bzz-raw://e99efb07ff4e54dd4b0aa0f1f0908e280e2a842aa75824e0328aa1e7e8f0d1c0","dweb:/ipfs/QmUftUnphDm5DjCxBxsUYCJfEdUCLNYcStK2Q4j5kW58N1"],"license":"Apache-2.0 (see LICENSE)"}},"version":1},"id":54}