{
  "_format": "hh-sol-artifact-1",
  "contractName": "EndpointV2ViewUpgradeable",
  "sourceName": "contracts/EndpointV2ViewUpgradeable.sol",
  "abi": [
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint8",
          "name": "version",
          "type": "uint8"
        }
      ],
      "name": "Initialized",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "EMPTY_PAYLOAD_HASH",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "NIL_PAYLOAD_HASH",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "endpoint",
      "outputs": [
        {
          "internalType": "contract ILayerZeroEndpointV2",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "uint32",
              "name": "srcEid",
              "type": "uint32"
            },
            {
              "internalType": "bytes32",
              "name": "sender",
              "type": "bytes32"
            },
            {
              "internalType": "uint64",
              "name": "nonce",
              "type": "uint64"
            }
          ],
          "internalType": "struct Origin",
          "name": "_origin",
          "type": "tuple"
        },
        {
          "internalType": "address",
          "name": "_receiver",
          "type": "address"
        }
      ],
      "name": "executable",
      "outputs": [
        {
          "internalType": "enum ExecutionState",
          "name": "",
          "type": "uint8"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "uint32",
              "name": "srcEid",
              "type": "uint32"
            },
            {
              "internalType": "bytes32",
              "name": "sender",
              "type": "bytes32"
            },
            {
              "internalType": "uint64",
              "name": "nonce",
              "type": "uint64"
            }
          ],
          "internalType": "struct Origin",
          "name": "_origin",
          "type": "tuple"
        },
        {
          "internalType": "address",
          "name": "_receiver",
          "type": "address"
        }
      ],
      "name": "initializable",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "uint32",
              "name": "srcEid",
              "type": "uint32"
            },
            {
              "internalType": "bytes32",
              "name": "sender",
              "type": "bytes32"
            },
            {
              "internalType": "uint64",
              "name": "nonce",
              "type": "uint64"
            }
          ],
          "internalType": "struct Origin",
          "name": "_origin",
          "type": "tuple"
        },
        {
          "internalType": "address",
          "name": "_receiver",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_receiveLib",
          "type": "address"
        },
        {
          "internalType": "bytes32",
          "name": "_payloadHash",
          "type": "bytes32"
        }
      ],
      "name": "verifiable",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b50610934806100206000396000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c8063861e1ca511610050578063861e1ca51461011c578063cb5026b91461013f578063e1e3a7df1461014757600080fd5b80632baf0be7146100775780634b4b2efb146100b15780635e280f11146100d1575b600080fd5b61009e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81565b6040519081526020015b60405180910390f35b6100c46100bf3660046107de565b61015a565b6040516100a89190610812565b6000546100f79062010000900473ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100a8565b61012f61012a3660046107de565b610467565b60405190151581526020016100a8565b61009e600081565b61012f610155366004610853565b610557565b600080548351602085015160408087015190517fc9fc7bcd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015263ffffffff9094166024820152604481019290925267ffffffffffffffff16606482015283926201000090049091169063c9fc7bcd90608401602060405180830381865afa158015610203573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610227919061089f565b9050801580156103035750600054845160208601516040517f5b17bb7000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015263ffffffff90931660248201526044810191909152620100009092041690635b17bb7090606401602060405180830381865afa1580156102c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102e791906108b8565b67ffffffffffffffff16846040015167ffffffffffffffff1611155b15610312576003915050610461565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811480159061040e5750600054845160208601516040517fa0dd43fc00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015263ffffffff9093166024820152604481019190915262010000909204169063a0dd43fc90606401602060405180830381865afa1580156103ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103f291906108b8565b67ffffffffffffffff16846040015167ffffffffffffffff1611155b1561041d576002915050610461565b801580159061044c57507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114155b1561045b576001915050610461565b60009150505b92915050565b60008054604080517f861e1ca5000000000000000000000000000000000000000000000000000000008152855163ffffffff166004820152602086015160248201529085015167ffffffffffffffff16604482015273ffffffffffffffffffffffffffffffffffffffff8481166064830152620100009092049091169063861e1ca590608401602060405180830381865afa925050508015610544575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201909252610541918101906108dc565b60015b61055057506000610461565b9050610461565b6000805485516040517f9d7f977500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015263ffffffff90921660248201528582166044820152620100009092041690639d7f977590606401602060405180830381865afa1580156105e4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061060891906108dc565b610614575060006106f7565b600054604080517fc9a54a99000000000000000000000000000000000000000000000000000000008152875163ffffffff166004820152602088015160248201529087015167ffffffffffffffff16604482015273ffffffffffffffffffffffffffffffffffffffff8681166064830152620100009092049091169063c9a54a9990608401602060405180830381865afa1580156106b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106da91906108dc565b6106e6575060006106f7565b816106f3575060006106f7565b5060015b949350505050565b67ffffffffffffffff8116811461071557600080fd5b50565b60006060828403121561072a57600080fd5b6040516060810181811067ffffffffffffffff82111715610774577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604052905080823563ffffffff8116811461078e57600080fd5b81526020838101359082015260408301356107a8816106ff565b6040919091015292915050565b803573ffffffffffffffffffffffffffffffffffffffff811681146107d957600080fd5b919050565b600080608083850312156107f157600080fd5b6107fb8484610718565b9150610809606084016107b5565b90509250929050565b602081016004831061084d577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b91905290565b60008060008060c0858703121561086957600080fd5b6108738686610718565b9350610881606086016107b5565b925061088f608086016107b5565b9396929550929360a00135925050565b6000602082840312156108b157600080fd5b5051919050565b6000602082840312156108ca57600080fd5b81516108d5816106ff565b9392505050565b6000602082840312156108ee57600080fd5b815180151581146108d557600080fdfea26469706673582212200553ca02006cd1456c49ab0150c81e17159b14eda7a29b20c32e90249d37606864736f6c63430008160033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100725760003560e01c8063861e1ca511610050578063861e1ca51461011c578063cb5026b91461013f578063e1e3a7df1461014757600080fd5b80632baf0be7146100775780634b4b2efb146100b15780635e280f11146100d1575b600080fd5b61009e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81565b6040519081526020015b60405180910390f35b6100c46100bf3660046107de565b61015a565b6040516100a89190610812565b6000546100f79062010000900473ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100a8565b61012f61012a3660046107de565b610467565b60405190151581526020016100a8565b61009e600081565b61012f610155366004610853565b610557565b600080548351602085015160408087015190517fc9fc7bcd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015263ffffffff9094166024820152604481019290925267ffffffffffffffff16606482015283926201000090049091169063c9fc7bcd90608401602060405180830381865afa158015610203573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610227919061089f565b9050801580156103035750600054845160208601516040517f5b17bb7000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015263ffffffff90931660248201526044810191909152620100009092041690635b17bb7090606401602060405180830381865afa1580156102c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102e791906108b8565b67ffffffffffffffff16846040015167ffffffffffffffff1611155b15610312576003915050610461565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811480159061040e5750600054845160208601516040517fa0dd43fc00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015263ffffffff9093166024820152604481019190915262010000909204169063a0dd43fc90606401602060405180830381865afa1580156103ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103f291906108b8565b67ffffffffffffffff16846040015167ffffffffffffffff1611155b1561041d576002915050610461565b801580159061044c57507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114155b1561045b576001915050610461565b60009150505b92915050565b60008054604080517f861e1ca5000000000000000000000000000000000000000000000000000000008152855163ffffffff166004820152602086015160248201529085015167ffffffffffffffff16604482015273ffffffffffffffffffffffffffffffffffffffff8481166064830152620100009092049091169063861e1ca590608401602060405180830381865afa925050508015610544575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201909252610541918101906108dc565b60015b61055057506000610461565b9050610461565b6000805485516040517f9d7f977500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015263ffffffff90921660248201528582166044820152620100009092041690639d7f977590606401602060405180830381865afa1580156105e4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061060891906108dc565b610614575060006106f7565b600054604080517fc9a54a99000000000000000000000000000000000000000000000000000000008152875163ffffffff166004820152602088015160248201529087015167ffffffffffffffff16604482015273ffffffffffffffffffffffffffffffffffffffff8681166064830152620100009092049091169063c9a54a9990608401602060405180830381865afa1580156106b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106da91906108dc565b6106e6575060006106f7565b816106f3575060006106f7565b5060015b949350505050565b67ffffffffffffffff8116811461071557600080fd5b50565b60006060828403121561072a57600080fd5b6040516060810181811067ffffffffffffffff82111715610774577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604052905080823563ffffffff8116811461078e57600080fd5b81526020838101359082015260408301356107a8816106ff565b6040919091015292915050565b803573ffffffffffffffffffffffffffffffffffffffff811681146107d957600080fd5b919050565b600080608083850312156107f157600080fd5b6107fb8484610718565b9150610809606084016107b5565b90509250929050565b602081016004831061084d577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b91905290565b60008060008060c0858703121561086957600080fd5b6108738686610718565b9350610881606086016107b5565b925061088f608086016107b5565b9396929550929360a00135925050565b6000602082840312156108b157600080fd5b5051919050565b6000602082840312156108ca57600080fd5b81516108d5816106ff565b9392505050565b6000602082840312156108ee57600080fd5b815180151581146108d557600080fdfea26469706673582212200553ca02006cd1456c49ab0150c81e17159b14eda7a29b20c32e90249d37606864736f6c63430008160033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
