{
  "abi": [
    {
      "inputs": [
        {
          "internalType": "uint96",
          "name": "id",
          "type": "uint96"
        }
      ],
      "name": "decodeBundleData",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "instanceId",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "riskpoolId",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "bundleId",
          "type": "uint256"
        },
        {
          "internalType": "address",
          "name": "token",
          "type": "address"
        },
        {
          "internalType": "string",
          "name": "displayName",
          "type": "string"
        },
        {
          "internalType": "uint256",
          "name": "expiryAt",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint96",
          "name": "id",
          "type": "uint96"
        }
      ],
      "name": "decodeComponentData",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "instanceId",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "componentId",
          "type": "uint256"
        },
        {
          "internalType": "address",
          "name": "token",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint96",
          "name": "id",
          "type": "uint96"
        }
      ],
      "name": "decodeStakeData",
      "outputs": [
        {
          "internalType": "uint96",
          "name": "target",
          "type": "uint96"
        },
        {
          "internalType": "uint8",
          "name": "targetType",
          "type": "uint8"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint96",
          "name": "id",
          "type": "uint96"
        }
      ],
      "name": "exists",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint96",
          "name": "id",
          "type": "uint96"
        },
        {
          "internalType": "uint256",
          "name": "lifetimeExtension",
          "type": "uint256"
        }
      ],
      "name": "extendBundleLifetime",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "instanceId",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "bundleId",
          "type": "uint256"
        }
      ],
      "name": "getBundleNftId",
      "outputs": [
        {
          "internalType": "uint96",
          "name": "nftId",
          "type": "uint96"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "instanceId",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "componentId",
          "type": "uint256"
        }
      ],
      "name": "getComponentNftId",
      "outputs": [
        {
          "internalType": "uint96",
          "name": "nftId",
          "type": "uint96"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "instanceId",
          "type": "bytes32"
        }
      ],
      "name": "getInstanceNftId",
      "outputs": [
        {
          "internalType": "uint96",
          "name": "nftId",
          "type": "uint96"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getNft",
      "outputs": [
        {
          "internalType": "contract IChainNftFacade",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes5",
          "name": "chain",
          "type": "bytes5"
        },
        {
          "internalType": "uint8",
          "name": "objectType",
          "type": "uint8"
        },
        {
          "internalType": "uint256",
          "name": "idx",
          "type": "uint256"
        }
      ],
      "name": "getNftId",
      "outputs": [
        {
          "internalType": "uint96",
          "name": "nftId",
          "type": "uint96"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes5",
          "name": "chain",
          "type": "bytes5"
        },
        {
          "internalType": "uint8",
          "name": "objectType",
          "type": "uint8"
        }
      ],
      "name": "objects",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "numberOfObjects",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "owner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint96",
          "name": "id",
          "type": "uint96"
        }
      ],
      "name": "ownerOf",
      "outputs": [
        {
          "internalType": "address",
          "name": "nftOwner",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "instanceId",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "riskpoolId",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "bundleId",
          "type": "uint256"
        },
        {
          "internalType": "string",
          "name": "displayName",
          "type": "string"
        },
        {
          "internalType": "uint256",
          "name": "expiryAt",
          "type": "uint256"
        }
      ],
      "name": "registerBundle",
      "outputs": [
        {
          "internalType": "uint96",
          "name": "nftId",
          "type": "uint96"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "chainId",
          "type": "uint256"
        }
      ],
      "name": "toChain",
      "outputs": [
        {
          "internalType": "bytes5",
          "name": "chain",
          "type": "bytes5"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "version",
      "outputs": [
        {
          "internalType": "uint48",
          "name": "",
          "type": "uint48"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "versionParts",
      "outputs": [
        {
          "internalType": "uint16",
          "name": "major",
          "type": "uint16"
        },
        {
          "internalType": "uint16",
          "name": "minor",
          "type": "uint16"
        },
        {
          "internalType": "uint16",
          "name": "patch",
          "type": "uint16"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "allSourcePaths": {
    "59": "contracts/registry/IChainNftFacade.sol",
    "60": "contracts/registry/IChainRegistryFacade.sol"
  },
  "ast": {
    "absolutePath": "contracts/registry/IChainRegistryFacade.sol",
    "exportedSymbols": {
      "IChainNftFacade": [
        7342
      ],
      "IChainRegistryFacade": [
        7497
      ]
    },
    "id": 7498,
    "license": "Apache-2.0",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 7344,
        "literals": [
          "solidity",
          "0.8",
          ".2"
        ],
        "nodeType": "PragmaDirective",
        "src": "39:22:60"
      },
      {
        "absolutePath": "contracts/registry/IChainNftFacade.sol",
        "file": "./IChainNftFacade.sol",
        "id": 7346,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 7498,
        "sourceUnit": 7343,
        "src": "540:54:60",
        "symbolAliases": [
          {
            "foreign": {
              "id": 7345,
              "name": "IChainNftFacade",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "548:15:60",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "abstract": false,
        "baseContracts": [],
        "contractDependencies": [],
        "contractKind": "interface",
        "fullyImplemented": false,
        "id": 7497,
        "linearizedBaseContracts": [
          7497
        ],
        "name": "IChainRegistryFacade",
        "nameLocation": "606:20:60",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "functionSelector": "5b1cfdbd",
            "id": 7361,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "registerBundle",
            "nameLocation": "643:14:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7357,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7348,
                  "mutability": "mutable",
                  "name": "instanceId",
                  "nameLocation": "675:10:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7361,
                  "src": "667:18:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 7347,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "667:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7350,
                  "mutability": "mutable",
                  "name": "riskpoolId",
                  "nameLocation": "703:10:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7361,
                  "src": "695:18:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 7349,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "695:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7352,
                  "mutability": "mutable",
                  "name": "bundleId",
                  "nameLocation": "731:8:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7361,
                  "src": "723:16:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 7351,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "723:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7354,
                  "mutability": "mutable",
                  "name": "displayName",
                  "nameLocation": "763:11:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7361,
                  "src": "749:25:60",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 7353,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "749:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7356,
                  "mutability": "mutable",
                  "name": "expiryAt",
                  "nameLocation": "792:8:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7361,
                  "src": "784:16:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 7355,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "784:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "657:149:60"
            },
            "returnParameters": {
              "id": 7360,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7359,
                  "mutability": "mutable",
                  "name": "nftId",
                  "nameLocation": "847:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7361,
                  "src": "840:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint96",
                    "typeString": "uint96"
                  },
                  "typeName": {
                    "id": 7358,
                    "name": "uint96",
                    "nodeType": "ElementaryTypeName",
                    "src": "840:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint96",
                      "typeString": "uint96"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "839:14:60"
            },
            "scope": 7497,
            "src": "634:220:60",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "16f48f62",
            "id": 7368,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "extendBundleLifetime",
            "nameLocation": "869:20:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7366,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7363,
                  "mutability": "mutable",
                  "name": "id",
                  "nameLocation": "897:2:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7368,
                  "src": "890:9:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint96",
                    "typeString": "uint96"
                  },
                  "typeName": {
                    "id": 7362,
                    "name": "uint96",
                    "nodeType": "ElementaryTypeName",
                    "src": "890:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint96",
                      "typeString": "uint96"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7365,
                  "mutability": "mutable",
                  "name": "lifetimeExtension",
                  "nameLocation": "909:17:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7368,
                  "src": "901:25:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 7364,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "901:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "889:38:60"
            },
            "returnParameters": {
              "id": 7367,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "936:0:60"
            },
            "scope": 7497,
            "src": "860:77:60",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "8da5cb5b",
            "id": 7373,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "owner",
            "nameLocation": "952:5:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7369,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "957:2:60"
            },
            "returnParameters": {
              "id": 7372,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7371,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 7373,
                  "src": "982:7:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 7370,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "982:7:60",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "981:9:60"
            },
            "scope": 7497,
            "src": "943:48:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "ac513fb8",
            "id": 7379,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getNft",
            "nameLocation": "1005:6:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7374,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1011:2:60"
            },
            "returnParameters": {
              "id": 7378,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7377,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 7379,
                  "src": "1036:15:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_IChainNftFacade_$7342",
                    "typeString": "contract IChainNftFacade"
                  },
                  "typeName": {
                    "id": 7376,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 7375,
                      "name": "IChainNftFacade",
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 7342,
                      "src": "1036:15:60"
                    },
                    "referencedDeclaration": 7342,
                    "src": "1036:15:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_IChainNftFacade_$7342",
                      "typeString": "contract IChainNftFacade"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1035:17:60"
            },
            "scope": 7497,
            "src": "996:57:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "178156ca",
            "id": 7386,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "toChain",
            "nameLocation": "1067:7:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7382,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7381,
                  "mutability": "mutable",
                  "name": "chainId",
                  "nameLocation": "1083:7:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7386,
                  "src": "1075:15:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 7380,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1075:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1074:17:60"
            },
            "returnParameters": {
              "id": 7385,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7384,
                  "mutability": "mutable",
                  "name": "chain",
                  "nameLocation": "1121:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7386,
                  "src": "1114:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes5",
                    "typeString": "bytes5"
                  },
                  "typeName": {
                    "id": 7383,
                    "name": "bytes5",
                    "nodeType": "ElementaryTypeName",
                    "src": "1114:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes5",
                      "typeString": "bytes5"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1113:14:60"
            },
            "scope": 7497,
            "src": "1058:70:60",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "d044a1ed",
            "id": 7395,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "objects",
            "nameLocation": "1143:7:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7391,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7388,
                  "mutability": "mutable",
                  "name": "chain",
                  "nameLocation": "1158:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7395,
                  "src": "1151:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes5",
                    "typeString": "bytes5"
                  },
                  "typeName": {
                    "id": 7387,
                    "name": "bytes5",
                    "nodeType": "ElementaryTypeName",
                    "src": "1151:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes5",
                      "typeString": "bytes5"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7390,
                  "mutability": "mutable",
                  "name": "objectType",
                  "nameLocation": "1171:10:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7395,
                  "src": "1165:16:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 7389,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "1165:5:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1150:32:60"
            },
            "returnParameters": {
              "id": 7394,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7393,
                  "mutability": "mutable",
                  "name": "numberOfObjects",
                  "nameLocation": "1213:15:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7395,
                  "src": "1205:23:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 7392,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1205:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1204:25:60"
            },
            "scope": 7497,
            "src": "1134:96:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "2b52487a",
            "id": 7406,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getNftId",
            "nameLocation": "1244:8:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7402,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7397,
                  "mutability": "mutable",
                  "name": "chain",
                  "nameLocation": "1260:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7406,
                  "src": "1253:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes5",
                    "typeString": "bytes5"
                  },
                  "typeName": {
                    "id": 7396,
                    "name": "bytes5",
                    "nodeType": "ElementaryTypeName",
                    "src": "1253:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes5",
                      "typeString": "bytes5"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7399,
                  "mutability": "mutable",
                  "name": "objectType",
                  "nameLocation": "1273:10:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7406,
                  "src": "1267:16:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 7398,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "1267:5:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7401,
                  "mutability": "mutable",
                  "name": "idx",
                  "nameLocation": "1293:3:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7406,
                  "src": "1285:11:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 7400,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1285:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1252:45:60"
            },
            "returnParameters": {
              "id": 7405,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7404,
                  "mutability": "mutable",
                  "name": "nftId",
                  "nameLocation": "1327:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7406,
                  "src": "1320:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint96",
                    "typeString": "uint96"
                  },
                  "typeName": {
                    "id": 7403,
                    "name": "uint96",
                    "nodeType": "ElementaryTypeName",
                    "src": "1320:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint96",
                      "typeString": "uint96"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1319:14:60"
            },
            "scope": 7497,
            "src": "1235:99:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "4f9c1c09",
            "id": 7413,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "exists",
            "nameLocation": "1348:6:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7409,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7408,
                  "mutability": "mutable",
                  "name": "id",
                  "nameLocation": "1362:2:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7413,
                  "src": "1355:9:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint96",
                    "typeString": "uint96"
                  },
                  "typeName": {
                    "id": 7407,
                    "name": "uint96",
                    "nodeType": "ElementaryTypeName",
                    "src": "1355:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint96",
                      "typeString": "uint96"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1354:11:60"
            },
            "returnParameters": {
              "id": 7412,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7411,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 7413,
                  "src": "1388:4:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 7410,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "1388:4:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1387:6:60"
            },
            "scope": 7497,
            "src": "1339:55:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "38bb429a",
            "id": 7420,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "ownerOf",
            "nameLocation": "1408:7:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7416,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7415,
                  "mutability": "mutable",
                  "name": "id",
                  "nameLocation": "1423:2:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7420,
                  "src": "1416:9:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint96",
                    "typeString": "uint96"
                  },
                  "typeName": {
                    "id": 7414,
                    "name": "uint96",
                    "nodeType": "ElementaryTypeName",
                    "src": "1416:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint96",
                      "typeString": "uint96"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1415:11:60"
            },
            "returnParameters": {
              "id": 7419,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7418,
                  "mutability": "mutable",
                  "name": "nftOwner",
                  "nameLocation": "1457:8:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7420,
                  "src": "1449:16:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 7417,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1449:7:60",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1448:18:60"
            },
            "scope": 7497,
            "src": "1399:68:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "c0759d0d",
            "id": 7427,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getInstanceNftId",
            "nameLocation": "1482:16:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7423,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7422,
                  "mutability": "mutable",
                  "name": "instanceId",
                  "nameLocation": "1507:10:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7427,
                  "src": "1499:18:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 7421,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1499:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1498:20:60"
            },
            "returnParameters": {
              "id": 7426,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7425,
                  "mutability": "mutable",
                  "name": "nftId",
                  "nameLocation": "1548:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7427,
                  "src": "1541:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint96",
                    "typeString": "uint96"
                  },
                  "typeName": {
                    "id": 7424,
                    "name": "uint96",
                    "nodeType": "ElementaryTypeName",
                    "src": "1541:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint96",
                      "typeString": "uint96"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1540:14:60"
            },
            "scope": 7497,
            "src": "1473:82:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "d91fc8c7",
            "id": 7436,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getComponentNftId",
            "nameLocation": "1569:17:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7432,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7429,
                  "mutability": "mutable",
                  "name": "instanceId",
                  "nameLocation": "1595:10:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7436,
                  "src": "1587:18:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 7428,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1587:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7431,
                  "mutability": "mutable",
                  "name": "componentId",
                  "nameLocation": "1615:11:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7436,
                  "src": "1607:19:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 7430,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1607:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1586:41:60"
            },
            "returnParameters": {
              "id": 7435,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7434,
                  "mutability": "mutable",
                  "name": "nftId",
                  "nameLocation": "1657:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7436,
                  "src": "1650:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint96",
                    "typeString": "uint96"
                  },
                  "typeName": {
                    "id": 7433,
                    "name": "uint96",
                    "nodeType": "ElementaryTypeName",
                    "src": "1650:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint96",
                      "typeString": "uint96"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1649:14:60"
            },
            "scope": 7497,
            "src": "1560:104:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "afb9128e",
            "id": 7445,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getBundleNftId",
            "nameLocation": "1678:14:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7441,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7438,
                  "mutability": "mutable",
                  "name": "instanceId",
                  "nameLocation": "1701:10:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7445,
                  "src": "1693:18:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 7437,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1693:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7440,
                  "mutability": "mutable",
                  "name": "bundleId",
                  "nameLocation": "1721:8:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7445,
                  "src": "1713:16:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 7439,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1713:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1692:38:60"
            },
            "returnParameters": {
              "id": 7444,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7443,
                  "mutability": "mutable",
                  "name": "nftId",
                  "nameLocation": "1760:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7445,
                  "src": "1753:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint96",
                    "typeString": "uint96"
                  },
                  "typeName": {
                    "id": 7442,
                    "name": "uint96",
                    "nodeType": "ElementaryTypeName",
                    "src": "1753:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint96",
                      "typeString": "uint96"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1752:14:60"
            },
            "scope": 7497,
            "src": "1669:98:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "54fd4d50",
            "id": 7450,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "version",
            "nameLocation": "1782:7:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7446,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1789:2:60"
            },
            "returnParameters": {
              "id": 7449,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7448,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 7450,
                  "src": "1814:6:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint48",
                    "typeString": "uint48"
                  },
                  "typeName": {
                    "id": 7447,
                    "name": "uint48",
                    "nodeType": "ElementaryTypeName",
                    "src": "1814:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint48",
                      "typeString": "uint48"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1813:8:60"
            },
            "scope": 7497,
            "src": "1773:49:60",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "bd4080ec",
            "id": 7459,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "versionParts",
            "nameLocation": "1836:12:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7451,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1848:2:60"
            },
            "returnParameters": {
              "id": 7458,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7453,
                  "mutability": "mutable",
                  "name": "major",
                  "nameLocation": "1917:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7459,
                  "src": "1910:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint16",
                    "typeString": "uint16"
                  },
                  "typeName": {
                    "id": 7452,
                    "name": "uint16",
                    "nodeType": "ElementaryTypeName",
                    "src": "1910:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint16",
                      "typeString": "uint16"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7455,
                  "mutability": "mutable",
                  "name": "minor",
                  "nameLocation": "1943:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7459,
                  "src": "1936:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint16",
                    "typeString": "uint16"
                  },
                  "typeName": {
                    "id": 7454,
                    "name": "uint16",
                    "nodeType": "ElementaryTypeName",
                    "src": "1936:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint16",
                      "typeString": "uint16"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7457,
                  "mutability": "mutable",
                  "name": "patch",
                  "nameLocation": "1969:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7459,
                  "src": "1962:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint16",
                    "typeString": "uint16"
                  },
                  "typeName": {
                    "id": 7456,
                    "name": "uint16",
                    "nodeType": "ElementaryTypeName",
                    "src": "1962:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint16",
                      "typeString": "uint16"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1896:88:60"
            },
            "scope": 7497,
            "src": "1827:158:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "0082d973",
            "id": 7470,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "decodeComponentData",
            "nameLocation": "2001:19:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7462,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7461,
                  "mutability": "mutable",
                  "name": "id",
                  "nameLocation": "2028:2:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7470,
                  "src": "2021:9:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint96",
                    "typeString": "uint96"
                  },
                  "typeName": {
                    "id": 7460,
                    "name": "uint96",
                    "nodeType": "ElementaryTypeName",
                    "src": "2021:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint96",
                      "typeString": "uint96"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2020:11:60"
            },
            "returnParameters": {
              "id": 7469,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7464,
                  "mutability": "mutable",
                  "name": "instanceId",
                  "nameLocation": "2099:10:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7470,
                  "src": "2091:18:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 7463,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2091:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7466,
                  "mutability": "mutable",
                  "name": "componentId",
                  "nameLocation": "2131:11:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7470,
                  "src": "2123:19:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 7465,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2123:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7468,
                  "mutability": "mutable",
                  "name": "token",
                  "nameLocation": "2164:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7470,
                  "src": "2156:13:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 7467,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2156:7:60",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2077:93:60"
            },
            "scope": 7497,
            "src": "1992:179:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "7cf6b414",
            "id": 7487,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "decodeBundleData",
            "nameLocation": "2187:16:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7473,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7472,
                  "mutability": "mutable",
                  "name": "id",
                  "nameLocation": "2211:2:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7487,
                  "src": "2204:9:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint96",
                    "typeString": "uint96"
                  },
                  "typeName": {
                    "id": 7471,
                    "name": "uint96",
                    "nodeType": "ElementaryTypeName",
                    "src": "2204:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint96",
                      "typeString": "uint96"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2203:11:60"
            },
            "returnParameters": {
              "id": 7486,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7475,
                  "mutability": "mutable",
                  "name": "instanceId",
                  "nameLocation": "2282:10:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7487,
                  "src": "2274:18:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 7474,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2274:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7477,
                  "mutability": "mutable",
                  "name": "riskpoolId",
                  "nameLocation": "2314:10:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7487,
                  "src": "2306:18:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 7476,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2306:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7479,
                  "mutability": "mutable",
                  "name": "bundleId",
                  "nameLocation": "2346:8:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7487,
                  "src": "2338:16:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 7478,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2338:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7481,
                  "mutability": "mutable",
                  "name": "token",
                  "nameLocation": "2376:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7487,
                  "src": "2368:13:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 7480,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2368:7:60",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7483,
                  "mutability": "mutable",
                  "name": "displayName",
                  "nameLocation": "2409:11:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7487,
                  "src": "2395:25:60",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 7482,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "2395:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7485,
                  "mutability": "mutable",
                  "name": "expiryAt",
                  "nameLocation": "2442:8:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7487,
                  "src": "2434:16:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 7484,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2434:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2260:191:60"
            },
            "scope": 7497,
            "src": "2178:274:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "e089bc7d",
            "id": 7496,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "decodeStakeData",
            "nameLocation": "2468:15:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 7490,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7489,
                  "mutability": "mutable",
                  "name": "id",
                  "nameLocation": "2491:2:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7496,
                  "src": "2484:9:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint96",
                    "typeString": "uint96"
                  },
                  "typeName": {
                    "id": 7488,
                    "name": "uint96",
                    "nodeType": "ElementaryTypeName",
                    "src": "2484:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint96",
                      "typeString": "uint96"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2483:11:60"
            },
            "returnParameters": {
              "id": 7495,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 7492,
                  "mutability": "mutable",
                  "name": "target",
                  "nameLocation": "2561:6:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7496,
                  "src": "2554:13:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint96",
                    "typeString": "uint96"
                  },
                  "typeName": {
                    "id": 7491,
                    "name": "uint96",
                    "nodeType": "ElementaryTypeName",
                    "src": "2554:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint96",
                      "typeString": "uint96"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 7494,
                  "mutability": "mutable",
                  "name": "targetType",
                  "nameLocation": "2587:10:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 7496,
                  "src": "2581:16:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 7493,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "2581:5:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2540:58:60"
            },
            "scope": 7497,
            "src": "2459:140:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "scope": 7498,
        "src": "596:2006:60"
      }
    ],
    "src": "39:2563:60"
  },
  "bytecode": "",
  "bytecodeSha1": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
  "compiler": {
    "evm_version": "istanbul",
    "optimizer": {
      "enabled": true,
      "runs": 200
    },
    "version": "0.8.2+commit.661d1103"
  },
  "contractName": "IChainRegistryFacade",
  "coverageMap": {
    "branches": {},
    "statements": {}
  },
  "dependencies": [
    "IChainNftFacade"
  ],
  "deployedBytecode": "",
  "deployedSourceMap": "",
  "language": "Solidity",
  "natspec": {
    "kind": "dev",
    "methods": {},
    "version": 1
  },
  "offset": [
    596,
    2602
  ],
  "opcodes": "",
  "pcMap": {},
  "sha1": "68c855b52e3fe26c51f3f9dc2a4e59df5f4d639e",
  "source": "// SPDX-License-Identifier: Apache-2.0\npragma solidity 0.8.2;\n\n/**\n * @dev this facade is intended for user contracts with limited \n * interactions with the actual contract and that need to work \n * with older solidity versions that do not support user defined \n * types.\n * \n * usage: \n * (1) copy this interface into your repository\n * (2) adapt the pragma to your needsd\n * (3) use it in your contracts, ie. cast actual contract \n * address to this interface, then  usd the resulting facade \n * to interact with the actual contract\n */\n\nimport {IChainNftFacade} from \"./IChainNftFacade.sol\";\n\ninterface IChainRegistryFacade {\n\n    function registerBundle(\n        bytes32 instanceId,\n        uint256 riskpoolId,\n        uint256 bundleId,\n        string memory displayName,\n        uint256 expiryAt\n    )\n        external\n        returns(uint96 nftId);\n\n    function extendBundleLifetime(uint96 id, uint256 lifetimeExtension) external;\n\n    function owner() external view returns(address);\n    function getNft() external view returns(IChainNftFacade);\n    function toChain(uint256 chainId) external pure returns(bytes5 chain);\n\n    function objects(bytes5 chain, uint8 objectType) external view returns(uint256 numberOfObjects);\n    function getNftId(bytes5 chain, uint8 objectType, uint256 idx) external view returns(uint96 nftId);\n    function exists(uint96 id) external view returns(bool);\n    function ownerOf(uint96 id) external view returns(address nftOwner);\n\n    function getInstanceNftId(bytes32 instanceId) external view returns(uint96 nftId);\n    function getComponentNftId(bytes32 instanceId, uint256 componentId) external view returns(uint96 nftId);\n    function getBundleNftId(bytes32 instanceId, uint256 bundleId) external view returns(uint96 nftId);\n\n    function version() external pure returns(uint48);\n    function versionParts()\n        external\n        view\n        returns(\n            uint16 major,\n            uint16 minor,\n            uint16 patch\n        );\n\n\n    function decodeComponentData(uint96 id)\n        external\n        view\n        returns(\n            bytes32 instanceId,\n            uint256 componentId,\n            address token);\n\n\n    function decodeBundleData(uint96 id)\n        external\n        view\n        returns(\n            bytes32 instanceId,\n            uint256 riskpoolId,\n            uint256 bundleId,\n            address token,\n            string memory displayName,\n            uint256 expiryAt);\n\n\n    function decodeStakeData(uint96 id)\n        external\n        view\n        returns(\n            uint96 target,\n            uint8 targetType);\n\n}",
  "sourceMap": "",
  "sourcePath": "contracts/registry/IChainRegistryFacade.sol",
  "type": "interface"
}