{
  "_format": "hh-sol-artifact-1",
  "contractName": "RollupEventInbox",
  "sourceName": "src/rollup/RollupEventInbox.sol",
  "abi": [
    {
      "inputs": [],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "inputs": [],
      "name": "AlreadyInit",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "HadZeroInit",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "sender",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "NotOwner",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "RollupNotChanged",
      "type": "error"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "messageNum",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "InboxMessageDelivered",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "messageNum",
          "type": "uint256"
        }
      ],
      "name": "InboxMessageDeliveredFromOrigin",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "bridge",
      "outputs": [
        {
          "internalType": "contract IBridge",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "contract IBridge",
          "name": "_bridge",
          "type": "address"
        }
      ],
      "name": "initialize",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "rollup",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "chainId",
          "type": "uint256"
        },
        {
          "internalType": "string",
          "name": "chainConfig",
          "type": "string"
        }
      ],
      "name": "rollupInitialized",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "updateRollupAddress",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x60a06040523060805234801561001457600080fd5b5060805161095561003060003960006102ff01526109556000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80636ae71f121461005c578063c4d66de814610066578063cb23bcb514610079578063cf8d56d6146100a8578063e78cea92146100bb575b600080fd5b6100646100ce565b005b610064610074366004610773565b6102f4565b60015461008c906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b6100646100b6366004610797565b610482565b60005461008c906001600160a01b031681565b600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561011c57600080fd5b505afa158015610130573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101549190610813565b6001600160a01b0316336001600160a01b0316146102195760015460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156101b057600080fd5b505afa1580156101c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101e89190610813565b604051631194af8760e11b81526001600160a01b039283166004820152911660248201526044015b60405180910390fd5b60008060009054906101000a90046001600160a01b03166001600160a01b031663cb23bcb56040518163ffffffff1660e01b815260040160206040518083038186803b15801561026857600080fd5b505afa15801561027c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102a09190610813565b6001549091506001600160a01b03808316911614156102d25760405163d054909f60e01b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156103825760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b19195b1959d85d1958d85b1b60a21b6064820152608401610210565b6000546001600160a01b0316156103ac57604051633bcd329760e21b815260040160405180910390fd5b6001600160a01b0381166103d357604051631ad0f74360e01b815260040160405180910390fd5b600080546001600160a01b0319166001600160a01b0383169081179091556040805163cb23bcb560e01b8152905163cb23bcb591600480820192602092909190829003018186803b15801561042757600080fd5b505afa15801561043b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061045f9190610813565b600180546001600160a01b0319166001600160a01b039290921691909117905550565b6001546001600160a01b031633146104ca5760405162461bcd60e51b815260206004820152600b60248201526a04f4e4c595f524f4c4c55560ac1b6044820152606401610210565b8061050c5760405162461bcd60e51b8152602060048201526012602482015271454d5054595f434841494e5f434f4e46494760701b6044820152606401610210565b60016000610518610594565b905060008583838787604051602001610535959493929190610830565b6040516020818303038152906040529050600061055182610628565b9050807fff64905f73a67fb594e0f940a8075a860db489ad991e032f48c81123eb52d60b836040516105839190610891565b60405180910390a250505050505050565b60004861059f6106c3565b1561062357606c6001600160a01b031663f5d6ded76040518163ffffffff1660e01b815260040160206040518083038186803b1580156105de57600080fd5b505afa1580156105f2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061061691906108c4565b61062090826108dd565b90505b919050565b6000805482516020840120604051638db5993b60e01b8152600b60048201526024810184905260448101919091526001600160a01b0390911690638db5993b90606401602060405180830381600087803b15801561068557600080fd5b505af1158015610699573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106bd91906108c4565b92915050565b60408051600481526024810182526020810180516001600160e01b03166302881c7960e11b1790529051600091829182916064916107019190610903565b600060405180830381855afa9150503d806000811461073c576040519150601f19603f3d011682016040523d82523d6000602084013e610741565b606091505b5091509150818015610754575080516020145b9250505090565b6001600160a01b038116811461077057600080fd5b50565b60006020828403121561078557600080fd5b81356107908161075b565b9392505050565b6000806000604084860312156107ac57600080fd5b83359250602084013567ffffffffffffffff808211156107cb57600080fd5b818601915086601f8301126107df57600080fd5b8135818111156107ee57600080fd5b87602082850101111561080057600080fd5b6020830194508093505050509250925092565b60006020828403121561082557600080fd5b81516107908161075b565b85815260ff60f81b8560f81b1660208201528360218201528183604183013760009101604101908152949350505050565b60005b8381101561087c578181015183820152602001610864565b8381111561088b576000848401525b50505050565b60208152600082518060208401526108b0816040850160208701610861565b601f01601f19169190910160400192915050565b6000602082840312156108d657600080fd5b5051919050565b600082198211156108fe57634e487b7160e01b600052601160045260246000fd5b500190565b60008251610915818460208701610861565b919091019291505056fea26469706673582212205264f22a1ac2260376fc2092383063e57f3fdf6a104293be65bc318f134ac70264736f6c63430008090033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c80636ae71f121461005c578063c4d66de814610066578063cb23bcb514610079578063cf8d56d6146100a8578063e78cea92146100bb575b600080fd5b6100646100ce565b005b610064610074366004610773565b6102f4565b60015461008c906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b6100646100b6366004610797565b610482565b60005461008c906001600160a01b031681565b600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561011c57600080fd5b505afa158015610130573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101549190610813565b6001600160a01b0316336001600160a01b0316146102195760015460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156101b057600080fd5b505afa1580156101c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101e89190610813565b604051631194af8760e11b81526001600160a01b039283166004820152911660248201526044015b60405180910390fd5b60008060009054906101000a90046001600160a01b03166001600160a01b031663cb23bcb56040518163ffffffff1660e01b815260040160206040518083038186803b15801561026857600080fd5b505afa15801561027c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102a09190610813565b6001549091506001600160a01b03808316911614156102d25760405163d054909f60e01b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156103825760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b19195b1959d85d1958d85b1b60a21b6064820152608401610210565b6000546001600160a01b0316156103ac57604051633bcd329760e21b815260040160405180910390fd5b6001600160a01b0381166103d357604051631ad0f74360e01b815260040160405180910390fd5b600080546001600160a01b0319166001600160a01b0383169081179091556040805163cb23bcb560e01b8152905163cb23bcb591600480820192602092909190829003018186803b15801561042757600080fd5b505afa15801561043b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061045f9190610813565b600180546001600160a01b0319166001600160a01b039290921691909117905550565b6001546001600160a01b031633146104ca5760405162461bcd60e51b815260206004820152600b60248201526a04f4e4c595f524f4c4c55560ac1b6044820152606401610210565b8061050c5760405162461bcd60e51b8152602060048201526012602482015271454d5054595f434841494e5f434f4e46494760701b6044820152606401610210565b60016000610518610594565b905060008583838787604051602001610535959493929190610830565b6040516020818303038152906040529050600061055182610628565b9050807fff64905f73a67fb594e0f940a8075a860db489ad991e032f48c81123eb52d60b836040516105839190610891565b60405180910390a250505050505050565b60004861059f6106c3565b1561062357606c6001600160a01b031663f5d6ded76040518163ffffffff1660e01b815260040160206040518083038186803b1580156105de57600080fd5b505afa1580156105f2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061061691906108c4565b61062090826108dd565b90505b919050565b6000805482516020840120604051638db5993b60e01b8152600b60048201526024810184905260448101919091526001600160a01b0390911690638db5993b90606401602060405180830381600087803b15801561068557600080fd5b505af1158015610699573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106bd91906108c4565b92915050565b60408051600481526024810182526020810180516001600160e01b03166302881c7960e11b1790529051600091829182916064916107019190610903565b600060405180830381855afa9150503d806000811461073c576040519150601f19603f3d011682016040523d82523d6000602084013e610741565b606091505b5091509150818015610754575080516020145b9250505090565b6001600160a01b038116811461077057600080fd5b50565b60006020828403121561078557600080fd5b81356107908161075b565b9392505050565b6000806000604084860312156107ac57600080fd5b83359250602084013567ffffffffffffffff808211156107cb57600080fd5b818601915086601f8301126107df57600080fd5b8135818111156107ee57600080fd5b87602082850101111561080057600080fd5b6020830194508093505050509250925092565b60006020828403121561082557600080fd5b81516107908161075b565b85815260ff60f81b8560f81b1660208201528360218201528183604183013760009101604101908152949350505050565b60005b8381101561087c578181015183820152602001610864565b8381111561088b576000848401525b50505050565b60208152600082518060208401526108b0816040850160208701610861565b601f01601f19169190910160400192915050565b6000602082840312156108d657600080fd5b5051919050565b600082198211156108fe57634e487b7160e01b600052601160045260246000fd5b500190565b60008251610915818460208701610861565b919091019291505056fea26469706673582212205264f22a1ac2260376fc2092383063e57f3fdf6a104293be65bc318f134ac70264736f6c63430008090033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
