{
  "abi": [
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "bytes32",
          "name": "id",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "newAddress",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "bool",
          "name": "hasProxy",
          "type": "bool"
        }
      ],
      "name": "AddressSet",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "newAddress",
          "type": "address"
        }
      ],
      "name": "ConfigurationAdminUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "newAddress",
          "type": "address"
        }
      ],
      "name": "EmergencyAdminUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "newAddress",
          "type": "address"
        }
      ],
      "name": "LendingPoolCollateralManagerUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "newAddress",
          "type": "address"
        }
      ],
      "name": "LendingPoolConfiguratorUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "newAddress",
          "type": "address"
        }
      ],
      "name": "LendingPoolUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "newAddress",
          "type": "address"
        }
      ],
      "name": "LendingRateOracleUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "string",
          "name": "newMarketId",
          "type": "string"
        }
      ],
      "name": "MarketIdSet",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "newAddress",
          "type": "address"
        }
      ],
      "name": "PriceOracleUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "bytes32",
          "name": "id",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "newAddress",
          "type": "address"
        }
      ],
      "name": "ProxyCreated",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "id",
          "type": "bytes32"
        }
      ],
      "name": "getAddress",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getEmergencyAdmin",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getLendingPool",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getLendingPoolCollateralManager",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getLendingPoolConfigurator",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getLendingRateOracle",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getMarketId",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getPoolAdmin",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getPriceOracle",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "id",
          "type": "bytes32"
        },
        {
          "internalType": "address",
          "name": "newAddress",
          "type": "address"
        }
      ],
      "name": "setAddress",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "id",
          "type": "bytes32"
        },
        {
          "internalType": "address",
          "name": "impl",
          "type": "address"
        }
      ],
      "name": "setAddressAsProxy",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "admin",
          "type": "address"
        }
      ],
      "name": "setEmergencyAdmin",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "manager",
          "type": "address"
        }
      ],
      "name": "setLendingPoolCollateralManager",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "configurator",
          "type": "address"
        }
      ],
      "name": "setLendingPoolConfiguratorImpl",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "pool",
          "type": "address"
        }
      ],
      "name": "setLendingPoolImpl",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "lendingRateOracle",
          "type": "address"
        }
      ],
      "name": "setLendingRateOracle",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "marketId",
          "type": "string"
        }
      ],
      "name": "setMarketId",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "admin",
          "type": "address"
        }
      ],
      "name": "setPoolAdmin",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "priceOracle",
          "type": "address"
        }
      ],
      "name": "setPriceOracle",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "allSourcePaths": {
    "48": "node_modules/@aave/protocol-v2/contracts/interfaces/ILendingPoolAddressesProvider.sol"
  },
  "ast": {
    "absolutePath": "node_modules/@aave/protocol-v2/contracts/interfaces/ILendingPoolAddressesProvider.sol",
    "exportedSymbols": {
      "ILendingPoolAddressesProvider": [
        15443
      ]
    },
    "id": 15444,
    "license": "agpl-3.0",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 15294,
        "literals": [
          "solidity",
          "^",
          "0.8",
          ".0"
        ],
        "nodeType": "PragmaDirective",
        "src": "37:23:48"
      },
      {
        "abstract": false,
        "baseContracts": [],
        "contractDependencies": [],
        "contractKind": "interface",
        "documentation": {
          "id": 15295,
          "nodeType": "StructuredDocumentation",
          "src": "62:311:48",
          "text": " @title LendingPoolAddressesProvider contract\n @dev Main registry of addresses part of or connected to the protocol, including permissioned roles\n - Acting also as factory of proxies and admin of those, so with right to change its implementations\n - Owned by the Aave Governance\n @author Aave*"
        },
        "fullyImplemented": false,
        "id": 15443,
        "linearizedBaseContracts": [
          15443
        ],
        "name": "ILendingPoolAddressesProvider",
        "nameLocation": "384:29:48",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "anonymous": false,
            "id": 15299,
            "name": "MarketIdSet",
            "nameLocation": "424:11:48",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 15298,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15297,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "newMarketId",
                  "nameLocation": "443:11:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15299,
                  "src": "436:18:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 15296,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "436:6:48",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "435:20:48"
            },
            "src": "418:38:48"
          },
          {
            "anonymous": false,
            "id": 15303,
            "name": "LendingPoolUpdated",
            "nameLocation": "465:18:48",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 15302,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15301,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "newAddress",
                  "nameLocation": "500:10:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15303,
                  "src": "484:26:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15300,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "484:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "483:28:48"
            },
            "src": "459:53:48"
          },
          {
            "anonymous": false,
            "id": 15307,
            "name": "ConfigurationAdminUpdated",
            "nameLocation": "521:25:48",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 15306,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15305,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "newAddress",
                  "nameLocation": "563:10:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15307,
                  "src": "547:26:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15304,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "547:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "546:28:48"
            },
            "src": "515:60:48"
          },
          {
            "anonymous": false,
            "id": 15311,
            "name": "EmergencyAdminUpdated",
            "nameLocation": "584:21:48",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 15310,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15309,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "newAddress",
                  "nameLocation": "622:10:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15311,
                  "src": "606:26:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15308,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "606:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "605:28:48"
            },
            "src": "578:56:48"
          },
          {
            "anonymous": false,
            "id": 15315,
            "name": "LendingPoolConfiguratorUpdated",
            "nameLocation": "643:30:48",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 15314,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15313,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "newAddress",
                  "nameLocation": "690:10:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15315,
                  "src": "674:26:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15312,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "674:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "673:28:48"
            },
            "src": "637:65:48"
          },
          {
            "anonymous": false,
            "id": 15319,
            "name": "LendingPoolCollateralManagerUpdated",
            "nameLocation": "711:35:48",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 15318,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15317,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "newAddress",
                  "nameLocation": "763:10:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15319,
                  "src": "747:26:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15316,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "747:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "746:28:48"
            },
            "src": "705:70:48"
          },
          {
            "anonymous": false,
            "id": 15323,
            "name": "PriceOracleUpdated",
            "nameLocation": "784:18:48",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 15322,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15321,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "newAddress",
                  "nameLocation": "819:10:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15323,
                  "src": "803:26:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15320,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "803:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "802:28:48"
            },
            "src": "778:53:48"
          },
          {
            "anonymous": false,
            "id": 15327,
            "name": "LendingRateOracleUpdated",
            "nameLocation": "840:24:48",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 15326,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15325,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "newAddress",
                  "nameLocation": "881:10:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15327,
                  "src": "865:26:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15324,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "865:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "864:28:48"
            },
            "src": "834:59:48"
          },
          {
            "anonymous": false,
            "id": 15333,
            "name": "ProxyCreated",
            "nameLocation": "902:12:48",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 15332,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15329,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "id",
                  "nameLocation": "923:2:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15333,
                  "src": "915:10:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 15328,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "915:7:48",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15331,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "newAddress",
                  "nameLocation": "943:10:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15333,
                  "src": "927:26:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15330,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "927:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "914:40:48"
            },
            "src": "896:59:48"
          },
          {
            "anonymous": false,
            "id": 15341,
            "name": "AddressSet",
            "nameLocation": "964:10:48",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 15340,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15335,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "id",
                  "nameLocation": "983:2:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15341,
                  "src": "975:10:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 15334,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "975:7:48",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15337,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "newAddress",
                  "nameLocation": "1003:10:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15341,
                  "src": "987:26:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15336,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "987:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15339,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "hasProxy",
                  "nameLocation": "1020:8:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15341,
                  "src": "1015:13:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 15338,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "1015:4:48",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "974:55:48"
            },
            "src": "958:72:48"
          },
          {
            "functionSelector": "568ef470",
            "id": 15346,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getMarketId",
            "nameLocation": "1043:11:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15342,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1054:2:48"
            },
            "returnParameters": {
              "id": 15345,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15344,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 15346,
                  "src": "1080:13:48",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 15343,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "1080:6:48",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1079:15:48"
            },
            "scope": 15443,
            "src": "1034:61:48",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "f67b1847",
            "id": 15351,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "setMarketId",
            "nameLocation": "1108:11:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15349,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15348,
                  "mutability": "mutable",
                  "name": "marketId",
                  "nameLocation": "1136:8:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15351,
                  "src": "1120:24:48",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 15347,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "1120:6:48",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1119:26:48"
            },
            "returnParameters": {
              "id": 15350,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1154:0:48"
            },
            "scope": 15443,
            "src": "1099:56:48",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "ca446dd9",
            "id": 15358,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "setAddress",
            "nameLocation": "1168:10:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15356,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15353,
                  "mutability": "mutable",
                  "name": "id",
                  "nameLocation": "1187:2:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15358,
                  "src": "1179:10:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 15352,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1179:7:48",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15355,
                  "mutability": "mutable",
                  "name": "newAddress",
                  "nameLocation": "1199:10:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15358,
                  "src": "1191:18:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15354,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1191:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1178:32:48"
            },
            "returnParameters": {
              "id": 15357,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1219:0:48"
            },
            "scope": 15443,
            "src": "1159:61:48",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "5dcc528c",
            "id": 15365,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "setAddressAsProxy",
            "nameLocation": "1233:17:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15363,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15360,
                  "mutability": "mutable",
                  "name": "id",
                  "nameLocation": "1259:2:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15365,
                  "src": "1251:10:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 15359,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1251:7:48",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15362,
                  "mutability": "mutable",
                  "name": "impl",
                  "nameLocation": "1271:4:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15365,
                  "src": "1263:12:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15361,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1263:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1250:26:48"
            },
            "returnParameters": {
              "id": 15364,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1285:0:48"
            },
            "scope": 15443,
            "src": "1224:62:48",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "21f8a721",
            "id": 15372,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getAddress",
            "nameLocation": "1299:10:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15368,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15367,
                  "mutability": "mutable",
                  "name": "id",
                  "nameLocation": "1318:2:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15372,
                  "src": "1310:10:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 15366,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1310:7:48",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1309:12:48"
            },
            "returnParameters": {
              "id": 15371,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15370,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 15372,
                  "src": "1345:7:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15369,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1345:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1344:9:48"
            },
            "scope": 15443,
            "src": "1290:64:48",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "0261bf8b",
            "id": 15377,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getLendingPool",
            "nameLocation": "1367:14:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15373,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1381:2:48"
            },
            "returnParameters": {
              "id": 15376,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15375,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 15377,
                  "src": "1407:7:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15374,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1407:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1406:9:48"
            },
            "scope": 15443,
            "src": "1358:58:48",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "5aef021f",
            "id": 15382,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "setLendingPoolImpl",
            "nameLocation": "1429:18:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15380,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15379,
                  "mutability": "mutable",
                  "name": "pool",
                  "nameLocation": "1456:4:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15382,
                  "src": "1448:12:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15378,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1448:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1447:14:48"
            },
            "returnParameters": {
              "id": 15381,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1470:0:48"
            },
            "scope": 15443,
            "src": "1420:51:48",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "85c858b1",
            "id": 15387,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getLendingPoolConfigurator",
            "nameLocation": "1484:26:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15383,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1510:2:48"
            },
            "returnParameters": {
              "id": 15386,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15385,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 15387,
                  "src": "1536:7:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15384,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1536:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1535:9:48"
            },
            "scope": 15443,
            "src": "1475:70:48",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "c12542df",
            "id": 15392,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "setLendingPoolConfiguratorImpl",
            "nameLocation": "1558:30:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15390,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15389,
                  "mutability": "mutable",
                  "name": "configurator",
                  "nameLocation": "1597:12:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15392,
                  "src": "1589:20:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15388,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1589:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1588:22:48"
            },
            "returnParameters": {
              "id": 15391,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1619:0:48"
            },
            "scope": 15443,
            "src": "1549:71:48",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "712d9171",
            "id": 15397,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getLendingPoolCollateralManager",
            "nameLocation": "1633:31:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15393,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1664:2:48"
            },
            "returnParameters": {
              "id": 15396,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15395,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 15397,
                  "src": "1690:7:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15394,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1690:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1689:9:48"
            },
            "scope": 15443,
            "src": "1624:75:48",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "398e5553",
            "id": 15402,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "setLendingPoolCollateralManager",
            "nameLocation": "1712:31:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15400,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15399,
                  "mutability": "mutable",
                  "name": "manager",
                  "nameLocation": "1752:7:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15402,
                  "src": "1744:15:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15398,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1744:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1743:17:48"
            },
            "returnParameters": {
              "id": 15401,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1769:0:48"
            },
            "scope": 15443,
            "src": "1703:67:48",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "aecda378",
            "id": 15407,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getPoolAdmin",
            "nameLocation": "1783:12:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15403,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1795:2:48"
            },
            "returnParameters": {
              "id": 15406,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15405,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 15407,
                  "src": "1821:7:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15404,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1821:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1820:9:48"
            },
            "scope": 15443,
            "src": "1774:56:48",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "283d62ad",
            "id": 15412,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "setPoolAdmin",
            "nameLocation": "1843:12:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15410,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15409,
                  "mutability": "mutable",
                  "name": "admin",
                  "nameLocation": "1864:5:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15412,
                  "src": "1856:13:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15408,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1856:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1855:15:48"
            },
            "returnParameters": {
              "id": 15411,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1879:0:48"
            },
            "scope": 15443,
            "src": "1834:46:48",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "ddcaa9ea",
            "id": 15417,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getEmergencyAdmin",
            "nameLocation": "1893:17:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15413,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1910:2:48"
            },
            "returnParameters": {
              "id": 15416,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15415,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 15417,
                  "src": "1936:7:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15414,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1936:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1935:9:48"
            },
            "scope": 15443,
            "src": "1884:61:48",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "35da3394",
            "id": 15422,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "setEmergencyAdmin",
            "nameLocation": "1958:17:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15420,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15419,
                  "mutability": "mutable",
                  "name": "admin",
                  "nameLocation": "1984:5:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15422,
                  "src": "1976:13:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15418,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1976:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1975:15:48"
            },
            "returnParameters": {
              "id": 15421,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1999:0:48"
            },
            "scope": 15443,
            "src": "1949:51:48",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "fca513a8",
            "id": 15427,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getPriceOracle",
            "nameLocation": "2013:14:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15423,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2027:2:48"
            },
            "returnParameters": {
              "id": 15426,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15425,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 15427,
                  "src": "2053:7:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15424,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2053:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2052:9:48"
            },
            "scope": 15443,
            "src": "2004:58:48",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "530e784f",
            "id": 15432,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "setPriceOracle",
            "nameLocation": "2075:14:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15430,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15429,
                  "mutability": "mutable",
                  "name": "priceOracle",
                  "nameLocation": "2098:11:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15432,
                  "src": "2090:19:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15428,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2090:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2089:21:48"
            },
            "returnParameters": {
              "id": 15431,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2119:0:48"
            },
            "scope": 15443,
            "src": "2066:54:48",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "3618abba",
            "id": 15437,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getLendingRateOracle",
            "nameLocation": "2133:20:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15433,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2153:2:48"
            },
            "returnParameters": {
              "id": 15436,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15435,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 15437,
                  "src": "2179:7:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15434,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2179:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2178:9:48"
            },
            "scope": 15443,
            "src": "2124:64:48",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "820d1274",
            "id": 15442,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "setLendingRateOracle",
            "nameLocation": "2201:20:48",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15440,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15439,
                  "mutability": "mutable",
                  "name": "lendingRateOracle",
                  "nameLocation": "2230:17:48",
                  "nodeType": "VariableDeclaration",
                  "scope": 15442,
                  "src": "2222:25:48",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15438,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2222:7:48",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2221:27:48"
            },
            "returnParameters": {
              "id": 15441,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2257:0:48"
            },
            "scope": 15443,
            "src": "2192:66:48",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "scope": 15444,
        "src": "374:1886:48",
        "usedErrors": []
      }
    ],
    "src": "37:2224:48"
  },
  "bytecode": "",
  "bytecodeSha1": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
  "compiler": {
    "evm_version": "istanbul",
    "optimizer": {
      "enabled": true,
      "runs": 200
    },
    "version": "0.8.6+commit.11564f7e"
  },
  "contractName": "ILendingPoolAddressesProvider",
  "coverageMap": {
    "branches": {},
    "statements": {}
  },
  "dependencies": [],
  "deployedBytecode": "",
  "deployedSourceMap": "",
  "language": "Solidity",
  "natspec": {
    "author": "Aave*",
    "details": "Main registry of addresses part of or connected to the protocol, including permissioned roles - Acting also as factory of proxies and admin of those, so with right to change its implementations - Owned by the Aave Governance",
    "kind": "dev",
    "methods": {},
    "title": "LendingPoolAddressesProvider contract",
    "version": 1
  },
  "offset": [
    374,
    2260
  ],
  "opcodes": "",
  "pcMap": {},
  "sha1": "88ade61fa429eb885c6f8a704fb822e844a22dc1",
  "source": "// SPDX-License-Identifier: agpl-3.0\npragma solidity ^0.8.0;\n\n/**\n * @title LendingPoolAddressesProvider contract\n * @dev Main registry of addresses part of or connected to the protocol, including permissioned roles\n * - Acting also as factory of proxies and admin of those, so with right to change its implementations\n * - Owned by the Aave Governance\n * @author Aave\n **/\ninterface ILendingPoolAddressesProvider {\n  event MarketIdSet(string newMarketId);\n  event LendingPoolUpdated(address indexed newAddress);\n  event ConfigurationAdminUpdated(address indexed newAddress);\n  event EmergencyAdminUpdated(address indexed newAddress);\n  event LendingPoolConfiguratorUpdated(address indexed newAddress);\n  event LendingPoolCollateralManagerUpdated(address indexed newAddress);\n  event PriceOracleUpdated(address indexed newAddress);\n  event LendingRateOracleUpdated(address indexed newAddress);\n  event ProxyCreated(bytes32 id, address indexed newAddress);\n  event AddressSet(bytes32 id, address indexed newAddress, bool hasProxy);\n\n  function getMarketId() external view returns (string memory);\n\n  function setMarketId(string calldata marketId) external;\n\n  function setAddress(bytes32 id, address newAddress) external;\n\n  function setAddressAsProxy(bytes32 id, address impl) external;\n\n  function getAddress(bytes32 id) external view returns (address);\n\n  function getLendingPool() external view returns (address);\n\n  function setLendingPoolImpl(address pool) external;\n\n  function getLendingPoolConfigurator() external view returns (address);\n\n  function setLendingPoolConfiguratorImpl(address configurator) external;\n\n  function getLendingPoolCollateralManager() external view returns (address);\n\n  function setLendingPoolCollateralManager(address manager) external;\n\n  function getPoolAdmin() external view returns (address);\n\n  function setPoolAdmin(address admin) external;\n\n  function getEmergencyAdmin() external view returns (address);\n\n  function setEmergencyAdmin(address admin) external;\n\n  function getPriceOracle() external view returns (address);\n\n  function setPriceOracle(address priceOracle) external;\n\n  function getLendingRateOracle() external view returns (address);\n\n  function setLendingRateOracle(address lendingRateOracle) external;\n}\n",
  "sourceMap": "",
  "sourcePath": "node_modules/@aave/protocol-v2/contracts/interfaces/ILendingPoolAddressesProvider.sol",
  "type": "interface"
}