{
  "abi": [
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "previousOwner",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "OwnershipTransferred",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "exposed_home",
      "outputs": [
        {
          "internalType": "contract Home",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "xAppCnMngr",
          "type": "address"
        }
      ],
      "name": "exposed_initialize",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "potentialReplica",
          "type": "address"
        }
      ],
      "name": "exposed_isReplica",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "exposed_localDomain",
      "outputs": [
        {
          "internalType": "uint32",
          "name": "",
          "type": "uint32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "owner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "renounceOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_xAppConnectionManager",
          "type": "address"
        }
      ],
      "name": "setXAppConnectionManager",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "transferOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "xAppConnectionManager",
      "outputs": [
        {
          "internalType": "contract XAppConnectionManager",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": {
    "object": "0x608060405234801561001057600080fd5b50610d58806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a35760003560e01c8063715018a611610076578063b72abd1b1161005b578063b72abd1b14610172578063c2fc63291461017a578063f2fde38b146101c1576100a3565b8063715018a6146101625780638da5cb5b1461016a576100a3565b80630357ced7146100a85780630fdeeba9146100dd5780633339df96146100fe57806341bdc8b51461012f575b600080fd5b6100db600480360360208110156100be57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166101f4565b005b6100e5610200565b6040805163ffffffff9092168252519081900360200190f35b61010661020f565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100db6004803603602081101561014557600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661022b565b6100db61031a565b610106610431565b61010661044d565b6101ad6004803603602081101561019057600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610457565b604080519115158252519081900360200190f35b6100db600480360360208110156101d757600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610468565b6101fd8161060a565b50565b600061020a610767565b905090565b60655473ffffffffffffffffffffffffffffffffffffffff1681565b610233610803565b73ffffffffffffffffffffffffffffffffffffffff16610251610431565b73ffffffffffffffffffffffffffffffffffffffff16146102d357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b606580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b610322610803565b73ffffffffffffffffffffffffffffffffffffffff16610340610431565b73ffffffffffffffffffffffffffffffffffffffff16146103c257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60335460405160009173ffffffffffffffffffffffffffffffffffffffff16907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b60335473ffffffffffffffffffffffffffffffffffffffff1690565b600061020a610807565b600061046282610872565b92915050565b610470610803565b73ffffffffffffffffffffffffffffffffffffffff1661048e610431565b73ffffffffffffffffffffffffffffffffffffffff161461051057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff811661057c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180610cf86026913960400191505060405180910390fd5b60335460405173ffffffffffffffffffffffffffffffffffffffff8084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b600054610100900460ff1680610623575061062361091b565b80610631575060005460ff16155b610686576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180610d1e602e913960400191505060405180910390fd5b600054610100900460ff161580156106ec57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909116610100171660011790555b606580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff841617905561073461092c565b801561076357600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1690555b5050565b606554604080517f8d3638f4000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff1691638d3638f4916004808301926020929190829003018186803b1580156107d257600080fd5b505afa1580156107e6573d6000803e3d6000fd5b505050506040513d60208110156107fc57600080fd5b5051905090565b3390565b606554604080517f9fa92f9d000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff1691639fa92f9d916004808301926020929190829003018186803b1580156107d257600080fd5b606554604080517f5190bc5300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff848116600483015291516000939290921691635190bc5391602480820192602092909190829003018186803b1580156108e957600080fd5b505afa1580156108fd573d6000803e3d6000fd5b505050506040513d602081101561091357600080fd5b505192915050565b600061092630610a4f565b15905090565b600054610100900460ff1680610945575061094561091b565b80610953575060005460ff16155b6109a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180610d1e602e913960400191505060405180910390fd5b600054610100900460ff16158015610a0e57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909116610100171660011790555b610a16610a55565b610a1e610b67565b80156101fd57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905550565b3b151590565b600054610100900460ff1680610a6e5750610a6e61091b565b80610a7c575060005460ff16155b610ad1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180610d1e602e913960400191505060405180910390fd5b600054610100900460ff16158015610a1e57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff9091166101001716600117905580156101fd57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905550565b600054610100900460ff1680610b805750610b8061091b565b80610b8e575060005460ff16155b610be3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180610d1e602e913960400191505060405180910390fd5b600054610100900460ff16158015610c4957600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909116610100171660011790555b6000610c53610803565b603380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35080156101fd57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1690555056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a164736f6c6343000706000a",
    "sourceMap": "308:552:35:-:0;;;;;;;;;;;;;;;;;;;",
    "linkReferences": {}
  },
  "deployedBytecode": {
    "object": "0x608060405234801561001057600080fd5b50600436106100a35760003560e01c8063715018a611610076578063b72abd1b1161005b578063b72abd1b14610172578063c2fc63291461017a578063f2fde38b146101c1576100a3565b8063715018a6146101625780638da5cb5b1461016a576100a3565b80630357ced7146100a85780630fdeeba9146100dd5780633339df96146100fe57806341bdc8b51461012f575b600080fd5b6100db600480360360208110156100be57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166101f4565b005b6100e5610200565b6040805163ffffffff9092168252519081900360200190f35b61010661020f565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100db6004803603602081101561014557600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661022b565b6100db61031a565b610106610431565b61010661044d565b6101ad6004803603602081101561019057600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610457565b604080519115158252519081900360200190f35b6100db600480360360208110156101d757600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610468565b6101fd8161060a565b50565b600061020a610767565b905090565b60655473ffffffffffffffffffffffffffffffffffffffff1681565b610233610803565b73ffffffffffffffffffffffffffffffffffffffff16610251610431565b73ffffffffffffffffffffffffffffffffffffffff16146102d357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b606580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b610322610803565b73ffffffffffffffffffffffffffffffffffffffff16610340610431565b73ffffffffffffffffffffffffffffffffffffffff16146103c257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60335460405160009173ffffffffffffffffffffffffffffffffffffffff16907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b60335473ffffffffffffffffffffffffffffffffffffffff1690565b600061020a610807565b600061046282610872565b92915050565b610470610803565b73ffffffffffffffffffffffffffffffffffffffff1661048e610431565b73ffffffffffffffffffffffffffffffffffffffff161461051057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff811661057c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180610cf86026913960400191505060405180910390fd5b60335460405173ffffffffffffffffffffffffffffffffffffffff8084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b600054610100900460ff1680610623575061062361091b565b80610631575060005460ff16155b610686576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180610d1e602e913960400191505060405180910390fd5b600054610100900460ff161580156106ec57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909116610100171660011790555b606580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff841617905561073461092c565b801561076357600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1690555b5050565b606554604080517f8d3638f4000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff1691638d3638f4916004808301926020929190829003018186803b1580156107d257600080fd5b505afa1580156107e6573d6000803e3d6000fd5b505050506040513d60208110156107fc57600080fd5b5051905090565b3390565b606554604080517f9fa92f9d000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff1691639fa92f9d916004808301926020929190829003018186803b1580156107d257600080fd5b606554604080517f5190bc5300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff848116600483015291516000939290921691635190bc5391602480820192602092909190829003018186803b1580156108e957600080fd5b505afa1580156108fd573d6000803e3d6000fd5b505050506040513d602081101561091357600080fd5b505192915050565b600061092630610a4f565b15905090565b600054610100900460ff1680610945575061094561091b565b80610953575060005460ff16155b6109a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180610d1e602e913960400191505060405180910390fd5b600054610100900460ff16158015610a0e57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909116610100171660011790555b610a16610a55565b610a1e610b67565b80156101fd57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905550565b3b151590565b600054610100900460ff1680610a6e5750610a6e61091b565b80610a7c575060005460ff16155b610ad1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180610d1e602e913960400191505060405180910390fd5b600054610100900460ff16158015610a1e57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff9091166101001716600117905580156101fd57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905550565b600054610100900460ff1680610b805750610b8061091b565b80610b8e575060005460ff16155b610be3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180610d1e602e913960400191505060405180910390fd5b600054610100900460ff16158015610c4957600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909116610100171660011790555b6000610c53610803565b603380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35080156101fd57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1690555056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a164736f6c6343000706000a",
    "sourceMap": "308:552:35:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;739:119;;;;;;;;;;;;;;;;-1:-1:-1;739:119:35;;;;:::i;:::-;;633:100;;;:::i;:::-;;;;;;;;;;;;;;;;;;;504:50:31;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1353:191;;;;;;;;;;;;;;;;-1:-1:-1;1353:191:31;;;;:::i;1967:145:7:-;;;:::i;1335:85::-;;;:::i;375:84:35:-;;;:::i;465:162::-;;;;;;;;;;;;;;;;-1:-1:-1;465:162:35;;;;:::i;:::-;;;;;;;;;;;;;;;;;;2261:240:7;;;;;;;;;;;;;;;;-1:-1:-1;2261:240:7;;;;:::i;739:119:35:-;806:45;840:10;806:33;:45::i;:::-;739:119;:::o;633:100::-;687:6;712:14;:12;:14::i;:::-;705:21;;633:100;:::o;504:50:31:-;;;;;;:::o;1353:191::-;1558:12:7;:10;:12::i;:::-;1547:23;;:7;:5;:7::i;:::-;:23;;;1539:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1468:21:31::1;:69:::0;;;::::1;;::::0;;;::::1;::::0;;;::::1;::::0;;1353:191::o;1967:145:7:-;1558:12;:10;:12::i;:::-;1547:23;;:7;:5;:7::i;:::-;:23;;;1539:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2057:6:::1;::::0;2036:40:::1;::::0;2073:1:::1;::::0;2036:40:::1;2057:6;::::0;2036:40:::1;::::0;2073:1;;2036:40:::1;2086:6;:19:::0;;;::::1;::::0;;1967:145::o;1335:85::-;1407:6;;;;1335:85;:::o;375:84:35:-;422:4;445:7;:5;:7::i;465:162::-;565:4;592:28;603:16;592:10;:28::i;:::-;585:35;465:162;-1:-1:-1;;465:162:35:o;2261:240:7:-;1558:12;:10;:12::i;:::-;1547:23;;:7;:5;:7::i;:::-;:23;;;1539:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2349:22:::1;::::0;::::1;2341:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2450:6;::::0;2429:38:::1;::::0;::::1;::::0;;::::1;::::0;2450:6:::1;::::0;2429:38:::1;::::0;2450:6:::1;::::0;2429:38:::1;2477:6;:17:::0;;;::::1;;::::0;;;::::1;::::0;;;::::1;::::0;;2261:240::o;884:228:31:-;1512:13:8;;;;;;;;:33;;;1529:16;:14;:16::i;:::-;1512:50;;;-1:-1:-1;1550:12:8;;;;1549:13;1512:50;1504:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1624:19;1647:13;;;;;;1646:14;1670:98;;;;1704:13;:20;;1738:19;1704:20;;;;;;1738:19;1720:4;1738:19;;;1670:98;1010:21:31::1;:69:::0;;;::::1;;::::0;::::1;;::::0;;1089:16:::1;:14;:16::i;:::-;1794:14:8::0;1790:66;;;1840:5;1824:21;;;;;;1790:66;884:228:31;;:::o;2391:122::-;2471:21;;:35;;;;;;;;2446:6;;2471:21;;;:33;;:35;;;;;;;;;;;;;;:21;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2471:35:31;;-1:-1:-1;2391:122:31;:::o;828:104:10:-;915:10;828:104;:::o;1732:98:31:-;1795:21;;:28;;;;;;;;1772:4;;1795:21;;;:26;;:28;;;;;;;;;;;;;;:21;:28;;;;;;;;;;2092:178;2213:21;;:50;;;;;;:21;:50;;;;;;;;;2186:4;;2213:21;;;;;:31;;:50;;;;;;;;;;;;;;;:21;:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2213:50:31;;2092:178;-1:-1:-1;;2092:178:31:o;1952:123:8:-;2000:4;2024:44;2062:4;2024:29;:44::i;:::-;2023:45;2016:52;;1952:123;:::o;935:126:7:-;1512:13:8;;;;;;;;:33;;;1529:16;:14;:16::i;:::-;1512:50;;;-1:-1:-1;1550:12:8;;;;1549:13;1512:50;1504:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1624:19;1647:13;;;;;;1646:14;1670:98;;;;1704:13;:20;;1738:19;1704:20;;;;;;1738:19;1720:4;1738:19;;;1670:98;992:26:7::1;:24;:26::i;:::-;1028;:24;:26::i;:::-;1794:14:8::0;1790:66;;;1840:5;1824:21;;;;;;935:126:7;:::o;737:413:9:-;1097:20;1135:8;;;737:413::o;759:64:10:-;1512:13:8;;;;;;;;:33;;;1529:16;:14;:16::i;:::-;1512:50;;;-1:-1:-1;1550:12:8;;;;1549:13;1512:50;1504:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1624:19;1647:13;;;;;;1646:14;1670:98;;;;1704:13;:20;;1738:19;1704:20;;;;;;1738:19;1720:4;1738:19;;;1794:14;1790:66;;;1840:5;1824:21;;;;;;759:64:10;:::o;1067:192:7:-;1512:13:8;;;;;;;;:33;;;1529:16;:14;:16::i;:::-;1512:50;;;-1:-1:-1;1550:12:8;;;;1549:13;1512:50;1504:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1624:19;1647:13;;;;;;1646:14;1670:98;;;;1704:13;:20;;1738:19;1704:20;;;;;;1738:19;1720:4;1738:19;;;1670:98;1134:17:7::1;1154:12;:10;:12::i;:::-;1176:6;:18:::0;;;::::1;;::::0;::::1;::::0;;::::1;::::0;;;1209:43:::1;::::0;1176:18;;-1:-1:-1;1176:18:7;-1:-1:-1;;1209:43:7::1;::::0;-1:-1:-1;;1209:43:7::1;1778:1:8;1794:14:::0;1790:66;;;1840:5;1824:21;;;;;;1067:192:7;:::o",
    "linkReferences": {}
  },
  "methodIdentifiers": {
    "exposed_home()": "b72abd1b",
    "exposed_initialize(address)": "0357ced7",
    "exposed_isReplica(address)": "c2fc6329",
    "exposed_localDomain()": "0fdeeba9",
    "owner()": "8da5cb5b",
    "renounceOwnership()": "715018a6",
    "setXAppConnectionManager(address)": "41bdc8b5",
    "transferOwnership(address)": "f2fde38b",
    "xAppConnectionManager()": "3339df96"
  },
  "ast": {
    "absolutePath": "packages/contracts-router/contracts/test/harnesses/XAppConnectionClientHarness.sol",
    "id": 29742,
    "exportedSymbols": {
      "Home": [
        26174
      ],
      "XAppConnectionClient": [
        28953
      ],
      "XAppConnectionClientHarness": [
        29741
      ],
      "XAppConnectionManager": [
        27404
      ]
    },
    "nodeType": "SourceUnit",
    "src": "46:815:35",
    "nodes": [
      {
        "id": 29692,
        "nodeType": "PragmaDirective",
        "src": "46:22:35",
        "literals": [
          "solidity",
          "0.7",
          ".6"
        ]
      },
      {
        "id": 29694,
        "nodeType": "ImportDirective",
        "src": "70:68:35",
        "absolutePath": "packages/contracts-router/contracts/XAppConnectionClient.sol",
        "file": "../../XAppConnectionClient.sol",
        "scope": 29742,
        "sourceUnit": 28954,
        "symbolAliases": [
          {
            "foreign": {
              "id": 29693,
              "name": "XAppConnectionClient",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "78:20:35",
              "typeDescriptions": {}
            }
          }
        ],
        "unitAlias": ""
      },
      {
        "id": 29696,
        "nodeType": "ImportDirective",
        "src": "139:66:35",
        "absolutePath": "packages/contracts-core/contracts/Home.sol",
        "file": "@nomad-xyz/contracts-core/contracts/Home.sol",
        "scope": 29742,
        "sourceUnit": 26175,
        "symbolAliases": [
          {
            "foreign": {
              "id": 29695,
              "name": "Home",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "147:4:35",
              "typeDescriptions": {}
            }
          }
        ],
        "unitAlias": ""
      },
      {
        "id": 29698,
        "nodeType": "ImportDirective",
        "src": "206:100:35",
        "absolutePath": "packages/contracts-core/contracts/XAppConnectionManager.sol",
        "file": "@nomad-xyz/contracts-core/contracts/XAppConnectionManager.sol",
        "scope": 29742,
        "sourceUnit": 27405,
        "symbolAliases": [
          {
            "foreign": {
              "id": 29697,
              "name": "XAppConnectionManager",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "214:21:35",
              "typeDescriptions": {}
            }
          }
        ],
        "unitAlias": ""
      },
      {
        "id": 29741,
        "nodeType": "ContractDefinition",
        "src": "308:552:35",
        "nodes": [
          {
            "id": 29709,
            "nodeType": "FunctionDefinition",
            "src": "375:84:35",
            "body": {
              "id": 29708,
              "nodeType": "Block",
              "src": "428:31:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "id": 29705,
                      "name": "_home",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 28927,
                      "src": "445:5:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$__$returns$_t_contract$_Home_$26174_$",
                        "typeString": "function () view returns (contract Home)"
                      }
                    },
                    "id": 29706,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "445:7:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_Home_$26174",
                      "typeString": "contract Home"
                    }
                  },
                  "functionReturnParameters": 29704,
                  "id": 29707,
                  "nodeType": "Return",
                  "src": "438:14:35"
                }
              ]
            },
            "functionSelector": "b72abd1b",
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "exposed_home",
            "parameters": {
              "id": 29701,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "396:2:35"
            },
            "returnParameters": {
              "id": 29704,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 29703,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 29709,
                  "src": "422:4:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_Home_$26174",
                    "typeString": "contract Home"
                  },
                  "typeName": {
                    "id": 29702,
                    "name": "Home",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 26174,
                    "src": "422:4:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_Home_$26174",
                      "typeString": "contract Home"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "421:6:35"
            },
            "scope": 29741,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 29721,
            "nodeType": "FunctionDefinition",
            "src": "465:162:35",
            "body": {
              "id": 29720,
              "nodeType": "Block",
              "src": "575:52:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 29717,
                        "name": "potentialReplica",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 29711,
                        "src": "603:16:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 29716,
                      "name": "_isReplica",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 28941,
                      "src": "592:10:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$",
                        "typeString": "function (address) view returns (bool)"
                      }
                    },
                    "id": 29718,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "592:28:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "functionReturnParameters": 29715,
                  "id": 29719,
                  "nodeType": "Return",
                  "src": "585:35:35"
                }
              ]
            },
            "functionSelector": "c2fc6329",
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "exposed_isReplica",
            "parameters": {
              "id": 29712,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 29711,
                  "mutability": "mutable",
                  "name": "potentialReplica",
                  "nodeType": "VariableDeclaration",
                  "scope": 29721,
                  "src": "492:24:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 29710,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "492:7:35",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "491:26:35"
            },
            "returnParameters": {
              "id": 29715,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 29714,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 29721,
                  "src": "565:4:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 29713,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "565:4:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "564:6:35"
            },
            "scope": 29741,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 29730,
            "nodeType": "FunctionDefinition",
            "src": "633:100:35",
            "body": {
              "id": 29729,
              "nodeType": "Block",
              "src": "695:38:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "id": 29726,
                      "name": "_localDomain",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 28952,
                      "src": "712:12:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$__$returns$_t_uint32_$",
                        "typeString": "function () view returns (uint32)"
                      }
                    },
                    "id": 29727,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "712:14:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint32",
                      "typeString": "uint32"
                    }
                  },
                  "functionReturnParameters": 29725,
                  "id": 29728,
                  "nodeType": "Return",
                  "src": "705:21:35"
                }
              ]
            },
            "functionSelector": "0fdeeba9",
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "exposed_localDomain",
            "parameters": {
              "id": 29722,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "661:2:35"
            },
            "returnParameters": {
              "id": 29725,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 29724,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 29730,
                  "src": "687:6:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint32",
                    "typeString": "uint32"
                  },
                  "typeName": {
                    "id": 29723,
                    "name": "uint32",
                    "nodeType": "ElementaryTypeName",
                    "src": "687:6:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint32",
                      "typeString": "uint32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "686:8:35"
            },
            "scope": 29741,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 29740,
            "nodeType": "FunctionDefinition",
            "src": "739:119:35",
            "body": {
              "id": 29739,
              "nodeType": "Block",
              "src": "796:62:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 29736,
                        "name": "xAppCnMngr",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 29732,
                        "src": "840:10:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 29735,
                      "name": "__XAppConnectionClient_initialize",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 28901,
                      "src": "806:33:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$",
                        "typeString": "function (address)"
                      }
                    },
                    "id": 29737,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "806:45:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 29738,
                  "nodeType": "ExpressionStatement",
                  "src": "806:45:35"
                }
              ]
            },
            "functionSelector": "0357ced7",
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "exposed_initialize",
            "parameters": {
              "id": 29733,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 29732,
                  "mutability": "mutable",
                  "name": "xAppCnMngr",
                  "nodeType": "VariableDeclaration",
                  "scope": 29740,
                  "src": "767:18:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 29731,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "767:7:35",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "766:20:35"
            },
            "returnParameters": {
              "id": 29734,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "796:0:35"
            },
            "scope": 29741,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "abstract": false,
        "baseContracts": [
          {
            "baseName": {
              "id": 29699,
              "name": "XAppConnectionClient",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 28953,
              "src": "348:20:35",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_XAppConnectionClient_$28953",
                "typeString": "contract XAppConnectionClient"
              }
            },
            "id": 29700,
            "nodeType": "InheritanceSpecifier",
            "src": "348:20:35"
          }
        ],
        "contractDependencies": [
          23168,
          23234,
          23523,
          28953
        ],
        "contractKind": "contract",
        "fullyImplemented": true,
        "linearizedBaseContracts": [
          29741,
          28953,
          23168,
          23523,
          23234
        ],
        "name": "XAppConnectionClientHarness",
        "scope": 29742
      }
    ],
    "license": "MIT OR Apache-2.0"
  },
  "id": 35
}