{
  "abi": [
    {
      "inputs": [
        {
          "internalType": "contract ILendingPoolAddressesProvider",
          "name": "addressesProvider",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "inputs": [],
      "name": "ADDRESSES_PROVIDER",
      "outputs": [
        {
          "internalType": "contract ILendingPoolAddressesProvider",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getAllATokens",
      "outputs": [
        {
          "components": [
            {
              "internalType": "string",
              "name": "symbol",
              "type": "string"
            },
            {
              "internalType": "address",
              "name": "tokenAddress",
              "type": "address"
            }
          ],
          "internalType": "struct AaveProtocolDataProvider.TokenData[]",
          "name": "",
          "type": "tuple[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getAllReservesTokens",
      "outputs": [
        {
          "components": [
            {
              "internalType": "string",
              "name": "symbol",
              "type": "string"
            },
            {
              "internalType": "address",
              "name": "tokenAddress",
              "type": "address"
            }
          ],
          "internalType": "struct AaveProtocolDataProvider.TokenData[]",
          "name": "",
          "type": "tuple[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "asset",
          "type": "address"
        }
      ],
      "name": "getReserveConfigurationData",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "decimals",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "ltv",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "liquidationThreshold",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "liquidationBonus",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "reserveFactor",
          "type": "uint256"
        },
        {
          "internalType": "bool",
          "name": "usageAsCollateralEnabled",
          "type": "bool"
        },
        {
          "internalType": "bool",
          "name": "borrowingEnabled",
          "type": "bool"
        },
        {
          "internalType": "bool",
          "name": "stableBorrowRateEnabled",
          "type": "bool"
        },
        {
          "internalType": "bool",
          "name": "isActive",
          "type": "bool"
        },
        {
          "internalType": "bool",
          "name": "isFrozen",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "asset",
          "type": "address"
        }
      ],
      "name": "getReserveData",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "availableLiquidity",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "totalStableDebt",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "totalVariableDebt",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "liquidityRate",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "variableBorrowRate",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "stableBorrowRate",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "averageStableBorrowRate",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "liquidityIndex",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "variableBorrowIndex",
          "type": "uint256"
        },
        {
          "internalType": "uint40",
          "name": "lastUpdateTimestamp",
          "type": "uint40"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "asset",
          "type": "address"
        }
      ],
      "name": "getReserveTokensAddresses",
      "outputs": [
        {
          "internalType": "address",
          "name": "aTokenAddress",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "stableDebtTokenAddress",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "variableDebtTokenAddress",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "asset",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "user",
          "type": "address"
        }
      ],
      "name": "getUserReserveData",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "currentATokenBalance",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "currentStableDebt",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "currentVariableDebt",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "principalStableDebt",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "scaledVariableDebt",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "stableBorrowRate",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "liquidityRate",
          "type": "uint256"
        },
        {
          "internalType": "uint40",
          "name": "stableRateLastUpdated",
          "type": "uint40"
        },
        {
          "internalType": "bool",
          "name": "usageAsCollateralEnabled",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "allSourcePaths": {
    "41": "node_modules/@aave/protocol-v2/contracts/dependencies/openzeppelin/contracts/IERC20.sol",
    "42": "node_modules/@aave/protocol-v2/contracts/dependencies/openzeppelin/contracts/IERC20Detailed.sol",
    "44": "node_modules/@aave/protocol-v2/contracts/interfaces/IAaveIncentivesController.sol",
    "46": "node_modules/@aave/protocol-v2/contracts/interfaces/IInitializableDebtToken.sol",
    "47": "node_modules/@aave/protocol-v2/contracts/interfaces/ILendingPool.sol",
    "48": "node_modules/@aave/protocol-v2/contracts/interfaces/ILendingPoolAddressesProvider.sol",
    "49": "node_modules/@aave/protocol-v2/contracts/interfaces/IScaledBalanceToken.sol",
    "50": "node_modules/@aave/protocol-v2/contracts/interfaces/IStableDebtToken.sol",
    "51": "node_modules/@aave/protocol-v2/contracts/interfaces/IVariableDebtToken.sol",
    "52": "node_modules/@aave/protocol-v2/contracts/misc/AaveProtocolDataProvider.sol",
    "53": "node_modules/@aave/protocol-v2/contracts/protocol/libraries/configuration/ReserveConfiguration.sol",
    "54": "node_modules/@aave/protocol-v2/contracts/protocol/libraries/configuration/UserConfiguration.sol",
    "55": "node_modules/@aave/protocol-v2/contracts/protocol/libraries/helpers/Errors.sol"
  },
  "ast": {
    "absolutePath": "node_modules/@aave/protocol-v2/contracts/misc/AaveProtocolDataProvider.sol",
    "exportedSymbols": {
      "AaveProtocolDataProvider": [
        16003
      ],
      "DataTypes": [
        22839
      ],
      "IERC20Detailed": [
        22861
      ],
      "ILendingPool": [
        15292
      ],
      "ILendingPoolAddressesProvider": [
        15443
      ],
      "IStableDebtToken": [
        22990
      ],
      "IVariableDebtToken": [
        23055
      ],
      "ReserveConfiguration": [
        23799
      ],
      "UserConfiguration": [
        24049
      ]
    },
    "id": 16004,
    "license": "agpl-3.0",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 15445,
        "literals": [
          "solidity",
          "^",
          "0.8",
          ".0"
        ],
        "nodeType": "PragmaDirective",
        "src": "37:23:52"
      },
      {
        "id": 15446,
        "literals": [
          "experimental",
          "ABIEncoderV2"
        ],
        "nodeType": "PragmaDirective",
        "src": "61:33:52"
      },
      {
        "absolutePath": "node_modules/@aave/protocol-v2/contracts/dependencies/openzeppelin/contracts/IERC20Detailed.sol",
        "file": "../dependencies/openzeppelin/contracts/IERC20Detailed.sol",
        "id": 15448,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 16004,
        "sourceUnit": 22862,
        "src": "96:89:52",
        "symbolAliases": [
          {
            "foreign": {
              "id": 15447,
              "name": "IERC20Detailed",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "104:14:52",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "absolutePath": "node_modules/@aave/protocol-v2/contracts/interfaces/ILendingPoolAddressesProvider.sol",
        "file": "../interfaces/ILendingPoolAddressesProvider.sol",
        "id": 15450,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 16004,
        "sourceUnit": 15444,
        "src": "186:94:52",
        "symbolAliases": [
          {
            "foreign": {
              "id": 15449,
              "name": "ILendingPoolAddressesProvider",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "194:29:52",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "absolutePath": "node_modules/@aave/protocol-v2/contracts/interfaces/ILendingPool.sol",
        "file": "../interfaces/ILendingPool.sol",
        "id": 15452,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 16004,
        "sourceUnit": 15293,
        "src": "281:60:52",
        "symbolAliases": [
          {
            "foreign": {
              "id": 15451,
              "name": "ILendingPool",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "289:12:52",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "absolutePath": "node_modules/@aave/protocol-v2/contracts/interfaces/IStableDebtToken.sol",
        "file": "../interfaces/IStableDebtToken.sol",
        "id": 15454,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 16004,
        "sourceUnit": 22991,
        "src": "342:68:52",
        "symbolAliases": [
          {
            "foreign": {
              "id": 15453,
              "name": "IStableDebtToken",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "350:16:52",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "absolutePath": "node_modules/@aave/protocol-v2/contracts/interfaces/IVariableDebtToken.sol",
        "file": "../interfaces/IVariableDebtToken.sol",
        "id": 15456,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 16004,
        "sourceUnit": 23056,
        "src": "411:72:52",
        "symbolAliases": [
          {
            "foreign": {
              "id": 15455,
              "name": "IVariableDebtToken",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "419:18:52",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "absolutePath": "node_modules/@aave/protocol-v2/contracts/protocol/libraries/configuration/ReserveConfiguration.sol",
        "file": "../protocol/libraries/configuration/ReserveConfiguration.sol",
        "id": 15458,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 16004,
        "sourceUnit": 23800,
        "src": "484:98:52",
        "symbolAliases": [
          {
            "foreign": {
              "id": 15457,
              "name": "ReserveConfiguration",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "492:20:52",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "absolutePath": "node_modules/@aave/protocol-v2/contracts/protocol/libraries/configuration/UserConfiguration.sol",
        "file": "../protocol/libraries/configuration/UserConfiguration.sol",
        "id": 15460,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 16004,
        "sourceUnit": 24050,
        "src": "583:92:52",
        "symbolAliases": [
          {
            "foreign": {
              "id": 15459,
              "name": "UserConfiguration",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "591:17:52",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "absolutePath": "node_modules/@aave/protocol-v2/contracts/protocol/libraries/types/DataTypes.sol",
        "file": "../protocol/libraries/types/DataTypes.sol",
        "id": 15462,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 16004,
        "sourceUnit": 22840,
        "src": "676:68:52",
        "symbolAliases": [
          {
            "foreign": {
              "id": 15461,
              "name": "DataTypes",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "684:9:52",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "abstract": false,
        "baseContracts": [],
        "contractDependencies": [],
        "contractKind": "contract",
        "fullyImplemented": true,
        "id": 16003,
        "linearizedBaseContracts": [
          16003
        ],
        "name": "AaveProtocolDataProvider",
        "nameLocation": "755:24:52",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "id": 15466,
            "libraryName": {
              "id": 15463,
              "name": "ReserveConfiguration",
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 23799,
              "src": "790:20:52"
            },
            "nodeType": "UsingForDirective",
            "src": "784:65:52",
            "typeName": {
              "id": 15465,
              "nodeType": "UserDefinedTypeName",
              "pathNode": {
                "id": 15464,
                "name": "DataTypes.ReserveConfigurationMap",
                "nodeType": "IdentifierPath",
                "referencedDeclaration": 22831,
                "src": "815:33:52"
              },
              "referencedDeclaration": 22831,
              "src": "815:33:52",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_ReserveConfigurationMap_$22831_storage_ptr",
                "typeString": "struct DataTypes.ReserveConfigurationMap"
              }
            }
          },
          {
            "id": 15470,
            "libraryName": {
              "id": 15467,
              "name": "UserConfiguration",
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 24049,
              "src": "858:17:52"
            },
            "nodeType": "UsingForDirective",
            "src": "852:59:52",
            "typeName": {
              "id": 15469,
              "nodeType": "UserDefinedTypeName",
              "pathNode": {
                "id": 15468,
                "name": "DataTypes.UserConfigurationMap",
                "nodeType": "IdentifierPath",
                "referencedDeclaration": 22834,
                "src": "880:30:52"
              },
              "referencedDeclaration": 22834,
              "src": "880:30:52",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_UserConfigurationMap_$22834_storage_ptr",
                "typeString": "struct DataTypes.UserConfigurationMap"
              }
            }
          },
          {
            "constant": true,
            "id": 15473,
            "mutability": "constant",
            "name": "MKR",
            "nameLocation": "932:3:52",
            "nodeType": "VariableDeclaration",
            "scope": 16003,
            "src": "915:65:52",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_address",
              "typeString": "address"
            },
            "typeName": {
              "id": 15471,
              "name": "address",
              "nodeType": "ElementaryTypeName",
              "src": "915:7:52",
              "stateMutability": "nonpayable",
              "typeDescriptions": {
                "typeIdentifier": "t_address",
                "typeString": "address"
              }
            },
            "value": {
              "hexValue": "307839663846373261413933303463384235393364353535463132654636353839634333413537394132",
              "id": 15472,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "938:42:52",
              "typeDescriptions": {
                "typeIdentifier": "t_address",
                "typeString": "address"
              },
              "value": "0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2"
            },
            "visibility": "internal"
          },
          {
            "constant": true,
            "id": 15476,
            "mutability": "constant",
            "name": "ETH",
            "nameLocation": "1001:3:52",
            "nodeType": "VariableDeclaration",
            "scope": 16003,
            "src": "984:65:52",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_address",
              "typeString": "address"
            },
            "typeName": {
              "id": 15474,
              "name": "address",
              "nodeType": "ElementaryTypeName",
              "src": "984:7:52",
              "stateMutability": "nonpayable",
              "typeDescriptions": {
                "typeIdentifier": "t_address",
                "typeString": "address"
              }
            },
            "value": {
              "hexValue": "307845656565654565656545654565654565456545656545454565656565456565656565656545456545",
              "id": 15475,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "1007:42:52",
              "typeDescriptions": {
                "typeIdentifier": "t_address",
                "typeString": "address"
              },
              "value": "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE"
            },
            "visibility": "internal"
          },
          {
            "canonicalName": "AaveProtocolDataProvider.TokenData",
            "id": 15481,
            "members": [
              {
                "constant": false,
                "id": 15478,
                "mutability": "mutable",
                "name": "symbol",
                "nameLocation": "1084:6:52",
                "nodeType": "VariableDeclaration",
                "scope": 15481,
                "src": "1077:13:52",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_string_storage_ptr",
                  "typeString": "string"
                },
                "typeName": {
                  "id": 15477,
                  "name": "string",
                  "nodeType": "ElementaryTypeName",
                  "src": "1077:6:52",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_storage_ptr",
                    "typeString": "string"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 15480,
                "mutability": "mutable",
                "name": "tokenAddress",
                "nameLocation": "1104:12:52",
                "nodeType": "VariableDeclaration",
                "scope": 15481,
                "src": "1096:20:52",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_address",
                  "typeString": "address"
                },
                "typeName": {
                  "id": 15479,
                  "name": "address",
                  "nodeType": "ElementaryTypeName",
                  "src": "1096:7:52",
                  "stateMutability": "nonpayable",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  }
                },
                "visibility": "internal"
              }
            ],
            "name": "TokenData",
            "nameLocation": "1061:9:52",
            "nodeType": "StructDefinition",
            "scope": 16003,
            "src": "1054:67:52",
            "visibility": "public"
          },
          {
            "constant": false,
            "functionSelector": "0542975c",
            "id": 15484,
            "mutability": "immutable",
            "name": "ADDRESSES_PROVIDER",
            "nameLocation": "1172:18:52",
            "nodeType": "VariableDeclaration",
            "scope": 16003,
            "src": "1125:65:52",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_contract$_ILendingPoolAddressesProvider_$15443",
              "typeString": "contract ILendingPoolAddressesProvider"
            },
            "typeName": {
              "id": 15483,
              "nodeType": "UserDefinedTypeName",
              "pathNode": {
                "id": 15482,
                "name": "ILendingPoolAddressesProvider",
                "nodeType": "IdentifierPath",
                "referencedDeclaration": 15443,
                "src": "1125:29:52"
              },
              "referencedDeclaration": 15443,
              "src": "1125:29:52",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_ILendingPoolAddressesProvider_$15443",
                "typeString": "contract ILendingPoolAddressesProvider"
              }
            },
            "visibility": "public"
          },
          {
            "body": {
              "id": 15494,
              "nodeType": "Block",
              "src": "1263:49:52",
              "statements": [
                {
                  "expression": {
                    "id": 15492,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 15490,
                      "name": "ADDRESSES_PROVIDER",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15484,
                      "src": "1269:18:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_contract$_ILendingPoolAddressesProvider_$15443",
                        "typeString": "contract ILendingPoolAddressesProvider"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "id": 15491,
                      "name": "addressesProvider",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15487,
                      "src": "1290:17:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_contract$_ILendingPoolAddressesProvider_$15443",
                        "typeString": "contract ILendingPoolAddressesProvider"
                      }
                    },
                    "src": "1269:38:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_ILendingPoolAddressesProvider_$15443",
                      "typeString": "contract ILendingPoolAddressesProvider"
                    }
                  },
                  "id": 15493,
                  "nodeType": "ExpressionStatement",
                  "src": "1269:38:52"
                }
              ]
            },
            "id": 15495,
            "implemented": true,
            "kind": "constructor",
            "modifiers": [],
            "name": "",
            "nameLocation": "-1:-1:-1",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15488,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15487,
                  "mutability": "mutable",
                  "name": "addressesProvider",
                  "nameLocation": "1237:17:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15495,
                  "src": "1207:47:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_ILendingPoolAddressesProvider_$15443",
                    "typeString": "contract ILendingPoolAddressesProvider"
                  },
                  "typeName": {
                    "id": 15486,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 15485,
                      "name": "ILendingPoolAddressesProvider",
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 15443,
                      "src": "1207:29:52"
                    },
                    "referencedDeclaration": 15443,
                    "src": "1207:29:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_ILendingPoolAddressesProvider_$15443",
                      "typeString": "contract ILendingPoolAddressesProvider"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1206:49:52"
            },
            "returnParameters": {
              "id": 15489,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1263:0:52"
            },
            "scope": 16003,
            "src": "1195:117:52",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 15603,
              "nodeType": "Block",
              "src": "1391:713:52",
              "statements": [
                {
                  "assignments": [
                    15504
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 15504,
                      "mutability": "mutable",
                      "name": "pool",
                      "nameLocation": "1410:4:52",
                      "nodeType": "VariableDeclaration",
                      "scope": 15603,
                      "src": "1397:17:52",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_contract$_ILendingPool_$15292",
                        "typeString": "contract ILendingPool"
                      },
                      "typeName": {
                        "id": 15503,
                        "nodeType": "UserDefinedTypeName",
                        "pathNode": {
                          "id": 15502,
                          "name": "ILendingPool",
                          "nodeType": "IdentifierPath",
                          "referencedDeclaration": 15292,
                          "src": "1397:12:52"
                        },
                        "referencedDeclaration": 15292,
                        "src": "1397:12:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_ILendingPool_$15292",
                          "typeString": "contract ILendingPool"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 15510,
                  "initialValue": {
                    "arguments": [
                      {
                        "arguments": [],
                        "expression": {
                          "argumentTypes": [],
                          "expression": {
                            "id": 15506,
                            "name": "ADDRESSES_PROVIDER",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 15484,
                            "src": "1430:18:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_ILendingPoolAddressesProvider_$15443",
                              "typeString": "contract ILendingPoolAddressesProvider"
                            }
                          },
                          "id": 15507,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "getLendingPool",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 15377,
                          "src": "1430:33:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_external_view$__$returns$_t_address_$",
                            "typeString": "function () view external returns (address)"
                          }
                        },
                        "id": 15508,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "1430:35:52",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 15505,
                      "name": "ILendingPool",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15292,
                      "src": "1417:12:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_type$_t_contract$_ILendingPool_$15292_$",
                        "typeString": "type(contract ILendingPool)"
                      }
                    },
                    "id": 15509,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "typeConversion",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1417:49:52",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_ILendingPool_$15292",
                      "typeString": "contract ILendingPool"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "1397:69:52"
                },
                {
                  "assignments": [
                    15515
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 15515,
                      "mutability": "mutable",
                      "name": "reserves",
                      "nameLocation": "1489:8:52",
                      "nodeType": "VariableDeclaration",
                      "scope": 15603,
                      "src": "1472:25:52",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                        "typeString": "address[]"
                      },
                      "typeName": {
                        "baseType": {
                          "id": 15513,
                          "name": "address",
                          "nodeType": "ElementaryTypeName",
                          "src": "1472:7:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "id": 15514,
                        "nodeType": "ArrayTypeName",
                        "src": "1472:9:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                          "typeString": "address[]"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 15519,
                  "initialValue": {
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "id": 15516,
                        "name": "pool",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15504,
                        "src": "1500:4:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_ILendingPool_$15292",
                          "typeString": "contract ILendingPool"
                        }
                      },
                      "id": 15517,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getReservesList",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 15275,
                      "src": "1500:20:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_address_$dyn_memory_ptr_$",
                        "typeString": "function () view external returns (address[] memory)"
                      }
                    },
                    "id": 15518,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1500:22:52",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                      "typeString": "address[] memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "1472:50:52"
                },
                {
                  "assignments": [
                    15524
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 15524,
                      "mutability": "mutable",
                      "name": "reservesTokens",
                      "nameLocation": "1547:14:52",
                      "nodeType": "VariableDeclaration",
                      "scope": 15603,
                      "src": "1528:33:52",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_memory_ptr_$dyn_memory_ptr",
                        "typeString": "struct AaveProtocolDataProvider.TokenData[]"
                      },
                      "typeName": {
                        "baseType": {
                          "id": 15522,
                          "nodeType": "UserDefinedTypeName",
                          "pathNode": {
                            "id": 15521,
                            "name": "TokenData",
                            "nodeType": "IdentifierPath",
                            "referencedDeclaration": 15481,
                            "src": "1528:9:52"
                          },
                          "referencedDeclaration": 15481,
                          "src": "1528:9:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_TokenData_$15481_storage_ptr",
                            "typeString": "struct AaveProtocolDataProvider.TokenData"
                          }
                        },
                        "id": 15523,
                        "nodeType": "ArrayTypeName",
                        "src": "1528:11:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_storage_$dyn_storage_ptr",
                          "typeString": "struct AaveProtocolDataProvider.TokenData[]"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 15532,
                  "initialValue": {
                    "arguments": [
                      {
                        "expression": {
                          "id": 15529,
                          "name": "reserves",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15515,
                          "src": "1580:8:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                            "typeString": "address[] memory"
                          }
                        },
                        "id": 15530,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "length",
                        "nodeType": "MemberAccess",
                        "src": "1580:15:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 15528,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "nodeType": "NewExpression",
                      "src": "1564:15:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_TokenData_$15481_memory_ptr_$dyn_memory_ptr_$",
                        "typeString": "function (uint256) pure returns (struct AaveProtocolDataProvider.TokenData memory[] memory)"
                      },
                      "typeName": {
                        "baseType": {
                          "id": 15526,
                          "nodeType": "UserDefinedTypeName",
                          "pathNode": {
                            "id": 15525,
                            "name": "TokenData",
                            "nodeType": "IdentifierPath",
                            "referencedDeclaration": 15481,
                            "src": "1568:9:52"
                          },
                          "referencedDeclaration": 15481,
                          "src": "1568:9:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_TokenData_$15481_storage_ptr",
                            "typeString": "struct AaveProtocolDataProvider.TokenData"
                          }
                        },
                        "id": 15527,
                        "nodeType": "ArrayTypeName",
                        "src": "1568:11:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_storage_$dyn_storage_ptr",
                          "typeString": "struct AaveProtocolDataProvider.TokenData[]"
                        }
                      }
                    },
                    "id": 15531,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1564:32:52",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_memory_ptr_$dyn_memory_ptr",
                      "typeString": "struct AaveProtocolDataProvider.TokenData memory[] memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "1528:68:52"
                },
                {
                  "body": {
                    "id": 15599,
                    "nodeType": "Block",
                    "src": "1648:425:52",
                    "statements": [
                      {
                        "condition": {
                          "commonType": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          },
                          "id": 15548,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "baseExpression": {
                              "id": 15544,
                              "name": "reserves",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15515,
                              "src": "1660:8:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                "typeString": "address[] memory"
                              }
                            },
                            "id": 15546,
                            "indexExpression": {
                              "id": 15545,
                              "name": "i",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15534,
                              "src": "1669:1:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "1660:11:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "id": 15547,
                            "name": "MKR",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 15473,
                            "src": "1675:3:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          },
                          "src": "1660:18:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 15562,
                        "nodeType": "IfStatement",
                        "src": "1656:134:52",
                        "trueBody": {
                          "id": 15561,
                          "nodeType": "Block",
                          "src": "1680:110:52",
                          "statements": [
                            {
                              "expression": {
                                "id": 15558,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "baseExpression": {
                                    "id": 15549,
                                    "name": "reservesTokens",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 15524,
                                    "src": "1690:14:52",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_memory_ptr_$dyn_memory_ptr",
                                      "typeString": "struct AaveProtocolDataProvider.TokenData memory[] memory"
                                    }
                                  },
                                  "id": 15551,
                                  "indexExpression": {
                                    "id": 15550,
                                    "name": "i",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 15534,
                                    "src": "1705:1:52",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "nodeType": "IndexAccess",
                                  "src": "1690:17:52",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_TokenData_$15481_memory_ptr",
                                    "typeString": "struct AaveProtocolDataProvider.TokenData memory"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "arguments": [
                                    {
                                      "hexValue": "4d4b52",
                                      "id": 15553,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "string",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "1729:5:52",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_stringliteral_ec76ec3a7e5f010a9229e69fa1945af6f0c6cc5b0a625bf03bd6381222192020",
                                        "typeString": "literal_string \"MKR\""
                                      },
                                      "value": "MKR"
                                    },
                                    {
                                      "baseExpression": {
                                        "id": 15554,
                                        "name": "reserves",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 15515,
                                        "src": "1750:8:52",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                          "typeString": "address[] memory"
                                        }
                                      },
                                      "id": 15556,
                                      "indexExpression": {
                                        "id": 15555,
                                        "name": "i",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 15534,
                                        "src": "1759:1:52",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "IndexAccess",
                                      "src": "1750:11:52",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_address",
                                        "typeString": "address"
                                      }
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_stringliteral_ec76ec3a7e5f010a9229e69fa1945af6f0c6cc5b0a625bf03bd6381222192020",
                                        "typeString": "literal_string \"MKR\""
                                      },
                                      {
                                        "typeIdentifier": "t_address",
                                        "typeString": "address"
                                      }
                                    ],
                                    "id": 15552,
                                    "name": "TokenData",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 15481,
                                    "src": "1710:9:52",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_type$_t_struct$_TokenData_$15481_storage_ptr_$",
                                      "typeString": "type(struct AaveProtocolDataProvider.TokenData storage pointer)"
                                    }
                                  },
                                  "id": 15557,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "structConstructorCall",
                                  "lValueRequested": false,
                                  "names": [
                                    "symbol",
                                    "tokenAddress"
                                  ],
                                  "nodeType": "FunctionCall",
                                  "src": "1710:53:52",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_TokenData_$15481_memory_ptr",
                                    "typeString": "struct AaveProtocolDataProvider.TokenData memory"
                                  }
                                },
                                "src": "1690:73:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_TokenData_$15481_memory_ptr",
                                  "typeString": "struct AaveProtocolDataProvider.TokenData memory"
                                }
                              },
                              "id": 15559,
                              "nodeType": "ExpressionStatement",
                              "src": "1690:73:52"
                            },
                            {
                              "id": 15560,
                              "nodeType": "Continue",
                              "src": "1773:8:52"
                            }
                          ]
                        }
                      },
                      {
                        "condition": {
                          "commonType": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          },
                          "id": 15567,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "baseExpression": {
                              "id": 15563,
                              "name": "reserves",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15515,
                              "src": "1801:8:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                "typeString": "address[] memory"
                              }
                            },
                            "id": 15565,
                            "indexExpression": {
                              "id": 15564,
                              "name": "i",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15534,
                              "src": "1810:1:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "1801:11:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "id": 15566,
                            "name": "ETH",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 15476,
                            "src": "1816:3:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          },
                          "src": "1801:18:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 15581,
                        "nodeType": "IfStatement",
                        "src": "1797:134:52",
                        "trueBody": {
                          "id": 15580,
                          "nodeType": "Block",
                          "src": "1821:110:52",
                          "statements": [
                            {
                              "expression": {
                                "id": 15577,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "baseExpression": {
                                    "id": 15568,
                                    "name": "reservesTokens",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 15524,
                                    "src": "1831:14:52",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_memory_ptr_$dyn_memory_ptr",
                                      "typeString": "struct AaveProtocolDataProvider.TokenData memory[] memory"
                                    }
                                  },
                                  "id": 15570,
                                  "indexExpression": {
                                    "id": 15569,
                                    "name": "i",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 15534,
                                    "src": "1846:1:52",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "nodeType": "IndexAccess",
                                  "src": "1831:17:52",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_TokenData_$15481_memory_ptr",
                                    "typeString": "struct AaveProtocolDataProvider.TokenData memory"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "arguments": [
                                    {
                                      "hexValue": "455448",
                                      "id": 15572,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "string",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "1870:5:52",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_stringliteral_aaaebeba3810b1e6b70781f14b2d72c1cb89c0b2b320c43bb67ff79f562f5ff4",
                                        "typeString": "literal_string \"ETH\""
                                      },
                                      "value": "ETH"
                                    },
                                    {
                                      "baseExpression": {
                                        "id": 15573,
                                        "name": "reserves",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 15515,
                                        "src": "1891:8:52",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                          "typeString": "address[] memory"
                                        }
                                      },
                                      "id": 15575,
                                      "indexExpression": {
                                        "id": 15574,
                                        "name": "i",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 15534,
                                        "src": "1900:1:52",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "IndexAccess",
                                      "src": "1891:11:52",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_address",
                                        "typeString": "address"
                                      }
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_stringliteral_aaaebeba3810b1e6b70781f14b2d72c1cb89c0b2b320c43bb67ff79f562f5ff4",
                                        "typeString": "literal_string \"ETH\""
                                      },
                                      {
                                        "typeIdentifier": "t_address",
                                        "typeString": "address"
                                      }
                                    ],
                                    "id": 15571,
                                    "name": "TokenData",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 15481,
                                    "src": "1851:9:52",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_type$_t_struct$_TokenData_$15481_storage_ptr_$",
                                      "typeString": "type(struct AaveProtocolDataProvider.TokenData storage pointer)"
                                    }
                                  },
                                  "id": 15576,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "structConstructorCall",
                                  "lValueRequested": false,
                                  "names": [
                                    "symbol",
                                    "tokenAddress"
                                  ],
                                  "nodeType": "FunctionCall",
                                  "src": "1851:53:52",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_TokenData_$15481_memory_ptr",
                                    "typeString": "struct AaveProtocolDataProvider.TokenData memory"
                                  }
                                },
                                "src": "1831:73:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_TokenData_$15481_memory_ptr",
                                  "typeString": "struct AaveProtocolDataProvider.TokenData memory"
                                }
                              },
                              "id": 15578,
                              "nodeType": "ExpressionStatement",
                              "src": "1831:73:52"
                            },
                            {
                              "id": 15579,
                              "nodeType": "Continue",
                              "src": "1914:8:52"
                            }
                          ]
                        }
                      },
                      {
                        "expression": {
                          "id": 15597,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "id": 15582,
                              "name": "reservesTokens",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15524,
                              "src": "1938:14:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_memory_ptr_$dyn_memory_ptr",
                                "typeString": "struct AaveProtocolDataProvider.TokenData memory[] memory"
                              }
                            },
                            "id": 15584,
                            "indexExpression": {
                              "id": 15583,
                              "name": "i",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15534,
                              "src": "1953:1:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "1938:17:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_TokenData_$15481_memory_ptr",
                              "typeString": "struct AaveProtocolDataProvider.TokenData memory"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "expression": {
                                    "arguments": [
                                      {
                                        "baseExpression": {
                                          "id": 15587,
                                          "name": "reserves",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 15515,
                                          "src": "2001:8:52",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                            "typeString": "address[] memory"
                                          }
                                        },
                                        "id": 15589,
                                        "indexExpression": {
                                          "id": 15588,
                                          "name": "i",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 15534,
                                          "src": "2010:1:52",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "2001:11:52",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_address",
                                          "typeString": "address"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_address",
                                          "typeString": "address"
                                        }
                                      ],
                                      "id": 15586,
                                      "name": "IERC20Detailed",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 22861,
                                      "src": "1986:14:52",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_contract$_IERC20Detailed_$22861_$",
                                        "typeString": "type(contract IERC20Detailed)"
                                      }
                                    },
                                    "id": 15590,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "1986:27:52",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_contract$_IERC20Detailed_$22861",
                                      "typeString": "contract IERC20Detailed"
                                    }
                                  },
                                  "id": 15591,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "symbol",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 22855,
                                  "src": "1986:34:52",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_external_view$__$returns$_t_string_memory_ptr_$",
                                    "typeString": "function () view external returns (string memory)"
                                  }
                                },
                                "id": 15592,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "1986:36:52",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                }
                              },
                              {
                                "baseExpression": {
                                  "id": 15593,
                                  "name": "reserves",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 15515,
                                  "src": "2046:8:52",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                    "typeString": "address[] memory"
                                  }
                                },
                                "id": 15595,
                                "indexExpression": {
                                  "id": 15594,
                                  "name": "i",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 15534,
                                  "src": "2055:1:52",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "2046:11:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                },
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "id": 15585,
                              "name": "TokenData",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15481,
                              "src": "1958:9:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_struct$_TokenData_$15481_storage_ptr_$",
                                "typeString": "type(struct AaveProtocolDataProvider.TokenData storage pointer)"
                              }
                            },
                            "id": 15596,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "structConstructorCall",
                            "lValueRequested": false,
                            "names": [
                              "symbol",
                              "tokenAddress"
                            ],
                            "nodeType": "FunctionCall",
                            "src": "1958:108:52",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_TokenData_$15481_memory_ptr",
                              "typeString": "struct AaveProtocolDataProvider.TokenData memory"
                            }
                          },
                          "src": "1938:128:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_TokenData_$15481_memory_ptr",
                            "typeString": "struct AaveProtocolDataProvider.TokenData memory"
                          }
                        },
                        "id": 15598,
                        "nodeType": "ExpressionStatement",
                        "src": "1938:128:52"
                      }
                    ]
                  },
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 15540,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "id": 15537,
                      "name": "i",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15534,
                      "src": "1622:1:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "<",
                    "rightExpression": {
                      "expression": {
                        "id": 15538,
                        "name": "reserves",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15515,
                        "src": "1626:8:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                          "typeString": "address[] memory"
                        }
                      },
                      "id": 15539,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "src": "1626:15:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "1622:19:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 15600,
                  "initializationExpression": {
                    "assignments": [
                      15534
                    ],
                    "declarations": [
                      {
                        "constant": false,
                        "id": 15534,
                        "mutability": "mutable",
                        "name": "i",
                        "nameLocation": "1615:1:52",
                        "nodeType": "VariableDeclaration",
                        "scope": 15600,
                        "src": "1607:9:52",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "typeName": {
                          "id": 15533,
                          "name": "uint256",
                          "nodeType": "ElementaryTypeName",
                          "src": "1607:7:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "visibility": "internal"
                      }
                    ],
                    "id": 15536,
                    "initialValue": {
                      "hexValue": "30",
                      "id": 15535,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "1619:1:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "nodeType": "VariableDeclarationStatement",
                    "src": "1607:13:52"
                  },
                  "loopExpression": {
                    "expression": {
                      "id": 15542,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "UnaryOperation",
                      "operator": "++",
                      "prefix": false,
                      "src": "1643:3:52",
                      "subExpression": {
                        "id": 15541,
                        "name": "i",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15534,
                        "src": "1643:1:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 15543,
                    "nodeType": "ExpressionStatement",
                    "src": "1643:3:52"
                  },
                  "nodeType": "ForStatement",
                  "src": "1602:471:52"
                },
                {
                  "expression": {
                    "id": 15601,
                    "name": "reservesTokens",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 15524,
                    "src": "2085:14:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_memory_ptr_$dyn_memory_ptr",
                      "typeString": "struct AaveProtocolDataProvider.TokenData memory[] memory"
                    }
                  },
                  "functionReturnParameters": 15501,
                  "id": 15602,
                  "nodeType": "Return",
                  "src": "2078:21:52"
                }
              ]
            },
            "functionSelector": "b316ff89",
            "id": 15604,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "getAllReservesTokens",
            "nameLocation": "1325:20:52",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15496,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1345:2:52"
            },
            "returnParameters": {
              "id": 15501,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15500,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 15604,
                  "src": "1371:18:52",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_memory_ptr_$dyn_memory_ptr",
                    "typeString": "struct AaveProtocolDataProvider.TokenData[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 15498,
                      "nodeType": "UserDefinedTypeName",
                      "pathNode": {
                        "id": 15497,
                        "name": "TokenData",
                        "nodeType": "IdentifierPath",
                        "referencedDeclaration": 15481,
                        "src": "1371:9:52"
                      },
                      "referencedDeclaration": 15481,
                      "src": "1371:9:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_TokenData_$15481_storage_ptr",
                        "typeString": "struct AaveProtocolDataProvider.TokenData"
                      }
                    },
                    "id": 15499,
                    "nodeType": "ArrayTypeName",
                    "src": "1371:11:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_storage_$dyn_storage_ptr",
                      "typeString": "struct AaveProtocolDataProvider.TokenData[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1370:20:52"
            },
            "scope": 16003,
            "src": "1316:788:52",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": {
              "id": 15684,
              "nodeType": "Block",
              "src": "2176:521:52",
              "statements": [
                {
                  "assignments": [
                    15613
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 15613,
                      "mutability": "mutable",
                      "name": "pool",
                      "nameLocation": "2195:4:52",
                      "nodeType": "VariableDeclaration",
                      "scope": 15684,
                      "src": "2182:17:52",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_contract$_ILendingPool_$15292",
                        "typeString": "contract ILendingPool"
                      },
                      "typeName": {
                        "id": 15612,
                        "nodeType": "UserDefinedTypeName",
                        "pathNode": {
                          "id": 15611,
                          "name": "ILendingPool",
                          "nodeType": "IdentifierPath",
                          "referencedDeclaration": 15292,
                          "src": "2182:12:52"
                        },
                        "referencedDeclaration": 15292,
                        "src": "2182:12:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_ILendingPool_$15292",
                          "typeString": "contract ILendingPool"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 15619,
                  "initialValue": {
                    "arguments": [
                      {
                        "arguments": [],
                        "expression": {
                          "argumentTypes": [],
                          "expression": {
                            "id": 15615,
                            "name": "ADDRESSES_PROVIDER",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 15484,
                            "src": "2215:18:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_ILendingPoolAddressesProvider_$15443",
                              "typeString": "contract ILendingPoolAddressesProvider"
                            }
                          },
                          "id": 15616,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "getLendingPool",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 15377,
                          "src": "2215:33:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_external_view$__$returns$_t_address_$",
                            "typeString": "function () view external returns (address)"
                          }
                        },
                        "id": 15617,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "2215:35:52",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 15614,
                      "name": "ILendingPool",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15292,
                      "src": "2202:12:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_type$_t_contract$_ILendingPool_$15292_$",
                        "typeString": "type(contract ILendingPool)"
                      }
                    },
                    "id": 15618,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "typeConversion",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2202:49:52",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_ILendingPool_$15292",
                      "typeString": "contract ILendingPool"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "2182:69:52"
                },
                {
                  "assignments": [
                    15624
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 15624,
                      "mutability": "mutable",
                      "name": "reserves",
                      "nameLocation": "2274:8:52",
                      "nodeType": "VariableDeclaration",
                      "scope": 15684,
                      "src": "2257:25:52",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                        "typeString": "address[]"
                      },
                      "typeName": {
                        "baseType": {
                          "id": 15622,
                          "name": "address",
                          "nodeType": "ElementaryTypeName",
                          "src": "2257:7:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "id": 15623,
                        "nodeType": "ArrayTypeName",
                        "src": "2257:9:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                          "typeString": "address[]"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 15628,
                  "initialValue": {
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "id": 15625,
                        "name": "pool",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15613,
                        "src": "2285:4:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_ILendingPool_$15292",
                          "typeString": "contract ILendingPool"
                        }
                      },
                      "id": 15626,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getReservesList",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 15275,
                      "src": "2285:20:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_address_$dyn_memory_ptr_$",
                        "typeString": "function () view external returns (address[] memory)"
                      }
                    },
                    "id": 15627,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2285:22:52",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                      "typeString": "address[] memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "2257:50:52"
                },
                {
                  "assignments": [
                    15633
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 15633,
                      "mutability": "mutable",
                      "name": "aTokens",
                      "nameLocation": "2332:7:52",
                      "nodeType": "VariableDeclaration",
                      "scope": 15684,
                      "src": "2313:26:52",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_memory_ptr_$dyn_memory_ptr",
                        "typeString": "struct AaveProtocolDataProvider.TokenData[]"
                      },
                      "typeName": {
                        "baseType": {
                          "id": 15631,
                          "nodeType": "UserDefinedTypeName",
                          "pathNode": {
                            "id": 15630,
                            "name": "TokenData",
                            "nodeType": "IdentifierPath",
                            "referencedDeclaration": 15481,
                            "src": "2313:9:52"
                          },
                          "referencedDeclaration": 15481,
                          "src": "2313:9:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_TokenData_$15481_storage_ptr",
                            "typeString": "struct AaveProtocolDataProvider.TokenData"
                          }
                        },
                        "id": 15632,
                        "nodeType": "ArrayTypeName",
                        "src": "2313:11:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_storage_$dyn_storage_ptr",
                          "typeString": "struct AaveProtocolDataProvider.TokenData[]"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 15641,
                  "initialValue": {
                    "arguments": [
                      {
                        "expression": {
                          "id": 15638,
                          "name": "reserves",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15624,
                          "src": "2358:8:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                            "typeString": "address[] memory"
                          }
                        },
                        "id": 15639,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "length",
                        "nodeType": "MemberAccess",
                        "src": "2358:15:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 15637,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "nodeType": "NewExpression",
                      "src": "2342:15:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_TokenData_$15481_memory_ptr_$dyn_memory_ptr_$",
                        "typeString": "function (uint256) pure returns (struct AaveProtocolDataProvider.TokenData memory[] memory)"
                      },
                      "typeName": {
                        "baseType": {
                          "id": 15635,
                          "nodeType": "UserDefinedTypeName",
                          "pathNode": {
                            "id": 15634,
                            "name": "TokenData",
                            "nodeType": "IdentifierPath",
                            "referencedDeclaration": 15481,
                            "src": "2346:9:52"
                          },
                          "referencedDeclaration": 15481,
                          "src": "2346:9:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_TokenData_$15481_storage_ptr",
                            "typeString": "struct AaveProtocolDataProvider.TokenData"
                          }
                        },
                        "id": 15636,
                        "nodeType": "ArrayTypeName",
                        "src": "2346:11:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_storage_$dyn_storage_ptr",
                          "typeString": "struct AaveProtocolDataProvider.TokenData[]"
                        }
                      }
                    },
                    "id": 15640,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2342:32:52",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_memory_ptr_$dyn_memory_ptr",
                      "typeString": "struct AaveProtocolDataProvider.TokenData memory[] memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "2313:61:52"
                },
                {
                  "body": {
                    "id": 15680,
                    "nodeType": "Block",
                    "src": "2426:247:52",
                    "statements": [
                      {
                        "assignments": [
                          15657
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 15657,
                            "mutability": "mutable",
                            "name": "reserveData",
                            "nameLocation": "2463:11:52",
                            "nodeType": "VariableDeclaration",
                            "scope": 15680,
                            "src": "2434:40:52",
                            "stateVariable": false,
                            "storageLocation": "memory",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                              "typeString": "struct DataTypes.ReserveData"
                            },
                            "typeName": {
                              "id": 15656,
                              "nodeType": "UserDefinedTypeName",
                              "pathNode": {
                                "id": 15655,
                                "name": "DataTypes.ReserveData",
                                "nodeType": "IdentifierPath",
                                "referencedDeclaration": 22828,
                                "src": "2434:21:52"
                              },
                              "referencedDeclaration": 22828,
                              "src": "2434:21:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_ReserveData_$22828_storage_ptr",
                                "typeString": "struct DataTypes.ReserveData"
                              }
                            },
                            "visibility": "internal"
                          }
                        ],
                        "id": 15664,
                        "initialValue": {
                          "arguments": [
                            {
                              "baseExpression": {
                                "id": 15660,
                                "name": "reserves",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15624,
                                "src": "2497:8:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                  "typeString": "address[] memory"
                                }
                              },
                              "id": 15662,
                              "indexExpression": {
                                "id": 15661,
                                "name": "i",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15643,
                                "src": "2506:1:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "2497:11:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            ],
                            "expression": {
                              "id": 15658,
                              "name": "pool",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15613,
                              "src": "2477:4:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_ILendingPool_$15292",
                                "typeString": "contract ILendingPool"
                              }
                            },
                            "id": 15659,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "getReserveData",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 15254,
                            "src": "2477:19:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_struct$_ReserveData_$22828_memory_ptr_$",
                              "typeString": "function (address) view external returns (struct DataTypes.ReserveData memory)"
                            }
                          },
                          "id": 15663,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "2477:32:52",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                            "typeString": "struct DataTypes.ReserveData memory"
                          }
                        },
                        "nodeType": "VariableDeclarationStatement",
                        "src": "2434:75:52"
                      },
                      {
                        "expression": {
                          "id": 15678,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "id": 15665,
                              "name": "aTokens",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15633,
                              "src": "2517:7:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_memory_ptr_$dyn_memory_ptr",
                                "typeString": "struct AaveProtocolDataProvider.TokenData memory[] memory"
                              }
                            },
                            "id": 15667,
                            "indexExpression": {
                              "id": 15666,
                              "name": "i",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15643,
                              "src": "2525:1:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "2517:10:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_TokenData_$15481_memory_ptr",
                              "typeString": "struct AaveProtocolDataProvider.TokenData memory"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "expression": {
                                    "arguments": [
                                      {
                                        "expression": {
                                          "id": 15670,
                                          "name": "reserveData",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 15657,
                                          "src": "2573:11:52",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                                            "typeString": "struct DataTypes.ReserveData memory"
                                          }
                                        },
                                        "id": 15671,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "aTokenAddress",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 22819,
                                        "src": "2573:25:52",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_address",
                                          "typeString": "address"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_address",
                                          "typeString": "address"
                                        }
                                      ],
                                      "id": 15669,
                                      "name": "IERC20Detailed",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 22861,
                                      "src": "2558:14:52",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_contract$_IERC20Detailed_$22861_$",
                                        "typeString": "type(contract IERC20Detailed)"
                                      }
                                    },
                                    "id": 15672,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "2558:41:52",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_contract$_IERC20Detailed_$22861",
                                      "typeString": "contract IERC20Detailed"
                                    }
                                  },
                                  "id": 15673,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "symbol",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 22855,
                                  "src": "2558:48:52",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_external_view$__$returns$_t_string_memory_ptr_$",
                                    "typeString": "function () view external returns (string memory)"
                                  }
                                },
                                "id": 15674,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "2558:50:52",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                }
                              },
                              {
                                "expression": {
                                  "id": 15675,
                                  "name": "reserveData",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 15657,
                                  "src": "2632:11:52",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                                    "typeString": "struct DataTypes.ReserveData memory"
                                  }
                                },
                                "id": 15676,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "aTokenAddress",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 22819,
                                "src": "2632:25:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                },
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "id": 15668,
                              "name": "TokenData",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15481,
                              "src": "2530:9:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_struct$_TokenData_$15481_storage_ptr_$",
                                "typeString": "type(struct AaveProtocolDataProvider.TokenData storage pointer)"
                              }
                            },
                            "id": 15677,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "structConstructorCall",
                            "lValueRequested": false,
                            "names": [
                              "symbol",
                              "tokenAddress"
                            ],
                            "nodeType": "FunctionCall",
                            "src": "2530:136:52",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_TokenData_$15481_memory_ptr",
                              "typeString": "struct AaveProtocolDataProvider.TokenData memory"
                            }
                          },
                          "src": "2517:149:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_TokenData_$15481_memory_ptr",
                            "typeString": "struct AaveProtocolDataProvider.TokenData memory"
                          }
                        },
                        "id": 15679,
                        "nodeType": "ExpressionStatement",
                        "src": "2517:149:52"
                      }
                    ]
                  },
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 15649,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "id": 15646,
                      "name": "i",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15643,
                      "src": "2400:1:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "<",
                    "rightExpression": {
                      "expression": {
                        "id": 15647,
                        "name": "reserves",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15624,
                        "src": "2404:8:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                          "typeString": "address[] memory"
                        }
                      },
                      "id": 15648,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "src": "2404:15:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "2400:19:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 15681,
                  "initializationExpression": {
                    "assignments": [
                      15643
                    ],
                    "declarations": [
                      {
                        "constant": false,
                        "id": 15643,
                        "mutability": "mutable",
                        "name": "i",
                        "nameLocation": "2393:1:52",
                        "nodeType": "VariableDeclaration",
                        "scope": 15681,
                        "src": "2385:9:52",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "typeName": {
                          "id": 15642,
                          "name": "uint256",
                          "nodeType": "ElementaryTypeName",
                          "src": "2385:7:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "visibility": "internal"
                      }
                    ],
                    "id": 15645,
                    "initialValue": {
                      "hexValue": "30",
                      "id": 15644,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "2397:1:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "nodeType": "VariableDeclarationStatement",
                    "src": "2385:13:52"
                  },
                  "loopExpression": {
                    "expression": {
                      "id": 15651,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "UnaryOperation",
                      "operator": "++",
                      "prefix": false,
                      "src": "2421:3:52",
                      "subExpression": {
                        "id": 15650,
                        "name": "i",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15643,
                        "src": "2421:1:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 15652,
                    "nodeType": "ExpressionStatement",
                    "src": "2421:3:52"
                  },
                  "nodeType": "ForStatement",
                  "src": "2380:293:52"
                },
                {
                  "expression": {
                    "id": 15682,
                    "name": "aTokens",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 15633,
                    "src": "2685:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_memory_ptr_$dyn_memory_ptr",
                      "typeString": "struct AaveProtocolDataProvider.TokenData memory[] memory"
                    }
                  },
                  "functionReturnParameters": 15610,
                  "id": 15683,
                  "nodeType": "Return",
                  "src": "2678:14:52"
                }
              ]
            },
            "functionSelector": "f561ae41",
            "id": 15685,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "getAllATokens",
            "nameLocation": "2117:13:52",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15605,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2130:2:52"
            },
            "returnParameters": {
              "id": 15610,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15609,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 15685,
                  "src": "2156:18:52",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_memory_ptr_$dyn_memory_ptr",
                    "typeString": "struct AaveProtocolDataProvider.TokenData[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 15607,
                      "nodeType": "UserDefinedTypeName",
                      "pathNode": {
                        "id": 15606,
                        "name": "TokenData",
                        "nodeType": "IdentifierPath",
                        "referencedDeclaration": 15481,
                        "src": "2156:9:52"
                      },
                      "referencedDeclaration": 15481,
                      "src": "2156:9:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_TokenData_$15481_storage_ptr",
                        "typeString": "struct AaveProtocolDataProvider.TokenData"
                      }
                    },
                    "id": 15608,
                    "nodeType": "ArrayTypeName",
                    "src": "2156:11:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_TokenData_$15481_storage_$dyn_storage_ptr",
                      "typeString": "struct AaveProtocolDataProvider.TokenData[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2155:20:52"
            },
            "scope": 16003,
            "src": "2108:589:52",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": {
              "id": 15751,
              "nodeType": "Block",
              "src": "3080:433:52",
              "statements": [
                {
                  "assignments": [
                    15714
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 15714,
                      "mutability": "mutable",
                      "name": "configuration",
                      "nameLocation": "3127:13:52",
                      "nodeType": "VariableDeclaration",
                      "scope": 15751,
                      "src": "3086:54:52",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_ReserveConfigurationMap_$22831_memory_ptr",
                        "typeString": "struct DataTypes.ReserveConfigurationMap"
                      },
                      "typeName": {
                        "id": 15713,
                        "nodeType": "UserDefinedTypeName",
                        "pathNode": {
                          "id": 15712,
                          "name": "DataTypes.ReserveConfigurationMap",
                          "nodeType": "IdentifierPath",
                          "referencedDeclaration": 22831,
                          "src": "3086:33:52"
                        },
                        "referencedDeclaration": 22831,
                        "src": "3086:33:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ReserveConfigurationMap_$22831_storage_ptr",
                          "typeString": "struct DataTypes.ReserveConfigurationMap"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 15723,
                  "initialValue": {
                    "arguments": [
                      {
                        "id": 15721,
                        "name": "asset",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15687,
                        "src": "3216:5:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "expression": {
                        "arguments": [
                          {
                            "arguments": [],
                            "expression": {
                              "argumentTypes": [],
                              "expression": {
                                "id": 15716,
                                "name": "ADDRESSES_PROVIDER",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15484,
                                "src": "3162:18:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_ILendingPoolAddressesProvider_$15443",
                                  "typeString": "contract ILendingPoolAddressesProvider"
                                }
                              },
                              "id": 15717,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "getLendingPool",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 15377,
                              "src": "3162:33:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$__$returns$_t_address_$",
                                "typeString": "function () view external returns (address)"
                              }
                            },
                            "id": 15718,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "3162:35:52",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 15715,
                          "name": "ILendingPool",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15292,
                          "src": "3149:12:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_ILendingPool_$15292_$",
                            "typeString": "type(contract ILendingPool)"
                          }
                        },
                        "id": 15719,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "3149:49:52",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_ILendingPool_$15292",
                          "typeString": "contract ILendingPool"
                        }
                      },
                      "id": 15720,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getConfiguration",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 15220,
                      "src": "3149:66:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_struct$_ReserveConfigurationMap_$22831_memory_ptr_$",
                        "typeString": "function (address) view external returns (struct DataTypes.ReserveConfigurationMap memory)"
                      }
                    },
                    "id": 15722,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3149:73:52",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_ReserveConfigurationMap_$22831_memory_ptr",
                      "typeString": "struct DataTypes.ReserveConfigurationMap memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "3086:136:52"
                },
                {
                  "expression": {
                    "id": 15733,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "components": [
                        {
                          "id": 15724,
                          "name": "ltv",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15692,
                          "src": "3230:3:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        {
                          "id": 15725,
                          "name": "liquidationThreshold",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15694,
                          "src": "3235:20:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        {
                          "id": 15726,
                          "name": "liquidationBonus",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15696,
                          "src": "3257:16:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        {
                          "id": 15727,
                          "name": "decimals",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15690,
                          "src": "3275:8:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        {
                          "id": 15728,
                          "name": "reserveFactor",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15698,
                          "src": "3285:13:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        }
                      ],
                      "id": 15729,
                      "isConstant": false,
                      "isInlineArray": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "nodeType": "TupleExpression",
                      "src": "3229:70:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$",
                        "typeString": "tuple(uint256,uint256,uint256,uint256,uint256)"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [],
                      "expression": {
                        "argumentTypes": [],
                        "expression": {
                          "id": 15730,
                          "name": "configuration",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15714,
                          "src": "3302:13:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_ReserveConfigurationMap_$22831_memory_ptr",
                            "typeString": "struct DataTypes.ReserveConfigurationMap memory"
                          }
                        },
                        "id": 15731,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "getParamsMemory",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 23748,
                        "src": "3302:36:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_internal_pure$_t_struct$_ReserveConfigurationMap_$22831_memory_ptr_$returns$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$bound_to$_t_struct$_ReserveConfigurationMap_$22831_memory_ptr_$",
                          "typeString": "function (struct DataTypes.ReserveConfigurationMap memory) pure returns (uint256,uint256,uint256,uint256,uint256)"
                        }
                      },
                      "id": 15732,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "3302:38:52",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$",
                        "typeString": "tuple(uint256,uint256,uint256,uint256,uint256)"
                      }
                    },
                    "src": "3229:111:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 15734,
                  "nodeType": "ExpressionStatement",
                  "src": "3229:111:52"
                },
                {
                  "expression": {
                    "id": 15743,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "components": [
                        {
                          "id": 15735,
                          "name": "isActive",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15706,
                          "src": "3348:8:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        {
                          "id": 15736,
                          "name": "isFrozen",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15708,
                          "src": "3358:8:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        {
                          "id": 15737,
                          "name": "borrowingEnabled",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15702,
                          "src": "3368:16:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        {
                          "id": 15738,
                          "name": "stableBorrowRateEnabled",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15704,
                          "src": "3386:23:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        }
                      ],
                      "id": 15739,
                      "isConstant": false,
                      "isInlineArray": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "nodeType": "TupleExpression",
                      "src": "3347:63:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_tuple$_t_bool_$_t_bool_$_t_bool_$_t_bool_$",
                        "typeString": "tuple(bool,bool,bool,bool)"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [],
                      "expression": {
                        "argumentTypes": [],
                        "expression": {
                          "id": 15740,
                          "name": "configuration",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15714,
                          "src": "3413:13:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_ReserveConfigurationMap_$22831_memory_ptr",
                            "typeString": "struct DataTypes.ReserveConfigurationMap memory"
                          }
                        },
                        "id": 15741,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "getFlagsMemory",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 23798,
                        "src": "3413:35:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_internal_pure$_t_struct$_ReserveConfigurationMap_$22831_memory_ptr_$returns$_t_bool_$_t_bool_$_t_bool_$_t_bool_$bound_to$_t_struct$_ReserveConfigurationMap_$22831_memory_ptr_$",
                          "typeString": "function (struct DataTypes.ReserveConfigurationMap memory) pure returns (bool,bool,bool,bool)"
                        }
                      },
                      "id": 15742,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "3413:37:52",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_tuple$_t_bool_$_t_bool_$_t_bool_$_t_bool_$",
                        "typeString": "tuple(bool,bool,bool,bool)"
                      }
                    },
                    "src": "3347:103:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 15744,
                  "nodeType": "ExpressionStatement",
                  "src": "3347:103:52"
                },
                {
                  "expression": {
                    "id": 15749,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 15745,
                      "name": "usageAsCollateralEnabled",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15700,
                      "src": "3457:24:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 15748,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "id": 15746,
                        "name": "liquidationThreshold",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15694,
                        "src": "3484:20:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": ">",
                      "rightExpression": {
                        "hexValue": "30",
                        "id": 15747,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "3507:1:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_0_by_1",
                          "typeString": "int_const 0"
                        },
                        "value": "0"
                      },
                      "src": "3484:24:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "src": "3457:51:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 15750,
                  "nodeType": "ExpressionStatement",
                  "src": "3457:51:52"
                }
              ]
            },
            "functionSelector": "3e150141",
            "id": 15752,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "getReserveConfigurationData",
            "nameLocation": "2710:27:52",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15688,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15687,
                  "mutability": "mutable",
                  "name": "asset",
                  "nameLocation": "2746:5:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15752,
                  "src": "2738:13:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15686,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2738:7:52",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2737:15:52"
            },
            "returnParameters": {
              "id": 15709,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15690,
                  "mutability": "mutable",
                  "name": "decimals",
                  "nameLocation": "2803:8:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15752,
                  "src": "2795:16:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15689,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2795:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15692,
                  "mutability": "mutable",
                  "name": "ltv",
                  "nameLocation": "2827:3:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15752,
                  "src": "2819:11:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15691,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2819:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15694,
                  "mutability": "mutable",
                  "name": "liquidationThreshold",
                  "nameLocation": "2846:20:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15752,
                  "src": "2838:28:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15693,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2838:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15696,
                  "mutability": "mutable",
                  "name": "liquidationBonus",
                  "nameLocation": "2882:16:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15752,
                  "src": "2874:24:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15695,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2874:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15698,
                  "mutability": "mutable",
                  "name": "reserveFactor",
                  "nameLocation": "2914:13:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15752,
                  "src": "2906:21:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15697,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2906:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15700,
                  "mutability": "mutable",
                  "name": "usageAsCollateralEnabled",
                  "nameLocation": "2940:24:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15752,
                  "src": "2935:29:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 15699,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "2935:4:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15702,
                  "mutability": "mutable",
                  "name": "borrowingEnabled",
                  "nameLocation": "2977:16:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15752,
                  "src": "2972:21:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 15701,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "2972:4:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15704,
                  "mutability": "mutable",
                  "name": "stableBorrowRateEnabled",
                  "nameLocation": "3006:23:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15752,
                  "src": "3001:28:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 15703,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "3001:4:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15706,
                  "mutability": "mutable",
                  "name": "isActive",
                  "nameLocation": "3042:8:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15752,
                  "src": "3037:13:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 15705,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "3037:4:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15708,
                  "mutability": "mutable",
                  "name": "isFrozen",
                  "nameLocation": "3063:8:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15752,
                  "src": "3058:13:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 15707,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "3058:4:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2787:290:52"
            },
            "scope": 16003,
            "src": "2701:812:52",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": {
              "id": 15830,
              "nodeType": "Block",
              "src": "3930:642:52",
              "statements": [
                {
                  "assignments": [
                    15781
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 15781,
                      "mutability": "mutable",
                      "name": "reserve",
                      "nameLocation": "3965:7:52",
                      "nodeType": "VariableDeclaration",
                      "scope": 15830,
                      "src": "3936:36:52",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                        "typeString": "struct DataTypes.ReserveData"
                      },
                      "typeName": {
                        "id": 15780,
                        "nodeType": "UserDefinedTypeName",
                        "pathNode": {
                          "id": 15779,
                          "name": "DataTypes.ReserveData",
                          "nodeType": "IdentifierPath",
                          "referencedDeclaration": 22828,
                          "src": "3936:21:52"
                        },
                        "referencedDeclaration": 22828,
                        "src": "3936:21:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ReserveData_$22828_storage_ptr",
                          "typeString": "struct DataTypes.ReserveData"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 15790,
                  "initialValue": {
                    "arguments": [
                      {
                        "id": 15788,
                        "name": "asset",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15754,
                        "src": "4046:5:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "expression": {
                        "arguments": [
                          {
                            "arguments": [],
                            "expression": {
                              "argumentTypes": [],
                              "expression": {
                                "id": 15783,
                                "name": "ADDRESSES_PROVIDER",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15484,
                                "src": "3994:18:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_ILendingPoolAddressesProvider_$15443",
                                  "typeString": "contract ILendingPoolAddressesProvider"
                                }
                              },
                              "id": 15784,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "getLendingPool",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 15377,
                              "src": "3994:33:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$__$returns$_t_address_$",
                                "typeString": "function () view external returns (address)"
                              }
                            },
                            "id": 15785,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "3994:35:52",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 15782,
                          "name": "ILendingPool",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15292,
                          "src": "3981:12:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_ILendingPool_$15292_$",
                            "typeString": "type(contract ILendingPool)"
                          }
                        },
                        "id": 15786,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "3981:49:52",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_ILendingPool_$15292",
                          "typeString": "contract ILendingPool"
                        }
                      },
                      "id": 15787,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getReserveData",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 15254,
                      "src": "3981:64:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_struct$_ReserveData_$22828_memory_ptr_$",
                        "typeString": "function (address) view external returns (struct DataTypes.ReserveData memory)"
                      }
                    },
                    "id": 15789,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3981:71:52",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                      "typeString": "struct DataTypes.ReserveData memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "3936:116:52"
                },
                {
                  "expression": {
                    "components": [
                      {
                        "arguments": [
                          {
                            "expression": {
                              "id": 15795,
                              "name": "reserve",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15781,
                              "src": "4106:7:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                                "typeString": "struct DataTypes.ReserveData memory"
                              }
                            },
                            "id": 15796,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "aTokenAddress",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 22819,
                            "src": "4106:21:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "expression": {
                            "arguments": [
                              {
                                "id": 15792,
                                "name": "asset",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15754,
                                "src": "4089:5:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "id": 15791,
                              "name": "IERC20Detailed",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 22861,
                              "src": "4074:14:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_contract$_IERC20Detailed_$22861_$",
                                "typeString": "type(contract IERC20Detailed)"
                              }
                            },
                            "id": 15793,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "4074:21:52",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_IERC20Detailed_$22861",
                              "typeString": "contract IERC20Detailed"
                            }
                          },
                          "id": 15794,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "balanceOf",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 22507,
                          "src": "4074:31:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                            "typeString": "function (address) view external returns (uint256)"
                          }
                        },
                        "id": 15797,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "4074:54:52",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "arguments": [],
                        "expression": {
                          "argumentTypes": [],
                          "expression": {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 15799,
                                  "name": "reserve",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 15781,
                                  "src": "4151:7:52",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                                    "typeString": "struct DataTypes.ReserveData memory"
                                  }
                                },
                                "id": 15800,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "stableDebtTokenAddress",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 22821,
                                "src": "4151:30:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "id": 15798,
                              "name": "IERC20Detailed",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 22861,
                              "src": "4136:14:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_contract$_IERC20Detailed_$22861_$",
                                "typeString": "type(contract IERC20Detailed)"
                              }
                            },
                            "id": 15801,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "4136:46:52",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_IERC20Detailed_$22861",
                              "typeString": "contract IERC20Detailed"
                            }
                          },
                          "id": 15802,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "totalSupply",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 22499,
                          "src": "4136:58:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
                            "typeString": "function () view external returns (uint256)"
                          }
                        },
                        "id": 15803,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "4136:60:52",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "arguments": [],
                        "expression": {
                          "argumentTypes": [],
                          "expression": {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 15805,
                                  "name": "reserve",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 15781,
                                  "src": "4219:7:52",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                                    "typeString": "struct DataTypes.ReserveData memory"
                                  }
                                },
                                "id": 15806,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "variableDebtTokenAddress",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 22823,
                                "src": "4219:32:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "id": 15804,
                              "name": "IERC20Detailed",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 22861,
                              "src": "4204:14:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_contract$_IERC20Detailed_$22861_$",
                                "typeString": "type(contract IERC20Detailed)"
                              }
                            },
                            "id": 15807,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "4204:48:52",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_IERC20Detailed_$22861",
                              "typeString": "contract IERC20Detailed"
                            }
                          },
                          "id": 15808,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "totalSupply",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 22499,
                          "src": "4204:60:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
                            "typeString": "function () view external returns (uint256)"
                          }
                        },
                        "id": 15809,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "4204:62:52",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "expression": {
                          "id": 15810,
                          "name": "reserve",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15781,
                          "src": "4274:7:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                            "typeString": "struct DataTypes.ReserveData memory"
                          }
                        },
                        "id": 15811,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "currentLiquidityRate",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22811,
                        "src": "4274:28:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint128",
                          "typeString": "uint128"
                        }
                      },
                      {
                        "expression": {
                          "id": 15812,
                          "name": "reserve",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15781,
                          "src": "4310:7:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                            "typeString": "struct DataTypes.ReserveData memory"
                          }
                        },
                        "id": 15813,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "currentVariableBorrowRate",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22813,
                        "src": "4310:33:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint128",
                          "typeString": "uint128"
                        }
                      },
                      {
                        "expression": {
                          "id": 15814,
                          "name": "reserve",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15781,
                          "src": "4351:7:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                            "typeString": "struct DataTypes.ReserveData memory"
                          }
                        },
                        "id": 15815,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "currentStableBorrowRate",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22815,
                        "src": "4351:31:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint128",
                          "typeString": "uint128"
                        }
                      },
                      {
                        "arguments": [],
                        "expression": {
                          "argumentTypes": [],
                          "expression": {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 15817,
                                  "name": "reserve",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 15781,
                                  "src": "4407:7:52",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                                    "typeString": "struct DataTypes.ReserveData memory"
                                  }
                                },
                                "id": 15818,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "stableDebtTokenAddress",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 22821,
                                "src": "4407:30:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "id": 15816,
                              "name": "IStableDebtToken",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 22990,
                              "src": "4390:16:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_contract$_IStableDebtToken_$22990_$",
                                "typeString": "type(contract IStableDebtToken)"
                              }
                            },
                            "id": 15819,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "4390:48:52",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_IStableDebtToken_$22990",
                              "typeString": "contract IStableDebtToken"
                            }
                          },
                          "id": 15820,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "getAverageStableRate",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 22932,
                          "src": "4390:69:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
                            "typeString": "function () view external returns (uint256)"
                          }
                        },
                        "id": 15821,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "4390:71:52",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "expression": {
                          "id": 15822,
                          "name": "reserve",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15781,
                          "src": "4469:7:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                            "typeString": "struct DataTypes.ReserveData memory"
                          }
                        },
                        "id": 15823,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "liquidityIndex",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22807,
                        "src": "4469:22:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint128",
                          "typeString": "uint128"
                        }
                      },
                      {
                        "expression": {
                          "id": 15824,
                          "name": "reserve",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15781,
                          "src": "4499:7:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                            "typeString": "struct DataTypes.ReserveData memory"
                          }
                        },
                        "id": 15825,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "variableBorrowIndex",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22809,
                        "src": "4499:27:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint128",
                          "typeString": "uint128"
                        }
                      },
                      {
                        "expression": {
                          "id": 15826,
                          "name": "reserve",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15781,
                          "src": "4534:7:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                            "typeString": "struct DataTypes.ReserveData memory"
                          }
                        },
                        "id": 15827,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "lastUpdateTimestamp",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22817,
                        "src": "4534:27:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint40",
                          "typeString": "uint40"
                        }
                      }
                    ],
                    "id": 15828,
                    "isConstant": false,
                    "isInlineArray": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "TupleExpression",
                    "src": "4066:501:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint128_$_t_uint128_$_t_uint128_$_t_uint256_$_t_uint128_$_t_uint128_$_t_uint40_$",
                      "typeString": "tuple(uint256,uint256,uint256,uint128,uint128,uint128,uint256,uint128,uint128,uint40)"
                    }
                  },
                  "functionReturnParameters": 15776,
                  "id": 15829,
                  "nodeType": "Return",
                  "src": "4059:508:52"
                }
              ]
            },
            "functionSelector": "35ea6a75",
            "id": 15831,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "getReserveData",
            "nameLocation": "3526:14:52",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15755,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15754,
                  "mutability": "mutable",
                  "name": "asset",
                  "nameLocation": "3549:5:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15831,
                  "src": "3541:13:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15753,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "3541:7:52",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3540:15:52"
            },
            "returnParameters": {
              "id": 15776,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15757,
                  "mutability": "mutable",
                  "name": "availableLiquidity",
                  "nameLocation": "3606:18:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15831,
                  "src": "3598:26:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15756,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3598:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15759,
                  "mutability": "mutable",
                  "name": "totalStableDebt",
                  "nameLocation": "3640:15:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15831,
                  "src": "3632:23:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15758,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3632:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15761,
                  "mutability": "mutable",
                  "name": "totalVariableDebt",
                  "nameLocation": "3671:17:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15831,
                  "src": "3663:25:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15760,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3663:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15763,
                  "mutability": "mutable",
                  "name": "liquidityRate",
                  "nameLocation": "3704:13:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15831,
                  "src": "3696:21:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15762,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3696:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15765,
                  "mutability": "mutable",
                  "name": "variableBorrowRate",
                  "nameLocation": "3733:18:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15831,
                  "src": "3725:26:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15764,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3725:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15767,
                  "mutability": "mutable",
                  "name": "stableBorrowRate",
                  "nameLocation": "3767:16:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15831,
                  "src": "3759:24:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15766,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3759:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15769,
                  "mutability": "mutable",
                  "name": "averageStableBorrowRate",
                  "nameLocation": "3799:23:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15831,
                  "src": "3791:31:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15768,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3791:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15771,
                  "mutability": "mutable",
                  "name": "liquidityIndex",
                  "nameLocation": "3838:14:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15831,
                  "src": "3830:22:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15770,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3830:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15773,
                  "mutability": "mutable",
                  "name": "variableBorrowIndex",
                  "nameLocation": "3868:19:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15831,
                  "src": "3860:27:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15772,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3860:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15775,
                  "mutability": "mutable",
                  "name": "lastUpdateTimestamp",
                  "nameLocation": "3902:19:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15831,
                  "src": "3895:26:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint40",
                    "typeString": "uint40"
                  },
                  "typeName": {
                    "id": 15774,
                    "name": "uint40",
                    "nodeType": "ElementaryTypeName",
                    "src": "3895:6:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint40",
                      "typeString": "uint40"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3590:337:52"
            },
            "scope": 16003,
            "src": "3517:1055:52",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": {
              "id": 15967,
              "nodeType": "Block",
              "src": "4983:1069:52",
              "statements": [
                {
                  "assignments": [
                    15860
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 15860,
                      "mutability": "mutable",
                      "name": "reserve",
                      "nameLocation": "5018:7:52",
                      "nodeType": "VariableDeclaration",
                      "scope": 15967,
                      "src": "4989:36:52",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                        "typeString": "struct DataTypes.ReserveData"
                      },
                      "typeName": {
                        "id": 15859,
                        "nodeType": "UserDefinedTypeName",
                        "pathNode": {
                          "id": 15858,
                          "name": "DataTypes.ReserveData",
                          "nodeType": "IdentifierPath",
                          "referencedDeclaration": 22828,
                          "src": "4989:21:52"
                        },
                        "referencedDeclaration": 22828,
                        "src": "4989:21:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ReserveData_$22828_storage_ptr",
                          "typeString": "struct DataTypes.ReserveData"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 15869,
                  "initialValue": {
                    "arguments": [
                      {
                        "id": 15867,
                        "name": "asset",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15833,
                        "src": "5099:5:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "expression": {
                        "arguments": [
                          {
                            "arguments": [],
                            "expression": {
                              "argumentTypes": [],
                              "expression": {
                                "id": 15862,
                                "name": "ADDRESSES_PROVIDER",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15484,
                                "src": "5047:18:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_ILendingPoolAddressesProvider_$15443",
                                  "typeString": "contract ILendingPoolAddressesProvider"
                                }
                              },
                              "id": 15863,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "getLendingPool",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 15377,
                              "src": "5047:33:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$__$returns$_t_address_$",
                                "typeString": "function () view external returns (address)"
                              }
                            },
                            "id": 15864,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "5047:35:52",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 15861,
                          "name": "ILendingPool",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15292,
                          "src": "5034:12:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_ILendingPool_$15292_$",
                            "typeString": "type(contract ILendingPool)"
                          }
                        },
                        "id": 15865,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "5034:49:52",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_ILendingPool_$15292",
                          "typeString": "contract ILendingPool"
                        }
                      },
                      "id": 15866,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getReserveData",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 15254,
                      "src": "5034:64:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_struct$_ReserveData_$22828_memory_ptr_$",
                        "typeString": "function (address) view external returns (struct DataTypes.ReserveData memory)"
                      }
                    },
                    "id": 15868,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "5034:71:52",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                      "typeString": "struct DataTypes.ReserveData memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "4989:116:52"
                },
                {
                  "assignments": [
                    15874
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 15874,
                      "mutability": "mutable",
                      "name": "userConfig",
                      "nameLocation": "5150:10:52",
                      "nodeType": "VariableDeclaration",
                      "scope": 15967,
                      "src": "5112:48:52",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_UserConfigurationMap_$22834_memory_ptr",
                        "typeString": "struct DataTypes.UserConfigurationMap"
                      },
                      "typeName": {
                        "id": 15873,
                        "nodeType": "UserDefinedTypeName",
                        "pathNode": {
                          "id": 15872,
                          "name": "DataTypes.UserConfigurationMap",
                          "nodeType": "IdentifierPath",
                          "referencedDeclaration": 22834,
                          "src": "5112:30:52"
                        },
                        "referencedDeclaration": 22834,
                        "src": "5112:30:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_UserConfigurationMap_$22834_storage_ptr",
                          "typeString": "struct DataTypes.UserConfigurationMap"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 15883,
                  "initialValue": {
                    "arguments": [
                      {
                        "id": 15881,
                        "name": "user",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15835,
                        "src": "5240:4:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "expression": {
                        "arguments": [
                          {
                            "arguments": [],
                            "expression": {
                              "argumentTypes": [],
                              "expression": {
                                "id": 15876,
                                "name": "ADDRESSES_PROVIDER",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15484,
                                "src": "5182:18:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_ILendingPoolAddressesProvider_$15443",
                                  "typeString": "contract ILendingPoolAddressesProvider"
                                }
                              },
                              "id": 15877,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "getLendingPool",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 15377,
                              "src": "5182:33:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$__$returns$_t_address_$",
                                "typeString": "function () view external returns (address)"
                              }
                            },
                            "id": 15878,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "5182:35:52",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 15875,
                          "name": "ILendingPool",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15292,
                          "src": "5169:12:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_ILendingPool_$15292_$",
                            "typeString": "type(contract ILendingPool)"
                          }
                        },
                        "id": 15879,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "5169:49:52",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_ILendingPool_$15292",
                          "typeString": "contract ILendingPool"
                        }
                      },
                      "id": 15880,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getUserConfiguration",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 15229,
                      "src": "5169:70:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_struct$_UserConfigurationMap_$22834_memory_ptr_$",
                        "typeString": "function (address) view external returns (struct DataTypes.UserConfigurationMap memory)"
                      }
                    },
                    "id": 15882,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "5169:76:52",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_UserConfigurationMap_$22834_memory_ptr",
                      "typeString": "struct DataTypes.UserConfigurationMap memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "5112:133:52"
                },
                {
                  "expression": {
                    "id": 15892,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 15884,
                      "name": "currentATokenBalance",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15838,
                      "src": "5252:20:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "id": 15890,
                          "name": "user",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15835,
                          "src": "5323:4:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        ],
                        "expression": {
                          "arguments": [
                            {
                              "expression": {
                                "id": 15886,
                                "name": "reserve",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15860,
                                "src": "5290:7:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                                  "typeString": "struct DataTypes.ReserveData memory"
                                }
                              },
                              "id": 15887,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "aTokenAddress",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 22819,
                              "src": "5290:21:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            ],
                            "id": 15885,
                            "name": "IERC20Detailed",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 22861,
                            "src": "5275:14:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_IERC20Detailed_$22861_$",
                              "typeString": "type(contract IERC20Detailed)"
                            }
                          },
                          "id": 15888,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "5275:37:52",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_contract$_IERC20Detailed_$22861",
                            "typeString": "contract IERC20Detailed"
                          }
                        },
                        "id": 15889,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "balanceOf",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22507,
                        "src": "5275:47:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                          "typeString": "function (address) view external returns (uint256)"
                        }
                      },
                      "id": 15891,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "5275:53:52",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "5252:76:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 15893,
                  "nodeType": "ExpressionStatement",
                  "src": "5252:76:52"
                },
                {
                  "expression": {
                    "id": 15902,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 15894,
                      "name": "currentVariableDebt",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15842,
                      "src": "5334:19:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "id": 15900,
                          "name": "user",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15835,
                          "src": "5415:4:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        ],
                        "expression": {
                          "arguments": [
                            {
                              "expression": {
                                "id": 15896,
                                "name": "reserve",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15860,
                                "src": "5371:7:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                                  "typeString": "struct DataTypes.ReserveData memory"
                                }
                              },
                              "id": 15897,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "variableDebtTokenAddress",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 22823,
                              "src": "5371:32:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            ],
                            "id": 15895,
                            "name": "IERC20Detailed",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 22861,
                            "src": "5356:14:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_IERC20Detailed_$22861_$",
                              "typeString": "type(contract IERC20Detailed)"
                            }
                          },
                          "id": 15898,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "5356:48:52",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_contract$_IERC20Detailed_$22861",
                            "typeString": "contract IERC20Detailed"
                          }
                        },
                        "id": 15899,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "balanceOf",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22507,
                        "src": "5356:58:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                          "typeString": "function (address) view external returns (uint256)"
                        }
                      },
                      "id": 15901,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "5356:64:52",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "5334:86:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 15903,
                  "nodeType": "ExpressionStatement",
                  "src": "5334:86:52"
                },
                {
                  "expression": {
                    "id": 15912,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 15904,
                      "name": "currentStableDebt",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15840,
                      "src": "5426:17:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "id": 15910,
                          "name": "user",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15835,
                          "src": "5503:4:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        ],
                        "expression": {
                          "arguments": [
                            {
                              "expression": {
                                "id": 15906,
                                "name": "reserve",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15860,
                                "src": "5461:7:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                                  "typeString": "struct DataTypes.ReserveData memory"
                                }
                              },
                              "id": 15907,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "stableDebtTokenAddress",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 22821,
                              "src": "5461:30:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            ],
                            "id": 15905,
                            "name": "IERC20Detailed",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 22861,
                            "src": "5446:14:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_IERC20Detailed_$22861_$",
                              "typeString": "type(contract IERC20Detailed)"
                            }
                          },
                          "id": 15908,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "5446:46:52",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_contract$_IERC20Detailed_$22861",
                            "typeString": "contract IERC20Detailed"
                          }
                        },
                        "id": 15909,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "balanceOf",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22507,
                        "src": "5446:56:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                          "typeString": "function (address) view external returns (uint256)"
                        }
                      },
                      "id": 15911,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "5446:62:52",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "5426:82:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 15913,
                  "nodeType": "ExpressionStatement",
                  "src": "5426:82:52"
                },
                {
                  "expression": {
                    "id": 15922,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 15914,
                      "name": "principalStableDebt",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15844,
                      "src": "5514:19:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "id": 15920,
                          "name": "user",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15835,
                          "src": "5604:4:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        ],
                        "expression": {
                          "arguments": [
                            {
                              "expression": {
                                "id": 15916,
                                "name": "reserve",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15860,
                                "src": "5553:7:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                                  "typeString": "struct DataTypes.ReserveData memory"
                                }
                              },
                              "id": 15917,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "stableDebtTokenAddress",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 22821,
                              "src": "5553:30:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            ],
                            "id": 15915,
                            "name": "IStableDebtToken",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 22990,
                            "src": "5536:16:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_IStableDebtToken_$22990_$",
                              "typeString": "type(contract IStableDebtToken)"
                            }
                          },
                          "id": 15918,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "5536:48:52",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_contract$_IStableDebtToken_$22990",
                            "typeString": "contract IStableDebtToken"
                          }
                        },
                        "id": 15919,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "principalBalanceOf",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22982,
                        "src": "5536:67:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                          "typeString": "function (address) view external returns (uint256)"
                        }
                      },
                      "id": 15921,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "5536:73:52",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "5514:95:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 15923,
                  "nodeType": "ExpressionStatement",
                  "src": "5514:95:52"
                },
                {
                  "expression": {
                    "id": 15932,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 15924,
                      "name": "scaledVariableDebt",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15846,
                      "src": "5615:18:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "id": 15930,
                          "name": "user",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15835,
                          "src": "5705:4:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        ],
                        "expression": {
                          "arguments": [
                            {
                              "expression": {
                                "id": 15926,
                                "name": "reserve",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15860,
                                "src": "5655:7:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                                  "typeString": "struct DataTypes.ReserveData memory"
                                }
                              },
                              "id": 15927,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "variableDebtTokenAddress",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 22823,
                              "src": "5655:32:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            ],
                            "id": 15925,
                            "name": "IVariableDebtToken",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 23055,
                            "src": "5636:18:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_IVariableDebtToken_$23055_$",
                              "typeString": "type(contract IVariableDebtToken)"
                            }
                          },
                          "id": 15928,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "5636:52:52",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_contract$_IVariableDebtToken_$23055",
                            "typeString": "contract IVariableDebtToken"
                          }
                        },
                        "id": 15929,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "scaledBalanceOf",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22783,
                        "src": "5636:68:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                          "typeString": "function (address) view external returns (uint256)"
                        }
                      },
                      "id": 15931,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "5636:74:52",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "5615:95:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 15933,
                  "nodeType": "ExpressionStatement",
                  "src": "5615:95:52"
                },
                {
                  "expression": {
                    "id": 15937,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 15934,
                      "name": "liquidityRate",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15850,
                      "src": "5716:13:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "expression": {
                        "id": 15935,
                        "name": "reserve",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15860,
                        "src": "5732:7:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                          "typeString": "struct DataTypes.ReserveData memory"
                        }
                      },
                      "id": 15936,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "currentLiquidityRate",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 22811,
                      "src": "5732:28:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint128",
                        "typeString": "uint128"
                      }
                    },
                    "src": "5716:44:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 15938,
                  "nodeType": "ExpressionStatement",
                  "src": "5716:44:52"
                },
                {
                  "expression": {
                    "id": 15947,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 15939,
                      "name": "stableBorrowRate",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15848,
                      "src": "5766:16:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "id": 15945,
                          "name": "user",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15835,
                          "src": "5852:4:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        ],
                        "expression": {
                          "arguments": [
                            {
                              "expression": {
                                "id": 15941,
                                "name": "reserve",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15860,
                                "src": "5802:7:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                                  "typeString": "struct DataTypes.ReserveData memory"
                                }
                              },
                              "id": 15942,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "stableDebtTokenAddress",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 22821,
                              "src": "5802:30:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            ],
                            "id": 15940,
                            "name": "IStableDebtToken",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 22990,
                            "src": "5785:16:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_IStableDebtToken_$22990_$",
                              "typeString": "type(contract IStableDebtToken)"
                            }
                          },
                          "id": 15943,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "5785:48:52",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_contract$_IStableDebtToken_$22990",
                            "typeString": "contract IStableDebtToken"
                          }
                        },
                        "id": 15944,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "getUserStableRate",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22940,
                        "src": "5785:66:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                          "typeString": "function (address) view external returns (uint256)"
                        }
                      },
                      "id": 15946,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "5785:72:52",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "5766:91:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 15948,
                  "nodeType": "ExpressionStatement",
                  "src": "5766:91:52"
                },
                {
                  "expression": {
                    "id": 15957,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 15949,
                      "name": "stableRateLastUpdated",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15852,
                      "src": "5863:21:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint40",
                        "typeString": "uint40"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "id": 15955,
                          "name": "user",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15835,
                          "src": "5962:4:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        ],
                        "expression": {
                          "arguments": [
                            {
                              "expression": {
                                "id": 15951,
                                "name": "reserve",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15860,
                                "src": "5904:7:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                                  "typeString": "struct DataTypes.ReserveData memory"
                                }
                              },
                              "id": 15952,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "stableDebtTokenAddress",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 22821,
                              "src": "5904:30:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            ],
                            "id": 15950,
                            "name": "IStableDebtToken",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 22990,
                            "src": "5887:16:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_IStableDebtToken_$22990_$",
                              "typeString": "type(contract IStableDebtToken)"
                            }
                          },
                          "id": 15953,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "5887:48:52",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_contract$_IStableDebtToken_$22990",
                            "typeString": "contract IStableDebtToken"
                          }
                        },
                        "id": 15954,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "getUserLastUpdated",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22948,
                        "src": "5887:67:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint40_$",
                          "typeString": "function (address) view external returns (uint40)"
                        }
                      },
                      "id": 15956,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "5887:85:52",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint40",
                        "typeString": "uint40"
                      }
                    },
                    "src": "5863:109:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint40",
                      "typeString": "uint40"
                    }
                  },
                  "id": 15958,
                  "nodeType": "ExpressionStatement",
                  "src": "5863:109:52"
                },
                {
                  "expression": {
                    "id": 15965,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 15959,
                      "name": "usageAsCollateralEnabled",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15854,
                      "src": "5978:24:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "expression": {
                            "id": 15962,
                            "name": "reserve",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 15860,
                            "src": "6036:7:52",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                              "typeString": "struct DataTypes.ReserveData memory"
                            }
                          },
                          "id": 15963,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "id",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 22827,
                          "src": "6036:10:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          }
                        ],
                        "expression": {
                          "id": 15960,
                          "name": "userConfig",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15874,
                          "src": "6005:10:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_UserConfigurationMap_$22834_memory_ptr",
                            "typeString": "struct DataTypes.UserConfigurationMap memory"
                          }
                        },
                        "id": 15961,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "isUsingAsCollateral",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 24016,
                        "src": "6005:30:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_internal_pure$_t_struct$_UserConfigurationMap_$22834_memory_ptr_$_t_uint256_$returns$_t_bool_$bound_to$_t_struct$_UserConfigurationMap_$22834_memory_ptr_$",
                          "typeString": "function (struct DataTypes.UserConfigurationMap memory,uint256) pure returns (bool)"
                        }
                      },
                      "id": 15964,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "6005:42:52",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "src": "5978:69:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 15966,
                  "nodeType": "ExpressionStatement",
                  "src": "5978:69:52"
                }
              ]
            },
            "functionSelector": "28dd2d01",
            "id": 15968,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "getUserReserveData",
            "nameLocation": "4585:18:52",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15836,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15833,
                  "mutability": "mutable",
                  "name": "asset",
                  "nameLocation": "4612:5:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15968,
                  "src": "4604:13:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15832,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "4604:7:52",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15835,
                  "mutability": "mutable",
                  "name": "user",
                  "nameLocation": "4627:4:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15968,
                  "src": "4619:12:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15834,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "4619:7:52",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4603:29:52"
            },
            "returnParameters": {
              "id": 15855,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15838,
                  "mutability": "mutable",
                  "name": "currentATokenBalance",
                  "nameLocation": "4683:20:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15968,
                  "src": "4675:28:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15837,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4675:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15840,
                  "mutability": "mutable",
                  "name": "currentStableDebt",
                  "nameLocation": "4719:17:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15968,
                  "src": "4711:25:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15839,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4711:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15842,
                  "mutability": "mutable",
                  "name": "currentVariableDebt",
                  "nameLocation": "4752:19:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15968,
                  "src": "4744:27:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15841,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4744:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15844,
                  "mutability": "mutable",
                  "name": "principalStableDebt",
                  "nameLocation": "4787:19:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15968,
                  "src": "4779:27:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15843,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4779:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15846,
                  "mutability": "mutable",
                  "name": "scaledVariableDebt",
                  "nameLocation": "4822:18:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15968,
                  "src": "4814:26:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15845,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4814:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15848,
                  "mutability": "mutable",
                  "name": "stableBorrowRate",
                  "nameLocation": "4856:16:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15968,
                  "src": "4848:24:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15847,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4848:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15850,
                  "mutability": "mutable",
                  "name": "liquidityRate",
                  "nameLocation": "4888:13:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15968,
                  "src": "4880:21:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 15849,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4880:7:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15852,
                  "mutability": "mutable",
                  "name": "stableRateLastUpdated",
                  "nameLocation": "4916:21:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15968,
                  "src": "4909:28:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint40",
                    "typeString": "uint40"
                  },
                  "typeName": {
                    "id": 15851,
                    "name": "uint40",
                    "nodeType": "ElementaryTypeName",
                    "src": "4909:6:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint40",
                      "typeString": "uint40"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15854,
                  "mutability": "mutable",
                  "name": "usageAsCollateralEnabled",
                  "nameLocation": "4950:24:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 15968,
                  "src": "4945:29:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 15853,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "4945:4:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4667:313:52"
            },
            "scope": 16003,
            "src": "4576:1476:52",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": {
              "id": 16001,
              "nodeType": "Block",
              "src": "6256:254:52",
              "statements": [
                {
                  "assignments": [
                    15983
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 15983,
                      "mutability": "mutable",
                      "name": "reserve",
                      "nameLocation": "6291:7:52",
                      "nodeType": "VariableDeclaration",
                      "scope": 16001,
                      "src": "6262:36:52",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                        "typeString": "struct DataTypes.ReserveData"
                      },
                      "typeName": {
                        "id": 15982,
                        "nodeType": "UserDefinedTypeName",
                        "pathNode": {
                          "id": 15981,
                          "name": "DataTypes.ReserveData",
                          "nodeType": "IdentifierPath",
                          "referencedDeclaration": 22828,
                          "src": "6262:21:52"
                        },
                        "referencedDeclaration": 22828,
                        "src": "6262:21:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ReserveData_$22828_storage_ptr",
                          "typeString": "struct DataTypes.ReserveData"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 15992,
                  "initialValue": {
                    "arguments": [
                      {
                        "id": 15990,
                        "name": "asset",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15970,
                        "src": "6372:5:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "expression": {
                        "arguments": [
                          {
                            "arguments": [],
                            "expression": {
                              "argumentTypes": [],
                              "expression": {
                                "id": 15985,
                                "name": "ADDRESSES_PROVIDER",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15484,
                                "src": "6320:18:52",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_ILendingPoolAddressesProvider_$15443",
                                  "typeString": "contract ILendingPoolAddressesProvider"
                                }
                              },
                              "id": 15986,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "getLendingPool",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 15377,
                              "src": "6320:33:52",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$__$returns$_t_address_$",
                                "typeString": "function () view external returns (address)"
                              }
                            },
                            "id": 15987,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "6320:35:52",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 15984,
                          "name": "ILendingPool",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15292,
                          "src": "6307:12:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_ILendingPool_$15292_$",
                            "typeString": "type(contract ILendingPool)"
                          }
                        },
                        "id": 15988,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "6307:49:52",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_ILendingPool_$15292",
                          "typeString": "contract ILendingPool"
                        }
                      },
                      "id": 15989,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getReserveData",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 15254,
                      "src": "6307:64:52",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_struct$_ReserveData_$22828_memory_ptr_$",
                        "typeString": "function (address) view external returns (struct DataTypes.ReserveData memory)"
                      }
                    },
                    "id": 15991,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "6307:71:52",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                      "typeString": "struct DataTypes.ReserveData memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "6262:116:52"
                },
                {
                  "expression": {
                    "components": [
                      {
                        "expression": {
                          "id": 15993,
                          "name": "reserve",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15983,
                          "src": "6400:7:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                            "typeString": "struct DataTypes.ReserveData memory"
                          }
                        },
                        "id": 15994,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "aTokenAddress",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22819,
                        "src": "6400:21:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "expression": {
                          "id": 15995,
                          "name": "reserve",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15983,
                          "src": "6429:7:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                            "typeString": "struct DataTypes.ReserveData memory"
                          }
                        },
                        "id": 15996,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "stableDebtTokenAddress",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22821,
                        "src": "6429:30:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "expression": {
                          "id": 15997,
                          "name": "reserve",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15983,
                          "src": "6467:7:52",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_ReserveData_$22828_memory_ptr",
                            "typeString": "struct DataTypes.ReserveData memory"
                          }
                        },
                        "id": 15998,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "variableDebtTokenAddress",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 22823,
                        "src": "6467:32:52",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "id": 15999,
                    "isConstant": false,
                    "isInlineArray": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "TupleExpression",
                    "src": "6392:113:52",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$_t_address_$_t_address_$_t_address_$",
                      "typeString": "tuple(address,address,address)"
                    }
                  },
                  "functionReturnParameters": 15978,
                  "id": 16000,
                  "nodeType": "Return",
                  "src": "6385:120:52"
                }
              ]
            },
            "functionSelector": "d2493b6c",
            "id": 16002,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "getReserveTokensAddresses",
            "nameLocation": "6065:25:52",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15971,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15970,
                  "mutability": "mutable",
                  "name": "asset",
                  "nameLocation": "6099:5:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 16002,
                  "src": "6091:13:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15969,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "6091:7:52",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "6090:15:52"
            },
            "returnParameters": {
              "id": 15978,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15973,
                  "mutability": "mutable",
                  "name": "aTokenAddress",
                  "nameLocation": "6156:13:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 16002,
                  "src": "6148:21:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15972,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "6148:7:52",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15975,
                  "mutability": "mutable",
                  "name": "stableDebtTokenAddress",
                  "nameLocation": "6185:22:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 16002,
                  "src": "6177:30:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15974,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "6177:7:52",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15977,
                  "mutability": "mutable",
                  "name": "variableDebtTokenAddress",
                  "nameLocation": "6223:24:52",
                  "nodeType": "VariableDeclaration",
                  "scope": 16002,
                  "src": "6215:32:52",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 15976,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "6215:7:52",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "6140:113:52"
            },
            "scope": 16003,
            "src": "6056:454:52",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "scope": 16004,
        "src": "746:5766:52",
        "usedErrors": []
      }
    ],
    "src": "37:6476:52"
  },
  "bytecode": "60a060405234801561001057600080fd5b50604051611c55380380611c5583398101604081905261002f91610044565b60601b6001600160601b031916608052610074565b60006020828403121561005657600080fd5b81516001600160a01b038116811461006d57600080fd5b9392505050565b60805160601c611b936100c26000396000818160870152818161025c0152818161036d0152818161086501528181610be201528181610d880152818161114701526112770152611b936000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80633e1501411161005b5780633e1501411461018a578063b316ff89146101f1578063d2493b6c14610206578063f561ae411461024357600080fd5b80630542975c1461008257806328dd2d01146100c657806335ea6a7514610126575b600080fd5b6100a97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6100d96100d43660046116a5565b61024b565b60408051998a5260208a0198909852968801959095526060870193909352608086019190915260a085015260c084015264ffffffffff1660e08301521515610100820152610120016100bd565b610139610134366004611664565b610852565b604080519a8b5260208b0199909952978901969096526060880194909452608087019290925260a086015260c085015260e084015261010083015264ffffffffff16610120820152610140016100bd565b61019d610198366004611664565b610bcf565b604080519a8b5260208b01999099529789019690965260608801949094526080870192909252151560a0860152151560c0850152151560e084015215156101008301521515610120820152610140016100bd565b6101f9610d82565b6040516100bd9190611994565b610219610214366004611664565b61113f565b604080516001600160a01b03948516815292841660208401529216918101919091526060016100bd565b6101f9611271565b6000806000806000806000806000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156102b357600080fd5b505afa1580156102c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102eb9190611688565b6040516335ea6a7560e01b81526001600160a01b038e8116600483015291909116906335ea6a75906024016101806040518083038186803b15801561032f57600080fd5b505afa158015610343573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103679190611847565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156103c457600080fd5b505afa1580156103d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103fc9190611688565b604051634417a58360e01b81526001600160a01b038e811660048301529190911690634417a5839060240160206040518083038186803b15801561043f57600080fd5b505afa158015610453573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610477919061182b565b60e08301516040516370a0823160e01b81526001600160a01b038f811660048301529293509116906370a082319060240160206040518083038186803b1580156104c057600080fd5b505afa1580156104d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f89190611934565b6101208301516040516370a0823160e01b81526001600160a01b038f81166004830152929d509116906370a082319060240160206040518083038186803b15801561054257600080fd5b505afa158015610556573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061057a9190611934565b6101008301516040516370a0823160e01b81526001600160a01b038f81166004830152929b509116906370a082319060240160206040518083038186803b1580156105c457600080fd5b505afa1580156105d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105fc9190611934565b61010083015160405163631a6fd560e11b81526001600160a01b038f81166004830152929c5091169063c634dfaa9060240160206040518083038186803b15801561064657600080fd5b505afa15801561065a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067e9190611934565b610120830151604051630ed1279f60e11b81526001600160a01b038f81166004830152929a50911690631da24f3e9060240160206040518083038186803b1580156106c857600080fd5b505afa1580156106dc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107009190611934565b965081606001516001600160801b031694508161010001516001600160a01b031663e78c9b3b8d6040518263ffffffff1660e01b815260040161075291906001600160a01b0391909116815260200190565b60206040518083038186803b15801561076a57600080fd5b505afa15801561077e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a29190611934565b610100830151604051631e739ae360e21b81526001600160a01b038f811660048301529298509116906379ce6b8c9060240160206040518083038186803b1580156107ec57600080fd5b505afa158015610800573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610824919061194d565b935061084182610160015160ff168261156690919063ffffffff16565b925050509295985092959850929598565b60008060008060008060008060008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156108bc57600080fd5b505afa1580156108d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f49190611688565b6040516335ea6a7560e01b81526001600160a01b038e8116600483015291909116906335ea6a75906024016101806040518083038186803b15801561093857600080fd5b505afa15801561094c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109709190611847565b60e08101516040516370a0823160e01b81526001600160a01b0391821660048201529192508d16906370a082319060240160206040518083038186803b1580156109b957600080fd5b505afa1580156109cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f19190611934565b8161010001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610a2f57600080fd5b505afa158015610a43573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a679190611934565b8261012001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610aa557600080fd5b505afa158015610ab9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610add9190611934565b836060015184608001518560a001518661010001516001600160a01b03166390f6fcf26040518163ffffffff1660e01b815260040160206040518083038186803b158015610b2a57600080fd5b505afa158015610b3e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b629190611934565b876020015188604001518960c00151866001600160801b03169650856001600160801b03169550846001600160801b03169450826001600160801b03169250816001600160801b031691509a509a509a509a509a509a509a509a509a509a50509193959799509193959799565b60008060008060008060008060008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610c3957600080fd5b505afa158015610c4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c719190611688565b60405163c44b11f760e01b81526001600160a01b038e81166004830152919091169063c44b11f79060240160206040518083038186803b158015610cb457600080fd5b505afa158015610cc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cec919061182b565b9050610d1d815161ffff80821692601083901c821692602081901c831692603082901c60ff169260409290921c1690565b8551919f50939d50919b5099509097506701000000000000008116151590670200000000000000811615159067040000000000000081161515906708000000000000001615159d9f9c9e509a9c999b989a8d15159a9099909850919650945092505050565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ddf57600080fd5b505afa158015610df3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e179190611688565b90506000816001600160a01b031663d1946dbc6040518163ffffffff1660e01b815260040160006040518083038186803b158015610e5457600080fd5b505afa158015610e68573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e9091908101906116de565b90506000815167ffffffffffffffff811115610eae57610eae611b2f565b604051908082528060200260200182016040528015610ef457816020015b604080518082019091526060815260006020820152815260200190600190039081610ecc5790505b50905060005b825181101561113757739f8f72aa9304c8b593d555f12ef6589cc3a579a26001600160a01b0316838281518110610f3357610f33611b19565b60200260200101516001600160a01b03161415610fbe5760405180604001604052806040518060400160405280600381526020016226a5a960e91b8152508152602001848381518110610f8857610f88611b19565b60200260200101516001600160a01b0316815250828281518110610fae57610fae611b19565b6020026020010181905250611125565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0316838281518110610fee57610fee611b19565b60200260200101516001600160a01b031614156110435760405180604001604052806040518060400160405280600381526020016208aa8960eb1b8152508152602001848381518110610f8857610f88611b19565b604051806040016040528084838151811061106057611060611b19565b60200260200101516001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b1580156110a057600080fd5b505afa1580156110b4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110dc9190810190611797565b81526020018483815181106110f3576110f3611b19565b60200260200101516001600160a01b031681525082828151811061111957611119611b19565b60200260200101819052505b8061112f81611ae8565b915050610efa565b509392505050565b6000806000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561119e57600080fd5b505afa1580156111b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111d69190611688565b6040516335ea6a7560e01b81526001600160a01b03878116600483015291909116906335ea6a75906024016101806040518083038186803b15801561121a57600080fd5b505afa15801561122e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112529190611847565b60e0810151610100820151610120909201519097919650945092505050565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156112ce57600080fd5b505afa1580156112e2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113069190611688565b90506000816001600160a01b031663d1946dbc6040518163ffffffff1660e01b815260040160006040518083038186803b15801561134357600080fd5b505afa158015611357573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261137f91908101906116de565b90506000815167ffffffffffffffff81111561139d5761139d611b2f565b6040519080825280602002602001820160405280156113e357816020015b6040805180820190915260608152600060208201528152602001906001900390816113bb5790505b50905060005b8251811015611137576000846001600160a01b03166335ea6a7585848151811061141557611415611b19565b60200260200101516040518263ffffffff1660e01b815260040161144891906001600160a01b0391909116815260200190565b6101806040518083038186803b15801561146157600080fd5b505afa158015611475573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114999190611847565b905060405180604001604052808260e001516001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b1580156114e357600080fd5b505afa1580156114f7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261151f9190810190611797565b81526020018260e001516001600160a01b031681525083838151811061154757611547611b19565b602002602001018190525050808061155e90611ae8565b9150506113e9565b60006080821060405180604001604052806002815260200161373760f01b815250906115ae5760405162461bcd60e51b81526004016115a59190611a13565b60405180910390fd5b506115ba826002611a99565b6115c5906001611a81565b925190921c600116151592915050565b80516115e081611b45565b919050565b6000602082840312156115f757600080fd5b6040516020810181811067ffffffffffffffff8211171561161a5761161a611b2f565b6040529151825250919050565b80516001600160801b03811681146115e057600080fd5b805164ffffffffff811681146115e057600080fd5b805160ff811681146115e057600080fd5b60006020828403121561167657600080fd5b813561168181611b45565b9392505050565b60006020828403121561169a57600080fd5b815161168181611b45565b600080604083850312156116b857600080fd5b82356116c381611b45565b915060208301356116d381611b45565b809150509250929050565b600060208083850312156116f157600080fd5b825167ffffffffffffffff8082111561170957600080fd5b818501915085601f83011261171d57600080fd5b81518181111561172f5761172f611b2f565b8060051b9150611740848301611a50565b8181528481019084860184860187018a101561175b57600080fd5b600095505b8386101561178a578051945061177585611b45565b84835260019590950194918601918601611760565b5098975050505050505050565b6000602082840312156117a957600080fd5b815167ffffffffffffffff808211156117c157600080fd5b818401915084601f8301126117d557600080fd5b8151818111156117e7576117e7611b2f565b6117fa601f8201601f1916602001611a50565b915080825285602082850101111561181157600080fd5b611822816020840160208601611ab8565b50949350505050565b60006020828403121561183d57600080fd5b61168183836115e5565b6000610180828403121561185a57600080fd5b611862611a26565b61186c84846115e5565b815261187a60208401611627565b602082015261188b60408401611627565b604082015261189c60608401611627565b60608201526118ad60808401611627565b60808201526118be60a08401611627565b60a08201526118cf60c0840161163e565b60c08201526118e060e084016115d5565b60e08201526101006118f38185016115d5565b908201526101206119058482016115d5565b908201526101406119178482016115d5565b90820152610160611929848201611653565b908201529392505050565b60006020828403121561194657600080fd5b5051919050565b60006020828403121561195f57600080fd5b6116818261163e565b60008151808452611980816020860160208601611ab8565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015611a0557888303603f19018552815180518785526119df88860182611968565b918901516001600160a01b031694890194909452948701949250908601906001016119bb565b509098975050505050505050565b6020815260006116816020830184611968565b604051610180810167ffffffffffffffff81118282101715611a4a57611a4a611b2f565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611a7957611a79611b2f565b604052919050565b60008219821115611a9457611a94611b03565b500190565b6000816000190483118215151615611ab357611ab3611b03565b500290565b60005b83811015611ad3578181015183820152602001611abb565b83811115611ae2576000848401525b50505050565b6000600019821415611afc57611afc611b03565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114611b5a57600080fd5b5056fea2646970667358221220aee5af079c70e9cbd328ad0729ab147f136eb86b8abd45c666d6b88cebbcbee164736f6c63430008060033",
  "bytecodeSha1": "3e1c10a701e37e21c84246df8e4addc622271f98",
  "compiler": {
    "evm_version": "istanbul",
    "optimizer": {
      "enabled": true,
      "runs": 200
    },
    "version": "0.8.6+commit.11564f7e"
  },
  "contractName": "AaveProtocolDataProvider",
  "coverageMap": {
    "branches": {
      "41": {},
      "42": {},
      "44": {},
      "46": {},
      "47": {},
      "48": {},
      "49": {},
      "50": {},
      "51": {},
      "52": {
        "AaveProtocolDataProvider.getAllReservesTokens": {
          "26": [
            1660,
            1678,
            false
          ],
          "27": [
            1801,
            1819,
            false
          ]
        }
      },
      "53": {},
      "54": {
        "UserConfiguration.isUsingAsCollateral": {
          "28": [
            3252,
            3270,
            true
          ]
        }
      },
      "55": {}
    },
    "statements": {
      "41": {},
      "42": {},
      "44": {},
      "46": {},
      "47": {},
      "48": {},
      "49": {},
      "50": {},
      "51": {},
      "52": {
        "AaveProtocolDataProvider.getAllATokens": {
          "22": [
            2517,
            2666
          ],
          "23": [
            2421,
            2424
          ]
        },
        "AaveProtocolDataProvider.getAllReservesTokens": {
          "15": [
            1690,
            1763
          ],
          "16": [
            1773,
            1781
          ],
          "17": [
            1831,
            1904
          ],
          "18": [
            1938,
            2066
          ],
          "19": [
            1643,
            1646
          ],
          "20": [
            2078,
            2099
          ]
        },
        "AaveProtocolDataProvider.getReserveConfigurationData": {
          "10": [
            3229,
            3340
          ],
          "13": [
            3457,
            3508
          ],
          "14": [
            3347,
            3450
          ]
        },
        "AaveProtocolDataProvider.getReserveData": {
          "9": [
            4059,
            4567
          ]
        },
        "AaveProtocolDataProvider.getReserveTokensAddresses": {
          "21": [
            6385,
            6505
          ]
        },
        "AaveProtocolDataProvider.getUserReserveData": {
          "0": [
            5252,
            5328
          ],
          "1": [
            5334,
            5420
          ],
          "2": [
            5426,
            5508
          ],
          "3": [
            5514,
            5609
          ],
          "4": [
            5615,
            5710
          ],
          "5": [
            5716,
            5760
          ],
          "6": [
            5766,
            5857
          ],
          "7": [
            5863,
            5972
          ],
          "8": [
            5978,
            6047
          ]
        }
      },
      "53": {
        "ReserveConfiguration.getFlagsMemory": {
          "12": [
            11924,
            12106
          ]
        },
        "ReserveConfiguration.getParamsMemory": {
          "11": [
            11137,
            11511
          ]
        }
      },
      "54": {
        "UserConfiguration.isUsingAsCollateral": {
          "24": [
            3244,
            3296
          ],
          "25": [
            3302,
            3355
          ]
        }
      },
      "55": {}
    }
  },
  "dependencies": [
    "Errors",
    "IAaveIncentivesController",
    "IERC20",
    "IERC20Detailed",
    "IInitializableDebtToken",
    "ILendingPool",
    "ILendingPoolAddressesProvider",
    "IScaledBalanceToken",
    "IStableDebtToken",
    "IVariableDebtToken",
    "ReserveConfiguration",
    "UserConfiguration"
  ],
  "deployedBytecode": "608060405234801561001057600080fd5b506004361061007d5760003560e01c80633e1501411161005b5780633e1501411461018a578063b316ff89146101f1578063d2493b6c14610206578063f561ae411461024357600080fd5b80630542975c1461008257806328dd2d01146100c657806335ea6a7514610126575b600080fd5b6100a97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6100d96100d43660046116a5565b61024b565b60408051998a5260208a0198909852968801959095526060870193909352608086019190915260a085015260c084015264ffffffffff1660e08301521515610100820152610120016100bd565b610139610134366004611664565b610852565b604080519a8b5260208b0199909952978901969096526060880194909452608087019290925260a086015260c085015260e084015261010083015264ffffffffff16610120820152610140016100bd565b61019d610198366004611664565b610bcf565b604080519a8b5260208b01999099529789019690965260608801949094526080870192909252151560a0860152151560c0850152151560e084015215156101008301521515610120820152610140016100bd565b6101f9610d82565b6040516100bd9190611994565b610219610214366004611664565b61113f565b604080516001600160a01b03948516815292841660208401529216918101919091526060016100bd565b6101f9611271565b6000806000806000806000806000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156102b357600080fd5b505afa1580156102c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102eb9190611688565b6040516335ea6a7560e01b81526001600160a01b038e8116600483015291909116906335ea6a75906024016101806040518083038186803b15801561032f57600080fd5b505afa158015610343573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103679190611847565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156103c457600080fd5b505afa1580156103d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103fc9190611688565b604051634417a58360e01b81526001600160a01b038e811660048301529190911690634417a5839060240160206040518083038186803b15801561043f57600080fd5b505afa158015610453573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610477919061182b565b60e08301516040516370a0823160e01b81526001600160a01b038f811660048301529293509116906370a082319060240160206040518083038186803b1580156104c057600080fd5b505afa1580156104d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f89190611934565b6101208301516040516370a0823160e01b81526001600160a01b038f81166004830152929d509116906370a082319060240160206040518083038186803b15801561054257600080fd5b505afa158015610556573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061057a9190611934565b6101008301516040516370a0823160e01b81526001600160a01b038f81166004830152929b509116906370a082319060240160206040518083038186803b1580156105c457600080fd5b505afa1580156105d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105fc9190611934565b61010083015160405163631a6fd560e11b81526001600160a01b038f81166004830152929c5091169063c634dfaa9060240160206040518083038186803b15801561064657600080fd5b505afa15801561065a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067e9190611934565b610120830151604051630ed1279f60e11b81526001600160a01b038f81166004830152929a50911690631da24f3e9060240160206040518083038186803b1580156106c857600080fd5b505afa1580156106dc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107009190611934565b965081606001516001600160801b031694508161010001516001600160a01b031663e78c9b3b8d6040518263ffffffff1660e01b815260040161075291906001600160a01b0391909116815260200190565b60206040518083038186803b15801561076a57600080fd5b505afa15801561077e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a29190611934565b610100830151604051631e739ae360e21b81526001600160a01b038f811660048301529298509116906379ce6b8c9060240160206040518083038186803b1580156107ec57600080fd5b505afa158015610800573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610824919061194d565b935061084182610160015160ff168261156690919063ffffffff16565b925050509295985092959850929598565b60008060008060008060008060008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156108bc57600080fd5b505afa1580156108d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f49190611688565b6040516335ea6a7560e01b81526001600160a01b038e8116600483015291909116906335ea6a75906024016101806040518083038186803b15801561093857600080fd5b505afa15801561094c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109709190611847565b60e08101516040516370a0823160e01b81526001600160a01b0391821660048201529192508d16906370a082319060240160206040518083038186803b1580156109b957600080fd5b505afa1580156109cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f19190611934565b8161010001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610a2f57600080fd5b505afa158015610a43573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a679190611934565b8261012001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610aa557600080fd5b505afa158015610ab9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610add9190611934565b836060015184608001518560a001518661010001516001600160a01b03166390f6fcf26040518163ffffffff1660e01b815260040160206040518083038186803b158015610b2a57600080fd5b505afa158015610b3e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b629190611934565b876020015188604001518960c00151866001600160801b03169650856001600160801b03169550846001600160801b03169450826001600160801b03169250816001600160801b031691509a509a509a509a509a509a509a509a509a509a50509193959799509193959799565b60008060008060008060008060008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610c3957600080fd5b505afa158015610c4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c719190611688565b60405163c44b11f760e01b81526001600160a01b038e81166004830152919091169063c44b11f79060240160206040518083038186803b158015610cb457600080fd5b505afa158015610cc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cec919061182b565b9050610d1d815161ffff80821692601083901c821692602081901c831692603082901c60ff169260409290921c1690565b8551919f50939d50919b5099509097506701000000000000008116151590670200000000000000811615159067040000000000000081161515906708000000000000001615159d9f9c9e509a9c999b989a8d15159a9099909850919650945092505050565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ddf57600080fd5b505afa158015610df3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e179190611688565b90506000816001600160a01b031663d1946dbc6040518163ffffffff1660e01b815260040160006040518083038186803b158015610e5457600080fd5b505afa158015610e68573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e9091908101906116de565b90506000815167ffffffffffffffff811115610eae57610eae611b2f565b604051908082528060200260200182016040528015610ef457816020015b604080518082019091526060815260006020820152815260200190600190039081610ecc5790505b50905060005b825181101561113757739f8f72aa9304c8b593d555f12ef6589cc3a579a26001600160a01b0316838281518110610f3357610f33611b19565b60200260200101516001600160a01b03161415610fbe5760405180604001604052806040518060400160405280600381526020016226a5a960e91b8152508152602001848381518110610f8857610f88611b19565b60200260200101516001600160a01b0316815250828281518110610fae57610fae611b19565b6020026020010181905250611125565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0316838281518110610fee57610fee611b19565b60200260200101516001600160a01b031614156110435760405180604001604052806040518060400160405280600381526020016208aa8960eb1b8152508152602001848381518110610f8857610f88611b19565b604051806040016040528084838151811061106057611060611b19565b60200260200101516001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b1580156110a057600080fd5b505afa1580156110b4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110dc9190810190611797565b81526020018483815181106110f3576110f3611b19565b60200260200101516001600160a01b031681525082828151811061111957611119611b19565b60200260200101819052505b8061112f81611ae8565b915050610efa565b509392505050565b6000806000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561119e57600080fd5b505afa1580156111b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111d69190611688565b6040516335ea6a7560e01b81526001600160a01b03878116600483015291909116906335ea6a75906024016101806040518083038186803b15801561121a57600080fd5b505afa15801561122e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112529190611847565b60e0810151610100820151610120909201519097919650945092505050565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156112ce57600080fd5b505afa1580156112e2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113069190611688565b90506000816001600160a01b031663d1946dbc6040518163ffffffff1660e01b815260040160006040518083038186803b15801561134357600080fd5b505afa158015611357573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261137f91908101906116de565b90506000815167ffffffffffffffff81111561139d5761139d611b2f565b6040519080825280602002602001820160405280156113e357816020015b6040805180820190915260608152600060208201528152602001906001900390816113bb5790505b50905060005b8251811015611137576000846001600160a01b03166335ea6a7585848151811061141557611415611b19565b60200260200101516040518263ffffffff1660e01b815260040161144891906001600160a01b0391909116815260200190565b6101806040518083038186803b15801561146157600080fd5b505afa158015611475573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114999190611847565b905060405180604001604052808260e001516001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b1580156114e357600080fd5b505afa1580156114f7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261151f9190810190611797565b81526020018260e001516001600160a01b031681525083838151811061154757611547611b19565b602002602001018190525050808061155e90611ae8565b9150506113e9565b60006080821060405180604001604052806002815260200161373760f01b815250906115ae5760405162461bcd60e51b81526004016115a59190611a13565b60405180910390fd5b506115ba826002611a99565b6115c5906001611a81565b925190921c600116151592915050565b80516115e081611b45565b919050565b6000602082840312156115f757600080fd5b6040516020810181811067ffffffffffffffff8211171561161a5761161a611b2f565b6040529151825250919050565b80516001600160801b03811681146115e057600080fd5b805164ffffffffff811681146115e057600080fd5b805160ff811681146115e057600080fd5b60006020828403121561167657600080fd5b813561168181611b45565b9392505050565b60006020828403121561169a57600080fd5b815161168181611b45565b600080604083850312156116b857600080fd5b82356116c381611b45565b915060208301356116d381611b45565b809150509250929050565b600060208083850312156116f157600080fd5b825167ffffffffffffffff8082111561170957600080fd5b818501915085601f83011261171d57600080fd5b81518181111561172f5761172f611b2f565b8060051b9150611740848301611a50565b8181528481019084860184860187018a101561175b57600080fd5b600095505b8386101561178a578051945061177585611b45565b84835260019590950194918601918601611760565b5098975050505050505050565b6000602082840312156117a957600080fd5b815167ffffffffffffffff808211156117c157600080fd5b818401915084601f8301126117d557600080fd5b8151818111156117e7576117e7611b2f565b6117fa601f8201601f1916602001611a50565b915080825285602082850101111561181157600080fd5b611822816020840160208601611ab8565b50949350505050565b60006020828403121561183d57600080fd5b61168183836115e5565b6000610180828403121561185a57600080fd5b611862611a26565b61186c84846115e5565b815261187a60208401611627565b602082015261188b60408401611627565b604082015261189c60608401611627565b60608201526118ad60808401611627565b60808201526118be60a08401611627565b60a08201526118cf60c0840161163e565b60c08201526118e060e084016115d5565b60e08201526101006118f38185016115d5565b908201526101206119058482016115d5565b908201526101406119178482016115d5565b90820152610160611929848201611653565b908201529392505050565b60006020828403121561194657600080fd5b5051919050565b60006020828403121561195f57600080fd5b6116818261163e565b60008151808452611980816020860160208601611ab8565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015611a0557888303603f19018552815180518785526119df88860182611968565b918901516001600160a01b031694890194909452948701949250908601906001016119bb565b509098975050505050505050565b6020815260006116816020830184611968565b604051610180810167ffffffffffffffff81118282101715611a4a57611a4a611b2f565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611a7957611a79611b2f565b604052919050565b60008219821115611a9457611a94611b03565b500190565b6000816000190483118215151615611ab357611ab3611b03565b500290565b60005b83811015611ad3578181015183820152602001611abb565b83811115611ae2576000848401525b50505050565b6000600019821415611afc57611afc611b03565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114611b5a57600080fd5b5056fea2646970667358221220aee5af079c70e9cbd328ad0729ab147f136eb86b8abd45c666d6b88cebbcbee164736f6c63430008060033",
  "deployedSourceMap": "746:5766:52:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1125:65;;;;;;;;-1:-1:-1;;;;;6505:32:114;;;6487:51;;6475:2;6460:18;1125:65:52;;;;;;;;4576:1476;;;;;;:::i;:::-;;:::i;:::-;;;;10593:25:114;;;10649:2;10634:18;;10627:34;;;;10677:18;;;10670:34;;;;10735:2;10720:18;;10713:34;;;;10778:3;10763:19;;10756:35;;;;10822:3;10807:19;;10800:35;10866:3;10851:19;;10844:35;10928:12;10916:25;10910:3;10895:19;;10888:54;10986:14;10979:22;10973:3;10958:19;;10951:51;10580:3;10565:19;4576:1476:52;10547:461:114;3517:1055:52;;;;;;:::i;:::-;;:::i;:::-;;;;9782:25:114;;;9838:2;9823:18;;9816:34;;;;9866:18;;;9859:34;;;;9924:2;9909:18;;9902:34;;;;9967:3;9952:19;;9945:35;;;;10011:3;9996:19;;9989:35;10055:3;10040:19;;10033:35;10099:3;10084:19;;10077:35;10143:3;10128:19;;10121:35;10205:12;10193:25;10187:3;10172:19;;10165:54;9769:3;9754:19;3517:1055:52;9736:489:114;2701:812:52;;;;;;:::i;:::-;;:::i;:::-;;;;8876:25:114;;;8932:2;8917:18;;8910:34;;;;8960:18;;;8953:34;;;;9018:2;9003:18;;8996:34;;;;9061:3;9046:19;;9039:35;;;;9118:14;9111:22;9105:3;9090:19;;9083:51;9178:14;9171:22;9165:3;9150:19;;9143:51;9238:14;9231:22;9225:3;9210:19;;9203:51;9298:14;9291:22;9285:3;9270:19;;9263:51;9358:14;9351:22;9345:3;9330:19;;9323:51;8863:3;8848:19;2701:812:52;8830:550:114;1316:788:52;;;:::i;:::-;;;;;;;:::i;6056:454::-;;;;;;:::i;:::-;;:::i;:::-;;;;-1:-1:-1;;;;;6807:15:114;;;6789:34;;6859:15;;;6854:2;6839:18;;6832:43;6911:15;;6891:18;;;6884:43;;;;6739:2;6724:18;6056:454:52;6706:227:114;2108:589:52;;;:::i;4576:1476::-;4675:28;4711:25;4744:27;4779;4814:26;4848:24;4880:21;4909:28;4945:29;4989:36;5047:18;-1:-1:-1;;;;;5047:33:52;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5034:71;;-1:-1:-1;;;5034:71:52;;-1:-1:-1;;;;;6505:32:114;;;5034:71:52;;;6487:51:114;5034:64:52;;;;;;;6460:18:114;;5034:71:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4989:116;;5112:48;5182:18;-1:-1:-1;;;;;5182:33:52;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5169:76;;-1:-1:-1;;;5169:76:52;;-1:-1:-1;;;;;6505:32:114;;;5169:76:52;;;6487:51:114;5169:70:52;;;;;;;6460:18:114;;5169:76:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5290:21;;;;5275:53;;-1:-1:-1;;;5275:53:52;;-1:-1:-1;;;;;6505:32:114;;;5275:53:52;;;6487:51:114;5112:133:52;;-1:-1:-1;5275:47:52;;;;;6460:18:114;;5275:53:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5371:32;;;;5356:64;;-1:-1:-1;;;5356:64:52;;-1:-1:-1;;;;;6505:32:114;;;5356:64:52;;;6487:51:114;5252:76:52;;-1:-1:-1;5356:58:52;;;;;6460:18:114;;5356:64:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5461:30;;;;5446:62;;-1:-1:-1;;;5446:62:52;;-1:-1:-1;;;;;6505:32:114;;;5446:62:52;;;6487:51:114;5334:86:52;;-1:-1:-1;5446:56:52;;;;;6460:18:114;;5446:62:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5553:30;;;;5536:73;;-1:-1:-1;;;5536:73:52;;-1:-1:-1;;;;;6505:32:114;;;5536:73:52;;;6487:51:114;5426:82:52;;-1:-1:-1;5536:67:52;;;;;6460:18:114;;5536:73:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5655:32;;;;5636:74;;-1:-1:-1;;;5636:74:52;;-1:-1:-1;;;;;6505:32:114;;;5636:74:52;;;6487:51:114;5514:95:52;;-1:-1:-1;5636:68:52;;;;;6460:18:114;;5636:74:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5615:95;;5732:7;:28;;;-1:-1:-1;;;;;5716:44:52;;;5802:7;:30;;;-1:-1:-1;;;;;5785:66:52;;5852:4;5785:72;;;;;;;;;;;;;;-1:-1:-1;;;;;6505:32:114;;;;6487:51;;6475:2;6460:18;;6442:102;5785:72:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5904:30;;;;5887:85;;-1:-1:-1;;;5887:85:52;;-1:-1:-1;;;;;6505:32:114;;;5887:85:52;;;6487:51:114;5766:91:52;;-1:-1:-1;5887:67:52;;;;;6460:18:114;;5887:85:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5863:109;;6005:42;6036:7;:10;;;6005:42;;:10;:30;;:42;;;;:::i;:::-;5978:69;;4983:1069;;4576:1476;;;;;;;;;;;:::o;3517:1055::-;3598:26;3632:23;3663:25;3696:21;3725:26;3759:24;3791:31;3830:22;3860:27;3895:26;3936:36;3994:18;-1:-1:-1;;;;;3994:33:52;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3981:71;;-1:-1:-1;;;3981:71:52;;-1:-1:-1;;;;;6505:32:114;;;3981:71:52;;;6487:51:114;3981:64:52;;;;;;;6460:18:114;;3981:71:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4106:21;;;;4074:54;;-1:-1:-1;;;4074:54:52;;-1:-1:-1;;;;;6505:32:114;;;4074:54:52;;;6487:51:114;4106:21:52;;-1:-1:-1;4074:31:52;;;;;6460:18:114;;4074:54:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4151:7;:30;;;-1:-1:-1;;;;;4136:58:52;;:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4219:7;:32;;;-1:-1:-1;;;;;4204:60:52;;:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4274:7;:28;;;4310:7;:33;;;4351:7;:31;;;4407:7;:30;;;-1:-1:-1;;;;;4390:69:52;;:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4469:7;:22;;;4499:7;:27;;;4534:7;:27;;;4059:508;-1:-1:-1;;;;;4059:508:52;;;;-1:-1:-1;;;;;4059:508:52;;;;-1:-1:-1;;;;;4059:508:52;;;;-1:-1:-1;;;;;4059:508:52;;;;-1:-1:-1;;;;;4059:508:52;;;;;;;;;;;;;;;;;;;;;;;;3517:1055;;;;;;;;;;;:::o;2701:812::-;2795:16;2819:11;2838:28;2874:24;2906:21;2935:29;2972:21;3001:28;3037:13;3058;3086:54;3162:18;-1:-1:-1;;;;;3162:33:52;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3149:73;;-1:-1:-1;;;3149:73:52;;-1:-1:-1;;;;;6505:32:114;;;3149:73:52;;;6487:51:114;3149:66:52;;;;;;;6460:18:114;;3149:73:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3086:136;;3302:38;:13;11152:9:53;11164;11152:21;;;;1692:2;11181:85;;;;;;1754:2;11274:77;;;;;;1815:2;11359:67;;;;;;2113:2;11434:71;;;;;;10941:575;3302:38:52;11940:9:53;;3229:111:52;;-1:-1:-1;3229:111:52;;-1:-1:-1;3229:111:52;;-1:-1:-1;3229:111:52;-1:-1:-1;3229:111:52;;-1:-1:-1;11952:12:53;11940:24;;11939:31;;;11991:12;11979:24;;11978:31;;;12030:15;12018:27;;12017:34;;;12072:22;12060:34;12059:41;;2701:812:52;;;;-1:-1:-1;3484:20:52;;2701:812;;;;3484:24;;;;3347:103;;;;-1:-1:-1;3347:103:52;;-1:-1:-1;3347:103:52;-1:-1:-1;2701:812:52;-1:-1:-1;;;2701:812:52:o;1316:788::-;1371:18;1397:17;1430:18;-1:-1:-1;;;;;1430:33:52;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1397:69;;1472:25;1500:4;-1:-1:-1;;;;;1500:20:52;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1500:22:52;;;;;;;;;;;;:::i;:::-;1472:50;;1528:33;1580:8;:15;1564:32;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;1564:32:52;;;;;;;;;;;;;;;;1528:68;;1607:9;1602:471;1626:8;:15;1622:1;:19;1602:471;;;938:42;-1:-1:-1;;;;;1660:18:52;:8;1669:1;1660:11;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;1660:18:52;;1656:134;;;1710:53;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1710:53:52;;;;;;;1750:8;1759:1;1750:11;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;1710:53:52;;;;1690:14;1705:1;1690:17;;;;;;;;:::i;:::-;;;;;;:73;;;;1773:8;;1656:134;1007:42;-1:-1:-1;;;;;1801:18:52;:8;1810:1;1801:11;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;1801:18:52;;1797:134;;;1851:53;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1851:53:52;;;;;;;1891:8;1900:1;1891:11;;;;;;;;:::i;1797:134::-;1958:108;;;;;;;;2001:8;2010:1;2001:11;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;1986:34:52;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1986:36:52;;;;;;;;;;;;:::i;:::-;1958:108;;;;2046:8;2055:1;2046:11;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;1958:108:52;;;;1938:14;1953:1;1938:17;;;;;;;;:::i;:::-;;;;;;:128;;;;1602:471;1643:3;;;;:::i;:::-;;;;1602:471;;;-1:-1:-1;2085:14:52;1316:788;-1:-1:-1;;;1316:788:52:o;6056:454::-;6148:21;6177:30;6215:32;6262:36;6320:18;-1:-1:-1;;;;;6320:33:52;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6307:71;;-1:-1:-1;;;6307:71:52;;-1:-1:-1;;;;;6505:32:114;;;6307:71:52;;;6487:51:114;6307:64:52;;;;;;;6460:18:114;;6307:71:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6400:21;;;;6429:30;;;;6467:32;;;;;6400:21;;6429:30;;-1:-1:-1;6467:32:52;-1:-1:-1;6056:454:52;-1:-1:-1;;;6056:454:52:o;2108:589::-;2156:18;2182:17;2215:18;-1:-1:-1;;;;;2215:33:52;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2182:69;;2257:25;2285:4;-1:-1:-1;;;;;2285:20:52;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2285:22:52;;;;;;;;;;;;:::i;:::-;2257:50;;2313:26;2358:8;:15;2342:32;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;2342:32:52;;;;;;;;;;;;;;;;2313:61;;2385:9;2380:293;2404:8;:15;2400:1;:19;2380:293;;;2434:40;2477:4;-1:-1:-1;;;;;2477:19:52;;2497:8;2506:1;2497:11;;;;;;;;:::i;:::-;;;;;;;2477:32;;;;;;;;;;;;;;-1:-1:-1;;;;;6505:32:114;;;;6487:51;;6475:2;6460:18;;6442:102;2477:32:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2434:75;;2530:136;;;;;;;;2573:11;:25;;;-1:-1:-1;;;;;2558:48:52;;:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2558:50:52;;;;;;;;;;;;:::i;:::-;2530:136;;;;2632:11;:25;;;-1:-1:-1;;;;;2530:136:52;;;;2517:7;2525:1;2517:10;;;;;;;;:::i;:::-;;;;;;:149;;;;2426:247;2421:3;;;;;:::i;:::-;;;;2380:293;;3100:260:54;3230:4;3267:3;3252:12;:18;3272:23;;;;;;;;;;;;;-1:-1:-1;;;3272:23:54;;;3244:52;;;;;-1:-1:-1;;;3244:52:54;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;3324:16:54;:12;3339:1;3324:16;:::i;:::-;:20;;3343:1;3324:20;:::i;:::-;3310:9;;:35;;;3349:1;3309:41;:46;;;3100:260;-1:-1:-1;;3100:260:54:o;14:138:114:-;93:13;;115:31;93:13;115:31;:::i;:::-;74:78;;;:::o;157:426::-;238:5;286:4;274:9;269:3;265:19;261:30;258:2;;;304:1;301;294:12;258:2;337;331:9;379:4;371:6;367:17;450:6;438:10;435:22;414:18;402:10;399:34;396:62;393:2;;;461:18;;:::i;:::-;497:2;490:22;560:16;;545:32;;-1:-1:-1;530:6:114;248:335;-1:-1:-1;248:335:114:o;588:192::-;667:13;;-1:-1:-1;;;;;709:46:114;;699:57;;689:2;;770:1;767;760:12;785:169;863:13;;916:12;905:24;;895:35;;885:2;;944:1;941;934:12;959:160;1036:13;;1089:4;1078:16;;1068:27;;1058:2;;1109:1;1106;1099:12;1124:247;1183:6;1236:2;1224:9;1215:7;1211:23;1207:32;1204:2;;;1252:1;1249;1242:12;1204:2;1291:9;1278:23;1310:31;1335:5;1310:31;:::i;:::-;1360:5;1194:177;-1:-1:-1;;;1194:177:114:o;1376:251::-;1446:6;1499:2;1487:9;1478:7;1474:23;1470:32;1467:2;;;1515:1;1512;1505:12;1467:2;1547:9;1541:16;1566:31;1591:5;1566:31;:::i;1632:388::-;1700:6;1708;1761:2;1749:9;1740:7;1736:23;1732:32;1729:2;;;1777:1;1774;1767:12;1729:2;1816:9;1803:23;1835:31;1860:5;1835:31;:::i;:::-;1885:5;-1:-1:-1;1942:2:114;1927:18;;1914:32;1955:33;1914:32;1955:33;:::i;:::-;2007:7;1997:17;;;1719:301;;;;;:::o;2025:1022::-;2120:6;2151:2;2194;2182:9;2173:7;2169:23;2165:32;2162:2;;;2210:1;2207;2200:12;2162:2;2243:9;2237:16;2272:18;2313:2;2305:6;2302:14;2299:2;;;2329:1;2326;2319:12;2299:2;2367:6;2356:9;2352:22;2342:32;;2412:7;2405:4;2401:2;2397:13;2393:27;2383:2;;2434:1;2431;2424:12;2383:2;2463;2457:9;2485:2;2481;2478:10;2475:2;;;2491:18;;:::i;:::-;2537:2;2534:1;2530:10;2520:20;;2560:28;2584:2;2580;2576:11;2560:28;:::i;:::-;2622:15;;;2653:12;;;;2685:11;;;2715;;;2711:20;;2708:33;-1:-1:-1;2705:2:114;;;2754:1;2751;2744:12;2705:2;2776:1;2767:10;;2786:231;2800:2;2797:1;2794:9;2786:231;;;2864:3;2858:10;2845:23;;2881:31;2906:5;2881:31;:::i;:::-;2925:18;;;2818:1;2811:9;;;;;2963:12;;;;2995;;2786:231;;;-1:-1:-1;3036:5:114;2131:916;-1:-1:-1;;;;;;;;2131:916:114:o;3052:706::-;3132:6;3185:2;3173:9;3164:7;3160:23;3156:32;3153:2;;;3201:1;3198;3191:12;3153:2;3234:9;3228:16;3263:18;3304:2;3296:6;3293:14;3290:2;;;3320:1;3317;3310:12;3290:2;3358:6;3347:9;3343:22;3333:32;;3403:7;3396:4;3392:2;3388:13;3384:27;3374:2;;3425:1;3422;3415:12;3374:2;3454;3448:9;3476:2;3472;3469:10;3466:2;;;3482:18;;:::i;:::-;3524:53;3567:2;3548:13;;-1:-1:-1;;3544:27:114;3573:2;3540:36;3524:53;:::i;:::-;3511:66;;3600:2;3593:5;3586:17;3640:7;3635:2;3630;3626;3622:11;3618:20;3615:33;3612:2;;;3661:1;3658;3651:12;3612:2;3674:54;3725:2;3720;3713:5;3709:14;3704:2;3700;3696:11;3674:54;:::i;:::-;-1:-1:-1;3747:5:114;3143:615;-1:-1:-1;;;;3143:615:114:o;3763:282::-;3875:6;3928:2;3916:9;3907:7;3903:23;3899:32;3896:2;;;3944:1;3941;3934:12;3896:2;3967:72;4031:7;4020:9;3967:72;:::i;4050:1339::-;4150:6;4203:3;4191:9;4182:7;4178:23;4174:33;4171:2;;;4220:1;4217;4210:12;4171:2;4246:22;;:::i;:::-;4291:72;4355:7;4344:9;4291:72;:::i;:::-;4284:5;4277:87;4396:49;4441:2;4430:9;4426:18;4396:49;:::i;:::-;4391:2;4384:5;4380:14;4373:73;4478:49;4523:2;4512:9;4508:18;4478:49;:::i;:::-;4473:2;4466:5;4462:14;4455:73;4560:49;4605:2;4594:9;4590:18;4560:49;:::i;:::-;4555:2;4548:5;4544:14;4537:73;4643:50;4688:3;4677:9;4673:19;4643:50;:::i;:::-;4637:3;4630:5;4626:15;4619:75;4727:50;4772:3;4761:9;4757:19;4727:50;:::i;:::-;4721:3;4714:5;4710:15;4703:75;4811:49;4855:3;4844:9;4840:19;4811:49;:::i;:::-;4805:3;4798:5;4794:15;4787:74;4894:50;4939:3;4928:9;4924:19;4894:50;:::i;:::-;4888:3;4881:5;4877:15;4870:75;4964:3;4999:49;5044:2;5033:9;5029:18;4999:49;:::i;:::-;4983:14;;;4976:73;5068:3;5103:49;5133:18;;;5103:49;:::i;:::-;5087:14;;;5080:73;5172:3;5207:49;5237:18;;;5207:49;:::i;:::-;5191:14;;;5184:73;5276:3;5311:47;5339:18;;;5311:47;:::i;:::-;5295:14;;;5288:71;5299:5;4161:1228;-1:-1:-1;;;4161:1228:114:o;5678:184::-;5748:6;5801:2;5789:9;5780:7;5776:23;5772:32;5769:2;;;5817:1;5814;5807:12;5769:2;-1:-1:-1;5840:16:114;;5759:103;-1:-1:-1;5759:103:114:o;5867:206::-;5936:6;5989:2;5977:9;5968:7;5964:23;5960:32;5957:2;;;6005:1;6002;5995:12;5957:2;6028:39;6057:9;6028:39;:::i;6078:258::-;6120:3;6158:5;6152:12;6185:6;6180:3;6173:19;6201:63;6257:6;6250:4;6245:3;6241:14;6234:4;6227:5;6223:16;6201:63;:::i;:::-;6318:2;6297:15;-1:-1:-1;;6293:29:114;6284:39;;;;6325:4;6280:50;;6128:208;-1:-1:-1;;6128:208:114:o;6938:1092::-;7136:4;7165:2;7205;7194:9;7190:18;7235:2;7224:9;7217:21;7258:6;7293;7287:13;7324:6;7316;7309:22;7350:2;7340:12;;7383:2;7372:9;7368:18;7361:25;;7445:2;7435:6;7432:1;7428:14;7417:9;7413:30;7409:39;7483:2;7475:6;7471:15;7504:1;7514:487;7528:6;7525:1;7522:13;7514:487;;;7593:22;;;-1:-1:-1;;7589:36:114;7577:49;;7649:13;;7695:9;;7717:18;;;7762:48;7794:15;;;7695:9;7762:48;:::i;:::-;7857:11;;;7851:18;-1:-1:-1;;;;;7847:44:114;7830:15;;;7823:69;;;;7979:12;;;;7748:62;-1:-1:-1;7944:15:114;;;;7888:1;7543:9;7514:487;;;-1:-1:-1;8018:6:114;;7145:885;-1:-1:-1;;;;;;;;7145:885:114:o;8282:220::-;8431:2;8420:9;8413:21;8394:4;8451:45;8492:2;8481:9;8477:18;8469:6;8451:45;:::i;11013:252::-;11085:2;11079:9;11127:3;11115:16;;11161:18;11146:34;;11182:22;;;11143:62;11140:2;;;11208:18;;:::i;:::-;11244:2;11237:22;11059:206;:::o;11270:275::-;11341:2;11335:9;11406:2;11387:13;;-1:-1:-1;;11383:27:114;11371:40;;11441:18;11426:34;;11462:22;;;11423:62;11420:2;;;11488:18;;:::i;:::-;11524:2;11517:22;11315:230;;-1:-1:-1;11315:230:114:o;11550:128::-;11590:3;11621:1;11617:6;11614:1;11611:13;11608:2;;;11627:18;;:::i;:::-;-1:-1:-1;11663:9:114;;11598:80::o;11683:168::-;11723:7;11789:1;11785;11781:6;11777:14;11774:1;11771:21;11766:1;11759:9;11752:17;11748:45;11745:2;;;11796:18;;:::i;:::-;-1:-1:-1;11836:9:114;;11735:116::o;11856:258::-;11928:1;11938:113;11952:6;11949:1;11946:13;11938:113;;;12028:11;;;12022:18;12009:11;;;12002:39;11974:2;11967:10;11938:113;;;12069:6;12066:1;12063:13;12060:2;;;12104:1;12095:6;12090:3;12086:16;12079:27;12060:2;;11909:205;;;:::o;12119:135::-;12158:3;-1:-1:-1;;12179:17:114;;12176:2;;;12199:18;;:::i;:::-;-1:-1:-1;12246:1:114;12235:13;;12166:88::o;12259:127::-;12320:10;12315:3;12311:20;12308:1;12301:31;12351:4;12348:1;12341:15;12375:4;12372:1;12365:15;12391:127;12452:10;12447:3;12443:20;12440:1;12433:31;12483:4;12480:1;12473:15;12507:4;12504:1;12497:15;12523:127;12584:10;12579:3;12575:20;12572:1;12565:31;12615:4;12612:1;12605:15;12639:4;12636:1;12629:15;12655:131;-1:-1:-1;;;;;12730:31:114;;12720:42;;12710:2;;12776:1;12773;12766:12;12710:2;12700:86;:::o",
  "language": "Solidity",
  "natspec": {
    "kind": "dev",
    "methods": {},
    "version": 1
  },
  "offset": [
    746,
    6512
  ],
  "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x7D JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x3E150141 GT PUSH2 0x5B JUMPI DUP1 PUSH4 0x3E150141 EQ PUSH2 0x18A JUMPI DUP1 PUSH4 0xB316FF89 EQ PUSH2 0x1F1 JUMPI DUP1 PUSH4 0xD2493B6C EQ PUSH2 0x206 JUMPI DUP1 PUSH4 0xF561AE41 EQ PUSH2 0x243 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x542975C EQ PUSH2 0x82 JUMPI DUP1 PUSH4 0x28DD2D01 EQ PUSH2 0xC6 JUMPI DUP1 PUSH4 0x35EA6A75 EQ PUSH2 0x126 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA9 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xD9 PUSH2 0xD4 CALLDATASIZE PUSH1 0x4 PUSH2 0x16A5 JUMP JUMPDEST PUSH2 0x24B JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP10 DUP11 MSTORE PUSH1 0x20 DUP11 ADD SWAP9 SWAP1 SWAP9 MSTORE SWAP7 DUP9 ADD SWAP6 SWAP1 SWAP6 MSTORE PUSH1 0x60 DUP8 ADD SWAP4 SWAP1 SWAP4 MSTORE PUSH1 0x80 DUP7 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0xA0 DUP6 ADD MSTORE PUSH1 0xC0 DUP5 ADD MSTORE PUSH5 0xFFFFFFFFFF AND PUSH1 0xE0 DUP4 ADD MSTORE ISZERO ISZERO PUSH2 0x100 DUP3 ADD MSTORE PUSH2 0x120 ADD PUSH2 0xBD JUMP JUMPDEST PUSH2 0x139 PUSH2 0x134 CALLDATASIZE PUSH1 0x4 PUSH2 0x1664 JUMP JUMPDEST PUSH2 0x852 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP11 DUP12 MSTORE PUSH1 0x20 DUP12 ADD SWAP10 SWAP1 SWAP10 MSTORE SWAP8 DUP10 ADD SWAP7 SWAP1 SWAP7 MSTORE PUSH1 0x60 DUP9 ADD SWAP5 SWAP1 SWAP5 MSTORE PUSH1 0x80 DUP8 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0xA0 DUP7 ADD MSTORE PUSH1 0xC0 DUP6 ADD MSTORE PUSH1 0xE0 DUP5 ADD MSTORE PUSH2 0x100 DUP4 ADD MSTORE PUSH5 0xFFFFFFFFFF AND PUSH2 0x120 DUP3 ADD MSTORE PUSH2 0x140 ADD PUSH2 0xBD JUMP JUMPDEST PUSH2 0x19D PUSH2 0x198 CALLDATASIZE PUSH1 0x4 PUSH2 0x1664 JUMP JUMPDEST PUSH2 0xBCF JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP11 DUP12 MSTORE PUSH1 0x20 DUP12 ADD SWAP10 SWAP1 SWAP10 MSTORE SWAP8 DUP10 ADD SWAP7 SWAP1 SWAP7 MSTORE PUSH1 0x60 DUP9 ADD SWAP5 SWAP1 SWAP5 MSTORE PUSH1 0x80 DUP8 ADD SWAP3 SWAP1 SWAP3 MSTORE ISZERO ISZERO PUSH1 0xA0 DUP7 ADD MSTORE ISZERO ISZERO PUSH1 0xC0 DUP6 ADD MSTORE ISZERO ISZERO PUSH1 0xE0 DUP5 ADD MSTORE ISZERO ISZERO PUSH2 0x100 DUP4 ADD MSTORE ISZERO ISZERO PUSH2 0x120 DUP3 ADD MSTORE PUSH2 0x140 ADD PUSH2 0xBD JUMP JUMPDEST PUSH2 0x1F9 PUSH2 0xD82 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xBD SWAP2 SWAP1 PUSH2 0x1994 JUMP JUMPDEST PUSH2 0x219 PUSH2 0x214 CALLDATASIZE PUSH1 0x4 PUSH2 0x1664 JUMP JUMPDEST PUSH2 0x113F JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP5 DUP6 AND DUP2 MSTORE SWAP3 DUP5 AND PUSH1 0x20 DUP5 ADD MSTORE SWAP3 AND SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x60 ADD PUSH2 0xBD JUMP JUMPDEST PUSH2 0x1F9 PUSH2 0x1271 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x261BF8B PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2B3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2C7 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2EB SWAP2 SWAP1 PUSH2 0x1688 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x35EA6A75 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP15 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE SWAP2 SWAP1 SWAP2 AND SWAP1 PUSH4 0x35EA6A75 SWAP1 PUSH1 0x24 ADD PUSH2 0x180 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x32F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x343 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x367 SWAP2 SWAP1 PUSH2 0x1847 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x261BF8B PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3C4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x3D8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3FC SWAP2 SWAP1 PUSH2 0x1688 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x4417A583 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP15 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE SWAP2 SWAP1 SWAP2 AND SWAP1 PUSH4 0x4417A583 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x43F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x453 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x477 SWAP2 SWAP1 PUSH2 0x182B JUMP JUMPDEST PUSH1 0xE0 DUP4 ADD MLOAD PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP16 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE SWAP3 SWAP4 POP SWAP2 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x4C0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x4D4 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x4F8 SWAP2 SWAP1 PUSH2 0x1934 JUMP JUMPDEST PUSH2 0x120 DUP4 ADD MLOAD PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP16 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE SWAP3 SWAP14 POP SWAP2 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x542 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x556 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x57A SWAP2 SWAP1 PUSH2 0x1934 JUMP JUMPDEST PUSH2 0x100 DUP4 ADD MLOAD PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP16 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE SWAP3 SWAP12 POP SWAP2 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5C4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x5D8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x5FC SWAP2 SWAP1 PUSH2 0x1934 JUMP JUMPDEST PUSH2 0x100 DUP4 ADD MLOAD PUSH1 0x40 MLOAD PUSH4 0x631A6FD5 PUSH1 0xE1 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP16 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE SWAP3 SWAP13 POP SWAP2 AND SWAP1 PUSH4 0xC634DFAA SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x646 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x65A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x67E SWAP2 SWAP1 PUSH2 0x1934 JUMP JUMPDEST PUSH2 0x120 DUP4 ADD MLOAD PUSH1 0x40 MLOAD PUSH4 0xED1279F PUSH1 0xE1 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP16 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE SWAP3 SWAP11 POP SWAP2 AND SWAP1 PUSH4 0x1DA24F3E SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x6C8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x6DC JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x700 SWAP2 SWAP1 PUSH2 0x1934 JUMP JUMPDEST SWAP7 POP DUP2 PUSH1 0x60 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB AND SWAP5 POP DUP2 PUSH2 0x100 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xE78C9B3B DUP14 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x752 SWAP2 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x76A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x77E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x7A2 SWAP2 SWAP1 PUSH2 0x1934 JUMP JUMPDEST PUSH2 0x100 DUP4 ADD MLOAD PUSH1 0x40 MLOAD PUSH4 0x1E739AE3 PUSH1 0xE2 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP16 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE SWAP3 SWAP9 POP SWAP2 AND SWAP1 PUSH4 0x79CE6B8C SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x7EC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x800 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x824 SWAP2 SWAP1 PUSH2 0x194D JUMP JUMPDEST SWAP4 POP PUSH2 0x841 DUP3 PUSH2 0x160 ADD MLOAD PUSH1 0xFF AND DUP3 PUSH2 0x1566 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP3 POP POP POP SWAP3 SWAP6 SWAP9 POP SWAP3 SWAP6 SWAP9 POP SWAP3 SWAP6 SWAP9 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x261BF8B PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x8BC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x8D0 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x8F4 SWAP2 SWAP1 PUSH2 0x1688 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x35EA6A75 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP15 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE SWAP2 SWAP1 SWAP2 AND SWAP1 PUSH4 0x35EA6A75 SWAP1 PUSH1 0x24 ADD PUSH2 0x180 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x938 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x94C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x970 SWAP2 SWAP1 PUSH2 0x1847 JUMP JUMPDEST PUSH1 0xE0 DUP2 ADD MLOAD PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 DUP3 AND PUSH1 0x4 DUP3 ADD MSTORE SWAP2 SWAP3 POP DUP14 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x9B9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x9CD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x9F1 SWAP2 SWAP1 PUSH2 0x1934 JUMP JUMPDEST DUP2 PUSH2 0x100 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x18160DDD PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xA2F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xA43 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xA67 SWAP2 SWAP1 PUSH2 0x1934 JUMP JUMPDEST DUP3 PUSH2 0x120 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x18160DDD PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xAA5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xAB9 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xADD SWAP2 SWAP1 PUSH2 0x1934 JUMP JUMPDEST DUP4 PUSH1 0x60 ADD MLOAD DUP5 PUSH1 0x80 ADD MLOAD DUP6 PUSH1 0xA0 ADD MLOAD DUP7 PUSH2 0x100 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x90F6FCF2 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB2A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xB3E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xB62 SWAP2 SWAP1 PUSH2 0x1934 JUMP JUMPDEST DUP8 PUSH1 0x20 ADD MLOAD DUP9 PUSH1 0x40 ADD MLOAD DUP10 PUSH1 0xC0 ADD MLOAD DUP7 PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB AND SWAP7 POP DUP6 PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB AND SWAP6 POP DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB AND SWAP5 POP DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB AND SWAP3 POP DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB AND SWAP2 POP SWAP11 POP SWAP11 POP SWAP11 POP SWAP11 POP SWAP11 POP SWAP11 POP SWAP11 POP SWAP11 POP SWAP11 POP SWAP11 POP POP SWAP2 SWAP4 SWAP6 SWAP8 SWAP10 POP SWAP2 SWAP4 SWAP6 SWAP8 SWAP10 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x261BF8B PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xC39 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xC4D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xC71 SWAP2 SWAP1 PUSH2 0x1688 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0xC44B11F7 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP15 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE SWAP2 SWAP1 SWAP2 AND SWAP1 PUSH4 0xC44B11F7 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xCB4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xCC8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xCEC SWAP2 SWAP1 PUSH2 0x182B JUMP JUMPDEST SWAP1 POP PUSH2 0xD1D DUP2 MLOAD PUSH2 0xFFFF DUP1 DUP3 AND SWAP3 PUSH1 0x10 DUP4 SWAP1 SHR DUP3 AND SWAP3 PUSH1 0x20 DUP2 SWAP1 SHR DUP4 AND SWAP3 PUSH1 0x30 DUP3 SWAP1 SHR PUSH1 0xFF AND SWAP3 PUSH1 0x40 SWAP3 SWAP1 SWAP3 SHR AND SWAP1 JUMP JUMPDEST DUP6 MLOAD SWAP2 SWAP16 POP SWAP4 SWAP14 POP SWAP2 SWAP12 POP SWAP10 POP SWAP1 SWAP8 POP PUSH8 0x100000000000000 DUP2 AND ISZERO ISZERO SWAP1 PUSH8 0x200000000000000 DUP2 AND ISZERO ISZERO SWAP1 PUSH8 0x400000000000000 DUP2 AND ISZERO ISZERO SWAP1 PUSH8 0x800000000000000 AND ISZERO ISZERO SWAP14 SWAP16 SWAP13 SWAP15 POP SWAP11 SWAP13 SWAP10 SWAP12 SWAP9 SWAP11 DUP14 ISZERO ISZERO SWAP11 SWAP1 SWAP10 SWAP1 SWAP9 POP SWAP2 SWAP7 POP SWAP5 POP SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x261BF8B PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xDDF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xDF3 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE17 SWAP2 SWAP1 PUSH2 0x1688 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xD1946DBC PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE54 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xE68 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0xE90 SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0x16DE JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xEAE JUMPI PUSH2 0xEAE PUSH2 0x1B2F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0xEF4 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 PUSH1 0x20 DUP3 ADD MSTORE DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xECC JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 MLOAD DUP2 LT ISZERO PUSH2 0x1137 JUMPI PUSH20 0x9F8F72AA9304C8B593D555F12EF6589CC3A579A2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0xF33 JUMPI PUSH2 0xF33 PUSH2 0x1B19 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ ISZERO PUSH2 0xFBE JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x3 DUP2 MSTORE PUSH1 0x20 ADD PUSH3 0x26A5A9 PUSH1 0xE9 SHL DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0xF88 JUMPI PUSH2 0xF88 PUSH2 0x1B19 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE POP DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0xFAE JUMPI PUSH2 0xFAE PUSH2 0x1B19 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH2 0x1125 JUMP JUMPDEST PUSH20 0xEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0xFEE JUMPI PUSH2 0xFEE PUSH2 0x1B19 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ ISZERO PUSH2 0x1043 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x3 DUP2 MSTORE PUSH1 0x20 ADD PUSH3 0x8AA89 PUSH1 0xEB SHL DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0xF88 JUMPI PUSH2 0xF88 PUSH2 0x1B19 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x1060 JUMPI PUSH2 0x1060 PUSH2 0x1B19 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x95D89B41 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x10A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x10B4 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0x10DC SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0x1797 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x10F3 JUMPI PUSH2 0x10F3 PUSH2 0x1B19 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE POP DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1119 JUMPI PUSH2 0x1119 PUSH2 0x1B19 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP JUMPDEST DUP1 PUSH2 0x112F DUP2 PUSH2 0x1AE8 JUMP JUMPDEST SWAP2 POP POP PUSH2 0xEFA JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x261BF8B PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x119E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x11B2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x11D6 SWAP2 SWAP1 PUSH2 0x1688 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x35EA6A75 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP8 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE SWAP2 SWAP1 SWAP2 AND SWAP1 PUSH4 0x35EA6A75 SWAP1 PUSH1 0x24 ADD PUSH2 0x180 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x121A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x122E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1252 SWAP2 SWAP1 PUSH2 0x1847 JUMP JUMPDEST PUSH1 0xE0 DUP2 ADD MLOAD PUSH2 0x100 DUP3 ADD MLOAD PUSH2 0x120 SWAP1 SWAP3 ADD MLOAD SWAP1 SWAP8 SWAP2 SWAP7 POP SWAP5 POP SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x261BF8B PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x12CE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x12E2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1306 SWAP2 SWAP1 PUSH2 0x1688 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xD1946DBC PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1343 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1357 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0x137F SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0x16DE JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x139D JUMPI PUSH2 0x139D PUSH2 0x1B2F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x13E3 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 PUSH1 0x20 DUP3 ADD MSTORE DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x13BB JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 MLOAD DUP2 LT ISZERO PUSH2 0x1137 JUMPI PUSH1 0x0 DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x35EA6A75 DUP6 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x1415 JUMPI PUSH2 0x1415 PUSH2 0x1B19 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1448 SWAP2 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH2 0x180 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1461 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1475 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1499 SWAP2 SWAP1 PUSH2 0x1847 JUMP JUMPDEST SWAP1 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP3 PUSH1 0xE0 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x95D89B41 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x14E3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x14F7 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0x151F SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0x1797 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD DUP3 PUSH1 0xE0 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE POP DUP4 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x1547 JUMPI PUSH2 0x1547 PUSH2 0x1B19 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP POP DUP1 DUP1 PUSH2 0x155E SWAP1 PUSH2 0x1AE8 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x13E9 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 LT PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x2 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x3737 PUSH1 0xF0 SHL DUP2 MSTORE POP SWAP1 PUSH2 0x15AE JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x15A5 SWAP2 SWAP1 PUSH2 0x1A13 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH2 0x15BA DUP3 PUSH1 0x2 PUSH2 0x1A99 JUMP JUMPDEST PUSH2 0x15C5 SWAP1 PUSH1 0x1 PUSH2 0x1A81 JUMP JUMPDEST SWAP3 MLOAD SWAP1 SWAP3 SHR PUSH1 0x1 AND ISZERO ISZERO SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 MLOAD PUSH2 0x15E0 DUP2 PUSH2 0x1B45 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x15F7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x161A JUMPI PUSH2 0x161A PUSH2 0x1B2F JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP2 MLOAD DUP3 MSTORE POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x15E0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 MLOAD PUSH5 0xFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x15E0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 MLOAD PUSH1 0xFF DUP2 AND DUP2 EQ PUSH2 0x15E0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1676 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0x1681 DUP2 PUSH2 0x1B45 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x169A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0x1681 DUP2 PUSH2 0x1B45 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x16B8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH2 0x16C3 DUP2 PUSH2 0x1B45 JUMP JUMPDEST SWAP2 POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH2 0x16D3 DUP2 PUSH2 0x1B45 JUMP JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x16F1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x1709 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP6 ADD SWAP2 POP DUP6 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x171D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH2 0x172F JUMPI PUSH2 0x172F PUSH2 0x1B2F JUMP JUMPDEST DUP1 PUSH1 0x5 SHL SWAP2 POP PUSH2 0x1740 DUP5 DUP4 ADD PUSH2 0x1A50 JUMP JUMPDEST DUP2 DUP2 MSTORE DUP5 DUP2 ADD SWAP1 DUP5 DUP7 ADD DUP5 DUP7 ADD DUP8 ADD DUP11 LT ISZERO PUSH2 0x175B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SWAP6 POP JUMPDEST DUP4 DUP7 LT ISZERO PUSH2 0x178A JUMPI DUP1 MLOAD SWAP5 POP PUSH2 0x1775 DUP6 PUSH2 0x1B45 JUMP JUMPDEST DUP5 DUP4 MSTORE PUSH1 0x1 SWAP6 SWAP1 SWAP6 ADD SWAP5 SWAP2 DUP7 ADD SWAP2 DUP7 ADD PUSH2 0x1760 JUMP JUMPDEST POP SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x17A9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x17C1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP5 ADD SWAP2 POP DUP5 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x17D5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH2 0x17E7 JUMPI PUSH2 0x17E7 PUSH2 0x1B2F JUMP JUMPDEST PUSH2 0x17FA PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD PUSH2 0x1A50 JUMP JUMPDEST SWAP2 POP DUP1 DUP3 MSTORE DUP6 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x1811 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1822 DUP2 PUSH1 0x20 DUP5 ADD PUSH1 0x20 DUP7 ADD PUSH2 0x1AB8 JUMP JUMPDEST POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x183D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1681 DUP4 DUP4 PUSH2 0x15E5 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x180 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x185A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1862 PUSH2 0x1A26 JUMP JUMPDEST PUSH2 0x186C DUP5 DUP5 PUSH2 0x15E5 JUMP JUMPDEST DUP2 MSTORE PUSH2 0x187A PUSH1 0x20 DUP5 ADD PUSH2 0x1627 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD MSTORE PUSH2 0x188B PUSH1 0x40 DUP5 ADD PUSH2 0x1627 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD MSTORE PUSH2 0x189C PUSH1 0x60 DUP5 ADD PUSH2 0x1627 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD MSTORE PUSH2 0x18AD PUSH1 0x80 DUP5 ADD PUSH2 0x1627 JUMP JUMPDEST PUSH1 0x80 DUP3 ADD MSTORE PUSH2 0x18BE PUSH1 0xA0 DUP5 ADD PUSH2 0x1627 JUMP JUMPDEST PUSH1 0xA0 DUP3 ADD MSTORE PUSH2 0x18CF PUSH1 0xC0 DUP5 ADD PUSH2 0x163E JUMP JUMPDEST PUSH1 0xC0 DUP3 ADD MSTORE PUSH2 0x18E0 PUSH1 0xE0 DUP5 ADD PUSH2 0x15D5 JUMP JUMPDEST PUSH1 0xE0 DUP3 ADD MSTORE PUSH2 0x100 PUSH2 0x18F3 DUP2 DUP6 ADD PUSH2 0x15D5 JUMP JUMPDEST SWAP1 DUP3 ADD MSTORE PUSH2 0x120 PUSH2 0x1905 DUP5 DUP3 ADD PUSH2 0x15D5 JUMP JUMPDEST SWAP1 DUP3 ADD MSTORE PUSH2 0x140 PUSH2 0x1917 DUP5 DUP3 ADD PUSH2 0x15D5 JUMP JUMPDEST SWAP1 DUP3 ADD MSTORE PUSH2 0x160 PUSH2 0x1929 DUP5 DUP3 ADD PUSH2 0x1653 JUMP JUMPDEST SWAP1 DUP3 ADD MSTORE SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1946 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP MLOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x195F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1681 DUP3 PUSH2 0x163E JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH2 0x1980 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH2 0x1AB8 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x1F NOT AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP2 DUP5 MSTORE DUP1 DUP6 MLOAD DUP1 DUP4 MSTORE PUSH1 0x40 SWAP3 POP DUP3 DUP7 ADD SWAP2 POP DUP3 DUP2 PUSH1 0x5 SHL DUP8 ADD ADD DUP5 DUP9 ADD PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1A05 JUMPI DUP9 DUP4 SUB PUSH1 0x3F NOT ADD DUP6 MSTORE DUP2 MLOAD DUP1 MLOAD DUP8 DUP6 MSTORE PUSH2 0x19DF DUP9 DUP7 ADD DUP3 PUSH2 0x1968 JUMP JUMPDEST SWAP2 DUP10 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND SWAP5 DUP10 ADD SWAP5 SWAP1 SWAP5 MSTORE SWAP5 DUP8 ADD SWAP5 SWAP3 POP SWAP1 DUP7 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x19BB JUMP JUMPDEST POP SWAP1 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0x1681 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x1968 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x180 DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x1A4A JUMPI PUSH2 0x1A4A PUSH2 0x1B2F JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT AND DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x1A79 JUMPI PUSH2 0x1A79 PUSH2 0x1B2F JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 NOT DUP3 GT ISZERO PUSH2 0x1A94 JUMPI PUSH2 0x1A94 PUSH2 0x1B03 JUMP JUMPDEST POP ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 NOT DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x1AB3 JUMPI PUSH2 0x1AB3 PUSH2 0x1B03 JUMP JUMPDEST POP MUL SWAP1 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1AD3 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0x1ABB JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1AE2 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x0 NOT DUP3 EQ ISZERO PUSH2 0x1AFC JUMPI PUSH2 0x1AFC PUSH2 0x1B03 JUMP JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x1B5A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xAE 0xE5 0xAF SMOD SWAP13 PUSH17 0xE9CBD328AD0729AB147F136EB86B8ABD45 0xC6 PUSH7 0xD6B88CEBBCBEE1 PUSH5 0x736F6C6343 STOP ADDMOD MOD STOP CALLER ",
  "pcMap": {
    "0": {
      "offset": [
        746,
        6512
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x80"
    },
    "2": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "5": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "CALLVALUE",
      "path": "52"
    },
    "6": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "DUP1",
      "path": "52"
    },
    "7": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "8": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x10"
    },
    "11": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "12": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "14": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "DUP1",
      "path": "52"
    },
    "15": {
      "dev": "Cannot send ether to nonpayable function",
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "REVERT",
      "path": "52"
    },
    "16": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "17": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "POP",
      "path": "52"
    },
    "18": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "20": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "CALLDATASIZE",
      "path": "52"
    },
    "21": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "LT",
      "path": "52"
    },
    "22": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x7D"
    },
    "25": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "26": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "28": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "CALLDATALOAD",
      "path": "52"
    },
    "29": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "31": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "SHR",
      "path": "52"
    },
    "32": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "DUP1",
      "path": "52"
    },
    "33": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x3E150141"
    },
    "38": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "GT",
      "path": "52"
    },
    "39": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x5B"
    },
    "42": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "43": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "DUP1",
      "path": "52"
    },
    "44": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x3E150141"
    },
    "49": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "EQ",
      "path": "52"
    },
    "50": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x18A"
    },
    "53": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "54": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "DUP1",
      "path": "52"
    },
    "55": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xB316FF89"
    },
    "60": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "EQ",
      "path": "52"
    },
    "61": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1F1"
    },
    "64": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "65": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "DUP1",
      "path": "52"
    },
    "66": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xD2493B6C"
    },
    "71": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "EQ",
      "path": "52"
    },
    "72": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x206"
    },
    "75": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "76": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "DUP1",
      "path": "52"
    },
    "77": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xF561AE41"
    },
    "82": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "EQ",
      "path": "52"
    },
    "83": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x243"
    },
    "86": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "87": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "89": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "DUP1",
      "path": "52"
    },
    "90": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "REVERT",
      "path": "52"
    },
    "91": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "92": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "DUP1",
      "path": "52"
    },
    "93": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x542975C"
    },
    "98": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "EQ",
      "path": "52"
    },
    "99": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x82"
    },
    "102": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "103": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "DUP1",
      "path": "52"
    },
    "104": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x28DD2D01"
    },
    "109": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "EQ",
      "path": "52"
    },
    "110": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xC6"
    },
    "113": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "114": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "DUP1",
      "path": "52"
    },
    "115": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x35EA6A75"
    },
    "120": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "EQ",
      "path": "52"
    },
    "121": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x126"
    },
    "124": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "125": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "126": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "128": {
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "DUP1",
      "path": "52"
    },
    "129": {
      "first_revert": true,
      "fn": null,
      "offset": [
        746,
        6512
      ],
      "op": "REVERT",
      "path": "52"
    },
    "130": {
      "offset": [
        1125,
        1190
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "131": {
      "fn": null,
      "offset": [
        1125,
        1190
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xA9"
    },
    "134": {
      "fn": null,
      "offset": [
        1125,
        1190
      ],
      "op": "PUSH32",
      "path": "52",
      "value": "0x0"
    },
    "167": {
      "fn": null,
      "offset": [
        1125,
        1190
      ],
      "op": "DUP2",
      "path": "52"
    },
    "168": {
      "fn": null,
      "offset": [
        1125,
        1190
      ],
      "op": "JUMP",
      "path": "52"
    },
    "169": {
      "fn": null,
      "offset": [
        1125,
        1190
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "170": {
      "fn": null,
      "offset": [
        1125,
        1190
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "172": {
      "fn": null,
      "offset": [
        1125,
        1190
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "173": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "175": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "177": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "179": {
      "op": "SHL"
    },
    "180": {
      "op": "SUB"
    },
    "181": {
      "op": "SWAP1"
    },
    "182": {
      "op": "SWAP2"
    },
    "183": {
      "op": "AND"
    },
    "184": {
      "op": "DUP2"
    },
    "185": {
      "op": "MSTORE"
    },
    "186": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "188": {
      "op": "ADD"
    },
    "189": {
      "offset": [
        1125,
        1190
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "190": {
      "fn": null,
      "offset": [
        1125,
        1190
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "192": {
      "fn": null,
      "offset": [
        1125,
        1190
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "193": {
      "fn": null,
      "offset": [
        1125,
        1190
      ],
      "op": "DUP1",
      "path": "52"
    },
    "194": {
      "fn": null,
      "offset": [
        1125,
        1190
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "195": {
      "fn": null,
      "offset": [
        1125,
        1190
      ],
      "op": "SUB",
      "path": "52"
    },
    "196": {
      "fn": null,
      "offset": [
        1125,
        1190
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "197": {
      "fn": null,
      "offset": [
        1125,
        1190
      ],
      "op": "RETURN",
      "path": "52"
    },
    "198": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "199": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xD9"
    },
    "202": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xD4"
    },
    "205": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "CALLDATASIZE",
      "path": "52"
    },
    "206": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "208": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x16A5"
    },
    "211": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "jump": "i",
      "offset": [
        4576,
        6052
      ],
      "op": "JUMP",
      "path": "52"
    },
    "212": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "213": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x24B"
    },
    "216": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "jump": "i",
      "offset": [
        4576,
        6052
      ],
      "op": "JUMP",
      "path": "52"
    },
    "217": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "218": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "220": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "DUP1",
      "path": "52"
    },
    "221": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "222": {
      "op": "SWAP10"
    },
    "223": {
      "op": "DUP11"
    },
    "224": {
      "op": "MSTORE"
    },
    "225": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "227": {
      "op": "DUP11"
    },
    "228": {
      "op": "ADD"
    },
    "229": {
      "op": "SWAP9"
    },
    "230": {
      "op": "SWAP1"
    },
    "231": {
      "op": "SWAP9"
    },
    "232": {
      "op": "MSTORE"
    },
    "233": {
      "op": "SWAP7"
    },
    "234": {
      "op": "DUP9"
    },
    "235": {
      "op": "ADD"
    },
    "236": {
      "op": "SWAP6"
    },
    "237": {
      "op": "SWAP1"
    },
    "238": {
      "op": "SWAP6"
    },
    "239": {
      "op": "MSTORE"
    },
    "240": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "242": {
      "op": "DUP8"
    },
    "243": {
      "op": "ADD"
    },
    "244": {
      "op": "SWAP4"
    },
    "245": {
      "op": "SWAP1"
    },
    "246": {
      "op": "SWAP4"
    },
    "247": {
      "op": "MSTORE"
    },
    "248": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "250": {
      "op": "DUP7"
    },
    "251": {
      "op": "ADD"
    },
    "252": {
      "op": "SWAP2"
    },
    "253": {
      "op": "SWAP1"
    },
    "254": {
      "op": "SWAP2"
    },
    "255": {
      "op": "MSTORE"
    },
    "256": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "258": {
      "op": "DUP6"
    },
    "259": {
      "op": "ADD"
    },
    "260": {
      "op": "MSTORE"
    },
    "261": {
      "op": "PUSH1",
      "value": "0xC0"
    },
    "263": {
      "op": "DUP5"
    },
    "264": {
      "op": "ADD"
    },
    "265": {
      "op": "MSTORE"
    },
    "266": {
      "op": "PUSH5",
      "value": "0xFFFFFFFFFF"
    },
    "272": {
      "op": "AND"
    },
    "273": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "275": {
      "op": "DUP4"
    },
    "276": {
      "op": "ADD"
    },
    "277": {
      "op": "MSTORE"
    },
    "278": {
      "op": "ISZERO"
    },
    "279": {
      "op": "ISZERO"
    },
    "280": {
      "op": "PUSH2",
      "value": "0x100"
    },
    "283": {
      "op": "DUP3"
    },
    "284": {
      "op": "ADD"
    },
    "285": {
      "op": "MSTORE"
    },
    "286": {
      "op": "PUSH2",
      "value": "0x120"
    },
    "289": {
      "op": "ADD"
    },
    "290": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xBD"
    },
    "293": {
      "op": "JUMP"
    },
    "294": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "295": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x139"
    },
    "298": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x134"
    },
    "301": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "CALLDATASIZE",
      "path": "52"
    },
    "302": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "304": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1664"
    },
    "307": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "jump": "i",
      "offset": [
        3517,
        4572
      ],
      "op": "JUMP",
      "path": "52"
    },
    "308": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "309": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x852"
    },
    "312": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "jump": "i",
      "offset": [
        3517,
        4572
      ],
      "op": "JUMP",
      "path": "52"
    },
    "313": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "314": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "316": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "DUP1",
      "path": "52"
    },
    "317": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "318": {
      "op": "SWAP11"
    },
    "319": {
      "op": "DUP12"
    },
    "320": {
      "op": "MSTORE"
    },
    "321": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "323": {
      "op": "DUP12"
    },
    "324": {
      "op": "ADD"
    },
    "325": {
      "op": "SWAP10"
    },
    "326": {
      "op": "SWAP1"
    },
    "327": {
      "op": "SWAP10"
    },
    "328": {
      "op": "MSTORE"
    },
    "329": {
      "op": "SWAP8"
    },
    "330": {
      "op": "DUP10"
    },
    "331": {
      "op": "ADD"
    },
    "332": {
      "op": "SWAP7"
    },
    "333": {
      "op": "SWAP1"
    },
    "334": {
      "op": "SWAP7"
    },
    "335": {
      "op": "MSTORE"
    },
    "336": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "338": {
      "op": "DUP9"
    },
    "339": {
      "op": "ADD"
    },
    "340": {
      "op": "SWAP5"
    },
    "341": {
      "op": "SWAP1"
    },
    "342": {
      "op": "SWAP5"
    },
    "343": {
      "op": "MSTORE"
    },
    "344": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "346": {
      "op": "DUP8"
    },
    "347": {
      "op": "ADD"
    },
    "348": {
      "op": "SWAP3"
    },
    "349": {
      "op": "SWAP1"
    },
    "350": {
      "op": "SWAP3"
    },
    "351": {
      "op": "MSTORE"
    },
    "352": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "354": {
      "op": "DUP7"
    },
    "355": {
      "op": "ADD"
    },
    "356": {
      "op": "MSTORE"
    },
    "357": {
      "op": "PUSH1",
      "value": "0xC0"
    },
    "359": {
      "op": "DUP6"
    },
    "360": {
      "op": "ADD"
    },
    "361": {
      "op": "MSTORE"
    },
    "362": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "364": {
      "op": "DUP5"
    },
    "365": {
      "op": "ADD"
    },
    "366": {
      "op": "MSTORE"
    },
    "367": {
      "op": "PUSH2",
      "value": "0x100"
    },
    "370": {
      "op": "DUP4"
    },
    "371": {
      "op": "ADD"
    },
    "372": {
      "op": "MSTORE"
    },
    "373": {
      "op": "PUSH5",
      "value": "0xFFFFFFFFFF"
    },
    "379": {
      "op": "AND"
    },
    "380": {
      "op": "PUSH2",
      "value": "0x120"
    },
    "383": {
      "op": "DUP3"
    },
    "384": {
      "op": "ADD"
    },
    "385": {
      "op": "MSTORE"
    },
    "386": {
      "op": "PUSH2",
      "value": "0x140"
    },
    "389": {
      "op": "ADD"
    },
    "390": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xBD"
    },
    "393": {
      "op": "JUMP"
    },
    "394": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "395": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x19D"
    },
    "398": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x198"
    },
    "401": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "CALLDATASIZE",
      "path": "52"
    },
    "402": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "404": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1664"
    },
    "407": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "jump": "i",
      "offset": [
        2701,
        3513
      ],
      "op": "JUMP",
      "path": "52"
    },
    "408": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "409": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xBCF"
    },
    "412": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "jump": "i",
      "offset": [
        2701,
        3513
      ],
      "op": "JUMP",
      "path": "52"
    },
    "413": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "414": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "416": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "DUP1",
      "path": "52"
    },
    "417": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "418": {
      "op": "SWAP11"
    },
    "419": {
      "op": "DUP12"
    },
    "420": {
      "op": "MSTORE"
    },
    "421": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "423": {
      "op": "DUP12"
    },
    "424": {
      "op": "ADD"
    },
    "425": {
      "op": "SWAP10"
    },
    "426": {
      "op": "SWAP1"
    },
    "427": {
      "op": "SWAP10"
    },
    "428": {
      "op": "MSTORE"
    },
    "429": {
      "op": "SWAP8"
    },
    "430": {
      "op": "DUP10"
    },
    "431": {
      "op": "ADD"
    },
    "432": {
      "op": "SWAP7"
    },
    "433": {
      "op": "SWAP1"
    },
    "434": {
      "op": "SWAP7"
    },
    "435": {
      "op": "MSTORE"
    },
    "436": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "438": {
      "op": "DUP9"
    },
    "439": {
      "op": "ADD"
    },
    "440": {
      "op": "SWAP5"
    },
    "441": {
      "op": "SWAP1"
    },
    "442": {
      "op": "SWAP5"
    },
    "443": {
      "op": "MSTORE"
    },
    "444": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "446": {
      "op": "DUP8"
    },
    "447": {
      "op": "ADD"
    },
    "448": {
      "op": "SWAP3"
    },
    "449": {
      "op": "SWAP1"
    },
    "450": {
      "op": "SWAP3"
    },
    "451": {
      "op": "MSTORE"
    },
    "452": {
      "op": "ISZERO"
    },
    "453": {
      "op": "ISZERO"
    },
    "454": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "456": {
      "op": "DUP7"
    },
    "457": {
      "op": "ADD"
    },
    "458": {
      "op": "MSTORE"
    },
    "459": {
      "op": "ISZERO"
    },
    "460": {
      "op": "ISZERO"
    },
    "461": {
      "op": "PUSH1",
      "value": "0xC0"
    },
    "463": {
      "op": "DUP6"
    },
    "464": {
      "op": "ADD"
    },
    "465": {
      "op": "MSTORE"
    },
    "466": {
      "op": "ISZERO"
    },
    "467": {
      "op": "ISZERO"
    },
    "468": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "470": {
      "op": "DUP5"
    },
    "471": {
      "op": "ADD"
    },
    "472": {
      "op": "MSTORE"
    },
    "473": {
      "op": "ISZERO"
    },
    "474": {
      "op": "ISZERO"
    },
    "475": {
      "op": "PUSH2",
      "value": "0x100"
    },
    "478": {
      "op": "DUP4"
    },
    "479": {
      "op": "ADD"
    },
    "480": {
      "op": "MSTORE"
    },
    "481": {
      "op": "ISZERO"
    },
    "482": {
      "op": "ISZERO"
    },
    "483": {
      "op": "PUSH2",
      "value": "0x120"
    },
    "486": {
      "op": "DUP3"
    },
    "487": {
      "op": "ADD"
    },
    "488": {
      "op": "MSTORE"
    },
    "489": {
      "op": "PUSH2",
      "value": "0x140"
    },
    "492": {
      "op": "ADD"
    },
    "493": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xBD"
    },
    "496": {
      "op": "JUMP"
    },
    "497": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1316,
        2104
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "498": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1316,
        2104
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1F9"
    },
    "501": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1316,
        2104
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xD82"
    },
    "504": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "i",
      "offset": [
        1316,
        2104
      ],
      "op": "JUMP",
      "path": "52"
    },
    "505": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1316,
        2104
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "506": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1316,
        2104
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "508": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1316,
        2104
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "509": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1316,
        2104
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xBD"
    },
    "512": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1316,
        2104
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "513": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1316,
        2104
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "514": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1316,
        2104
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1994"
    },
    "517": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "i",
      "offset": [
        1316,
        2104
      ],
      "op": "JUMP",
      "path": "52"
    },
    "518": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6056,
        6510
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "519": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6056,
        6510
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x219"
    },
    "522": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6056,
        6510
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x214"
    },
    "525": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6056,
        6510
      ],
      "op": "CALLDATASIZE",
      "path": "52"
    },
    "526": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6056,
        6510
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "528": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6056,
        6510
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1664"
    },
    "531": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "jump": "i",
      "offset": [
        6056,
        6510
      ],
      "op": "JUMP",
      "path": "52"
    },
    "532": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6056,
        6510
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "533": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6056,
        6510
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x113F"
    },
    "536": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "jump": "i",
      "offset": [
        6056,
        6510
      ],
      "op": "JUMP",
      "path": "52"
    },
    "537": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6056,
        6510
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "538": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6056,
        6510
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "540": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6056,
        6510
      ],
      "op": "DUP1",
      "path": "52"
    },
    "541": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6056,
        6510
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "542": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "544": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "546": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "548": {
      "op": "SHL"
    },
    "549": {
      "op": "SUB"
    },
    "550": {
      "op": "SWAP5"
    },
    "551": {
      "op": "DUP6"
    },
    "552": {
      "op": "AND"
    },
    "553": {
      "op": "DUP2"
    },
    "554": {
      "op": "MSTORE"
    },
    "555": {
      "op": "SWAP3"
    },
    "556": {
      "op": "DUP5"
    },
    "557": {
      "op": "AND"
    },
    "558": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "560": {
      "op": "DUP5"
    },
    "561": {
      "op": "ADD"
    },
    "562": {
      "op": "MSTORE"
    },
    "563": {
      "op": "SWAP3"
    },
    "564": {
      "op": "AND"
    },
    "565": {
      "op": "SWAP2"
    },
    "566": {
      "op": "DUP2"
    },
    "567": {
      "op": "ADD"
    },
    "568": {
      "op": "SWAP2"
    },
    "569": {
      "op": "SWAP1"
    },
    "570": {
      "op": "SWAP2"
    },
    "571": {
      "op": "MSTORE"
    },
    "572": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "574": {
      "op": "ADD"
    },
    "575": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6056,
        6510
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xBD"
    },
    "578": {
      "op": "JUMP"
    },
    "579": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2108,
        2697
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "580": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2108,
        2697
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1F9"
    },
    "583": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2108,
        2697
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1271"
    },
    "586": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "jump": "i",
      "offset": [
        2108,
        2697
      ],
      "op": "JUMP",
      "path": "52"
    },
    "587": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "588": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4675,
        4703
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "590": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4711,
        4736
      ],
      "op": "DUP1",
      "path": "52"
    },
    "591": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4744,
        4771
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "593": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4779,
        4806
      ],
      "op": "DUP1",
      "path": "52"
    },
    "594": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4814,
        4840
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "596": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4848,
        4872
      ],
      "op": "DUP1",
      "path": "52"
    },
    "597": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4880,
        4901
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "599": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4909,
        4937
      ],
      "op": "DUP1",
      "path": "52"
    },
    "600": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4945,
        4974
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "602": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4989,
        5025
      ],
      "op": "DUP1",
      "path": "52"
    },
    "603": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5065
      ],
      "op": "PUSH32",
      "path": "52",
      "value": "0x0"
    },
    "636": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "638": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "640": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "642": {
      "op": "SHL"
    },
    "643": {
      "op": "SUB"
    },
    "644": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5080
      ],
      "op": "AND",
      "path": "52"
    },
    "645": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5080
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x261BF8B"
    },
    "650": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "652": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "653": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "DUP2",
      "path": "52"
    },
    "654": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "659": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "AND",
      "path": "52"
    },
    "660": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "662": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "SHL",
      "path": "52"
    },
    "663": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "DUP2",
      "path": "52"
    },
    "664": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "665": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "667": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "ADD",
      "path": "52"
    },
    "668": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "670": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "672": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "673": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "DUP1",
      "path": "52"
    },
    "674": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "DUP4",
      "path": "52"
    },
    "675": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "SUB",
      "path": "52"
    },
    "676": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "DUP2",
      "path": "52"
    },
    "677": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "DUP7",
      "path": "52"
    },
    "678": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "DUP1",
      "path": "52"
    },
    "679": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "680": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "681": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "DUP1",
      "path": "52"
    },
    "682": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "683": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x2B3"
    },
    "686": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "687": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "689": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "DUP1",
      "path": "52"
    },
    "690": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "REVERT",
      "path": "52"
    },
    "691": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "692": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "POP",
      "path": "52"
    },
    "693": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "GAS",
      "path": "52"
    },
    "694": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "695": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "696": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "DUP1",
      "path": "52"
    },
    "697": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "698": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x2C7"
    },
    "701": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "702": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "703": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "705": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "DUP1",
      "path": "52"
    },
    "706": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "707": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "708": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "710": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "REVERT",
      "path": "52"
    },
    "711": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "712": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "POP",
      "path": "52"
    },
    "713": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "POP",
      "path": "52"
    },
    "714": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "POP",
      "path": "52"
    },
    "715": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "POP",
      "path": "52"
    },
    "716": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "718": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "719": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "720": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "722": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "NOT",
      "path": "52"
    },
    "723": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "725": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "DUP3",
      "path": "52"
    },
    "726": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "ADD",
      "path": "52"
    },
    "727": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "AND",
      "path": "52"
    },
    "728": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "DUP3",
      "path": "52"
    },
    "729": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "ADD",
      "path": "52"
    },
    "730": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "DUP1",
      "path": "52"
    },
    "731": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "733": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "734": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "POP",
      "path": "52"
    },
    "735": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "DUP2",
      "path": "52"
    },
    "736": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "ADD",
      "path": "52"
    },
    "737": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "738": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x2EB"
    },
    "741": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "742": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "743": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1688"
    },
    "746": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "jump": "i",
      "offset": [
        5047,
        5082
      ],
      "op": "JUMP",
      "path": "52"
    },
    "747": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5047,
        5082
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "748": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "750": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "751": {
      "op": "PUSH4",
      "value": "0x35EA6A75"
    },
    "756": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "758": {
      "op": "SHL"
    },
    "759": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "DUP2",
      "path": "52"
    },
    "760": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "761": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "763": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "765": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "767": {
      "op": "SHL"
    },
    "768": {
      "op": "SUB"
    },
    "769": {
      "op": "DUP15"
    },
    "770": {
      "op": "DUP2"
    },
    "771": {
      "op": "AND"
    },
    "772": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "774": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "DUP4",
      "path": "52"
    },
    "775": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "ADD",
      "path": "52"
    },
    "776": {
      "op": "MSTORE"
    },
    "777": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5098
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "778": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5098
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "779": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5098
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "780": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5098
      ],
      "op": "AND",
      "path": "52"
    },
    "781": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5098
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "782": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5098
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x35EA6A75"
    },
    "787": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5098
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "788": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "790": {
      "op": "ADD"
    },
    "791": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x180"
    },
    "794": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "796": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "797": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "DUP1",
      "path": "52"
    },
    "798": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "DUP4",
      "path": "52"
    },
    "799": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "SUB",
      "path": "52"
    },
    "800": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "DUP2",
      "path": "52"
    },
    "801": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "DUP7",
      "path": "52"
    },
    "802": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "DUP1",
      "path": "52"
    },
    "803": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "804": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "805": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "DUP1",
      "path": "52"
    },
    "806": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "807": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x32F"
    },
    "810": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "811": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "813": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "DUP1",
      "path": "52"
    },
    "814": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "REVERT",
      "path": "52"
    },
    "815": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "816": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "POP",
      "path": "52"
    },
    "817": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "GAS",
      "path": "52"
    },
    "818": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "819": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "820": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "DUP1",
      "path": "52"
    },
    "821": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "822": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x343"
    },
    "825": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "826": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "827": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "829": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "DUP1",
      "path": "52"
    },
    "830": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "831": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "832": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "834": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "REVERT",
      "path": "52"
    },
    "835": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "836": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "POP",
      "path": "52"
    },
    "837": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "POP",
      "path": "52"
    },
    "838": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "POP",
      "path": "52"
    },
    "839": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "POP",
      "path": "52"
    },
    "840": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "842": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "843": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "844": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "846": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "NOT",
      "path": "52"
    },
    "847": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "849": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "DUP3",
      "path": "52"
    },
    "850": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "ADD",
      "path": "52"
    },
    "851": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "AND",
      "path": "52"
    },
    "852": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "DUP3",
      "path": "52"
    },
    "853": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "ADD",
      "path": "52"
    },
    "854": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "DUP1",
      "path": "52"
    },
    "855": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "857": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "858": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "POP",
      "path": "52"
    },
    "859": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "DUP2",
      "path": "52"
    },
    "860": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "ADD",
      "path": "52"
    },
    "861": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "862": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x367"
    },
    "865": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "866": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "867": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1847"
    },
    "870": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "jump": "i",
      "offset": [
        5034,
        5105
      ],
      "op": "JUMP",
      "path": "52"
    },
    "871": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5034,
        5105
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "872": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4989,
        5105
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "873": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4989,
        5105
      ],
      "op": "POP",
      "path": "52"
    },
    "874": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5112,
        5160
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "876": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5200
      ],
      "op": "PUSH32",
      "path": "52",
      "value": "0x0"
    },
    "909": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "911": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "913": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "915": {
      "op": "SHL"
    },
    "916": {
      "op": "SUB"
    },
    "917": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5215
      ],
      "op": "AND",
      "path": "52"
    },
    "918": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5215
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x261BF8B"
    },
    "923": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "925": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "926": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "DUP2",
      "path": "52"
    },
    "927": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "932": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "AND",
      "path": "52"
    },
    "933": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "935": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "SHL",
      "path": "52"
    },
    "936": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "DUP2",
      "path": "52"
    },
    "937": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "938": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "940": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "ADD",
      "path": "52"
    },
    "941": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "943": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "945": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "946": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "DUP1",
      "path": "52"
    },
    "947": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "DUP4",
      "path": "52"
    },
    "948": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "SUB",
      "path": "52"
    },
    "949": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "DUP2",
      "path": "52"
    },
    "950": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "DUP7",
      "path": "52"
    },
    "951": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "DUP1",
      "path": "52"
    },
    "952": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "953": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "954": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "DUP1",
      "path": "52"
    },
    "955": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "956": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x3C4"
    },
    "959": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "960": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "962": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "DUP1",
      "path": "52"
    },
    "963": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "REVERT",
      "path": "52"
    },
    "964": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "965": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "POP",
      "path": "52"
    },
    "966": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "GAS",
      "path": "52"
    },
    "967": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "968": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "969": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "DUP1",
      "path": "52"
    },
    "970": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "971": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x3D8"
    },
    "974": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "975": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "976": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "978": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "DUP1",
      "path": "52"
    },
    "979": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "980": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "981": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "983": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "REVERT",
      "path": "52"
    },
    "984": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "985": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "POP",
      "path": "52"
    },
    "986": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "POP",
      "path": "52"
    },
    "987": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "POP",
      "path": "52"
    },
    "988": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "POP",
      "path": "52"
    },
    "989": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "991": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "992": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "993": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "995": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "NOT",
      "path": "52"
    },
    "996": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "998": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "DUP3",
      "path": "52"
    },
    "999": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "ADD",
      "path": "52"
    },
    "1000": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "AND",
      "path": "52"
    },
    "1001": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1002": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "ADD",
      "path": "52"
    },
    "1003": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1004": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1006": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1007": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "POP",
      "path": "52"
    },
    "1008": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1009": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "ADD",
      "path": "52"
    },
    "1010": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1011": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x3FC"
    },
    "1014": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1015": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1016": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1688"
    },
    "1019": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "jump": "i",
      "offset": [
        5182,
        5217
      ],
      "op": "JUMP",
      "path": "52"
    },
    "1020": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5182,
        5217
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1021": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1023": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1024": {
      "op": "PUSH4",
      "value": "0x4417A583"
    },
    "1029": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "1031": {
      "op": "SHL"
    },
    "1032": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1033": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1034": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1036": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1038": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1040": {
      "op": "SHL"
    },
    "1041": {
      "op": "SUB"
    },
    "1042": {
      "op": "DUP15"
    },
    "1043": {
      "op": "DUP2"
    },
    "1044": {
      "op": "AND"
    },
    "1045": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "1047": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1048": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "ADD",
      "path": "52"
    },
    "1049": {
      "op": "MSTORE"
    },
    "1050": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5239
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1051": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5239
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1052": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5239
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1053": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5239
      ],
      "op": "AND",
      "path": "52"
    },
    "1054": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5239
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1055": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5239
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x4417A583"
    },
    "1060": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5239
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1061": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1063": {
      "op": "ADD"
    },
    "1064": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "1066": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1068": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1069": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1070": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1071": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "SUB",
      "path": "52"
    },
    "1072": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1073": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "DUP7",
      "path": "52"
    },
    "1074": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1075": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "1076": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1077": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1078": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1079": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x43F"
    },
    "1082": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "1083": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1085": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1086": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "REVERT",
      "path": "52"
    },
    "1087": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1088": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "POP",
      "path": "52"
    },
    "1089": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "GAS",
      "path": "52"
    },
    "1090": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "1091": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1092": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1093": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1094": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x453"
    },
    "1097": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "1098": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1099": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1101": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1102": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "1103": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1104": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1106": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "REVERT",
      "path": "52"
    },
    "1107": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1108": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "POP",
      "path": "52"
    },
    "1109": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "POP",
      "path": "52"
    },
    "1110": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "POP",
      "path": "52"
    },
    "1111": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "POP",
      "path": "52"
    },
    "1112": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1114": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1115": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1116": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "1118": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "NOT",
      "path": "52"
    },
    "1119": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "1121": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1122": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "ADD",
      "path": "52"
    },
    "1123": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "AND",
      "path": "52"
    },
    "1124": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1125": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "ADD",
      "path": "52"
    },
    "1126": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1127": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1129": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1130": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "POP",
      "path": "52"
    },
    "1131": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1132": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "ADD",
      "path": "52"
    },
    "1133": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1134": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x477"
    },
    "1137": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1138": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1139": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x182B"
    },
    "1142": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "jump": "i",
      "offset": [
        5169,
        5245
      ],
      "op": "JUMP",
      "path": "52"
    },
    "1143": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5169,
        5245
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1144": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5290,
        5311
      ],
      "op": "PUSH1",
      "path": "52",
      "statement": 0,
      "value": "0xE0"
    },
    "1146": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5290,
        5311
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1147": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5290,
        5311
      ],
      "op": "ADD",
      "path": "52"
    },
    "1148": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5290,
        5311
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1149": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1151": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1152": {
      "op": "PUSH4",
      "value": "0x70A08231"
    },
    "1157": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "1159": {
      "op": "SHL"
    },
    "1160": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1161": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1162": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1164": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1166": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1168": {
      "op": "SHL"
    },
    "1169": {
      "op": "SUB"
    },
    "1170": {
      "op": "DUP16"
    },
    "1171": {
      "op": "DUP2"
    },
    "1172": {
      "op": "AND"
    },
    "1173": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "1175": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1176": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "ADD",
      "path": "52"
    },
    "1177": {
      "op": "MSTORE"
    },
    "1178": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5112,
        5245
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "1179": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5112,
        5245
      ],
      "op": "SWAP4",
      "path": "52"
    },
    "1180": {
      "op": "POP"
    },
    "1181": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5322
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1182": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5322
      ],
      "op": "AND",
      "path": "52"
    },
    "1183": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5322
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1184": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5322
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x70A08231"
    },
    "1189": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5322
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1190": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1192": {
      "op": "ADD"
    },
    "1193": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "1195": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1197": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1198": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1199": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1200": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "SUB",
      "path": "52"
    },
    "1201": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1202": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "DUP7",
      "path": "52"
    },
    "1203": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1204": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "1205": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1206": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1207": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1208": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x4C0"
    },
    "1211": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "1212": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1214": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1215": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "REVERT",
      "path": "52"
    },
    "1216": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1217": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "POP",
      "path": "52"
    },
    "1218": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "GAS",
      "path": "52"
    },
    "1219": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "1220": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1221": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1222": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1223": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x4D4"
    },
    "1226": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "1227": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1228": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1230": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1231": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "1232": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1233": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1235": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "REVERT",
      "path": "52"
    },
    "1236": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1237": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "POP",
      "path": "52"
    },
    "1238": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "POP",
      "path": "52"
    },
    "1239": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "POP",
      "path": "52"
    },
    "1240": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "POP",
      "path": "52"
    },
    "1241": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1243": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1244": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1245": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "1247": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "NOT",
      "path": "52"
    },
    "1248": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "1250": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1251": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "ADD",
      "path": "52"
    },
    "1252": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "AND",
      "path": "52"
    },
    "1253": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1254": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "ADD",
      "path": "52"
    },
    "1255": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1256": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1258": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1259": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "POP",
      "path": "52"
    },
    "1260": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1261": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "ADD",
      "path": "52"
    },
    "1262": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1263": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x4F8"
    },
    "1266": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1267": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1268": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1934"
    },
    "1271": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "jump": "i",
      "offset": [
        5275,
        5328
      ],
      "op": "JUMP",
      "path": "52"
    },
    "1272": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5275,
        5328
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1273": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5371,
        5403
      ],
      "op": "PUSH2",
      "path": "52",
      "statement": 1,
      "value": "0x120"
    },
    "1276": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5371,
        5403
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1277": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5371,
        5403
      ],
      "op": "ADD",
      "path": "52"
    },
    "1278": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5371,
        5403
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1279": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1281": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1282": {
      "op": "PUSH4",
      "value": "0x70A08231"
    },
    "1287": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "1289": {
      "op": "SHL"
    },
    "1290": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1291": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1292": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1294": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1296": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1298": {
      "op": "SHL"
    },
    "1299": {
      "op": "SUB"
    },
    "1300": {
      "op": "DUP16"
    },
    "1301": {
      "op": "DUP2"
    },
    "1302": {
      "op": "AND"
    },
    "1303": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "1305": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1306": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "ADD",
      "path": "52"
    },
    "1307": {
      "op": "MSTORE"
    },
    "1308": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5252,
        5328
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "1309": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5252,
        5328
      ],
      "op": "SWAP14",
      "path": "52"
    },
    "1310": {
      "op": "POP"
    },
    "1311": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5414
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1312": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5414
      ],
      "op": "AND",
      "path": "52"
    },
    "1313": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5414
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1314": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5414
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x70A08231"
    },
    "1319": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5414
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1320": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1322": {
      "op": "ADD"
    },
    "1323": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "1325": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1327": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1328": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1329": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1330": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "SUB",
      "path": "52"
    },
    "1331": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1332": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "DUP7",
      "path": "52"
    },
    "1333": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1334": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "1335": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1336": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1337": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1338": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x542"
    },
    "1341": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "1342": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1344": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1345": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "REVERT",
      "path": "52"
    },
    "1346": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1347": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "POP",
      "path": "52"
    },
    "1348": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "GAS",
      "path": "52"
    },
    "1349": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "1350": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1351": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1352": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1353": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x556"
    },
    "1356": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "1357": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1358": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1360": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1361": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "1362": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1363": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1365": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "REVERT",
      "path": "52"
    },
    "1366": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1367": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "POP",
      "path": "52"
    },
    "1368": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "POP",
      "path": "52"
    },
    "1369": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "POP",
      "path": "52"
    },
    "1370": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "POP",
      "path": "52"
    },
    "1371": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1373": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1374": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1375": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "1377": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "NOT",
      "path": "52"
    },
    "1378": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "1380": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1381": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "ADD",
      "path": "52"
    },
    "1382": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "AND",
      "path": "52"
    },
    "1383": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1384": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "ADD",
      "path": "52"
    },
    "1385": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1386": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1388": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1389": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "POP",
      "path": "52"
    },
    "1390": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1391": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "ADD",
      "path": "52"
    },
    "1392": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1393": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x57A"
    },
    "1396": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1397": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1398": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1934"
    },
    "1401": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "jump": "i",
      "offset": [
        5356,
        5420
      ],
      "op": "JUMP",
      "path": "52"
    },
    "1402": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5356,
        5420
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1403": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5461,
        5491
      ],
      "op": "PUSH2",
      "path": "52",
      "statement": 2,
      "value": "0x100"
    },
    "1406": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5461,
        5491
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1407": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5461,
        5491
      ],
      "op": "ADD",
      "path": "52"
    },
    "1408": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5461,
        5491
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1409": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1411": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1412": {
      "op": "PUSH4",
      "value": "0x70A08231"
    },
    "1417": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "1419": {
      "op": "SHL"
    },
    "1420": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1421": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1422": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1424": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1426": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1428": {
      "op": "SHL"
    },
    "1429": {
      "op": "SUB"
    },
    "1430": {
      "op": "DUP16"
    },
    "1431": {
      "op": "DUP2"
    },
    "1432": {
      "op": "AND"
    },
    "1433": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "1435": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1436": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "ADD",
      "path": "52"
    },
    "1437": {
      "op": "MSTORE"
    },
    "1438": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5334,
        5420
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "1439": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5334,
        5420
      ],
      "op": "SWAP12",
      "path": "52"
    },
    "1440": {
      "op": "POP"
    },
    "1441": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5502
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1442": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5502
      ],
      "op": "AND",
      "path": "52"
    },
    "1443": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5502
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1444": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5502
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x70A08231"
    },
    "1449": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5502
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1450": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1452": {
      "op": "ADD"
    },
    "1453": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "1455": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1457": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1458": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1459": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1460": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "SUB",
      "path": "52"
    },
    "1461": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1462": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "DUP7",
      "path": "52"
    },
    "1463": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1464": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "1465": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1466": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1467": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1468": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x5C4"
    },
    "1471": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "1472": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1474": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1475": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "REVERT",
      "path": "52"
    },
    "1476": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1477": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "POP",
      "path": "52"
    },
    "1478": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "GAS",
      "path": "52"
    },
    "1479": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "1480": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1481": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1482": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1483": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x5D8"
    },
    "1486": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "1487": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1488": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1490": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1491": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "1492": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1493": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1495": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "REVERT",
      "path": "52"
    },
    "1496": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1497": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "POP",
      "path": "52"
    },
    "1498": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "POP",
      "path": "52"
    },
    "1499": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "POP",
      "path": "52"
    },
    "1500": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "POP",
      "path": "52"
    },
    "1501": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1503": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1504": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1505": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "1507": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "NOT",
      "path": "52"
    },
    "1508": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "1510": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1511": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "ADD",
      "path": "52"
    },
    "1512": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "AND",
      "path": "52"
    },
    "1513": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1514": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "ADD",
      "path": "52"
    },
    "1515": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1516": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1518": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1519": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "POP",
      "path": "52"
    },
    "1520": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1521": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "ADD",
      "path": "52"
    },
    "1522": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1523": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x5FC"
    },
    "1526": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1527": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1528": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1934"
    },
    "1531": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "jump": "i",
      "offset": [
        5446,
        5508
      ],
      "op": "JUMP",
      "path": "52"
    },
    "1532": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5446,
        5508
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1533": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5553,
        5583
      ],
      "op": "PUSH2",
      "path": "52",
      "statement": 3,
      "value": "0x100"
    },
    "1536": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5553,
        5583
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1537": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5553,
        5583
      ],
      "op": "ADD",
      "path": "52"
    },
    "1538": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5553,
        5583
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1539": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1541": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1542": {
      "op": "PUSH4",
      "value": "0x631A6FD5"
    },
    "1547": {
      "op": "PUSH1",
      "value": "0xE1"
    },
    "1549": {
      "op": "SHL"
    },
    "1550": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1551": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1552": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1554": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1556": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1558": {
      "op": "SHL"
    },
    "1559": {
      "op": "SUB"
    },
    "1560": {
      "op": "DUP16"
    },
    "1561": {
      "op": "DUP2"
    },
    "1562": {
      "op": "AND"
    },
    "1563": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "1565": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1566": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "ADD",
      "path": "52"
    },
    "1567": {
      "op": "MSTORE"
    },
    "1568": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5426,
        5508
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "1569": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5426,
        5508
      ],
      "op": "SWAP13",
      "path": "52"
    },
    "1570": {
      "op": "POP"
    },
    "1571": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5603
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1572": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5603
      ],
      "op": "AND",
      "path": "52"
    },
    "1573": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5603
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1574": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5603
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xC634DFAA"
    },
    "1579": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5603
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1580": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1582": {
      "op": "ADD"
    },
    "1583": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "1585": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1587": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1588": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1589": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1590": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "SUB",
      "path": "52"
    },
    "1591": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1592": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "DUP7",
      "path": "52"
    },
    "1593": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1594": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "1595": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1596": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1597": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1598": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x646"
    },
    "1601": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "1602": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1604": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1605": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "REVERT",
      "path": "52"
    },
    "1606": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1607": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "POP",
      "path": "52"
    },
    "1608": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "GAS",
      "path": "52"
    },
    "1609": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "1610": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1611": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1612": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1613": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x65A"
    },
    "1616": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "1617": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1618": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1620": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1621": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "1622": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1623": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1625": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "REVERT",
      "path": "52"
    },
    "1626": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1627": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "POP",
      "path": "52"
    },
    "1628": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "POP",
      "path": "52"
    },
    "1629": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "POP",
      "path": "52"
    },
    "1630": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "POP",
      "path": "52"
    },
    "1631": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1633": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1634": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1635": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "1637": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "NOT",
      "path": "52"
    },
    "1638": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "1640": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1641": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "ADD",
      "path": "52"
    },
    "1642": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "AND",
      "path": "52"
    },
    "1643": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1644": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "ADD",
      "path": "52"
    },
    "1645": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1646": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1648": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1649": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "POP",
      "path": "52"
    },
    "1650": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1651": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "ADD",
      "path": "52"
    },
    "1652": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1653": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x67E"
    },
    "1656": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1657": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1658": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1934"
    },
    "1661": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "jump": "i",
      "offset": [
        5536,
        5609
      ],
      "op": "JUMP",
      "path": "52"
    },
    "1662": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5536,
        5609
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1663": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5655,
        5687
      ],
      "op": "PUSH2",
      "path": "52",
      "statement": 4,
      "value": "0x120"
    },
    "1666": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5655,
        5687
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1667": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5655,
        5687
      ],
      "op": "ADD",
      "path": "52"
    },
    "1668": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5655,
        5687
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1669": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1671": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1672": {
      "op": "PUSH4",
      "value": "0xED1279F"
    },
    "1677": {
      "op": "PUSH1",
      "value": "0xE1"
    },
    "1679": {
      "op": "SHL"
    },
    "1680": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1681": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1682": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1684": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1686": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1688": {
      "op": "SHL"
    },
    "1689": {
      "op": "SUB"
    },
    "1690": {
      "op": "DUP16"
    },
    "1691": {
      "op": "DUP2"
    },
    "1692": {
      "op": "AND"
    },
    "1693": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "1695": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1696": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "ADD",
      "path": "52"
    },
    "1697": {
      "op": "MSTORE"
    },
    "1698": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5514,
        5609
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "1699": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5514,
        5609
      ],
      "op": "SWAP11",
      "path": "52"
    },
    "1700": {
      "op": "POP"
    },
    "1701": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5704
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1702": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5704
      ],
      "op": "AND",
      "path": "52"
    },
    "1703": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5704
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1704": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5704
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x1DA24F3E"
    },
    "1709": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5704
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1710": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1712": {
      "op": "ADD"
    },
    "1713": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "1715": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1717": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1718": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1719": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1720": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "SUB",
      "path": "52"
    },
    "1721": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1722": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "DUP7",
      "path": "52"
    },
    "1723": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1724": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "1725": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1726": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1727": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1728": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x6C8"
    },
    "1731": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "1732": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1734": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1735": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "REVERT",
      "path": "52"
    },
    "1736": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1737": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "POP",
      "path": "52"
    },
    "1738": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "GAS",
      "path": "52"
    },
    "1739": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "1740": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1741": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1742": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1743": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x6DC"
    },
    "1746": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "1747": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1748": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1750": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1751": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "1752": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1753": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1755": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "REVERT",
      "path": "52"
    },
    "1756": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1757": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "POP",
      "path": "52"
    },
    "1758": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "POP",
      "path": "52"
    },
    "1759": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "POP",
      "path": "52"
    },
    "1760": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "POP",
      "path": "52"
    },
    "1761": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1763": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1764": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1765": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "1767": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "NOT",
      "path": "52"
    },
    "1768": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "1770": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1771": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "ADD",
      "path": "52"
    },
    "1772": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "AND",
      "path": "52"
    },
    "1773": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1774": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "ADD",
      "path": "52"
    },
    "1775": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1776": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1778": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1779": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "POP",
      "path": "52"
    },
    "1780": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1781": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "ADD",
      "path": "52"
    },
    "1782": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1783": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x700"
    },
    "1786": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1787": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1788": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1934"
    },
    "1791": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "jump": "i",
      "offset": [
        5636,
        5710
      ],
      "op": "JUMP",
      "path": "52"
    },
    "1792": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5636,
        5710
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1793": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5615,
        5710
      ],
      "op": "SWAP7",
      "path": "52"
    },
    "1794": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5615,
        5710
      ],
      "op": "POP",
      "path": "52"
    },
    "1795": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5732,
        5739
      ],
      "op": "DUP2",
      "path": "52",
      "statement": 5
    },
    "1796": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5732,
        5760
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x60"
    },
    "1798": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5732,
        5760
      ],
      "op": "ADD",
      "path": "52"
    },
    "1799": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5732,
        5760
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1800": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1802": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1804": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "1806": {
      "op": "SHL"
    },
    "1807": {
      "op": "SUB"
    },
    "1808": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5716,
        5760
      ],
      "op": "AND",
      "path": "52"
    },
    "1809": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5716,
        5760
      ],
      "op": "SWAP5",
      "path": "52"
    },
    "1810": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5716,
        5760
      ],
      "op": "POP",
      "path": "52"
    },
    "1811": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5802,
        5809
      ],
      "op": "DUP2",
      "path": "52",
      "statement": 6
    },
    "1812": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5802,
        5832
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x100"
    },
    "1815": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5802,
        5832
      ],
      "op": "ADD",
      "path": "52"
    },
    "1816": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5802,
        5832
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1817": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1819": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1821": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1823": {
      "op": "SHL"
    },
    "1824": {
      "op": "SUB"
    },
    "1825": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5851
      ],
      "op": "AND",
      "path": "52"
    },
    "1826": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5851
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xE78C9B3B"
    },
    "1831": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5852,
        5856
      ],
      "op": "DUP14",
      "path": "52"
    },
    "1832": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1834": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1835": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1836": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "1841": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "AND",
      "path": "52"
    },
    "1842": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "1844": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "SHL",
      "path": "52"
    },
    "1845": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1846": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1847": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "1849": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "ADD",
      "path": "52"
    },
    "1850": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x752"
    },
    "1853": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1854": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1855": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1857": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1859": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1861": {
      "op": "SHL"
    },
    "1862": {
      "op": "SUB"
    },
    "1863": {
      "op": "SWAP2"
    },
    "1864": {
      "op": "SWAP1"
    },
    "1865": {
      "op": "SWAP2"
    },
    "1866": {
      "op": "AND"
    },
    "1867": {
      "op": "DUP2"
    },
    "1868": {
      "op": "MSTORE"
    },
    "1869": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1871": {
      "op": "ADD"
    },
    "1872": {
      "op": "SWAP1"
    },
    "1873": {
      "op": "JUMP"
    },
    "1874": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1875": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "1877": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1879": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1880": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1881": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1882": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "SUB",
      "path": "52"
    },
    "1883": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1884": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "DUP7",
      "path": "52"
    },
    "1885": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1886": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "1887": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1888": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1889": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1890": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x76A"
    },
    "1893": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "1894": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1896": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1897": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "REVERT",
      "path": "52"
    },
    "1898": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1899": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "POP",
      "path": "52"
    },
    "1900": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "GAS",
      "path": "52"
    },
    "1901": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "1902": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1903": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1904": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "1905": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x77E"
    },
    "1908": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "1909": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1910": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1912": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1913": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "1914": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1915": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "1917": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "REVERT",
      "path": "52"
    },
    "1918": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1919": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "POP",
      "path": "52"
    },
    "1920": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "POP",
      "path": "52"
    },
    "1921": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "POP",
      "path": "52"
    },
    "1922": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "POP",
      "path": "52"
    },
    "1923": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1925": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1926": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "1927": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "1929": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "NOT",
      "path": "52"
    },
    "1930": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "1932": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1933": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "ADD",
      "path": "52"
    },
    "1934": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "AND",
      "path": "52"
    },
    "1935": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "DUP3",
      "path": "52"
    },
    "1936": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "ADD",
      "path": "52"
    },
    "1937": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "DUP1",
      "path": "52"
    },
    "1938": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1940": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1941": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "POP",
      "path": "52"
    },
    "1942": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1943": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "ADD",
      "path": "52"
    },
    "1944": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1945": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x7A2"
    },
    "1948": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1949": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1950": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1934"
    },
    "1953": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "jump": "i",
      "offset": [
        5785,
        5857
      ],
      "op": "JUMP",
      "path": "52"
    },
    "1954": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5785,
        5857
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "1955": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5904,
        5934
      ],
      "op": "PUSH2",
      "path": "52",
      "statement": 7,
      "value": "0x100"
    },
    "1958": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5904,
        5934
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1959": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5904,
        5934
      ],
      "op": "ADD",
      "path": "52"
    },
    "1960": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5904,
        5934
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1961": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "1963": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "1964": {
      "op": "PUSH4",
      "value": "0x1E739AE3"
    },
    "1969": {
      "op": "PUSH1",
      "value": "0xE2"
    },
    "1971": {
      "op": "SHL"
    },
    "1972": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "DUP2",
      "path": "52"
    },
    "1973": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "1974": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1976": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1978": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1980": {
      "op": "SHL"
    },
    "1981": {
      "op": "SUB"
    },
    "1982": {
      "op": "DUP16"
    },
    "1983": {
      "op": "DUP2"
    },
    "1984": {
      "op": "AND"
    },
    "1985": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "1987": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "DUP4",
      "path": "52"
    },
    "1988": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "ADD",
      "path": "52"
    },
    "1989": {
      "op": "MSTORE"
    },
    "1990": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5766,
        5857
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "1991": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5766,
        5857
      ],
      "op": "SWAP9",
      "path": "52"
    },
    "1992": {
      "op": "POP"
    },
    "1993": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5954
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "1994": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5954
      ],
      "op": "AND",
      "path": "52"
    },
    "1995": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5954
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "1996": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5954
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x79CE6B8C"
    },
    "2001": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5954
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2002": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "2004": {
      "op": "ADD"
    },
    "2005": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "2007": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2009": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2010": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2011": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "DUP4",
      "path": "52"
    },
    "2012": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "SUB",
      "path": "52"
    },
    "2013": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2014": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "DUP7",
      "path": "52"
    },
    "2015": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2016": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "2017": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2018": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2019": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2020": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x7EC"
    },
    "2023": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "2024": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2026": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2027": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "REVERT",
      "path": "52"
    },
    "2028": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2029": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "POP",
      "path": "52"
    },
    "2030": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "GAS",
      "path": "52"
    },
    "2031": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "2032": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2033": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2034": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2035": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x800"
    },
    "2038": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "2039": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2040": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2042": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2043": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "2044": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2045": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2047": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "REVERT",
      "path": "52"
    },
    "2048": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2049": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "POP",
      "path": "52"
    },
    "2050": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "POP",
      "path": "52"
    },
    "2051": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "POP",
      "path": "52"
    },
    "2052": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "POP",
      "path": "52"
    },
    "2053": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2055": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2056": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2057": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "2059": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "NOT",
      "path": "52"
    },
    "2060": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "2062": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2063": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "ADD",
      "path": "52"
    },
    "2064": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "AND",
      "path": "52"
    },
    "2065": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2066": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "ADD",
      "path": "52"
    },
    "2067": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2068": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2070": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "2071": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "POP",
      "path": "52"
    },
    "2072": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2073": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "ADD",
      "path": "52"
    },
    "2074": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2075": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x824"
    },
    "2078": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "2079": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2080": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x194D"
    },
    "2083": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "jump": "i",
      "offset": [
        5887,
        5972
      ],
      "op": "JUMP",
      "path": "52"
    },
    "2084": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5887,
        5972
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2085": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5863,
        5972
      ],
      "op": "SWAP4",
      "path": "52"
    },
    "2086": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5863,
        5972
      ],
      "op": "POP",
      "path": "52"
    },
    "2087": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        6005,
        6047
      ],
      "op": "PUSH2",
      "path": "52",
      "statement": 8,
      "value": "0x841"
    },
    "2090": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        6036,
        6043
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2091": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        6036,
        6046
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x160"
    },
    "2094": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        6036,
        6046
      ],
      "op": "ADD",
      "path": "52"
    },
    "2095": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        6036,
        6046
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2096": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        6005,
        6047
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xFF"
    },
    "2098": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        6005,
        6047
      ],
      "op": "AND",
      "path": "52"
    },
    "2099": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        6005,
        6015
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2100": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        6005,
        6035
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1566"
    },
    "2103": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        6005,
        6035
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2104": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        6005,
        6047
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "2105": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        6005,
        6047
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2106": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        6005,
        6047
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "2111": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        6005,
        6047
      ],
      "op": "AND",
      "path": "52"
    },
    "2112": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "jump": "i",
      "offset": [
        6005,
        6047
      ],
      "op": "JUMP",
      "path": "52"
    },
    "2113": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        6005,
        6047
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2114": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5978,
        6047
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "2115": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        5978,
        6047
      ],
      "op": "POP",
      "path": "52"
    },
    "2116": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4983,
        6052
      ],
      "op": "POP",
      "path": "52"
    },
    "2117": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4983,
        6052
      ],
      "op": "POP",
      "path": "52"
    },
    "2118": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "2119": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "SWAP6",
      "path": "52"
    },
    "2120": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "SWAP9",
      "path": "52"
    },
    "2121": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "POP",
      "path": "52"
    },
    "2122": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "2123": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "SWAP6",
      "path": "52"
    },
    "2124": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "SWAP9",
      "path": "52"
    },
    "2125": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "POP",
      "path": "52"
    },
    "2126": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "2127": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "SWAP6",
      "path": "52"
    },
    "2128": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "offset": [
        4576,
        6052
      ],
      "op": "SWAP9",
      "path": "52"
    },
    "2129": {
      "fn": "AaveProtocolDataProvider.getUserReserveData",
      "jump": "o",
      "offset": [
        4576,
        6052
      ],
      "op": "JUMP",
      "path": "52"
    },
    "2130": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2131": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3598,
        3624
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2133": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3632,
        3655
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2134": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3663,
        3688
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2136": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3696,
        3717
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2137": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3725,
        3751
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2139": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3759,
        3783
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2140": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3791,
        3822
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2142": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3830,
        3852
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2143": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3860,
        3887
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2145": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3895,
        3921
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2146": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3936,
        3972
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2148": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4012
      ],
      "op": "PUSH32",
      "path": "52",
      "value": "0x0"
    },
    "2181": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2183": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2185": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2187": {
      "op": "SHL"
    },
    "2188": {
      "op": "SUB"
    },
    "2189": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4027
      ],
      "op": "AND",
      "path": "52"
    },
    "2190": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4027
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x261BF8B"
    },
    "2195": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2197": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2198": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2199": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "2204": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "AND",
      "path": "52"
    },
    "2205": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "2207": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "SHL",
      "path": "52"
    },
    "2208": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2209": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "2210": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "2212": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "ADD",
      "path": "52"
    },
    "2213": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "2215": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2217": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2218": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2219": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "DUP4",
      "path": "52"
    },
    "2220": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "SUB",
      "path": "52"
    },
    "2221": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2222": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "DUP7",
      "path": "52"
    },
    "2223": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2224": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "2225": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2226": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2227": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2228": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x8BC"
    },
    "2231": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "2232": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2234": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2235": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "REVERT",
      "path": "52"
    },
    "2236": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2237": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "POP",
      "path": "52"
    },
    "2238": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "GAS",
      "path": "52"
    },
    "2239": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "2240": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2241": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2242": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2243": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x8D0"
    },
    "2246": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "2247": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2248": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2250": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2251": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "2252": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2253": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2255": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "REVERT",
      "path": "52"
    },
    "2256": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2257": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "POP",
      "path": "52"
    },
    "2258": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "POP",
      "path": "52"
    },
    "2259": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "POP",
      "path": "52"
    },
    "2260": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "POP",
      "path": "52"
    },
    "2261": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2263": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2264": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2265": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "2267": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "NOT",
      "path": "52"
    },
    "2268": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "2270": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2271": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "ADD",
      "path": "52"
    },
    "2272": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "AND",
      "path": "52"
    },
    "2273": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2274": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "ADD",
      "path": "52"
    },
    "2275": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2276": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2278": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "2279": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "POP",
      "path": "52"
    },
    "2280": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2281": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "ADD",
      "path": "52"
    },
    "2282": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2283": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x8F4"
    },
    "2286": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "2287": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2288": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1688"
    },
    "2291": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "jump": "i",
      "offset": [
        3994,
        4029
      ],
      "op": "JUMP",
      "path": "52"
    },
    "2292": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3994,
        4029
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2293": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2295": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2296": {
      "op": "PUSH4",
      "value": "0x35EA6A75"
    },
    "2301": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "2303": {
      "op": "SHL"
    },
    "2304": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2305": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "2306": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2308": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2310": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2312": {
      "op": "SHL"
    },
    "2313": {
      "op": "SUB"
    },
    "2314": {
      "op": "DUP15"
    },
    "2315": {
      "op": "DUP2"
    },
    "2316": {
      "op": "AND"
    },
    "2317": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "2319": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "DUP4",
      "path": "52"
    },
    "2320": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "ADD",
      "path": "52"
    },
    "2321": {
      "op": "MSTORE"
    },
    "2322": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4045
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "2323": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4045
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2324": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4045
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "2325": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4045
      ],
      "op": "AND",
      "path": "52"
    },
    "2326": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4045
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2327": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4045
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x35EA6A75"
    },
    "2332": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4045
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2333": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "2335": {
      "op": "ADD"
    },
    "2336": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x180"
    },
    "2339": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2341": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2342": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2343": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "DUP4",
      "path": "52"
    },
    "2344": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "SUB",
      "path": "52"
    },
    "2345": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2346": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "DUP7",
      "path": "52"
    },
    "2347": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2348": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "2349": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2350": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2351": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2352": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x938"
    },
    "2355": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "2356": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2358": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2359": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "REVERT",
      "path": "52"
    },
    "2360": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2361": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "POP",
      "path": "52"
    },
    "2362": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "GAS",
      "path": "52"
    },
    "2363": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "2364": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2365": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2366": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2367": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x94C"
    },
    "2370": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "2371": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2372": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2374": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2375": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "2376": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2377": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2379": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "REVERT",
      "path": "52"
    },
    "2380": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2381": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "POP",
      "path": "52"
    },
    "2382": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "POP",
      "path": "52"
    },
    "2383": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "POP",
      "path": "52"
    },
    "2384": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "POP",
      "path": "52"
    },
    "2385": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2387": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2388": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2389": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "2391": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "NOT",
      "path": "52"
    },
    "2392": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "2394": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2395": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "ADD",
      "path": "52"
    },
    "2396": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "AND",
      "path": "52"
    },
    "2397": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2398": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "ADD",
      "path": "52"
    },
    "2399": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2400": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2402": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "2403": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "POP",
      "path": "52"
    },
    "2404": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2405": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "ADD",
      "path": "52"
    },
    "2406": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2407": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x970"
    },
    "2410": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "2411": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2412": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1847"
    },
    "2415": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "jump": "i",
      "offset": [
        3981,
        4052
      ],
      "op": "JUMP",
      "path": "52"
    },
    "2416": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3981,
        4052
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2417": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4106,
        4127
      ],
      "op": "PUSH1",
      "path": "52",
      "statement": 9,
      "value": "0xE0"
    },
    "2419": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4106,
        4127
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2420": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4106,
        4127
      ],
      "op": "ADD",
      "path": "52"
    },
    "2421": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4106,
        4127
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2422": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2424": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2425": {
      "op": "PUSH4",
      "value": "0x70A08231"
    },
    "2430": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "2432": {
      "op": "SHL"
    },
    "2433": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2434": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "2435": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2437": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2439": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2441": {
      "op": "SHL"
    },
    "2442": {
      "op": "SUB"
    },
    "2443": {
      "op": "SWAP2"
    },
    "2444": {
      "op": "DUP3"
    },
    "2445": {
      "op": "AND"
    },
    "2446": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "2448": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2449": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "ADD",
      "path": "52"
    },
    "2450": {
      "op": "MSTORE"
    },
    "2451": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4106,
        4127
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "2452": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4106,
        4127
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "2453": {
      "op": "POP"
    },
    "2454": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4105
      ],
      "op": "DUP14",
      "path": "52"
    },
    "2455": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4105
      ],
      "op": "AND",
      "path": "52"
    },
    "2456": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4105
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2457": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4105
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x70A08231"
    },
    "2462": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4105
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2463": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "2465": {
      "op": "ADD"
    },
    "2466": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "2468": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2470": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2471": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2472": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "DUP4",
      "path": "52"
    },
    "2473": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "SUB",
      "path": "52"
    },
    "2474": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2475": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "DUP7",
      "path": "52"
    },
    "2476": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2477": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "2478": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2479": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2480": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2481": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x9B9"
    },
    "2484": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "2485": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2487": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2488": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "REVERT",
      "path": "52"
    },
    "2489": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2490": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "POP",
      "path": "52"
    },
    "2491": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "GAS",
      "path": "52"
    },
    "2492": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "2493": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2494": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2495": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2496": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x9CD"
    },
    "2499": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "2500": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2501": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2503": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2504": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "2505": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2506": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2508": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "REVERT",
      "path": "52"
    },
    "2509": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2510": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "POP",
      "path": "52"
    },
    "2511": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "POP",
      "path": "52"
    },
    "2512": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "POP",
      "path": "52"
    },
    "2513": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "POP",
      "path": "52"
    },
    "2514": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2516": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2517": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2518": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "2520": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "NOT",
      "path": "52"
    },
    "2521": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "2523": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2524": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "ADD",
      "path": "52"
    },
    "2525": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "AND",
      "path": "52"
    },
    "2526": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2527": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "ADD",
      "path": "52"
    },
    "2528": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2529": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2531": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "2532": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "POP",
      "path": "52"
    },
    "2533": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2534": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "ADD",
      "path": "52"
    },
    "2535": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2536": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x9F1"
    },
    "2539": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "2540": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2541": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1934"
    },
    "2544": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "jump": "i",
      "offset": [
        4074,
        4128
      ],
      "op": "JUMP",
      "path": "52"
    },
    "2545": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4074,
        4128
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2546": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4151,
        4158
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2547": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4151,
        4181
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x100"
    },
    "2550": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4151,
        4181
      ],
      "op": "ADD",
      "path": "52"
    },
    "2551": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4151,
        4181
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2552": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2554": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2556": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2558": {
      "op": "SHL"
    },
    "2559": {
      "op": "SUB"
    },
    "2560": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4194
      ],
      "op": "AND",
      "path": "52"
    },
    "2561": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4194
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x18160DDD"
    },
    "2566": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2568": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2569": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2570": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "2575": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "AND",
      "path": "52"
    },
    "2576": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "2578": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "SHL",
      "path": "52"
    },
    "2579": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2580": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "2581": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "2583": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "ADD",
      "path": "52"
    },
    "2584": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "2586": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2588": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2589": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2590": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "DUP4",
      "path": "52"
    },
    "2591": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "SUB",
      "path": "52"
    },
    "2592": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2593": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "DUP7",
      "path": "52"
    },
    "2594": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2595": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "2596": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2597": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2598": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2599": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xA2F"
    },
    "2602": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "2603": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2605": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2606": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "REVERT",
      "path": "52"
    },
    "2607": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2608": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "POP",
      "path": "52"
    },
    "2609": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "GAS",
      "path": "52"
    },
    "2610": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "2611": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2612": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2613": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2614": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xA43"
    },
    "2617": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "2618": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2619": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2621": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2622": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "2623": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2624": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2626": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "REVERT",
      "path": "52"
    },
    "2627": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2628": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "POP",
      "path": "52"
    },
    "2629": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "POP",
      "path": "52"
    },
    "2630": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "POP",
      "path": "52"
    },
    "2631": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "POP",
      "path": "52"
    },
    "2632": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2634": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2635": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2636": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "2638": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "NOT",
      "path": "52"
    },
    "2639": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "2641": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2642": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "ADD",
      "path": "52"
    },
    "2643": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "AND",
      "path": "52"
    },
    "2644": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2645": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "ADD",
      "path": "52"
    },
    "2646": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2647": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2649": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "2650": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "POP",
      "path": "52"
    },
    "2651": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2652": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "ADD",
      "path": "52"
    },
    "2653": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2654": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xA67"
    },
    "2657": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "2658": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2659": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1934"
    },
    "2662": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "jump": "i",
      "offset": [
        4136,
        4196
      ],
      "op": "JUMP",
      "path": "52"
    },
    "2663": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4136,
        4196
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2664": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4219,
        4226
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2665": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4219,
        4251
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x120"
    },
    "2668": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4219,
        4251
      ],
      "op": "ADD",
      "path": "52"
    },
    "2669": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4219,
        4251
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2670": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2672": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2674": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2676": {
      "op": "SHL"
    },
    "2677": {
      "op": "SUB"
    },
    "2678": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4264
      ],
      "op": "AND",
      "path": "52"
    },
    "2679": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4264
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x18160DDD"
    },
    "2684": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2686": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2687": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2688": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "2693": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "AND",
      "path": "52"
    },
    "2694": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "2696": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "SHL",
      "path": "52"
    },
    "2697": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2698": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "2699": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "2701": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "ADD",
      "path": "52"
    },
    "2702": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "2704": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2706": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2707": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2708": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "DUP4",
      "path": "52"
    },
    "2709": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "SUB",
      "path": "52"
    },
    "2710": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2711": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "DUP7",
      "path": "52"
    },
    "2712": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2713": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "2714": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2715": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2716": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2717": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xAA5"
    },
    "2720": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "2721": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2723": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2724": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "REVERT",
      "path": "52"
    },
    "2725": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2726": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "POP",
      "path": "52"
    },
    "2727": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "GAS",
      "path": "52"
    },
    "2728": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "2729": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2730": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2731": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2732": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xAB9"
    },
    "2735": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "2736": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2737": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2739": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2740": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "2741": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2742": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2744": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "REVERT",
      "path": "52"
    },
    "2745": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2746": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "POP",
      "path": "52"
    },
    "2747": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "POP",
      "path": "52"
    },
    "2748": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "POP",
      "path": "52"
    },
    "2749": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "POP",
      "path": "52"
    },
    "2750": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2752": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2753": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2754": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "2756": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "NOT",
      "path": "52"
    },
    "2757": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "2759": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2760": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "ADD",
      "path": "52"
    },
    "2761": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "AND",
      "path": "52"
    },
    "2762": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2763": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "ADD",
      "path": "52"
    },
    "2764": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2765": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2767": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "2768": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "POP",
      "path": "52"
    },
    "2769": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2770": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "ADD",
      "path": "52"
    },
    "2771": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2772": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xADD"
    },
    "2775": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "2776": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2777": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1934"
    },
    "2780": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "jump": "i",
      "offset": [
        4204,
        4266
      ],
      "op": "JUMP",
      "path": "52"
    },
    "2781": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4204,
        4266
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2782": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4274,
        4281
      ],
      "op": "DUP4",
      "path": "52"
    },
    "2783": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4274,
        4302
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x60"
    },
    "2785": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4274,
        4302
      ],
      "op": "ADD",
      "path": "52"
    },
    "2786": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4274,
        4302
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2787": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4310,
        4317
      ],
      "op": "DUP5",
      "path": "52"
    },
    "2788": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4310,
        4343
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x80"
    },
    "2790": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4310,
        4343
      ],
      "op": "ADD",
      "path": "52"
    },
    "2791": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4310,
        4343
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2792": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4351,
        4358
      ],
      "op": "DUP6",
      "path": "52"
    },
    "2793": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4351,
        4382
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xA0"
    },
    "2795": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4351,
        4382
      ],
      "op": "ADD",
      "path": "52"
    },
    "2796": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4351,
        4382
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2797": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4407,
        4414
      ],
      "op": "DUP7",
      "path": "52"
    },
    "2798": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4407,
        4437
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x100"
    },
    "2801": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4407,
        4437
      ],
      "op": "ADD",
      "path": "52"
    },
    "2802": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4407,
        4437
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2803": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2805": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2807": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2809": {
      "op": "SHL"
    },
    "2810": {
      "op": "SUB"
    },
    "2811": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4459
      ],
      "op": "AND",
      "path": "52"
    },
    "2812": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4459
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x90F6FCF2"
    },
    "2817": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2819": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2820": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2821": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "2826": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "AND",
      "path": "52"
    },
    "2827": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "2829": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "SHL",
      "path": "52"
    },
    "2830": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2831": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "2832": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "2834": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "ADD",
      "path": "52"
    },
    "2835": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "2837": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2839": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2840": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2841": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "DUP4",
      "path": "52"
    },
    "2842": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "SUB",
      "path": "52"
    },
    "2843": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2844": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "DUP7",
      "path": "52"
    },
    "2845": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2846": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "2847": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2848": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2849": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2850": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xB2A"
    },
    "2853": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "2854": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2856": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2857": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "REVERT",
      "path": "52"
    },
    "2858": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2859": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "POP",
      "path": "52"
    },
    "2860": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "GAS",
      "path": "52"
    },
    "2861": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "2862": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2863": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2864": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "2865": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xB3E"
    },
    "2868": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "2869": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2870": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2872": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2873": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "2874": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2875": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "2877": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "REVERT",
      "path": "52"
    },
    "2878": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2879": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "POP",
      "path": "52"
    },
    "2880": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "POP",
      "path": "52"
    },
    "2881": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "POP",
      "path": "52"
    },
    "2882": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "POP",
      "path": "52"
    },
    "2883": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2885": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2886": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "2887": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "2889": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "NOT",
      "path": "52"
    },
    "2890": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "2892": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2893": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "ADD",
      "path": "52"
    },
    "2894": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "AND",
      "path": "52"
    },
    "2895": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2896": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "ADD",
      "path": "52"
    },
    "2897": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "DUP1",
      "path": "52"
    },
    "2898": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2900": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "2901": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "POP",
      "path": "52"
    },
    "2902": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2903": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "ADD",
      "path": "52"
    },
    "2904": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2905": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xB62"
    },
    "2908": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "2909": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "2910": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1934"
    },
    "2913": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "jump": "i",
      "offset": [
        4390,
        4461
      ],
      "op": "JUMP",
      "path": "52"
    },
    "2914": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4390,
        4461
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "2915": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4469,
        4476
      ],
      "op": "DUP8",
      "path": "52"
    },
    "2916": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4469,
        4491
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "2918": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4469,
        4491
      ],
      "op": "ADD",
      "path": "52"
    },
    "2919": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4469,
        4491
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2920": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4499,
        4506
      ],
      "op": "DUP9",
      "path": "52"
    },
    "2921": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4499,
        4526
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "2923": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4499,
        4526
      ],
      "op": "ADD",
      "path": "52"
    },
    "2924": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4499,
        4526
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2925": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4534,
        4541
      ],
      "op": "DUP10",
      "path": "52"
    },
    "2926": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4534,
        4561
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xC0"
    },
    "2928": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4534,
        4561
      ],
      "op": "ADD",
      "path": "52"
    },
    "2929": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4534,
        4561
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "2930": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "DUP7",
      "path": "52"
    },
    "2931": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2933": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2935": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "2937": {
      "op": "SHL"
    },
    "2938": {
      "op": "SUB"
    },
    "2939": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "AND",
      "path": "52"
    },
    "2940": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "SWAP7",
      "path": "52"
    },
    "2941": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "2942": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "DUP6",
      "path": "52"
    },
    "2943": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2945": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2947": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "2949": {
      "op": "SHL"
    },
    "2950": {
      "op": "SUB"
    },
    "2951": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "AND",
      "path": "52"
    },
    "2952": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "SWAP6",
      "path": "52"
    },
    "2953": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "2954": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "DUP5",
      "path": "52"
    },
    "2955": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2957": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2959": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "2961": {
      "op": "SHL"
    },
    "2962": {
      "op": "SUB"
    },
    "2963": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "AND",
      "path": "52"
    },
    "2964": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "SWAP5",
      "path": "52"
    },
    "2965": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "2966": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "DUP3",
      "path": "52"
    },
    "2967": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2969": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2971": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "2973": {
      "op": "SHL"
    },
    "2974": {
      "op": "SUB"
    },
    "2975": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "AND",
      "path": "52"
    },
    "2976": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "2977": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "2978": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "DUP2",
      "path": "52"
    },
    "2979": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2981": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2983": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "2985": {
      "op": "SHL"
    },
    "2986": {
      "op": "SUB"
    },
    "2987": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "AND",
      "path": "52"
    },
    "2988": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "2989": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "2990": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "SWAP11",
      "path": "52"
    },
    "2991": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "2992": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "SWAP11",
      "path": "52"
    },
    "2993": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "2994": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "SWAP11",
      "path": "52"
    },
    "2995": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "2996": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "SWAP11",
      "path": "52"
    },
    "2997": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "2998": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "SWAP11",
      "path": "52"
    },
    "2999": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "3000": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "SWAP11",
      "path": "52"
    },
    "3001": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "3002": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "SWAP11",
      "path": "52"
    },
    "3003": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "3004": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "SWAP11",
      "path": "52"
    },
    "3005": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "3006": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "SWAP11",
      "path": "52"
    },
    "3007": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "3008": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "SWAP11",
      "path": "52"
    },
    "3009": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "3010": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        4059,
        4567
      ],
      "op": "POP",
      "path": "52"
    },
    "3011": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "3012": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "SWAP4",
      "path": "52"
    },
    "3013": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "SWAP6",
      "path": "52"
    },
    "3014": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "SWAP8",
      "path": "52"
    },
    "3015": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "SWAP10",
      "path": "52"
    },
    "3016": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "POP",
      "path": "52"
    },
    "3017": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "3018": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "SWAP4",
      "path": "52"
    },
    "3019": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "SWAP6",
      "path": "52"
    },
    "3020": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "SWAP8",
      "path": "52"
    },
    "3021": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "offset": [
        3517,
        4572
      ],
      "op": "SWAP10",
      "path": "52"
    },
    "3022": {
      "fn": "AaveProtocolDataProvider.getReserveData",
      "jump": "o",
      "offset": [
        3517,
        4572
      ],
      "op": "JUMP",
      "path": "52"
    },
    "3023": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3024": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2795,
        2811
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3026": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2819,
        2830
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3027": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2838,
        2866
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3029": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2874,
        2898
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3030": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2906,
        2927
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3032": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2935,
        2964
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3033": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2972,
        2993
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3035": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3001,
        3029
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3036": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3037,
        3050
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3038": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3058,
        3071
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3039": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3086,
        3140
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3041": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3180
      ],
      "op": "PUSH32",
      "path": "52",
      "value": "0x0"
    },
    "3074": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3076": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3078": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3080": {
      "op": "SHL"
    },
    "3081": {
      "op": "SUB"
    },
    "3082": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3195
      ],
      "op": "AND",
      "path": "52"
    },
    "3083": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3195
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x261BF8B"
    },
    "3088": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3090": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3091": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3092": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "3097": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "AND",
      "path": "52"
    },
    "3098": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "3100": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "SHL",
      "path": "52"
    },
    "3101": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3102": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3103": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "3105": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "ADD",
      "path": "52"
    },
    "3106": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "3108": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3110": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3111": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3112": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "DUP4",
      "path": "52"
    },
    "3113": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "SUB",
      "path": "52"
    },
    "3114": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3115": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "DUP7",
      "path": "52"
    },
    "3116": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3117": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "3118": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3119": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3120": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3121": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xC39"
    },
    "3124": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "3125": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3127": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3128": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "REVERT",
      "path": "52"
    },
    "3129": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3130": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "POP",
      "path": "52"
    },
    "3131": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "GAS",
      "path": "52"
    },
    "3132": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "3133": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3134": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3135": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3136": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xC4D"
    },
    "3139": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "3140": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "3141": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3143": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3144": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "3145": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "3146": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3148": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "REVERT",
      "path": "52"
    },
    "3149": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3150": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "POP",
      "path": "52"
    },
    "3151": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "POP",
      "path": "52"
    },
    "3152": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "POP",
      "path": "52"
    },
    "3153": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "POP",
      "path": "52"
    },
    "3154": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3156": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3157": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "3158": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "3160": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "NOT",
      "path": "52"
    },
    "3161": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "3163": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "DUP3",
      "path": "52"
    },
    "3164": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "ADD",
      "path": "52"
    },
    "3165": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "AND",
      "path": "52"
    },
    "3166": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "DUP3",
      "path": "52"
    },
    "3167": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "ADD",
      "path": "52"
    },
    "3168": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3169": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3171": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3172": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "POP",
      "path": "52"
    },
    "3173": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3174": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "ADD",
      "path": "52"
    },
    "3175": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3176": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xC71"
    },
    "3179": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "3180": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3181": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1688"
    },
    "3184": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "jump": "i",
      "offset": [
        3162,
        3197
      ],
      "op": "JUMP",
      "path": "52"
    },
    "3185": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3162,
        3197
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3186": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3188": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3189": {
      "op": "PUSH4",
      "value": "0xC44B11F7"
    },
    "3194": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "3196": {
      "op": "SHL"
    },
    "3197": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3198": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3199": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3201": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3203": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3205": {
      "op": "SHL"
    },
    "3206": {
      "op": "SUB"
    },
    "3207": {
      "op": "DUP15"
    },
    "3208": {
      "op": "DUP2"
    },
    "3209": {
      "op": "AND"
    },
    "3210": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "3212": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "DUP4",
      "path": "52"
    },
    "3213": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "ADD",
      "path": "52"
    },
    "3214": {
      "op": "MSTORE"
    },
    "3215": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3215
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "3216": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3215
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3217": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3215
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "3218": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3215
      ],
      "op": "AND",
      "path": "52"
    },
    "3219": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3215
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3220": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3215
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xC44B11F7"
    },
    "3225": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3215
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3226": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "3228": {
      "op": "ADD"
    },
    "3229": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "3231": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3233": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3234": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3235": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "DUP4",
      "path": "52"
    },
    "3236": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "SUB",
      "path": "52"
    },
    "3237": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3238": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "DUP7",
      "path": "52"
    },
    "3239": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3240": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "3241": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3242": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3243": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3244": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xCB4"
    },
    "3247": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "3248": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3250": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3251": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "REVERT",
      "path": "52"
    },
    "3252": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3253": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "POP",
      "path": "52"
    },
    "3254": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "GAS",
      "path": "52"
    },
    "3255": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "3256": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3257": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3258": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3259": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xCC8"
    },
    "3262": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "3263": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "3264": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3266": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3267": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "3268": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "3269": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3271": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "REVERT",
      "path": "52"
    },
    "3272": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3273": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "POP",
      "path": "52"
    },
    "3274": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "POP",
      "path": "52"
    },
    "3275": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "POP",
      "path": "52"
    },
    "3276": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "POP",
      "path": "52"
    },
    "3277": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3279": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3280": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "3281": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "3283": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "NOT",
      "path": "52"
    },
    "3284": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "3286": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "DUP3",
      "path": "52"
    },
    "3287": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "ADD",
      "path": "52"
    },
    "3288": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "AND",
      "path": "52"
    },
    "3289": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "DUP3",
      "path": "52"
    },
    "3290": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "ADD",
      "path": "52"
    },
    "3291": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3292": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3294": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3295": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "POP",
      "path": "52"
    },
    "3296": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3297": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "ADD",
      "path": "52"
    },
    "3298": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3299": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xCEC"
    },
    "3302": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "3303": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3304": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x182B"
    },
    "3307": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "jump": "i",
      "offset": [
        3149,
        3222
      ],
      "op": "JUMP",
      "path": "52"
    },
    "3308": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3149,
        3222
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3309": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3086,
        3222
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3310": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3086,
        3222
      ],
      "op": "POP",
      "path": "52"
    },
    "3311": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3302,
        3340
      ],
      "op": "PUSH2",
      "path": "52",
      "statement": 10,
      "value": "0xD1D"
    },
    "3314": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3302,
        3315
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3315": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11152,
        11161
      ],
      "op": "MLOAD",
      "path": "53",
      "statement": 11
    },
    "3316": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11164,
        11173
      ],
      "op": "PUSH2",
      "path": "53",
      "value": "0xFFFF"
    },
    "3319": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11152,
        11173
      ],
      "op": "DUP1",
      "path": "53"
    },
    "3320": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11152,
        11173
      ],
      "op": "DUP3",
      "path": "53"
    },
    "3321": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11152,
        11173
      ],
      "op": "AND",
      "path": "53"
    },
    "3322": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11152,
        11173
      ],
      "op": "SWAP3",
      "path": "53"
    },
    "3323": {
      "offset": [
        1692,
        1694
      ],
      "op": "PUSH1",
      "path": "53",
      "value": "0x10"
    },
    "3325": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11181,
        11266
      ],
      "op": "DUP4",
      "path": "53"
    },
    "3326": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11181,
        11266
      ],
      "op": "SWAP1",
      "path": "53"
    },
    "3327": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11181,
        11266
      ],
      "op": "SHR",
      "path": "53"
    },
    "3328": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11181,
        11266
      ],
      "op": "DUP3",
      "path": "53"
    },
    "3329": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11181,
        11266
      ],
      "op": "AND",
      "path": "53"
    },
    "3330": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11181,
        11266
      ],
      "op": "SWAP3",
      "path": "53"
    },
    "3331": {
      "offset": [
        1754,
        1756
      ],
      "op": "PUSH1",
      "path": "53",
      "value": "0x20"
    },
    "3333": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11274,
        11351
      ],
      "op": "DUP2",
      "path": "53"
    },
    "3334": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11274,
        11351
      ],
      "op": "SWAP1",
      "path": "53"
    },
    "3335": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11274,
        11351
      ],
      "op": "SHR",
      "path": "53"
    },
    "3336": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11274,
        11351
      ],
      "op": "DUP4",
      "path": "53"
    },
    "3337": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11274,
        11351
      ],
      "op": "AND",
      "path": "53"
    },
    "3338": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11274,
        11351
      ],
      "op": "SWAP3",
      "path": "53"
    },
    "3339": {
      "offset": [
        1815,
        1817
      ],
      "op": "PUSH1",
      "path": "53",
      "value": "0x30"
    },
    "3341": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11359,
        11426
      ],
      "op": "DUP3",
      "path": "53"
    },
    "3342": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11359,
        11426
      ],
      "op": "SWAP1",
      "path": "53"
    },
    "3343": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11359,
        11426
      ],
      "op": "SHR",
      "path": "53"
    },
    "3344": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11359,
        11426
      ],
      "op": "PUSH1",
      "path": "53",
      "value": "0xFF"
    },
    "3346": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11359,
        11426
      ],
      "op": "AND",
      "path": "53"
    },
    "3347": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11359,
        11426
      ],
      "op": "SWAP3",
      "path": "53"
    },
    "3348": {
      "offset": [
        2113,
        2115
      ],
      "op": "PUSH1",
      "path": "53",
      "value": "0x40"
    },
    "3350": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11434,
        11505
      ],
      "op": "SWAP3",
      "path": "53"
    },
    "3351": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11434,
        11505
      ],
      "op": "SWAP1",
      "path": "53"
    },
    "3352": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11434,
        11505
      ],
      "op": "SWAP3",
      "path": "53"
    },
    "3353": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11434,
        11505
      ],
      "op": "SHR",
      "path": "53"
    },
    "3354": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11434,
        11505
      ],
      "op": "AND",
      "path": "53"
    },
    "3355": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        11434,
        11505
      ],
      "op": "SWAP1",
      "path": "53"
    },
    "3356": {
      "fn": "ReserveConfiguration.getParamsMemory",
      "offset": [
        10941,
        11516
      ],
      "op": "JUMP",
      "path": "53"
    },
    "3357": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3302,
        3340
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3358": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        11940,
        11949
      ],
      "op": "DUP6",
      "path": "53",
      "statement": 12
    },
    "3359": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        11940,
        11949
      ],
      "op": "MLOAD",
      "path": "53"
    },
    "3360": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3229,
        3340
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "3361": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3229,
        3340
      ],
      "op": "SWAP16",
      "path": "52"
    },
    "3362": {
      "op": "POP"
    },
    "3363": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3229,
        3340
      ],
      "op": "SWAP4",
      "path": "52"
    },
    "3364": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3229,
        3340
      ],
      "op": "SWAP14",
      "path": "52"
    },
    "3365": {
      "op": "POP"
    },
    "3366": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3229,
        3340
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "3367": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3229,
        3340
      ],
      "op": "SWAP12",
      "path": "52"
    },
    "3368": {
      "op": "POP"
    },
    "3369": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3229,
        3340
      ],
      "op": "SWAP10",
      "path": "52"
    },
    "3370": {
      "op": "POP"
    },
    "3371": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3229,
        3340
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3372": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3229,
        3340
      ],
      "op": "SWAP8",
      "path": "52"
    },
    "3373": {
      "op": "POP"
    },
    "3374": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        11952,
        11964
      ],
      "op": "PUSH8",
      "path": "53",
      "value": "0x100000000000000"
    },
    "3383": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        11940,
        11964
      ],
      "op": "DUP2",
      "path": "53"
    },
    "3384": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        11940,
        11964
      ],
      "op": "AND",
      "path": "53"
    },
    "3385": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        11939,
        11970
      ],
      "op": "ISZERO",
      "path": "53"
    },
    "3386": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        11939,
        11970
      ],
      "op": "ISZERO",
      "path": "53"
    },
    "3387": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        11939,
        11970
      ],
      "op": "SWAP1",
      "path": "53"
    },
    "3388": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        11991,
        12003
      ],
      "op": "PUSH8",
      "path": "53",
      "value": "0x200000000000000"
    },
    "3397": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        11979,
        12003
      ],
      "op": "DUP2",
      "path": "53"
    },
    "3398": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        11979,
        12003
      ],
      "op": "AND",
      "path": "53"
    },
    "3399": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        11978,
        12009
      ],
      "op": "ISZERO",
      "path": "53"
    },
    "3400": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        11978,
        12009
      ],
      "op": "ISZERO",
      "path": "53"
    },
    "3401": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        11978,
        12009
      ],
      "op": "SWAP1",
      "path": "53"
    },
    "3402": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        12030,
        12045
      ],
      "op": "PUSH8",
      "path": "53",
      "value": "0x400000000000000"
    },
    "3411": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        12018,
        12045
      ],
      "op": "DUP2",
      "path": "53"
    },
    "3412": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        12018,
        12045
      ],
      "op": "AND",
      "path": "53"
    },
    "3413": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        12017,
        12051
      ],
      "op": "ISZERO",
      "path": "53"
    },
    "3414": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        12017,
        12051
      ],
      "op": "ISZERO",
      "path": "53"
    },
    "3415": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        12017,
        12051
      ],
      "op": "SWAP1",
      "path": "53"
    },
    "3416": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        12072,
        12094
      ],
      "op": "PUSH8",
      "path": "53",
      "value": "0x800000000000000"
    },
    "3425": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        12060,
        12094
      ],
      "op": "AND",
      "path": "53"
    },
    "3426": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        12059,
        12100
      ],
      "op": "ISZERO",
      "path": "53"
    },
    "3427": {
      "fn": "ReserveConfiguration.getFlagsMemory",
      "offset": [
        12059,
        12100
      ],
      "op": "ISZERO",
      "path": "53"
    },
    "3428": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "SWAP14",
      "path": "52"
    },
    "3429": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "SWAP16",
      "path": "52"
    },
    "3430": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "SWAP13",
      "path": "52"
    },
    "3431": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "SWAP15",
      "path": "52"
    },
    "3432": {
      "op": "POP"
    },
    "3433": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3484,
        3504
      ],
      "op": "SWAP11",
      "path": "52",
      "statement": 13
    },
    "3434": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3484,
        3504
      ],
      "op": "SWAP13",
      "path": "52"
    },
    "3435": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "SWAP10",
      "path": "52"
    },
    "3436": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "SWAP12",
      "path": "52"
    },
    "3437": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "SWAP9",
      "path": "52"
    },
    "3438": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "SWAP11",
      "path": "52"
    },
    "3439": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3484,
        3508
      ],
      "op": "DUP14",
      "path": "52"
    },
    "3440": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3484,
        3508
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3441": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3484,
        3508
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3442": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3484,
        3508
      ],
      "op": "SWAP11",
      "path": "52"
    },
    "3443": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3347,
        3450
      ],
      "op": "SWAP1",
      "path": "52",
      "statement": 14
    },
    "3444": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3347,
        3450
      ],
      "op": "SWAP10",
      "path": "52"
    },
    "3445": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3347,
        3450
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3446": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3347,
        3450
      ],
      "op": "SWAP9",
      "path": "52"
    },
    "3447": {
      "op": "POP"
    },
    "3448": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3347,
        3450
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "3449": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3347,
        3450
      ],
      "op": "SWAP7",
      "path": "52"
    },
    "3450": {
      "op": "POP"
    },
    "3451": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        3347,
        3450
      ],
      "op": "SWAP5",
      "path": "52"
    },
    "3452": {
      "op": "POP"
    },
    "3453": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "offset": [
        2701,
        3513
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "3454": {
      "op": "POP"
    },
    "3455": {
      "op": "POP"
    },
    "3456": {
      "op": "POP"
    },
    "3457": {
      "fn": "AaveProtocolDataProvider.getReserveConfigurationData",
      "jump": "o",
      "offset": [
        2701,
        3513
      ],
      "op": "JUMP",
      "path": "52"
    },
    "3458": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1316,
        2104
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3459": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1371,
        1389
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x60"
    },
    "3461": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1397,
        1414
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3463": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1448
      ],
      "op": "PUSH32",
      "path": "52",
      "value": "0x0"
    },
    "3496": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3498": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3500": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3502": {
      "op": "SHL"
    },
    "3503": {
      "op": "SUB"
    },
    "3504": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1463
      ],
      "op": "AND",
      "path": "52"
    },
    "3505": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1463
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x261BF8B"
    },
    "3510": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3512": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3513": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3514": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "3519": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "AND",
      "path": "52"
    },
    "3520": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "3522": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "SHL",
      "path": "52"
    },
    "3523": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3524": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3525": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "3527": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "ADD",
      "path": "52"
    },
    "3528": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "3530": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3532": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3533": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3534": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "DUP4",
      "path": "52"
    },
    "3535": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "SUB",
      "path": "52"
    },
    "3536": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3537": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "DUP7",
      "path": "52"
    },
    "3538": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3539": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "3540": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3541": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3542": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3543": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xDDF"
    },
    "3546": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "3547": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3549": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3550": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "REVERT",
      "path": "52"
    },
    "3551": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3552": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "POP",
      "path": "52"
    },
    "3553": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "GAS",
      "path": "52"
    },
    "3554": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "3555": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3556": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3557": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3558": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xDF3"
    },
    "3561": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "3562": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "3563": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3565": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3566": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "3567": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "3568": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3570": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "REVERT",
      "path": "52"
    },
    "3571": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3572": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "POP",
      "path": "52"
    },
    "3573": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "POP",
      "path": "52"
    },
    "3574": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "POP",
      "path": "52"
    },
    "3575": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "POP",
      "path": "52"
    },
    "3576": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3578": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3579": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "3580": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "3582": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "NOT",
      "path": "52"
    },
    "3583": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "3585": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "DUP3",
      "path": "52"
    },
    "3586": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "ADD",
      "path": "52"
    },
    "3587": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "AND",
      "path": "52"
    },
    "3588": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "DUP3",
      "path": "52"
    },
    "3589": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "ADD",
      "path": "52"
    },
    "3590": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3591": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3593": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3594": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "POP",
      "path": "52"
    },
    "3595": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3596": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "ADD",
      "path": "52"
    },
    "3597": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3598": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xE17"
    },
    "3601": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "3602": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3603": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1688"
    },
    "3606": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "i",
      "offset": [
        1430,
        1465
      ],
      "op": "JUMP",
      "path": "52"
    },
    "3607": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1430,
        1465
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3608": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1397,
        1466
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3609": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1397,
        1466
      ],
      "op": "POP",
      "path": "52"
    },
    "3610": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1472,
        1497
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3612": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1504
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3613": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3615": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3617": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3619": {
      "op": "SHL"
    },
    "3620": {
      "op": "SUB"
    },
    "3621": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1520
      ],
      "op": "AND",
      "path": "52"
    },
    "3622": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1520
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xD1946DBC"
    },
    "3627": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3629": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3630": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3631": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "3636": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "AND",
      "path": "52"
    },
    "3637": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "3639": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "SHL",
      "path": "52"
    },
    "3640": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3641": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3642": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "3644": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "ADD",
      "path": "52"
    },
    "3645": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3647": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3649": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3650": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3651": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "DUP4",
      "path": "52"
    },
    "3652": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "SUB",
      "path": "52"
    },
    "3653": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3654": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "DUP7",
      "path": "52"
    },
    "3655": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3656": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "3657": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3658": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3659": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3660": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xE54"
    },
    "3663": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "3664": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3666": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3667": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "REVERT",
      "path": "52"
    },
    "3668": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3669": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "POP",
      "path": "52"
    },
    "3670": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "GAS",
      "path": "52"
    },
    "3671": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "3672": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3673": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3674": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3675": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xE68"
    },
    "3678": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "3679": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "3680": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3682": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3683": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "3684": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "3685": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3687": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "REVERT",
      "path": "52"
    },
    "3688": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3689": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "POP",
      "path": "52"
    },
    "3690": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "POP",
      "path": "52"
    },
    "3691": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "POP",
      "path": "52"
    },
    "3692": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "POP",
      "path": "52"
    },
    "3693": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3695": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3696": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "3697": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3699": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "DUP3",
      "path": "52"
    },
    "3700": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "3701": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "3703": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "3704": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3705": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3706": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "ADD",
      "path": "52"
    },
    "3707": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "3709": {
      "op": "NOT"
    },
    "3710": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "AND",
      "path": "52"
    },
    "3711": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "DUP3",
      "path": "52"
    },
    "3712": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "ADD",
      "path": "52"
    },
    "3713": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3715": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3716": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xE90"
    },
    "3719": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "3720": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3721": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3722": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "ADD",
      "path": "52"
    },
    "3723": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3724": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x16DE"
    },
    "3727": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "i",
      "offset": [
        1500,
        1522
      ],
      "op": "JUMP",
      "path": "52"
    },
    "3728": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1500,
        1522
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3729": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1472,
        1522
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3730": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1472,
        1522
      ],
      "op": "POP",
      "path": "52"
    },
    "3731": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1528,
        1561
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3733": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1580,
        1588
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3734": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1580,
        1595
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3735": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "PUSH8",
      "path": "52",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "3744": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3745": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "GT",
      "path": "52"
    },
    "3746": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3747": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xEAE"
    },
    "3750": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "3751": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xEAE"
    },
    "3754": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1B2F"
    },
    "3757": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "i",
      "offset": [
        1564,
        1596
      ],
      "op": "JUMP",
      "path": "52"
    },
    "3758": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3759": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3761": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3762": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3763": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3764": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "DUP3",
      "path": "52"
    },
    "3765": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3766": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3767": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "3769": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "MUL",
      "path": "52"
    },
    "3770": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "3772": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "ADD",
      "path": "52"
    },
    "3773": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "DUP3",
      "path": "52"
    },
    "3774": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "ADD",
      "path": "52"
    },
    "3775": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3777": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3778": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3779": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3780": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xEF4"
    },
    "3783": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "3784": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3785": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "3787": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "ADD",
      "path": "52"
    },
    "3788": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3789": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "3791": {
      "op": "DUP1"
    },
    "3792": {
      "op": "MLOAD"
    },
    "3793": {
      "op": "DUP1"
    },
    "3794": {
      "op": "DUP3"
    },
    "3795": {
      "op": "ADD"
    },
    "3796": {
      "op": "SWAP1"
    },
    "3797": {
      "op": "SWAP2"
    },
    "3798": {
      "op": "MSTORE"
    },
    "3799": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "3801": {
      "op": "DUP2"
    },
    "3802": {
      "op": "MSTORE"
    },
    "3803": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3805": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "3807": {
      "op": "DUP3"
    },
    "3808": {
      "op": "ADD"
    },
    "3809": {
      "op": "MSTORE"
    },
    "3810": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3811": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3812": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "3814": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "ADD",
      "path": "52"
    },
    "3815": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3816": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1"
    },
    "3818": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3819": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "SUB",
      "path": "52"
    },
    "3820": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3821": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3822": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xECC"
    },
    "3825": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "3826": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3827": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "POP",
      "path": "52"
    },
    "3828": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3829": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1564,
        1596
      ],
      "op": "POP",
      "path": "52"
    },
    "3830": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1528,
        1596
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "3831": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1528,
        1596
      ],
      "op": "POP",
      "path": "52"
    },
    "3832": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1607,
        1616
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "3834": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1602,
        2073
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3835": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1626,
        1634
      ],
      "op": "DUP3",
      "path": "52"
    },
    "3836": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1626,
        1641
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3837": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1622,
        1623
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3838": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1622,
        1641
      ],
      "op": "LT",
      "path": "52"
    },
    "3839": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1602,
        2073
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3840": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1602,
        2073
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1137"
    },
    "3843": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1602,
        2073
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "3844": {
      "offset": [
        938,
        980
      ],
      "op": "PUSH20",
      "path": "52",
      "value": "0x9F8F72AA9304C8B593D555F12EF6589CC3A579A2"
    },
    "3865": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3867": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3869": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3871": {
      "op": "SHL"
    },
    "3872": {
      "op": "SUB"
    },
    "3873": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1678
      ],
      "op": "AND",
      "path": "52"
    },
    "3874": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1668
      ],
      "op": "DUP4",
      "path": "52"
    },
    "3875": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1669,
        1670
      ],
      "op": "DUP3",
      "path": "52"
    },
    "3876": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1671
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3877": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1671
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3878": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1671
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3879": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1671
      ],
      "op": "LT",
      "path": "52"
    },
    "3880": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1671
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xF33"
    },
    "3883": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1671
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "3884": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1671
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xF33"
    },
    "3887": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1671
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1B19"
    },
    "3890": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "i",
      "offset": [
        1660,
        1671
      ],
      "op": "JUMP",
      "path": "52"
    },
    "3891": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1671
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3892": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1671
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "3894": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1671
      ],
      "op": "MUL",
      "path": "52"
    },
    "3895": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1671
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "3897": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1671
      ],
      "op": "ADD",
      "path": "52"
    },
    "3898": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1671
      ],
      "op": "ADD",
      "path": "52"
    },
    "3899": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1671
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3900": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3902": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3904": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3906": {
      "op": "SHL"
    },
    "3907": {
      "op": "SUB"
    },
    "3908": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1678
      ],
      "op": "AND",
      "path": "52"
    },
    "3909": {
      "branch": 26,
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1660,
        1678
      ],
      "op": "EQ",
      "path": "52"
    },
    "3910": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1656,
        1790
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "3911": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1656,
        1790
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xFBE"
    },
    "3914": {
      "branch": 26,
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1656,
        1790
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "3915": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "PUSH1",
      "path": "52",
      "statement": 15,
      "value": "0x40"
    },
    "3917": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3918": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3919": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3921": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "ADD",
      "path": "52"
    },
    "3922": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3924": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3925": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3926": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3928": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3929": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3930": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3932": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "ADD",
      "path": "52"
    },
    "3933": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "3935": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3936": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "DUP1",
      "path": "52"
    },
    "3937": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x3"
    },
    "3939": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3940": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3941": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "3943": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "ADD",
      "path": "52"
    },
    "3944": {
      "op": "PUSH3",
      "value": "0x26A5A9"
    },
    "3948": {
      "op": "PUSH1",
      "value": "0xE9"
    },
    "3950": {
      "op": "SHL"
    },
    "3951": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3952": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3953": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "POP",
      "path": "52"
    },
    "3954": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3955": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3956": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "3958": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "ADD",
      "path": "52"
    },
    "3959": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1758
      ],
      "op": "DUP5",
      "path": "52"
    },
    "3960": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1759,
        1760
      ],
      "op": "DUP4",
      "path": "52"
    },
    "3961": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1761
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3962": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1761
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3963": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1761
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3964": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1761
      ],
      "op": "LT",
      "path": "52"
    },
    "3965": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1761
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xF88"
    },
    "3968": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1761
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "3969": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1761
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xF88"
    },
    "3972": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1761
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1B19"
    },
    "3975": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "i",
      "offset": [
        1750,
        1761
      ],
      "op": "JUMP",
      "path": "52"
    },
    "3976": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1761
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "3977": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1761
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "3979": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1761
      ],
      "op": "MUL",
      "path": "52"
    },
    "3980": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1761
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "3982": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1761
      ],
      "op": "ADD",
      "path": "52"
    },
    "3983": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1761
      ],
      "op": "ADD",
      "path": "52"
    },
    "3984": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1750,
        1761
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "3985": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3987": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3989": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3991": {
      "op": "SHL"
    },
    "3992": {
      "op": "SUB"
    },
    "3993": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "AND",
      "path": "52"
    },
    "3994": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "DUP2",
      "path": "52"
    },
    "3995": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "3996": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1710,
        1763
      ],
      "op": "POP",
      "path": "52"
    },
    "3997": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1704
      ],
      "op": "DUP3",
      "path": "52"
    },
    "3998": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1705,
        1706
      ],
      "op": "DUP3",
      "path": "52"
    },
    "3999": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1707
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4000": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1707
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4001": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1707
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4002": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1707
      ],
      "op": "LT",
      "path": "52"
    },
    "4003": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1707
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xFAE"
    },
    "4006": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1707
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4007": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1707
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xFAE"
    },
    "4010": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1707
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1B19"
    },
    "4013": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "i",
      "offset": [
        1690,
        1707
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4014": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1707
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4015": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1707
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "4017": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1707
      ],
      "op": "MUL",
      "path": "52"
    },
    "4018": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1707
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "4020": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1707
      ],
      "op": "ADD",
      "path": "52"
    },
    "4021": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1707
      ],
      "op": "ADD",
      "path": "52"
    },
    "4022": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1763
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4023": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1763
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4024": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1763
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4025": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1690,
        1763
      ],
      "op": "POP",
      "path": "52"
    },
    "4026": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1773,
        1781
      ],
      "op": "PUSH2",
      "path": "52",
      "statement": 16,
      "value": "0x1125"
    },
    "4029": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1773,
        1781
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4030": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1656,
        1790
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4031": {
      "offset": [
        1007,
        1049
      ],
      "op": "PUSH20",
      "path": "52",
      "value": "0xEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
    },
    "4052": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4054": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4056": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4058": {
      "op": "SHL"
    },
    "4059": {
      "op": "SUB"
    },
    "4060": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1819
      ],
      "op": "AND",
      "path": "52"
    },
    "4061": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1809
      ],
      "op": "DUP4",
      "path": "52"
    },
    "4062": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1810,
        1811
      ],
      "op": "DUP3",
      "path": "52"
    },
    "4063": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1812
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4064": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1812
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4065": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1812
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4066": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1812
      ],
      "op": "LT",
      "path": "52"
    },
    "4067": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1812
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xFEE"
    },
    "4070": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1812
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4071": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1812
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xFEE"
    },
    "4074": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1812
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1B19"
    },
    "4077": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "i",
      "offset": [
        1801,
        1812
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4078": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1812
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4079": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1812
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "4081": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1812
      ],
      "op": "MUL",
      "path": "52"
    },
    "4082": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1812
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "4084": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1812
      ],
      "op": "ADD",
      "path": "52"
    },
    "4085": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1812
      ],
      "op": "ADD",
      "path": "52"
    },
    "4086": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1812
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4087": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4089": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4091": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4093": {
      "op": "SHL"
    },
    "4094": {
      "op": "SUB"
    },
    "4095": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1819
      ],
      "op": "AND",
      "path": "52"
    },
    "4096": {
      "branch": 27,
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1801,
        1819
      ],
      "op": "EQ",
      "path": "52"
    },
    "4097": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1797,
        1931
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4098": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1797,
        1931
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1043"
    },
    "4101": {
      "branch": 27,
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1797,
        1931
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4102": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "PUSH1",
      "path": "52",
      "statement": 17,
      "value": "0x40"
    },
    "4104": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4105": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4106": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4108": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "ADD",
      "path": "52"
    },
    "4109": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4111": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4112": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4113": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4115": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4116": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4117": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4119": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "ADD",
      "path": "52"
    },
    "4120": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4122": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4123": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4124": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x3"
    },
    "4126": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4127": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4128": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "4130": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "ADD",
      "path": "52"
    },
    "4131": {
      "op": "PUSH3",
      "value": "0x8AA89"
    },
    "4135": {
      "op": "PUSH1",
      "value": "0xEB"
    },
    "4137": {
      "op": "SHL"
    },
    "4138": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4139": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4140": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "POP",
      "path": "52"
    },
    "4141": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4142": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4143": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "4145": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1851,
        1904
      ],
      "op": "ADD",
      "path": "52"
    },
    "4146": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1891,
        1899
      ],
      "op": "DUP5",
      "path": "52"
    },
    "4147": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1900,
        1901
      ],
      "op": "DUP4",
      "path": "52"
    },
    "4148": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1891,
        1902
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4149": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1891,
        1902
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4150": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1891,
        1902
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4151": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1891,
        1902
      ],
      "op": "LT",
      "path": "52"
    },
    "4152": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1891,
        1902
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xF88"
    },
    "4155": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1891,
        1902
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4156": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1891,
        1902
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xF88"
    },
    "4159": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1891,
        1902
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1B19"
    },
    "4162": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "i",
      "offset": [
        1891,
        1902
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4163": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1797,
        1931
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4164": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "PUSH1",
      "path": "52",
      "statement": 18,
      "value": "0x40"
    },
    "4166": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4167": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4168": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4170": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "ADD",
      "path": "52"
    },
    "4171": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4173": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4174": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4175": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2009
      ],
      "op": "DUP5",
      "path": "52"
    },
    "4176": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2010,
        2011
      ],
      "op": "DUP4",
      "path": "52"
    },
    "4177": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2012
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4178": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2012
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4179": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2012
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4180": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2012
      ],
      "op": "LT",
      "path": "52"
    },
    "4181": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2012
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1060"
    },
    "4184": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2012
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4185": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2012
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1060"
    },
    "4188": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2012
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1B19"
    },
    "4191": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "i",
      "offset": [
        2001,
        2012
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4192": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2012
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4193": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2012
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "4195": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2012
      ],
      "op": "MUL",
      "path": "52"
    },
    "4196": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2012
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "4198": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2012
      ],
      "op": "ADD",
      "path": "52"
    },
    "4199": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2012
      ],
      "op": "ADD",
      "path": "52"
    },
    "4200": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2001,
        2012
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4201": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4203": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4205": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4207": {
      "op": "SHL"
    },
    "4208": {
      "op": "SUB"
    },
    "4209": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2020
      ],
      "op": "AND",
      "path": "52"
    },
    "4210": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2020
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x95D89B41"
    },
    "4215": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4217": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4218": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4219": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "4224": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "AND",
      "path": "52"
    },
    "4225": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "4227": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "SHL",
      "path": "52"
    },
    "4228": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4229": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4230": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "4232": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "ADD",
      "path": "52"
    },
    "4233": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4235": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4237": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4238": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4239": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "DUP4",
      "path": "52"
    },
    "4240": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "SUB",
      "path": "52"
    },
    "4241": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4242": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "DUP7",
      "path": "52"
    },
    "4243": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4244": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "4245": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4246": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4247": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4248": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x10A0"
    },
    "4251": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4252": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4254": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4255": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "REVERT",
      "path": "52"
    },
    "4256": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4257": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "POP",
      "path": "52"
    },
    "4258": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "GAS",
      "path": "52"
    },
    "4259": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "4260": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4261": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4262": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4263": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x10B4"
    },
    "4266": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4267": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4268": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4270": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4271": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "4272": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4273": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4275": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "REVERT",
      "path": "52"
    },
    "4276": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4277": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "POP",
      "path": "52"
    },
    "4278": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "POP",
      "path": "52"
    },
    "4279": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "POP",
      "path": "52"
    },
    "4280": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "POP",
      "path": "52"
    },
    "4281": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4283": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4284": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4285": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4287": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "DUP3",
      "path": "52"
    },
    "4288": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "4289": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "4291": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4292": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4293": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4294": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "ADD",
      "path": "52"
    },
    "4295": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "4297": {
      "op": "NOT"
    },
    "4298": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "AND",
      "path": "52"
    },
    "4299": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "DUP3",
      "path": "52"
    },
    "4300": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "ADD",
      "path": "52"
    },
    "4301": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4303": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4304": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x10DC"
    },
    "4307": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "4308": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4309": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4310": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "ADD",
      "path": "52"
    },
    "4311": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4312": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1797"
    },
    "4315": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "i",
      "offset": [
        1986,
        2022
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4316": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1986,
        2022
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4317": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4318": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4319": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "4321": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "ADD",
      "path": "52"
    },
    "4322": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2054
      ],
      "op": "DUP5",
      "path": "52"
    },
    "4323": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2055,
        2056
      ],
      "op": "DUP4",
      "path": "52"
    },
    "4324": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2057
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4325": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2057
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4326": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2057
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4327": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2057
      ],
      "op": "LT",
      "path": "52"
    },
    "4328": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2057
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x10F3"
    },
    "4331": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2057
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4332": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2057
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x10F3"
    },
    "4335": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2057
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1B19"
    },
    "4338": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "i",
      "offset": [
        2046,
        2057
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4339": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2057
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4340": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2057
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "4342": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2057
      ],
      "op": "MUL",
      "path": "52"
    },
    "4343": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2057
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "4345": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2057
      ],
      "op": "ADD",
      "path": "52"
    },
    "4346": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2057
      ],
      "op": "ADD",
      "path": "52"
    },
    "4347": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2046,
        2057
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4348": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4350": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4352": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4354": {
      "op": "SHL"
    },
    "4355": {
      "op": "SUB"
    },
    "4356": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "AND",
      "path": "52"
    },
    "4357": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4358": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4359": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1958,
        2066
      ],
      "op": "POP",
      "path": "52"
    },
    "4360": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        1952
      ],
      "op": "DUP3",
      "path": "52"
    },
    "4361": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1953,
        1954
      ],
      "op": "DUP3",
      "path": "52"
    },
    "4362": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        1955
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4363": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        1955
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4364": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        1955
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4365": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        1955
      ],
      "op": "LT",
      "path": "52"
    },
    "4366": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        1955
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1119"
    },
    "4369": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        1955
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4370": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        1955
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1119"
    },
    "4373": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        1955
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1B19"
    },
    "4376": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "i",
      "offset": [
        1938,
        1955
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4377": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        1955
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4378": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        1955
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "4380": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        1955
      ],
      "op": "MUL",
      "path": "52"
    },
    "4381": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        1955
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "4383": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        1955
      ],
      "op": "ADD",
      "path": "52"
    },
    "4384": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        1955
      ],
      "op": "ADD",
      "path": "52"
    },
    "4385": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        2066
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4386": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        2066
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4387": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        2066
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4388": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1938,
        2066
      ],
      "op": "POP",
      "path": "52"
    },
    "4389": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1602,
        2073
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4390": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1643,
        1646
      ],
      "op": "DUP1",
      "path": "52",
      "statement": 19
    },
    "4391": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1643,
        1646
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x112F"
    },
    "4394": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1643,
        1646
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4395": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1643,
        1646
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1AE8"
    },
    "4398": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "i",
      "offset": [
        1643,
        1646
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4399": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1643,
        1646
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4400": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1643,
        1646
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "4401": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1643,
        1646
      ],
      "op": "POP",
      "path": "52"
    },
    "4402": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1643,
        1646
      ],
      "op": "POP",
      "path": "52"
    },
    "4403": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1602,
        2073
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0xEFA"
    },
    "4406": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1602,
        2073
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4407": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1602,
        2073
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4408": {
      "op": "POP"
    },
    "4409": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        2085,
        2099
      ],
      "op": "SWAP4",
      "path": "52",
      "statement": 20
    },
    "4410": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "offset": [
        1316,
        2104
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "4411": {
      "op": "POP"
    },
    "4412": {
      "op": "POP"
    },
    "4413": {
      "op": "POP"
    },
    "4414": {
      "fn": "AaveProtocolDataProvider.getAllReservesTokens",
      "jump": "o",
      "offset": [
        1316,
        2104
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4415": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6056,
        6510
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4416": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6148,
        6169
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4418": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6177,
        6207
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4419": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6215,
        6247
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4421": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6262,
        6298
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4422": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6338
      ],
      "op": "PUSH32",
      "path": "52",
      "value": "0x0"
    },
    "4455": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4457": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4459": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4461": {
      "op": "SHL"
    },
    "4462": {
      "op": "SUB"
    },
    "4463": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6353
      ],
      "op": "AND",
      "path": "52"
    },
    "4464": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6353
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x261BF8B"
    },
    "4469": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4471": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4472": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4473": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "4478": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "AND",
      "path": "52"
    },
    "4479": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "4481": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "SHL",
      "path": "52"
    },
    "4482": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4483": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4484": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "4486": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "ADD",
      "path": "52"
    },
    "4487": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "4489": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4491": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4492": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4493": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "DUP4",
      "path": "52"
    },
    "4494": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "SUB",
      "path": "52"
    },
    "4495": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4496": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "DUP7",
      "path": "52"
    },
    "4497": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4498": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "4499": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4500": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4501": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4502": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x119E"
    },
    "4505": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4506": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4508": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4509": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "REVERT",
      "path": "52"
    },
    "4510": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4511": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "POP",
      "path": "52"
    },
    "4512": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "GAS",
      "path": "52"
    },
    "4513": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "4514": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4515": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4516": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4517": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x11B2"
    },
    "4520": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4521": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4522": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4524": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4525": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "4526": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4527": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4529": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "REVERT",
      "path": "52"
    },
    "4530": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4531": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "POP",
      "path": "52"
    },
    "4532": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "POP",
      "path": "52"
    },
    "4533": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "POP",
      "path": "52"
    },
    "4534": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "POP",
      "path": "52"
    },
    "4535": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4537": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4538": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4539": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "4541": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "NOT",
      "path": "52"
    },
    "4542": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "4544": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "DUP3",
      "path": "52"
    },
    "4545": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "ADD",
      "path": "52"
    },
    "4546": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "AND",
      "path": "52"
    },
    "4547": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "DUP3",
      "path": "52"
    },
    "4548": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "ADD",
      "path": "52"
    },
    "4549": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4550": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4552": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4553": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "POP",
      "path": "52"
    },
    "4554": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4555": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "ADD",
      "path": "52"
    },
    "4556": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4557": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x11D6"
    },
    "4560": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "4561": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4562": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1688"
    },
    "4565": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "jump": "i",
      "offset": [
        6320,
        6355
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4566": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6320,
        6355
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4567": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4569": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4570": {
      "op": "PUSH4",
      "value": "0x35EA6A75"
    },
    "4575": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "4577": {
      "op": "SHL"
    },
    "4578": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4579": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4580": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4582": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4584": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4586": {
      "op": "SHL"
    },
    "4587": {
      "op": "SUB"
    },
    "4588": {
      "op": "DUP8"
    },
    "4589": {
      "op": "DUP2"
    },
    "4590": {
      "op": "AND"
    },
    "4591": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "4593": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "DUP4",
      "path": "52"
    },
    "4594": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "ADD",
      "path": "52"
    },
    "4595": {
      "op": "MSTORE"
    },
    "4596": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6371
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "4597": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6371
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4598": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6371
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "4599": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6371
      ],
      "op": "AND",
      "path": "52"
    },
    "4600": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6371
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4601": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6371
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x35EA6A75"
    },
    "4606": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6371
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4607": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "4609": {
      "op": "ADD"
    },
    "4610": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x180"
    },
    "4613": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4615": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4616": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4617": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "DUP4",
      "path": "52"
    },
    "4618": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "SUB",
      "path": "52"
    },
    "4619": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4620": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "DUP7",
      "path": "52"
    },
    "4621": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4622": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "4623": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4624": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4625": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4626": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x121A"
    },
    "4629": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4630": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4632": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4633": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "REVERT",
      "path": "52"
    },
    "4634": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4635": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "POP",
      "path": "52"
    },
    "4636": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "GAS",
      "path": "52"
    },
    "4637": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "4638": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4639": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4640": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4641": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x122E"
    },
    "4644": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4645": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4646": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4648": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4649": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "4650": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4651": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4653": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "REVERT",
      "path": "52"
    },
    "4654": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4655": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "POP",
      "path": "52"
    },
    "4656": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "POP",
      "path": "52"
    },
    "4657": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "POP",
      "path": "52"
    },
    "4658": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "POP",
      "path": "52"
    },
    "4659": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4661": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4662": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4663": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "4665": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "NOT",
      "path": "52"
    },
    "4666": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "4668": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "DUP3",
      "path": "52"
    },
    "4669": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "ADD",
      "path": "52"
    },
    "4670": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "AND",
      "path": "52"
    },
    "4671": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "DUP3",
      "path": "52"
    },
    "4672": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "ADD",
      "path": "52"
    },
    "4673": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4674": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4676": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4677": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "POP",
      "path": "52"
    },
    "4678": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4679": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "ADD",
      "path": "52"
    },
    "4680": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4681": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1252"
    },
    "4684": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "4685": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4686": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1847"
    },
    "4689": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "jump": "i",
      "offset": [
        6307,
        6378
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4690": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6307,
        6378
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4691": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6400,
        6421
      ],
      "op": "PUSH1",
      "path": "52",
      "statement": 21,
      "value": "0xE0"
    },
    "4693": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6400,
        6421
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4694": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6400,
        6421
      ],
      "op": "ADD",
      "path": "52"
    },
    "4695": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6400,
        6421
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4696": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6429,
        6459
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x100"
    },
    "4699": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6429,
        6459
      ],
      "op": "DUP3",
      "path": "52"
    },
    "4700": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6429,
        6459
      ],
      "op": "ADD",
      "path": "52"
    },
    "4701": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6429,
        6459
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4702": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6467,
        6499
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x120"
    },
    "4705": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6467,
        6499
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4706": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6467,
        6499
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "4707": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6467,
        6499
      ],
      "op": "ADD",
      "path": "52"
    },
    "4708": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6467,
        6499
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4709": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6400,
        6421
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4710": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6400,
        6421
      ],
      "op": "SWAP8",
      "path": "52"
    },
    "4711": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6429,
        6459
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "4712": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6429,
        6459
      ],
      "op": "SWAP7",
      "path": "52"
    },
    "4713": {
      "op": "POP"
    },
    "4714": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6467,
        6499
      ],
      "op": "SWAP5",
      "path": "52"
    },
    "4715": {
      "op": "POP"
    },
    "4716": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "offset": [
        6056,
        6510
      ],
      "op": "SWAP3",
      "path": "52"
    },
    "4717": {
      "op": "POP"
    },
    "4718": {
      "op": "POP"
    },
    "4719": {
      "op": "POP"
    },
    "4720": {
      "fn": "AaveProtocolDataProvider.getReserveTokensAddresses",
      "jump": "o",
      "offset": [
        6056,
        6510
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4721": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2108,
        2697
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4722": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2156,
        2174
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x60"
    },
    "4724": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2182,
        2199
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4726": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2233
      ],
      "op": "PUSH32",
      "path": "52",
      "value": "0x0"
    },
    "4759": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4761": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4763": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4765": {
      "op": "SHL"
    },
    "4766": {
      "op": "SUB"
    },
    "4767": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2248
      ],
      "op": "AND",
      "path": "52"
    },
    "4768": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2248
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x261BF8B"
    },
    "4773": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4775": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4776": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4777": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "4782": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "AND",
      "path": "52"
    },
    "4783": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "4785": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "SHL",
      "path": "52"
    },
    "4786": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4787": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4788": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "4790": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "ADD",
      "path": "52"
    },
    "4791": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "4793": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4795": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4796": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4797": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "DUP4",
      "path": "52"
    },
    "4798": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "SUB",
      "path": "52"
    },
    "4799": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4800": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "DUP7",
      "path": "52"
    },
    "4801": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4802": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "4803": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4804": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4805": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4806": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x12CE"
    },
    "4809": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4810": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4812": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4813": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "REVERT",
      "path": "52"
    },
    "4814": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4815": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "POP",
      "path": "52"
    },
    "4816": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "GAS",
      "path": "52"
    },
    "4817": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "4818": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4819": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4820": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4821": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x12E2"
    },
    "4824": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4825": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4826": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4828": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4829": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "4830": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4831": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4833": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "REVERT",
      "path": "52"
    },
    "4834": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4835": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "POP",
      "path": "52"
    },
    "4836": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "POP",
      "path": "52"
    },
    "4837": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "POP",
      "path": "52"
    },
    "4838": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "POP",
      "path": "52"
    },
    "4839": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4841": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4842": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4843": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "4845": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "NOT",
      "path": "52"
    },
    "4846": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "4848": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "DUP3",
      "path": "52"
    },
    "4849": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "ADD",
      "path": "52"
    },
    "4850": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "AND",
      "path": "52"
    },
    "4851": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "DUP3",
      "path": "52"
    },
    "4852": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "ADD",
      "path": "52"
    },
    "4853": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4854": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4856": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4857": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "POP",
      "path": "52"
    },
    "4858": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4859": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "ADD",
      "path": "52"
    },
    "4860": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4861": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1306"
    },
    "4864": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "4865": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4866": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1688"
    },
    "4869": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "jump": "i",
      "offset": [
        2215,
        2250
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4870": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2215,
        2250
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4871": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2182,
        2251
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4872": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2182,
        2251
      ],
      "op": "POP",
      "path": "52"
    },
    "4873": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2257,
        2282
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4875": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2289
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4876": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4878": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4880": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4882": {
      "op": "SHL"
    },
    "4883": {
      "op": "SUB"
    },
    "4884": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2305
      ],
      "op": "AND",
      "path": "52"
    },
    "4885": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2305
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xD1946DBC"
    },
    "4890": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4892": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4893": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4894": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "4899": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "AND",
      "path": "52"
    },
    "4900": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "4902": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "SHL",
      "path": "52"
    },
    "4903": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4904": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4905": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "4907": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "ADD",
      "path": "52"
    },
    "4908": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4910": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4912": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4913": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4914": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "DUP4",
      "path": "52"
    },
    "4915": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "SUB",
      "path": "52"
    },
    "4916": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4917": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "DUP7",
      "path": "52"
    },
    "4918": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4919": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "4920": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4921": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4922": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4923": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1343"
    },
    "4926": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4927": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4929": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4930": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "REVERT",
      "path": "52"
    },
    "4931": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4932": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "POP",
      "path": "52"
    },
    "4933": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "GAS",
      "path": "52"
    },
    "4934": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "4935": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4936": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4937": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "4938": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1357"
    },
    "4941": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "4942": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4943": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4945": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "DUP1",
      "path": "52"
    },
    "4946": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "4947": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4948": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4950": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "REVERT",
      "path": "52"
    },
    "4951": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4952": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "POP",
      "path": "52"
    },
    "4953": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "POP",
      "path": "52"
    },
    "4954": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "POP",
      "path": "52"
    },
    "4955": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "POP",
      "path": "52"
    },
    "4956": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4958": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4959": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4960": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4962": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "DUP3",
      "path": "52"
    },
    "4963": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "4964": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "4966": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "4967": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4968": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4969": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "ADD",
      "path": "52"
    },
    "4970": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "4972": {
      "op": "NOT"
    },
    "4973": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "AND",
      "path": "52"
    },
    "4974": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "DUP3",
      "path": "52"
    },
    "4975": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "ADD",
      "path": "52"
    },
    "4976": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "4978": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "4979": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x137F"
    },
    "4982": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "4983": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4984": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4985": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "ADD",
      "path": "52"
    },
    "4986": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4987": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x16DE"
    },
    "4990": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "jump": "i",
      "offset": [
        2285,
        2307
      ],
      "op": "JUMP",
      "path": "52"
    },
    "4991": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2285,
        2307
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "4992": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2257,
        2307
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "4993": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2257,
        2307
      ],
      "op": "POP",
      "path": "52"
    },
    "4994": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2313,
        2339
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "4996": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2358,
        2366
      ],
      "op": "DUP2",
      "path": "52"
    },
    "4997": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2358,
        2373
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "4998": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "PUSH8",
      "path": "52",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "5007": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5008": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "GT",
      "path": "52"
    },
    "5009": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "5010": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x139D"
    },
    "5013": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "5014": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x139D"
    },
    "5017": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1B2F"
    },
    "5020": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "jump": "i",
      "offset": [
        2342,
        2374
      ],
      "op": "JUMP",
      "path": "52"
    },
    "5021": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "5022": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "5024": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "5025": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "5026": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5027": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "DUP3",
      "path": "52"
    },
    "5028": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "5029": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5030": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "5032": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "MUL",
      "path": "52"
    },
    "5033": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "5035": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "ADD",
      "path": "52"
    },
    "5036": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "DUP3",
      "path": "52"
    },
    "5037": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "ADD",
      "path": "52"
    },
    "5038": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "5040": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "5041": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5042": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "5043": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x13E3"
    },
    "5046": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "5047": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5048": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "5050": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "ADD",
      "path": "52"
    },
    "5051": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "5052": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "5054": {
      "op": "DUP1"
    },
    "5055": {
      "op": "MLOAD"
    },
    "5056": {
      "op": "DUP1"
    },
    "5057": {
      "op": "DUP3"
    },
    "5058": {
      "op": "ADD"
    },
    "5059": {
      "op": "SWAP1"
    },
    "5060": {
      "op": "SWAP2"
    },
    "5061": {
      "op": "MSTORE"
    },
    "5062": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "5064": {
      "op": "DUP2"
    },
    "5065": {
      "op": "MSTORE"
    },
    "5066": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5068": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "5070": {
      "op": "DUP3"
    },
    "5071": {
      "op": "ADD"
    },
    "5072": {
      "op": "MSTORE"
    },
    "5073": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5074": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "5075": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "5077": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "ADD",
      "path": "52"
    },
    "5078": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "5079": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1"
    },
    "5081": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "5082": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "SUB",
      "path": "52"
    },
    "5083": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "5084": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5085": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x13BB"
    },
    "5088": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "5089": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "5090": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "POP",
      "path": "52"
    },
    "5091": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "5092": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2342,
        2374
      ],
      "op": "POP",
      "path": "52"
    },
    "5093": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2313,
        2374
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "5094": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2313,
        2374
      ],
      "op": "POP",
      "path": "52"
    },
    "5095": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2385,
        2394
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "5097": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2380,
        2673
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "5098": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2404,
        2412
      ],
      "op": "DUP3",
      "path": "52"
    },
    "5099": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2404,
        2419
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "5100": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2400,
        2401
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5101": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2400,
        2419
      ],
      "op": "LT",
      "path": "52"
    },
    "5102": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2380,
        2673
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "5103": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2380,
        2673
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1137"
    },
    "5106": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2380,
        2673
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "5107": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2434,
        2474
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "5109": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2481
      ],
      "op": "DUP5",
      "path": "52"
    },
    "5110": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5112": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5114": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "5116": {
      "op": "SHL"
    },
    "5117": {
      "op": "SUB"
    },
    "5118": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2496
      ],
      "op": "AND",
      "path": "52"
    },
    "5119": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2496
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x35EA6A75"
    },
    "5124": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2505
      ],
      "op": "DUP6",
      "path": "52"
    },
    "5125": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2506,
        2507
      ],
      "op": "DUP5",
      "path": "52"
    },
    "5126": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2508
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5127": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2508
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "5128": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2508
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5129": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2508
      ],
      "op": "LT",
      "path": "52"
    },
    "5130": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2508
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1415"
    },
    "5133": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2508
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "5134": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2508
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1415"
    },
    "5137": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2508
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1B19"
    },
    "5140": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "jump": "i",
      "offset": [
        2497,
        2508
      ],
      "op": "JUMP",
      "path": "52"
    },
    "5141": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2508
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "5142": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2508
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "5144": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2508
      ],
      "op": "MUL",
      "path": "52"
    },
    "5145": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2508
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "5147": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2508
      ],
      "op": "ADD",
      "path": "52"
    },
    "5148": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2508
      ],
      "op": "ADD",
      "path": "52"
    },
    "5149": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2497,
        2508
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "5150": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "5152": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "5153": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "DUP3",
      "path": "52"
    },
    "5154": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "5159": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "AND",
      "path": "52"
    },
    "5160": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "5162": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "SHL",
      "path": "52"
    },
    "5163": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5164": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "5165": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "5167": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "ADD",
      "path": "52"
    },
    "5168": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1448"
    },
    "5171": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "5172": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "5173": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5175": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5177": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "5179": {
      "op": "SHL"
    },
    "5180": {
      "op": "SUB"
    },
    "5181": {
      "op": "SWAP2"
    },
    "5182": {
      "op": "SWAP1"
    },
    "5183": {
      "op": "SWAP2"
    },
    "5184": {
      "op": "AND"
    },
    "5185": {
      "op": "DUP2"
    },
    "5186": {
      "op": "MSTORE"
    },
    "5187": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "5189": {
      "op": "ADD"
    },
    "5190": {
      "op": "SWAP1"
    },
    "5191": {
      "op": "JUMP"
    },
    "5192": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "5193": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x180"
    },
    "5196": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "5198": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "5199": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5200": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "DUP4",
      "path": "52"
    },
    "5201": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "SUB",
      "path": "52"
    },
    "5202": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5203": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "DUP7",
      "path": "52"
    },
    "5204": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5205": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "5206": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "5207": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5208": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "5209": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1461"
    },
    "5212": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "5213": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "5215": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5216": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "REVERT",
      "path": "52"
    },
    "5217": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "5218": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "POP",
      "path": "52"
    },
    "5219": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "GAS",
      "path": "52"
    },
    "5220": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "5221": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "5222": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5223": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "5224": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1475"
    },
    "5227": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "5228": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "5229": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "5231": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5232": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "5233": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "5234": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "5236": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "REVERT",
      "path": "52"
    },
    "5237": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "5238": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "POP",
      "path": "52"
    },
    "5239": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "POP",
      "path": "52"
    },
    "5240": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "POP",
      "path": "52"
    },
    "5241": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "POP",
      "path": "52"
    },
    "5242": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "5244": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "5245": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "5246": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "5248": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "NOT",
      "path": "52"
    },
    "5249": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "5251": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "DUP3",
      "path": "52"
    },
    "5252": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "ADD",
      "path": "52"
    },
    "5253": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "AND",
      "path": "52"
    },
    "5254": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "DUP3",
      "path": "52"
    },
    "5255": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "ADD",
      "path": "52"
    },
    "5256": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5257": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "5259": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "5260": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "POP",
      "path": "52"
    },
    "5261": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5262": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "ADD",
      "path": "52"
    },
    "5263": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "5264": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1499"
    },
    "5267": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "5268": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "5269": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1847"
    },
    "5272": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "jump": "i",
      "offset": [
        2477,
        2509
      ],
      "op": "JUMP",
      "path": "52"
    },
    "5273": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2477,
        2509
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "5274": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2434,
        2509
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "5275": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2434,
        2509
      ],
      "op": "POP",
      "path": "52"
    },
    "5276": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "PUSH1",
      "path": "52",
      "statement": 22,
      "value": "0x40"
    },
    "5278": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "5279": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5280": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "5282": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "ADD",
      "path": "52"
    },
    "5283": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "5285": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "5286": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5287": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2573,
        2584
      ],
      "op": "DUP3",
      "path": "52"
    },
    "5288": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2573,
        2598
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "5290": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2573,
        2598
      ],
      "op": "ADD",
      "path": "52"
    },
    "5291": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2573,
        2598
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "5292": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5294": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5296": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "5298": {
      "op": "SHL"
    },
    "5299": {
      "op": "SUB"
    },
    "5300": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2606
      ],
      "op": "AND",
      "path": "52"
    },
    "5301": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2606
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0x95D89B41"
    },
    "5306": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "5308": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "5309": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5310": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH4",
      "path": "52",
      "value": "0xFFFFFFFF"
    },
    "5315": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "AND",
      "path": "52"
    },
    "5316": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "5318": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "SHL",
      "path": "52"
    },
    "5319": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5320": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "5321": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x4"
    },
    "5323": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "ADD",
      "path": "52"
    },
    "5324": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "5326": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "5328": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "5329": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5330": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "DUP4",
      "path": "52"
    },
    "5331": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "SUB",
      "path": "52"
    },
    "5332": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5333": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "DUP7",
      "path": "52"
    },
    "5334": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5335": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "EXTCODESIZE",
      "path": "52"
    },
    "5336": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "5337": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5338": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "5339": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x14E3"
    },
    "5342": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "5343": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "5345": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5346": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "REVERT",
      "path": "52"
    },
    "5347": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "5348": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "POP",
      "path": "52"
    },
    "5349": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "GAS",
      "path": "52"
    },
    "5350": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "STATICCALL",
      "path": "52"
    },
    "5351": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "5352": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5353": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "ISZERO",
      "path": "52"
    },
    "5354": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x14F7"
    },
    "5357": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "5358": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "5359": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "5361": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5362": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "5363": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "5364": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "5366": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "REVERT",
      "path": "52"
    },
    "5367": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "5368": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "POP",
      "path": "52"
    },
    "5369": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "POP",
      "path": "52"
    },
    "5370": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "POP",
      "path": "52"
    },
    "5371": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "POP",
      "path": "52"
    },
    "5372": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "5374": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "5375": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "5376": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x0"
    },
    "5378": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "DUP3",
      "path": "52"
    },
    "5379": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "RETURNDATACOPY",
      "path": "52"
    },
    "5380": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x1F"
    },
    "5382": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "RETURNDATASIZE",
      "path": "52"
    },
    "5383": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "5384": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5385": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "ADD",
      "path": "52"
    },
    "5386": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "5388": {
      "op": "NOT"
    },
    "5389": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "AND",
      "path": "52"
    },
    "5390": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "DUP3",
      "path": "52"
    },
    "5391": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "ADD",
      "path": "52"
    },
    "5392": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x40"
    },
    "5394": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "5395": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x151F"
    },
    "5398": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "5399": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "5400": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5401": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "ADD",
      "path": "52"
    },
    "5402": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "5403": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1797"
    },
    "5406": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "jump": "i",
      "offset": [
        2558,
        2608
      ],
      "op": "JUMP",
      "path": "52"
    },
    "5407": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2558,
        2608
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "5408": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5409": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "5410": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "5412": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "ADD",
      "path": "52"
    },
    "5413": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2632,
        2643
      ],
      "op": "DUP3",
      "path": "52"
    },
    "5414": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2632,
        2657
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0xE0"
    },
    "5416": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2632,
        2657
      ],
      "op": "ADD",
      "path": "52"
    },
    "5417": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2632,
        2657
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "5418": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5420": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5422": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "5424": {
      "op": "SHL"
    },
    "5425": {
      "op": "SUB"
    },
    "5426": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "AND",
      "path": "52"
    },
    "5427": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5428": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "5429": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2530,
        2666
      ],
      "op": "POP",
      "path": "52"
    },
    "5430": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2524
      ],
      "op": "DUP4",
      "path": "52"
    },
    "5431": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2525,
        2526
      ],
      "op": "DUP4",
      "path": "52"
    },
    "5432": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2527
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5433": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2527
      ],
      "op": "MLOAD",
      "path": "52"
    },
    "5434": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2527
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5435": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2527
      ],
      "op": "LT",
      "path": "52"
    },
    "5436": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2527
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1547"
    },
    "5439": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2527
      ],
      "op": "JUMPI",
      "path": "52"
    },
    "5440": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2527
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1547"
    },
    "5443": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2527
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1B19"
    },
    "5446": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "jump": "i",
      "offset": [
        2517,
        2527
      ],
      "op": "JUMP",
      "path": "52"
    },
    "5447": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2527
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "5448": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2527
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "5450": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2527
      ],
      "op": "MUL",
      "path": "52"
    },
    "5451": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2527
      ],
      "op": "PUSH1",
      "path": "52",
      "value": "0x20"
    },
    "5453": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2527
      ],
      "op": "ADD",
      "path": "52"
    },
    "5454": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2527
      ],
      "op": "ADD",
      "path": "52"
    },
    "5455": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2666
      ],
      "op": "DUP2",
      "path": "52"
    },
    "5456": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2666
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "5457": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2666
      ],
      "op": "MSTORE",
      "path": "52"
    },
    "5458": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2517,
        2666
      ],
      "op": "POP",
      "path": "52"
    },
    "5459": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2426,
        2673
      ],
      "op": "POP",
      "path": "52"
    },
    "5460": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2421,
        2424
      ],
      "op": "DUP1",
      "path": "52",
      "statement": 23
    },
    "5461": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2421,
        2424
      ],
      "op": "DUP1",
      "path": "52"
    },
    "5462": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2421,
        2424
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x155E"
    },
    "5465": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2421,
        2424
      ],
      "op": "SWAP1",
      "path": "52"
    },
    "5466": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2421,
        2424
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x1AE8"
    },
    "5469": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "jump": "i",
      "offset": [
        2421,
        2424
      ],
      "op": "JUMP",
      "path": "52"
    },
    "5470": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2421,
        2424
      ],
      "op": "JUMPDEST",
      "path": "52"
    },
    "5471": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2421,
        2424
      ],
      "op": "SWAP2",
      "path": "52"
    },
    "5472": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2421,
        2424
      ],
      "op": "POP",
      "path": "52"
    },
    "5473": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2421,
        2424
      ],
      "op": "POP",
      "path": "52"
    },
    "5474": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2380,
        2673
      ],
      "op": "PUSH2",
      "path": "52",
      "value": "0x13E9"
    },
    "5477": {
      "fn": "AaveProtocolDataProvider.getAllATokens",
      "offset": [
        2380,
        2673
      ],
      "op": "JUMP",
      "path": "52"
    },
    "5478": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3100,
        3360
      ],
      "op": "JUMPDEST",
      "path": "54"
    },
    "5479": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3230,
        3234
      ],
      "op": "PUSH1",
      "path": "54",
      "value": "0x0"
    },
    "5481": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3267,
        3270
      ],
      "op": "PUSH1",
      "path": "54",
      "statement": 24,
      "value": "0x80"
    },
    "5483": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3252,
        3264
      ],
      "op": "DUP3",
      "path": "54"
    },
    "5484": {
      "branch": 28,
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3252,
        3270
      ],
      "op": "LT",
      "path": "54"
    },
    "5485": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "PUSH1",
      "path": "54",
      "value": "0x40"
    },
    "5487": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "MLOAD",
      "path": "54"
    },
    "5488": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "DUP1",
      "path": "54"
    },
    "5489": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "PUSH1",
      "path": "54",
      "value": "0x40"
    },
    "5491": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "ADD",
      "path": "54"
    },
    "5492": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "PUSH1",
      "path": "54",
      "value": "0x40"
    },
    "5494": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "MSTORE",
      "path": "54"
    },
    "5495": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "DUP1",
      "path": "54"
    },
    "5496": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "PUSH1",
      "path": "54",
      "value": "0x2"
    },
    "5498": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "DUP2",
      "path": "54"
    },
    "5499": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "MSTORE",
      "path": "54"
    },
    "5500": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "PUSH1",
      "path": "54",
      "value": "0x20"
    },
    "5502": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "ADD",
      "path": "54"
    },
    "5503": {
      "op": "PUSH2",
      "value": "0x3737"
    },
    "5506": {
      "op": "PUSH1",
      "value": "0xF0"
    },
    "5508": {
      "op": "SHL"
    },
    "5509": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "DUP2",
      "path": "54"
    },
    "5510": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "MSTORE",
      "path": "54"
    },
    "5511": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3272,
        3295
      ],
      "op": "POP",
      "path": "54"
    },
    "5512": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "SWAP1",
      "path": "54"
    },
    "5513": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "PUSH2",
      "path": "54",
      "value": "0x15AE"
    },
    "5516": {
      "branch": 28,
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "JUMPI",
      "path": "54"
    },
    "5517": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "PUSH1",
      "path": "54",
      "value": "0x40"
    },
    "5519": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "MLOAD",
      "path": "54"
    },
    "5520": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "5524": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "5526": {
      "op": "SHL"
    },
    "5527": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "DUP2",
      "path": "54"
    },
    "5528": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "MSTORE",
      "path": "54"
    },
    "5529": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "PUSH1",
      "path": "54",
      "value": "0x4"
    },
    "5531": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "ADD",
      "path": "54"
    },
    "5532": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "PUSH2",
      "path": "54",
      "value": "0x15A5"
    },
    "5535": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "SWAP2",
      "path": "54"
    },
    "5536": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "SWAP1",
      "path": "54"
    },
    "5537": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "PUSH2",
      "path": "54",
      "value": "0x1A13"
    },
    "5540": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "jump": "i",
      "offset": [
        3244,
        3296
      ],
      "op": "JUMP",
      "path": "54"
    },
    "5541": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "JUMPDEST",
      "path": "54"
    },
    "5542": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "PUSH1",
      "path": "54",
      "value": "0x40"
    },
    "5544": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "MLOAD",
      "path": "54"
    },
    "5545": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "DUP1",
      "path": "54"
    },
    "5546": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "SWAP2",
      "path": "54"
    },
    "5547": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "SUB",
      "path": "54"
    },
    "5548": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "SWAP1",
      "path": "54"
    },
    "5549": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "REVERT",
      "optimizer_revert": true,
      "path": "54"
    },
    "5550": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3244,
        3296
      ],
      "op": "JUMPDEST",
      "path": "54"
    },
    "5551": {
      "op": "POP"
    },
    "5552": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3324,
        3340
      ],
      "op": "PUSH2",
      "path": "54",
      "statement": 25,
      "value": "0x15BA"
    },
    "5555": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3324,
        3336
      ],
      "op": "DUP3",
      "path": "54"
    },
    "5556": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3339,
        3340
      ],
      "op": "PUSH1",
      "path": "54",
      "value": "0x2"
    },
    "5558": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3324,
        3340
      ],
      "op": "PUSH2",
      "path": "54",
      "value": "0x1A99"
    },
    "5561": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "jump": "i",
      "offset": [
        3324,
        3340
      ],
      "op": "JUMP",
      "path": "54"
    },
    "5562": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3324,
        3340
      ],
      "op": "JUMPDEST",
      "path": "54"
    },
    "5563": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3324,
        3344
      ],
      "op": "PUSH2",
      "path": "54",
      "value": "0x15C5"
    },
    "5566": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3324,
        3344
      ],
      "op": "SWAP1",
      "path": "54"
    },
    "5567": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3343,
        3344
      ],
      "op": "PUSH1",
      "path": "54",
      "value": "0x1"
    },
    "5569": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3324,
        3344
      ],
      "op": "PUSH2",
      "path": "54",
      "value": "0x1A81"
    },
    "5572": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "jump": "i",
      "offset": [
        3324,
        3344
      ],
      "op": "JUMP",
      "path": "54"
    },
    "5573": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3324,
        3344
      ],
      "op": "JUMPDEST",
      "path": "54"
    },
    "5574": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3310,
        3319
      ],
      "op": "SWAP3",
      "path": "54"
    },
    "5575": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3310,
        3319
      ],
      "op": "MLOAD",
      "path": "54"
    },
    "5576": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3310,
        3345
      ],
      "op": "SWAP1",
      "path": "54"
    },
    "5577": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3310,
        3345
      ],
      "op": "SWAP3",
      "path": "54"
    },
    "5578": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3310,
        3345
      ],
      "op": "SHR",
      "path": "54"
    },
    "5579": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3349,
        3350
      ],
      "op": "PUSH1",
      "path": "54",
      "value": "0x1"
    },
    "5581": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3309,
        3350
      ],
      "op": "AND",
      "path": "54"
    },
    "5582": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3309,
        3355
      ],
      "op": "ISZERO",
      "path": "54"
    },
    "5583": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3309,
        3355
      ],
      "op": "ISZERO",
      "path": "54"
    },
    "5584": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3309,
        3355
      ],
      "op": "SWAP3",
      "path": "54"
    },
    "5585": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "offset": [
        3100,
        3360
      ],
      "op": "SWAP2",
      "path": "54"
    },
    "5586": {
      "op": "POP"
    },
    "5587": {
      "op": "POP"
    },
    "5588": {
      "fn": "UserConfiguration.isUsingAsCollateral",
      "jump": "o",
      "offset": [
        3100,
        3360
      ],
      "op": "JUMP",
      "path": "54"
    },
    "5589": {
      "op": "JUMPDEST"
    },
    "5590": {
      "op": "DUP1"
    },
    "5591": {
      "op": "MLOAD"
    },
    "5592": {
      "op": "PUSH2",
      "value": "0x15E0"
    },
    "5595": {
      "op": "DUP2"
    },
    "5596": {
      "op": "PUSH2",
      "value": "0x1B45"
    },
    "5599": {
      "jump": "i",
      "op": "JUMP"
    },
    "5600": {
      "op": "JUMPDEST"
    },
    "5601": {
      "op": "SWAP2"
    },
    "5602": {
      "op": "SWAP1"
    },
    "5603": {
      "op": "POP"
    },
    "5604": {
      "jump": "o",
      "op": "JUMP"
    },
    "5605": {
      "op": "JUMPDEST"
    },
    "5606": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5608": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "5610": {
      "op": "DUP3"
    },
    "5611": {
      "op": "DUP5"
    },
    "5612": {
      "op": "SUB"
    },
    "5613": {
      "op": "SLT"
    },
    "5614": {
      "op": "ISZERO"
    },
    "5615": {
      "op": "PUSH2",
      "value": "0x15F7"
    },
    "5618": {
      "op": "JUMPI"
    },
    "5619": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5621": {
      "op": "DUP1"
    },
    "5622": {
      "op": "REVERT"
    },
    "5623": {
      "op": "JUMPDEST"
    },
    "5624": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "5626": {
      "op": "MLOAD"
    },
    "5627": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "5629": {
      "op": "DUP2"
    },
    "5630": {
      "op": "ADD"
    },
    "5631": {
      "op": "DUP2"
    },
    "5632": {
      "op": "DUP2"
    },
    "5633": {
      "op": "LT"
    },
    "5634": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "5643": {
      "op": "DUP3"
    },
    "5644": {
      "op": "GT"
    },
    "5645": {
      "op": "OR"
    },
    "5646": {
      "op": "ISZERO"
    },
    "5647": {
      "op": "PUSH2",
      "value": "0x161A"
    },
    "5650": {
      "op": "JUMPI"
    },
    "5651": {
      "op": "PUSH2",
      "value": "0x161A"
    },
    "5654": {
      "op": "PUSH2",
      "value": "0x1B2F"
    },
    "5657": {
      "jump": "i",
      "op": "JUMP"
    },
    "5658": {
      "op": "JUMPDEST"
    },
    "5659": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "5661": {
      "op": "MSTORE"
    },
    "5662": {
      "op": "SWAP2"
    },
    "5663": {
      "op": "MLOAD"
    },
    "5664": {
      "op": "DUP3"
    },
    "5665": {
      "op": "MSTORE"
    },
    "5666": {
      "op": "POP"
    },
    "5667": {
      "op": "SWAP2"
    },
    "5668": {
      "op": "SWAP1"
    },
    "5669": {
      "op": "POP"
    },
    "5670": {
      "jump": "o",
      "op": "JUMP"
    },
    "5671": {
      "op": "JUMPDEST"
    },
    "5672": {
      "op": "DUP1"
    },
    "5673": {
      "op": "MLOAD"
    },
    "5674": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5676": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5678": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "5680": {
      "op": "SHL"
    },
    "5681": {
      "op": "SUB"
    },
    "5682": {
      "op": "DUP2"
    },
    "5683": {
      "op": "AND"
    },
    "5684": {
      "op": "DUP2"
    },
    "5685": {
      "op": "EQ"
    },
    "5686": {
      "op": "PUSH2",
      "value": "0x15E0"
    },
    "5689": {
      "op": "JUMPI"
    },
    "5690": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5692": {
      "op": "DUP1"
    },
    "5693": {
      "op": "REVERT"
    },
    "5694": {
      "op": "JUMPDEST"
    },
    "5695": {
      "op": "DUP1"
    },
    "5696": {
      "op": "MLOAD"
    },
    "5697": {
      "op": "PUSH5",
      "value": "0xFFFFFFFFFF"
    },
    "5703": {
      "op": "DUP2"
    },
    "5704": {
      "op": "AND"
    },
    "5705": {
      "op": "DUP2"
    },
    "5706": {
      "op": "EQ"
    },
    "5707": {
      "op": "PUSH2",
      "value": "0x15E0"
    },
    "5710": {
      "op": "JUMPI"
    },
    "5711": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5713": {
      "op": "DUP1"
    },
    "5714": {
      "op": "REVERT"
    },
    "5715": {
      "op": "JUMPDEST"
    },
    "5716": {
      "op": "DUP1"
    },
    "5717": {
      "op": "MLOAD"
    },
    "5718": {
      "op": "PUSH1",
      "value": "0xFF"
    },
    "5720": {
      "op": "DUP2"
    },
    "5721": {
      "op": "AND"
    },
    "5722": {
      "op": "DUP2"
    },
    "5723": {
      "op": "EQ"
    },
    "5724": {
      "op": "PUSH2",
      "value": "0x15E0"
    },
    "5727": {
      "op": "JUMPI"
    },
    "5728": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5730": {
      "op": "DUP1"
    },
    "5731": {
      "op": "REVERT"
    },
    "5732": {
      "op": "JUMPDEST"
    },
    "5733": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5735": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "5737": {
      "op": "DUP3"
    },
    "5738": {
      "op": "DUP5"
    },
    "5739": {
      "op": "SUB"
    },
    "5740": {
      "op": "SLT"
    },
    "5741": {
      "op": "ISZERO"
    },
    "5742": {
      "op": "PUSH2",
      "value": "0x1676"
    },
    "5745": {
      "op": "JUMPI"
    },
    "5746": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5748": {
      "op": "DUP1"
    },
    "5749": {
      "op": "REVERT"
    },
    "5750": {
      "op": "JUMPDEST"
    },
    "5751": {
      "op": "DUP2"
    },
    "5752": {
      "op": "CALLDATALOAD"
    },
    "5753": {
      "op": "PUSH2",
      "value": "0x1681"
    },
    "5756": {
      "op": "DUP2"
    },
    "5757": {
      "op": "PUSH2",
      "value": "0x1B45"
    },
    "5760": {
      "jump": "i",
      "op": "JUMP"
    },
    "5761": {
      "op": "JUMPDEST"
    },
    "5762": {
      "op": "SWAP4"
    },
    "5763": {
      "op": "SWAP3"
    },
    "5764": {
      "op": "POP"
    },
    "5765": {
      "op": "POP"
    },
    "5766": {
      "op": "POP"
    },
    "5767": {
      "jump": "o",
      "op": "JUMP"
    },
    "5768": {
      "op": "JUMPDEST"
    },
    "5769": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5771": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "5773": {
      "op": "DUP3"
    },
    "5774": {
      "op": "DUP5"
    },
    "5775": {
      "op": "SUB"
    },
    "5776": {
      "op": "SLT"
    },
    "5777": {
      "op": "ISZERO"
    },
    "5778": {
      "op": "PUSH2",
      "value": "0x169A"
    },
    "5781": {
      "op": "JUMPI"
    },
    "5782": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5784": {
      "op": "DUP1"
    },
    "5785": {
      "op": "REVERT"
    },
    "5786": {
      "op": "JUMPDEST"
    },
    "5787": {
      "op": "DUP2"
    },
    "5788": {
      "op": "MLOAD"
    },
    "5789": {
      "op": "PUSH2",
      "value": "0x1681"
    },
    "5792": {
      "op": "DUP2"
    },
    "5793": {
      "op": "PUSH2",
      "value": "0x1B45"
    },
    "5796": {
      "jump": "i",
      "op": "JUMP"
    },
    "5797": {
      "op": "JUMPDEST"
    },
    "5798": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5800": {
      "op": "DUP1"
    },
    "5801": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "5803": {
      "op": "DUP4"
    },
    "5804": {
      "op": "DUP6"
    },
    "5805": {
      "op": "SUB"
    },
    "5806": {
      "op": "SLT"
    },
    "5807": {
      "op": "ISZERO"
    },
    "5808": {
      "op": "PUSH2",
      "value": "0x16B8"
    },
    "5811": {
      "op": "JUMPI"
    },
    "5812": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5814": {
      "op": "DUP1"
    },
    "5815": {
      "op": "REVERT"
    },
    "5816": {
      "op": "JUMPDEST"
    },
    "5817": {
      "op": "DUP3"
    },
    "5818": {
      "op": "CALLDATALOAD"
    },
    "5819": {
      "op": "PUSH2",
      "value": "0x16C3"
    },
    "5822": {
      "op": "DUP2"
    },
    "5823": {
      "op": "PUSH2",
      "value": "0x1B45"
    },
    "5826": {
      "jump": "i",
      "op": "JUMP"
    },
    "5827": {
      "op": "JUMPDEST"
    },
    "5828": {
      "op": "SWAP2"
    },
    "5829": {
      "op": "POP"
    },
    "5830": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "5832": {
      "op": "DUP4"
    },
    "5833": {
      "op": "ADD"
    },
    "5834": {
      "op": "CALLDATALOAD"
    },
    "5835": {
      "op": "PUSH2",
      "value": "0x16D3"
    },
    "5838": {
      "op": "DUP2"
    },
    "5839": {
      "op": "PUSH2",
      "value": "0x1B45"
    },
    "5842": {
      "jump": "i",
      "op": "JUMP"
    },
    "5843": {
      "op": "JUMPDEST"
    },
    "5844": {
      "op": "DUP1"
    },
    "5845": {
      "op": "SWAP2"
    },
    "5846": {
      "op": "POP"
    },
    "5847": {
      "op": "POP"
    },
    "5848": {
      "op": "SWAP3"
    },
    "5849": {
      "op": "POP"
    },
    "5850": {
      "op": "SWAP3"
    },
    "5851": {
      "op": "SWAP1"
    },
    "5852": {
      "op": "POP"
    },
    "5853": {
      "jump": "o",
      "op": "JUMP"
    },
    "5854": {
      "op": "JUMPDEST"
    },
    "5855": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5857": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "5859": {
      "op": "DUP1"
    },
    "5860": {
      "op": "DUP4"
    },
    "5861": {
      "op": "DUP6"
    },
    "5862": {
      "op": "SUB"
    },
    "5863": {
      "op": "SLT"
    },
    "5864": {
      "op": "ISZERO"
    },
    "5865": {
      "op": "PUSH2",
      "value": "0x16F1"
    },
    "5868": {
      "op": "JUMPI"
    },
    "5869": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5871": {
      "op": "DUP1"
    },
    "5872": {
      "op": "REVERT"
    },
    "5873": {
      "op": "JUMPDEST"
    },
    "5874": {
      "op": "DUP3"
    },
    "5875": {
      "op": "MLOAD"
    },
    "5876": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "5885": {
      "op": "DUP1"
    },
    "5886": {
      "op": "DUP3"
    },
    "5887": {
      "op": "GT"
    },
    "5888": {
      "op": "ISZERO"
    },
    "5889": {
      "op": "PUSH2",
      "value": "0x1709"
    },
    "5892": {
      "op": "JUMPI"
    },
    "5893": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5895": {
      "op": "DUP1"
    },
    "5896": {
      "op": "REVERT"
    },
    "5897": {
      "op": "JUMPDEST"
    },
    "5898": {
      "op": "DUP2"
    },
    "5899": {
      "op": "DUP6"
    },
    "5900": {
      "op": "ADD"
    },
    "5901": {
      "op": "SWAP2"
    },
    "5902": {
      "op": "POP"
    },
    "5903": {
      "op": "DUP6"
    },
    "5904": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "5906": {
      "op": "DUP4"
    },
    "5907": {
      "op": "ADD"
    },
    "5908": {
      "op": "SLT"
    },
    "5909": {
      "op": "PUSH2",
      "value": "0x171D"
    },
    "5912": {
      "op": "JUMPI"
    },
    "5913": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5915": {
      "op": "DUP1"
    },
    "5916": {
      "op": "REVERT"
    },
    "5917": {
      "op": "JUMPDEST"
    },
    "5918": {
      "op": "DUP2"
    },
    "5919": {
      "op": "MLOAD"
    },
    "5920": {
      "op": "DUP2"
    },
    "5921": {
      "op": "DUP2"
    },
    "5922": {
      "op": "GT"
    },
    "5923": {
      "op": "ISZERO"
    },
    "5924": {
      "op": "PUSH2",
      "value": "0x172F"
    },
    "5927": {
      "op": "JUMPI"
    },
    "5928": {
      "op": "PUSH2",
      "value": "0x172F"
    },
    "5931": {
      "op": "PUSH2",
      "value": "0x1B2F"
    },
    "5934": {
      "jump": "i",
      "op": "JUMP"
    },
    "5935": {
      "op": "JUMPDEST"
    },
    "5936": {
      "op": "DUP1"
    },
    "5937": {
      "op": "PUSH1",
      "value": "0x5"
    },
    "5939": {
      "op": "SHL"
    },
    "5940": {
      "op": "SWAP2"
    },
    "5941": {
      "op": "POP"
    },
    "5942": {
      "op": "PUSH2",
      "value": "0x1740"
    },
    "5945": {
      "op": "DUP5"
    },
    "5946": {
      "op": "DUP4"
    },
    "5947": {
      "op": "ADD"
    },
    "5948": {
      "op": "PUSH2",
      "value": "0x1A50"
    },
    "5951": {
      "jump": "i",
      "op": "JUMP"
    },
    "5952": {
      "op": "JUMPDEST"
    },
    "5953": {
      "op": "DUP2"
    },
    "5954": {
      "op": "DUP2"
    },
    "5955": {
      "op": "MSTORE"
    },
    "5956": {
      "op": "DUP5"
    },
    "5957": {
      "op": "DUP2"
    },
    "5958": {
      "op": "ADD"
    },
    "5959": {
      "op": "SWAP1"
    },
    "5960": {
      "op": "DUP5"
    },
    "5961": {
      "op": "DUP7"
    },
    "5962": {
      "op": "ADD"
    },
    "5963": {
      "op": "DUP5"
    },
    "5964": {
      "op": "DUP7"
    },
    "5965": {
      "op": "ADD"
    },
    "5966": {
      "op": "DUP8"
    },
    "5967": {
      "op": "ADD"
    },
    "5968": {
      "op": "DUP11"
    },
    "5969": {
      "op": "LT"
    },
    "5970": {
      "op": "ISZERO"
    },
    "5971": {
      "op": "PUSH2",
      "value": "0x175B"
    },
    "5974": {
      "op": "JUMPI"
    },
    "5975": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5977": {
      "op": "DUP1"
    },
    "5978": {
      "op": "REVERT"
    },
    "5979": {
      "op": "JUMPDEST"
    },
    "5980": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "5982": {
      "op": "SWAP6"
    },
    "5983": {
      "op": "POP"
    },
    "5984": {
      "op": "JUMPDEST"
    },
    "5985": {
      "op": "DUP4"
    },
    "5986": {
      "op": "DUP7"
    },
    "5987": {
      "op": "LT"
    },
    "5988": {
      "op": "ISZERO"
    },
    "5989": {
      "op": "PUSH2",
      "value": "0x178A"
    },
    "5992": {
      "op": "JUMPI"
    },
    "5993": {
      "op": "DUP1"
    },
    "5994": {
      "op": "MLOAD"
    },
    "5995": {
      "op": "SWAP5"
    },
    "5996": {
      "op": "POP"
    },
    "5997": {
      "op": "PUSH2",
      "value": "0x1775"
    },
    "6000": {
      "op": "DUP6"
    },
    "6001": {
      "op": "PUSH2",
      "value": "0x1B45"
    },
    "6004": {
      "jump": "i",
      "op": "JUMP"
    },
    "6005": {
      "op": "JUMPDEST"
    },
    "6006": {
      "op": "DUP5"
    },
    "6007": {
      "op": "DUP4"
    },
    "6008": {
      "op": "MSTORE"
    },
    "6009": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6011": {
      "op": "SWAP6"
    },
    "6012": {
      "op": "SWAP1"
    },
    "6013": {
      "op": "SWAP6"
    },
    "6014": {
      "op": "ADD"
    },
    "6015": {
      "op": "SWAP5"
    },
    "6016": {
      "op": "SWAP2"
    },
    "6017": {
      "op": "DUP7"
    },
    "6018": {
      "op": "ADD"
    },
    "6019": {
      "op": "SWAP2"
    },
    "6020": {
      "op": "DUP7"
    },
    "6021": {
      "op": "ADD"
    },
    "6022": {
      "op": "PUSH2",
      "value": "0x1760"
    },
    "6025": {
      "op": "JUMP"
    },
    "6026": {
      "op": "JUMPDEST"
    },
    "6027": {
      "op": "POP"
    },
    "6028": {
      "op": "SWAP9"
    },
    "6029": {
      "op": "SWAP8"
    },
    "6030": {
      "op": "POP"
    },
    "6031": {
      "op": "POP"
    },
    "6032": {
      "op": "POP"
    },
    "6033": {
      "op": "POP"
    },
    "6034": {
      "op": "POP"
    },
    "6035": {
      "op": "POP"
    },
    "6036": {
      "op": "POP"
    },
    "6037": {
      "op": "POP"
    },
    "6038": {
      "jump": "o",
      "op": "JUMP"
    },
    "6039": {
      "op": "JUMPDEST"
    },
    "6040": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6042": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6044": {
      "op": "DUP3"
    },
    "6045": {
      "op": "DUP5"
    },
    "6046": {
      "op": "SUB"
    },
    "6047": {
      "op": "SLT"
    },
    "6048": {
      "op": "ISZERO"
    },
    "6049": {
      "op": "PUSH2",
      "value": "0x17A9"
    },
    "6052": {
      "op": "JUMPI"
    },
    "6053": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6055": {
      "op": "DUP1"
    },
    "6056": {
      "op": "REVERT"
    },
    "6057": {
      "op": "JUMPDEST"
    },
    "6058": {
      "op": "DUP2"
    },
    "6059": {
      "op": "MLOAD"
    },
    "6060": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "6069": {
      "op": "DUP1"
    },
    "6070": {
      "op": "DUP3"
    },
    "6071": {
      "op": "GT"
    },
    "6072": {
      "op": "ISZERO"
    },
    "6073": {
      "op": "PUSH2",
      "value": "0x17C1"
    },
    "6076": {
      "op": "JUMPI"
    },
    "6077": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6079": {
      "op": "DUP1"
    },
    "6080": {
      "op": "REVERT"
    },
    "6081": {
      "op": "JUMPDEST"
    },
    "6082": {
      "op": "DUP2"
    },
    "6083": {
      "op": "DUP5"
    },
    "6084": {
      "op": "ADD"
    },
    "6085": {
      "op": "SWAP2"
    },
    "6086": {
      "op": "POP"
    },
    "6087": {
      "op": "DUP5"
    },
    "6088": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "6090": {
      "op": "DUP4"
    },
    "6091": {
      "op": "ADD"
    },
    "6092": {
      "op": "SLT"
    },
    "6093": {
      "op": "PUSH2",
      "value": "0x17D5"
    },
    "6096": {
      "op": "JUMPI"
    },
    "6097": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6099": {
      "op": "DUP1"
    },
    "6100": {
      "op": "REVERT"
    },
    "6101": {
      "op": "JUMPDEST"
    },
    "6102": {
      "op": "DUP2"
    },
    "6103": {
      "op": "MLOAD"
    },
    "6104": {
      "op": "DUP2"
    },
    "6105": {
      "op": "DUP2"
    },
    "6106": {
      "op": "GT"
    },
    "6107": {
      "op": "ISZERO"
    },
    "6108": {
      "op": "PUSH2",
      "value": "0x17E7"
    },
    "6111": {
      "op": "JUMPI"
    },
    "6112": {
      "op": "PUSH2",
      "value": "0x17E7"
    },
    "6115": {
      "op": "PUSH2",
      "value": "0x1B2F"
    },
    "6118": {
      "jump": "i",
      "op": "JUMP"
    },
    "6119": {
      "op": "JUMPDEST"
    },
    "6120": {
      "op": "PUSH2",
      "value": "0x17FA"
    },
    "6123": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "6125": {
      "op": "DUP3"
    },
    "6126": {
      "op": "ADD"
    },
    "6127": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "6129": {
      "op": "NOT"
    },
    "6130": {
      "op": "AND"
    },
    "6131": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6133": {
      "op": "ADD"
    },
    "6134": {
      "op": "PUSH2",
      "value": "0x1A50"
    },
    "6137": {
      "jump": "i",
      "op": "JUMP"
    },
    "6138": {
      "op": "JUMPDEST"
    },
    "6139": {
      "op": "SWAP2"
    },
    "6140": {
      "op": "POP"
    },
    "6141": {
      "op": "DUP1"
    },
    "6142": {
      "op": "DUP3"
    },
    "6143": {
      "op": "MSTORE"
    },
    "6144": {
      "op": "DUP6"
    },
    "6145": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6147": {
      "op": "DUP3"
    },
    "6148": {
      "op": "DUP6"
    },
    "6149": {
      "op": "ADD"
    },
    "6150": {
      "op": "ADD"
    },
    "6151": {
      "op": "GT"
    },
    "6152": {
      "op": "ISZERO"
    },
    "6153": {
      "op": "PUSH2",
      "value": "0x1811"
    },
    "6156": {
      "op": "JUMPI"
    },
    "6157": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6159": {
      "op": "DUP1"
    },
    "6160": {
      "op": "REVERT"
    },
    "6161": {
      "op": "JUMPDEST"
    },
    "6162": {
      "op": "PUSH2",
      "value": "0x1822"
    },
    "6165": {
      "op": "DUP2"
    },
    "6166": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6168": {
      "op": "DUP5"
    },
    "6169": {
      "op": "ADD"
    },
    "6170": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6172": {
      "op": "DUP7"
    },
    "6173": {
      "op": "ADD"
    },
    "6174": {
      "op": "PUSH2",
      "value": "0x1AB8"
    },
    "6177": {
      "jump": "i",
      "op": "JUMP"
    },
    "6178": {
      "op": "JUMPDEST"
    },
    "6179": {
      "op": "POP"
    },
    "6180": {
      "op": "SWAP5"
    },
    "6181": {
      "op": "SWAP4"
    },
    "6182": {
      "op": "POP"
    },
    "6183": {
      "op": "POP"
    },
    "6184": {
      "op": "POP"
    },
    "6185": {
      "op": "POP"
    },
    "6186": {
      "jump": "o",
      "op": "JUMP"
    },
    "6187": {
      "op": "JUMPDEST"
    },
    "6188": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6190": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6192": {
      "op": "DUP3"
    },
    "6193": {
      "op": "DUP5"
    },
    "6194": {
      "op": "SUB"
    },
    "6195": {
      "op": "SLT"
    },
    "6196": {
      "op": "ISZERO"
    },
    "6197": {
      "op": "PUSH2",
      "value": "0x183D"
    },
    "6200": {
      "op": "JUMPI"
    },
    "6201": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6203": {
      "op": "DUP1"
    },
    "6204": {
      "op": "REVERT"
    },
    "6205": {
      "op": "JUMPDEST"
    },
    "6206": {
      "op": "PUSH2",
      "value": "0x1681"
    },
    "6209": {
      "op": "DUP4"
    },
    "6210": {
      "op": "DUP4"
    },
    "6211": {
      "op": "PUSH2",
      "value": "0x15E5"
    },
    "6214": {
      "jump": "i",
      "op": "JUMP"
    },
    "6215": {
      "op": "JUMPDEST"
    },
    "6216": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6218": {
      "op": "PUSH2",
      "value": "0x180"
    },
    "6221": {
      "op": "DUP3"
    },
    "6222": {
      "op": "DUP5"
    },
    "6223": {
      "op": "SUB"
    },
    "6224": {
      "op": "SLT"
    },
    "6225": {
      "op": "ISZERO"
    },
    "6226": {
      "op": "PUSH2",
      "value": "0x185A"
    },
    "6229": {
      "op": "JUMPI"
    },
    "6230": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6232": {
      "op": "DUP1"
    },
    "6233": {
      "op": "REVERT"
    },
    "6234": {
      "op": "JUMPDEST"
    },
    "6235": {
      "op": "PUSH2",
      "value": "0x1862"
    },
    "6238": {
      "op": "PUSH2",
      "value": "0x1A26"
    },
    "6241": {
      "jump": "i",
      "op": "JUMP"
    },
    "6242": {
      "op": "JUMPDEST"
    },
    "6243": {
      "op": "PUSH2",
      "value": "0x186C"
    },
    "6246": {
      "op": "DUP5"
    },
    "6247": {
      "op": "DUP5"
    },
    "6248": {
      "op": "PUSH2",
      "value": "0x15E5"
    },
    "6251": {
      "jump": "i",
      "op": "JUMP"
    },
    "6252": {
      "op": "JUMPDEST"
    },
    "6253": {
      "op": "DUP2"
    },
    "6254": {
      "op": "MSTORE"
    },
    "6255": {
      "op": "PUSH2",
      "value": "0x187A"
    },
    "6258": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6260": {
      "op": "DUP5"
    },
    "6261": {
      "op": "ADD"
    },
    "6262": {
      "op": "PUSH2",
      "value": "0x1627"
    },
    "6265": {
      "jump": "i",
      "op": "JUMP"
    },
    "6266": {
      "op": "JUMPDEST"
    },
    "6267": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6269": {
      "op": "DUP3"
    },
    "6270": {
      "op": "ADD"
    },
    "6271": {
      "op": "MSTORE"
    },
    "6272": {
      "op": "PUSH2",
      "value": "0x188B"
    },
    "6275": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "6277": {
      "op": "DUP5"
    },
    "6278": {
      "op": "ADD"
    },
    "6279": {
      "op": "PUSH2",
      "value": "0x1627"
    },
    "6282": {
      "jump": "i",
      "op": "JUMP"
    },
    "6283": {
      "op": "JUMPDEST"
    },
    "6284": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "6286": {
      "op": "DUP3"
    },
    "6287": {
      "op": "ADD"
    },
    "6288": {
      "op": "MSTORE"
    },
    "6289": {
      "op": "PUSH2",
      "value": "0x189C"
    },
    "6292": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "6294": {
      "op": "DUP5"
    },
    "6295": {
      "op": "ADD"
    },
    "6296": {
      "op": "PUSH2",
      "value": "0x1627"
    },
    "6299": {
      "jump": "i",
      "op": "JUMP"
    },
    "6300": {
      "op": "JUMPDEST"
    },
    "6301": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "6303": {
      "op": "DUP3"
    },
    "6304": {
      "op": "ADD"
    },
    "6305": {
      "op": "MSTORE"
    },
    "6306": {
      "op": "PUSH2",
      "value": "0x18AD"
    },
    "6309": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "6311": {
      "op": "DUP5"
    },
    "6312": {
      "op": "ADD"
    },
    "6313": {
      "op": "PUSH2",
      "value": "0x1627"
    },
    "6316": {
      "jump": "i",
      "op": "JUMP"
    },
    "6317": {
      "op": "JUMPDEST"
    },
    "6318": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "6320": {
      "op": "DUP3"
    },
    "6321": {
      "op": "ADD"
    },
    "6322": {
      "op": "MSTORE"
    },
    "6323": {
      "op": "PUSH2",
      "value": "0x18BE"
    },
    "6326": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "6328": {
      "op": "DUP5"
    },
    "6329": {
      "op": "ADD"
    },
    "6330": {
      "op": "PUSH2",
      "value": "0x1627"
    },
    "6333": {
      "jump": "i",
      "op": "JUMP"
    },
    "6334": {
      "op": "JUMPDEST"
    },
    "6335": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "6337": {
      "op": "DUP3"
    },
    "6338": {
      "op": "ADD"
    },
    "6339": {
      "op": "MSTORE"
    },
    "6340": {
      "op": "PUSH2",
      "value": "0x18CF"
    },
    "6343": {
      "op": "PUSH1",
      "value": "0xC0"
    },
    "6345": {
      "op": "DUP5"
    },
    "6346": {
      "op": "ADD"
    },
    "6347": {
      "op": "PUSH2",
      "value": "0x163E"
    },
    "6350": {
      "jump": "i",
      "op": "JUMP"
    },
    "6351": {
      "op": "JUMPDEST"
    },
    "6352": {
      "op": "PUSH1",
      "value": "0xC0"
    },
    "6354": {
      "op": "DUP3"
    },
    "6355": {
      "op": "ADD"
    },
    "6356": {
      "op": "MSTORE"
    },
    "6357": {
      "op": "PUSH2",
      "value": "0x18E0"
    },
    "6360": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "6362": {
      "op": "DUP5"
    },
    "6363": {
      "op": "ADD"
    },
    "6364": {
      "op": "PUSH2",
      "value": "0x15D5"
    },
    "6367": {
      "jump": "i",
      "op": "JUMP"
    },
    "6368": {
      "op": "JUMPDEST"
    },
    "6369": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "6371": {
      "op": "DUP3"
    },
    "6372": {
      "op": "ADD"
    },
    "6373": {
      "op": "MSTORE"
    },
    "6374": {
      "op": "PUSH2",
      "value": "0x100"
    },
    "6377": {
      "op": "PUSH2",
      "value": "0x18F3"
    },
    "6380": {
      "op": "DUP2"
    },
    "6381": {
      "op": "DUP6"
    },
    "6382": {
      "op": "ADD"
    },
    "6383": {
      "op": "PUSH2",
      "value": "0x15D5"
    },
    "6386": {
      "jump": "i",
      "op": "JUMP"
    },
    "6387": {
      "op": "JUMPDEST"
    },
    "6388": {
      "op": "SWAP1"
    },
    "6389": {
      "op": "DUP3"
    },
    "6390": {
      "op": "ADD"
    },
    "6391": {
      "op": "MSTORE"
    },
    "6392": {
      "op": "PUSH2",
      "value": "0x120"
    },
    "6395": {
      "op": "PUSH2",
      "value": "0x1905"
    },
    "6398": {
      "op": "DUP5"
    },
    "6399": {
      "op": "DUP3"
    },
    "6400": {
      "op": "ADD"
    },
    "6401": {
      "op": "PUSH2",
      "value": "0x15D5"
    },
    "6404": {
      "jump": "i",
      "op": "JUMP"
    },
    "6405": {
      "op": "JUMPDEST"
    },
    "6406": {
      "op": "SWAP1"
    },
    "6407": {
      "op": "DUP3"
    },
    "6408": {
      "op": "ADD"
    },
    "6409": {
      "op": "MSTORE"
    },
    "6410": {
      "op": "PUSH2",
      "value": "0x140"
    },
    "6413": {
      "op": "PUSH2",
      "value": "0x1917"
    },
    "6416": {
      "op": "DUP5"
    },
    "6417": {
      "op": "DUP3"
    },
    "6418": {
      "op": "ADD"
    },
    "6419": {
      "op": "PUSH2",
      "value": "0x15D5"
    },
    "6422": {
      "jump": "i",
      "op": "JUMP"
    },
    "6423": {
      "op": "JUMPDEST"
    },
    "6424": {
      "op": "SWAP1"
    },
    "6425": {
      "op": "DUP3"
    },
    "6426": {
      "op": "ADD"
    },
    "6427": {
      "op": "MSTORE"
    },
    "6428": {
      "op": "PUSH2",
      "value": "0x160"
    },
    "6431": {
      "op": "PUSH2",
      "value": "0x1929"
    },
    "6434": {
      "op": "DUP5"
    },
    "6435": {
      "op": "DUP3"
    },
    "6436": {
      "op": "ADD"
    },
    "6437": {
      "op": "PUSH2",
      "value": "0x1653"
    },
    "6440": {
      "jump": "i",
      "op": "JUMP"
    },
    "6441": {
      "op": "JUMPDEST"
    },
    "6442": {
      "op": "SWAP1"
    },
    "6443": {
      "op": "DUP3"
    },
    "6444": {
      "op": "ADD"
    },
    "6445": {
      "op": "MSTORE"
    },
    "6446": {
      "op": "SWAP4"
    },
    "6447": {
      "op": "SWAP3"
    },
    "6448": {
      "op": "POP"
    },
    "6449": {
      "op": "POP"
    },
    "6450": {
      "op": "POP"
    },
    "6451": {
      "jump": "o",
      "op": "JUMP"
    },
    "6452": {
      "op": "JUMPDEST"
    },
    "6453": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6455": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6457": {
      "op": "DUP3"
    },
    "6458": {
      "op": "DUP5"
    },
    "6459": {
      "op": "SUB"
    },
    "6460": {
      "op": "SLT"
    },
    "6461": {
      "op": "ISZERO"
    },
    "6462": {
      "op": "PUSH2",
      "value": "0x1946"
    },
    "6465": {
      "op": "JUMPI"
    },
    "6466": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6468": {
      "op": "DUP1"
    },
    "6469": {
      "op": "REVERT"
    },
    "6470": {
      "op": "JUMPDEST"
    },
    "6471": {
      "op": "POP"
    },
    "6472": {
      "op": "MLOAD"
    },
    "6473": {
      "op": "SWAP2"
    },
    "6474": {
      "op": "SWAP1"
    },
    "6475": {
      "op": "POP"
    },
    "6476": {
      "jump": "o",
      "op": "JUMP"
    },
    "6477": {
      "op": "JUMPDEST"
    },
    "6478": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6480": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6482": {
      "op": "DUP3"
    },
    "6483": {
      "op": "DUP5"
    },
    "6484": {
      "op": "SUB"
    },
    "6485": {
      "op": "SLT"
    },
    "6486": {
      "op": "ISZERO"
    },
    "6487": {
      "op": "PUSH2",
      "value": "0x195F"
    },
    "6490": {
      "op": "JUMPI"
    },
    "6491": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6493": {
      "op": "DUP1"
    },
    "6494": {
      "op": "REVERT"
    },
    "6495": {
      "op": "JUMPDEST"
    },
    "6496": {
      "op": "PUSH2",
      "value": "0x1681"
    },
    "6499": {
      "op": "DUP3"
    },
    "6500": {
      "op": "PUSH2",
      "value": "0x163E"
    },
    "6503": {
      "jump": "i",
      "op": "JUMP"
    },
    "6504": {
      "op": "JUMPDEST"
    },
    "6505": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6507": {
      "op": "DUP2"
    },
    "6508": {
      "op": "MLOAD"
    },
    "6509": {
      "op": "DUP1"
    },
    "6510": {
      "op": "DUP5"
    },
    "6511": {
      "op": "MSTORE"
    },
    "6512": {
      "op": "PUSH2",
      "value": "0x1980"
    },
    "6515": {
      "op": "DUP2"
    },
    "6516": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6518": {
      "op": "DUP7"
    },
    "6519": {
      "op": "ADD"
    },
    "6520": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6522": {
      "op": "DUP7"
    },
    "6523": {
      "op": "ADD"
    },
    "6524": {
      "op": "PUSH2",
      "value": "0x1AB8"
    },
    "6527": {
      "jump": "i",
      "op": "JUMP"
    },
    "6528": {
      "op": "JUMPDEST"
    },
    "6529": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "6531": {
      "op": "ADD"
    },
    "6532": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "6534": {
      "op": "NOT"
    },
    "6535": {
      "op": "AND"
    },
    "6536": {
      "op": "SWAP3"
    },
    "6537": {
      "op": "SWAP1"
    },
    "6538": {
      "op": "SWAP3"
    },
    "6539": {
      "op": "ADD"
    },
    "6540": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6542": {
      "op": "ADD"
    },
    "6543": {
      "op": "SWAP3"
    },
    "6544": {
      "op": "SWAP2"
    },
    "6545": {
      "op": "POP"
    },
    "6546": {
      "op": "POP"
    },
    "6547": {
      "jump": "o",
      "op": "JUMP"
    },
    "6548": {
      "op": "JUMPDEST"
    },
    "6549": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6551": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6553": {
      "op": "DUP1"
    },
    "6554": {
      "op": "DUP4"
    },
    "6555": {
      "op": "ADD"
    },
    "6556": {
      "op": "DUP2"
    },
    "6557": {
      "op": "DUP5"
    },
    "6558": {
      "op": "MSTORE"
    },
    "6559": {
      "op": "DUP1"
    },
    "6560": {
      "op": "DUP6"
    },
    "6561": {
      "op": "MLOAD"
    },
    "6562": {
      "op": "DUP1"
    },
    "6563": {
      "op": "DUP4"
    },
    "6564": {
      "op": "MSTORE"
    },
    "6565": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "6567": {
      "op": "SWAP3"
    },
    "6568": {
      "op": "POP"
    },
    "6569": {
      "op": "DUP3"
    },
    "6570": {
      "op": "DUP7"
    },
    "6571": {
      "op": "ADD"
    },
    "6572": {
      "op": "SWAP2"
    },
    "6573": {
      "op": "POP"
    },
    "6574": {
      "op": "DUP3"
    },
    "6575": {
      "op": "DUP2"
    },
    "6576": {
      "op": "PUSH1",
      "value": "0x5"
    },
    "6578": {
      "op": "SHL"
    },
    "6579": {
      "op": "DUP8"
    },
    "6580": {
      "op": "ADD"
    },
    "6581": {
      "op": "ADD"
    },
    "6582": {
      "op": "DUP5"
    },
    "6583": {
      "op": "DUP9"
    },
    "6584": {
      "op": "ADD"
    },
    "6585": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6587": {
      "op": "JUMPDEST"
    },
    "6588": {
      "op": "DUP4"
    },
    "6589": {
      "op": "DUP2"
    },
    "6590": {
      "op": "LT"
    },
    "6591": {
      "op": "ISZERO"
    },
    "6592": {
      "op": "PUSH2",
      "value": "0x1A05"
    },
    "6595": {
      "op": "JUMPI"
    },
    "6596": {
      "op": "DUP9"
    },
    "6597": {
      "op": "DUP4"
    },
    "6598": {
      "op": "SUB"
    },
    "6599": {
      "op": "PUSH1",
      "value": "0x3F"
    },
    "6601": {
      "op": "NOT"
    },
    "6602": {
      "op": "ADD"
    },
    "6603": {
      "op": "DUP6"
    },
    "6604": {
      "op": "MSTORE"
    },
    "6605": {
      "op": "DUP2"
    },
    "6606": {
      "op": "MLOAD"
    },
    "6607": {
      "op": "DUP1"
    },
    "6608": {
      "op": "MLOAD"
    },
    "6609": {
      "op": "DUP8"
    },
    "6610": {
      "op": "DUP6"
    },
    "6611": {
      "op": "MSTORE"
    },
    "6612": {
      "op": "PUSH2",
      "value": "0x19DF"
    },
    "6615": {
      "op": "DUP9"
    },
    "6616": {
      "op": "DUP7"
    },
    "6617": {
      "op": "ADD"
    },
    "6618": {
      "op": "DUP3"
    },
    "6619": {
      "op": "PUSH2",
      "value": "0x1968"
    },
    "6622": {
      "jump": "i",
      "op": "JUMP"
    },
    "6623": {
      "op": "JUMPDEST"
    },
    "6624": {
      "op": "SWAP2"
    },
    "6625": {
      "op": "DUP10"
    },
    "6626": {
      "op": "ADD"
    },
    "6627": {
      "op": "MLOAD"
    },
    "6628": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6630": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6632": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "6634": {
      "op": "SHL"
    },
    "6635": {
      "op": "SUB"
    },
    "6636": {
      "op": "AND"
    },
    "6637": {
      "op": "SWAP5"
    },
    "6638": {
      "op": "DUP10"
    },
    "6639": {
      "op": "ADD"
    },
    "6640": {
      "op": "SWAP5"
    },
    "6641": {
      "op": "SWAP1"
    },
    "6642": {
      "op": "SWAP5"
    },
    "6643": {
      "op": "MSTORE"
    },
    "6644": {
      "op": "SWAP5"
    },
    "6645": {
      "op": "DUP8"
    },
    "6646": {
      "op": "ADD"
    },
    "6647": {
      "op": "SWAP5"
    },
    "6648": {
      "op": "SWAP3"
    },
    "6649": {
      "op": "POP"
    },
    "6650": {
      "op": "SWAP1"
    },
    "6651": {
      "op": "DUP7"
    },
    "6652": {
      "op": "ADD"
    },
    "6653": {
      "op": "SWAP1"
    },
    "6654": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6656": {
      "op": "ADD"
    },
    "6657": {
      "op": "PUSH2",
      "value": "0x19BB"
    },
    "6660": {
      "op": "JUMP"
    },
    "6661": {
      "op": "JUMPDEST"
    },
    "6662": {
      "op": "POP"
    },
    "6663": {
      "op": "SWAP1"
    },
    "6664": {
      "op": "SWAP9"
    },
    "6665": {
      "op": "SWAP8"
    },
    "6666": {
      "op": "POP"
    },
    "6667": {
      "op": "POP"
    },
    "6668": {
      "op": "POP"
    },
    "6669": {
      "op": "POP"
    },
    "6670": {
      "op": "POP"
    },
    "6671": {
      "op": "POP"
    },
    "6672": {
      "op": "POP"
    },
    "6673": {
      "op": "POP"
    },
    "6674": {
      "jump": "o",
      "op": "JUMP"
    },
    "6675": {
      "op": "JUMPDEST"
    },
    "6676": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6678": {
      "op": "DUP2"
    },
    "6679": {
      "op": "MSTORE"
    },
    "6680": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6682": {
      "op": "PUSH2",
      "value": "0x1681"
    },
    "6685": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6687": {
      "op": "DUP4"
    },
    "6688": {
      "op": "ADD"
    },
    "6689": {
      "op": "DUP5"
    },
    "6690": {
      "op": "PUSH2",
      "value": "0x1968"
    },
    "6693": {
      "jump": "i",
      "op": "JUMP"
    },
    "6694": {
      "op": "JUMPDEST"
    },
    "6695": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "6697": {
      "op": "MLOAD"
    },
    "6698": {
      "op": "PUSH2",
      "value": "0x180"
    },
    "6701": {
      "op": "DUP2"
    },
    "6702": {
      "op": "ADD"
    },
    "6703": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "6712": {
      "op": "DUP2"
    },
    "6713": {
      "op": "GT"
    },
    "6714": {
      "op": "DUP3"
    },
    "6715": {
      "op": "DUP3"
    },
    "6716": {
      "op": "LT"
    },
    "6717": {
      "op": "OR"
    },
    "6718": {
      "op": "ISZERO"
    },
    "6719": {
      "op": "PUSH2",
      "value": "0x1A4A"
    },
    "6722": {
      "op": "JUMPI"
    },
    "6723": {
      "op": "PUSH2",
      "value": "0x1A4A"
    },
    "6726": {
      "op": "PUSH2",
      "value": "0x1B2F"
    },
    "6729": {
      "jump": "i",
      "op": "JUMP"
    },
    "6730": {
      "op": "JUMPDEST"
    },
    "6731": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "6733": {
      "op": "MSTORE"
    },
    "6734": {
      "op": "SWAP1"
    },
    "6735": {
      "jump": "o",
      "op": "JUMP"
    },
    "6736": {
      "op": "JUMPDEST"
    },
    "6737": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "6739": {
      "op": "MLOAD"
    },
    "6740": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "6742": {
      "op": "DUP3"
    },
    "6743": {
      "op": "ADD"
    },
    "6744": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "6746": {
      "op": "NOT"
    },
    "6747": {
      "op": "AND"
    },
    "6748": {
      "op": "DUP2"
    },
    "6749": {
      "op": "ADD"
    },
    "6750": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "6759": {
      "op": "DUP2"
    },
    "6760": {
      "op": "GT"
    },
    "6761": {
      "op": "DUP3"
    },
    "6762": {
      "op": "DUP3"
    },
    "6763": {
      "op": "LT"
    },
    "6764": {
      "op": "OR"
    },
    "6765": {
      "op": "ISZERO"
    },
    "6766": {
      "op": "PUSH2",
      "value": "0x1A79"
    },
    "6769": {
      "op": "JUMPI"
    },
    "6770": {
      "op": "PUSH2",
      "value": "0x1A79"
    },
    "6773": {
      "op": "PUSH2",
      "value": "0x1B2F"
    },
    "6776": {
      "jump": "i",
      "op": "JUMP"
    },
    "6777": {
      "op": "JUMPDEST"
    },
    "6778": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "6780": {
      "op": "MSTORE"
    },
    "6781": {
      "op": "SWAP2"
    },
    "6782": {
      "op": "SWAP1"
    },
    "6783": {
      "op": "POP"
    },
    "6784": {
      "jump": "o",
      "op": "JUMP"
    },
    "6785": {
      "op": "JUMPDEST"
    },
    "6786": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6788": {
      "op": "DUP3"
    },
    "6789": {
      "op": "NOT"
    },
    "6790": {
      "op": "DUP3"
    },
    "6791": {
      "op": "GT"
    },
    "6792": {
      "op": "ISZERO"
    },
    "6793": {
      "op": "PUSH2",
      "value": "0x1A94"
    },
    "6796": {
      "op": "JUMPI"
    },
    "6797": {
      "op": "PUSH2",
      "value": "0x1A94"
    },
    "6800": {
      "op": "PUSH2",
      "value": "0x1B03"
    },
    "6803": {
      "jump": "i",
      "op": "JUMP"
    },
    "6804": {
      "op": "JUMPDEST"
    },
    "6805": {
      "op": "POP"
    },
    "6806": {
      "op": "ADD"
    },
    "6807": {
      "op": "SWAP1"
    },
    "6808": {
      "jump": "o",
      "op": "JUMP"
    },
    "6809": {
      "op": "JUMPDEST"
    },
    "6810": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6812": {
      "op": "DUP2"
    },
    "6813": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6815": {
      "op": "NOT"
    },
    "6816": {
      "op": "DIV"
    },
    "6817": {
      "op": "DUP4"
    },
    "6818": {
      "op": "GT"
    },
    "6819": {
      "op": "DUP3"
    },
    "6820": {
      "op": "ISZERO"
    },
    "6821": {
      "op": "ISZERO"
    },
    "6822": {
      "op": "AND"
    },
    "6823": {
      "op": "ISZERO"
    },
    "6824": {
      "op": "PUSH2",
      "value": "0x1AB3"
    },
    "6827": {
      "op": "JUMPI"
    },
    "6828": {
      "op": "PUSH2",
      "value": "0x1AB3"
    },
    "6831": {
      "op": "PUSH2",
      "value": "0x1B03"
    },
    "6834": {
      "jump": "i",
      "op": "JUMP"
    },
    "6835": {
      "op": "JUMPDEST"
    },
    "6836": {
      "op": "POP"
    },
    "6837": {
      "op": "MUL"
    },
    "6838": {
      "op": "SWAP1"
    },
    "6839": {
      "jump": "o",
      "op": "JUMP"
    },
    "6840": {
      "op": "JUMPDEST"
    },
    "6841": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6843": {
      "op": "JUMPDEST"
    },
    "6844": {
      "op": "DUP4"
    },
    "6845": {
      "op": "DUP2"
    },
    "6846": {
      "op": "LT"
    },
    "6847": {
      "op": "ISZERO"
    },
    "6848": {
      "op": "PUSH2",
      "value": "0x1AD3"
    },
    "6851": {
      "op": "JUMPI"
    },
    "6852": {
      "op": "DUP2"
    },
    "6853": {
      "op": "DUP2"
    },
    "6854": {
      "op": "ADD"
    },
    "6855": {
      "op": "MLOAD"
    },
    "6856": {
      "op": "DUP4"
    },
    "6857": {
      "op": "DUP3"
    },
    "6858": {
      "op": "ADD"
    },
    "6859": {
      "op": "MSTORE"
    },
    "6860": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "6862": {
      "op": "ADD"
    },
    "6863": {
      "op": "PUSH2",
      "value": "0x1ABB"
    },
    "6866": {
      "op": "JUMP"
    },
    "6867": {
      "op": "JUMPDEST"
    },
    "6868": {
      "op": "DUP4"
    },
    "6869": {
      "op": "DUP2"
    },
    "6870": {
      "op": "GT"
    },
    "6871": {
      "op": "ISZERO"
    },
    "6872": {
      "op": "PUSH2",
      "value": "0x1AE2"
    },
    "6875": {
      "op": "JUMPI"
    },
    "6876": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6878": {
      "op": "DUP5"
    },
    "6879": {
      "op": "DUP5"
    },
    "6880": {
      "op": "ADD"
    },
    "6881": {
      "op": "MSTORE"
    },
    "6882": {
      "op": "JUMPDEST"
    },
    "6883": {
      "op": "POP"
    },
    "6884": {
      "op": "POP"
    },
    "6885": {
      "op": "POP"
    },
    "6886": {
      "op": "POP"
    },
    "6887": {
      "jump": "o",
      "op": "JUMP"
    },
    "6888": {
      "op": "JUMPDEST"
    },
    "6889": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6891": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6893": {
      "op": "NOT"
    },
    "6894": {
      "op": "DUP3"
    },
    "6895": {
      "op": "EQ"
    },
    "6896": {
      "op": "ISZERO"
    },
    "6897": {
      "op": "PUSH2",
      "value": "0x1AFC"
    },
    "6900": {
      "op": "JUMPI"
    },
    "6901": {
      "op": "PUSH2",
      "value": "0x1AFC"
    },
    "6904": {
      "op": "PUSH2",
      "value": "0x1B03"
    },
    "6907": {
      "jump": "i",
      "op": "JUMP"
    },
    "6908": {
      "op": "JUMPDEST"
    },
    "6909": {
      "op": "POP"
    },
    "6910": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6912": {
      "op": "ADD"
    },
    "6913": {
      "op": "SWAP1"
    },
    "6914": {
      "jump": "o",
      "op": "JUMP"
    },
    "6915": {
      "op": "JUMPDEST"
    },
    "6916": {
      "op": "PUSH4",
      "value": "0x4E487B71"
    },
    "6921": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "6923": {
      "op": "SHL"
    },
    "6924": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6926": {
      "op": "MSTORE"
    },
    "6927": {
      "op": "PUSH1",
      "value": "0x11"
    },
    "6929": {
      "op": "PUSH1",
      "value": "0x4"
    },
    "6931": {
      "op": "MSTORE"
    },
    "6932": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "6934": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6936": {
      "op": "REVERT"
    },
    "6937": {
      "op": "JUMPDEST"
    },
    "6938": {
      "op": "PUSH4",
      "value": "0x4E487B71"
    },
    "6943": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "6945": {
      "op": "SHL"
    },
    "6946": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6948": {
      "op": "MSTORE"
    },
    "6949": {
      "op": "PUSH1",
      "value": "0x32"
    },
    "6951": {
      "op": "PUSH1",
      "value": "0x4"
    },
    "6953": {
      "op": "MSTORE"
    },
    "6954": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "6956": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6958": {
      "op": "REVERT"
    },
    "6959": {
      "op": "JUMPDEST"
    },
    "6960": {
      "op": "PUSH4",
      "value": "0x4E487B71"
    },
    "6965": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "6967": {
      "op": "SHL"
    },
    "6968": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6970": {
      "op": "MSTORE"
    },
    "6971": {
      "op": "PUSH1",
      "value": "0x41"
    },
    "6973": {
      "op": "PUSH1",
      "value": "0x4"
    },
    "6975": {
      "op": "MSTORE"
    },
    "6976": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "6978": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6980": {
      "op": "REVERT"
    },
    "6981": {
      "op": "JUMPDEST"
    },
    "6982": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6984": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6986": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "6988": {
      "op": "SHL"
    },
    "6989": {
      "op": "SUB"
    },
    "6990": {
      "op": "DUP2"
    },
    "6991": {
      "op": "AND"
    },
    "6992": {
      "op": "DUP2"
    },
    "6993": {
      "op": "EQ"
    },
    "6994": {
      "op": "PUSH2",
      "value": "0x1B5A"
    },
    "6997": {
      "op": "JUMPI"
    },
    "6998": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "7000": {
      "op": "DUP1"
    },
    "7001": {
      "op": "REVERT"
    },
    "7002": {
      "op": "JUMPDEST"
    },
    "7003": {
      "op": "POP"
    },
    "7004": {
      "jump": "o",
      "op": "JUMP"
    }
  },
  "sha1": "32651754064f03b4a8e8b347b8064da05c43ff6d",
  "source": "// SPDX-License-Identifier: agpl-3.0\npragma solidity ^0.8.0;\npragma experimental ABIEncoderV2;\n\nimport {IERC20Detailed} from '../dependencies/openzeppelin/contracts/IERC20Detailed.sol';\nimport {ILendingPoolAddressesProvider} from '../interfaces/ILendingPoolAddressesProvider.sol';\nimport {ILendingPool} from '../interfaces/ILendingPool.sol';\nimport {IStableDebtToken} from '../interfaces/IStableDebtToken.sol';\nimport {IVariableDebtToken} from '../interfaces/IVariableDebtToken.sol';\nimport {ReserveConfiguration} from '../protocol/libraries/configuration/ReserveConfiguration.sol';\nimport {UserConfiguration} from '../protocol/libraries/configuration/UserConfiguration.sol';\nimport {DataTypes} from '../protocol/libraries/types/DataTypes.sol';\n\ncontract AaveProtocolDataProvider {\n  using ReserveConfiguration for DataTypes.ReserveConfigurationMap;\n  using UserConfiguration for DataTypes.UserConfigurationMap;\n\n  address constant MKR = 0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2;\n  address constant ETH = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE;\n\n  struct TokenData {\n    string symbol;\n    address tokenAddress;\n  }\n\n  ILendingPoolAddressesProvider public immutable ADDRESSES_PROVIDER;\n\n  constructor(ILendingPoolAddressesProvider addressesProvider) public {\n    ADDRESSES_PROVIDER = addressesProvider;\n  }\n\n  function getAllReservesTokens() external view returns (TokenData[] memory) {\n    ILendingPool pool = ILendingPool(ADDRESSES_PROVIDER.getLendingPool());\n    address[] memory reserves = pool.getReservesList();\n    TokenData[] memory reservesTokens = new TokenData[](reserves.length);\n    for (uint256 i = 0; i < reserves.length; i++) {\n      if (reserves[i] == MKR) {\n        reservesTokens[i] = TokenData({symbol: 'MKR', tokenAddress: reserves[i]});\n        continue;\n      }\n      if (reserves[i] == ETH) {\n        reservesTokens[i] = TokenData({symbol: 'ETH', tokenAddress: reserves[i]});\n        continue;\n      }\n      reservesTokens[i] = TokenData({\n        symbol: IERC20Detailed(reserves[i]).symbol(),\n        tokenAddress: reserves[i]\n      });\n    }\n    return reservesTokens;\n  }\n\n  function getAllATokens() external view returns (TokenData[] memory) {\n    ILendingPool pool = ILendingPool(ADDRESSES_PROVIDER.getLendingPool());\n    address[] memory reserves = pool.getReservesList();\n    TokenData[] memory aTokens = new TokenData[](reserves.length);\n    for (uint256 i = 0; i < reserves.length; i++) {\n      DataTypes.ReserveData memory reserveData = pool.getReserveData(reserves[i]);\n      aTokens[i] = TokenData({\n        symbol: IERC20Detailed(reserveData.aTokenAddress).symbol(),\n        tokenAddress: reserveData.aTokenAddress\n      });\n    }\n    return aTokens;\n  }\n\n  function getReserveConfigurationData(address asset)\n    external\n    view\n    returns (\n      uint256 decimals,\n      uint256 ltv,\n      uint256 liquidationThreshold,\n      uint256 liquidationBonus,\n      uint256 reserveFactor,\n      bool usageAsCollateralEnabled,\n      bool borrowingEnabled,\n      bool stableBorrowRateEnabled,\n      bool isActive,\n      bool isFrozen\n    )\n  {\n    DataTypes.ReserveConfigurationMap memory configuration =\n      ILendingPool(ADDRESSES_PROVIDER.getLendingPool()).getConfiguration(asset);\n\n    (ltv, liquidationThreshold, liquidationBonus, decimals, reserveFactor) = configuration\n      .getParamsMemory();\n\n    (isActive, isFrozen, borrowingEnabled, stableBorrowRateEnabled) = configuration\n      .getFlagsMemory();\n\n    usageAsCollateralEnabled = liquidationThreshold > 0;\n  }\n\n  function getReserveData(address asset)\n    external\n    view\n    returns (\n      uint256 availableLiquidity,\n      uint256 totalStableDebt,\n      uint256 totalVariableDebt,\n      uint256 liquidityRate,\n      uint256 variableBorrowRate,\n      uint256 stableBorrowRate,\n      uint256 averageStableBorrowRate,\n      uint256 liquidityIndex,\n      uint256 variableBorrowIndex,\n      uint40 lastUpdateTimestamp\n    )\n  {\n    DataTypes.ReserveData memory reserve =\n      ILendingPool(ADDRESSES_PROVIDER.getLendingPool()).getReserveData(asset);\n\n    return (\n      IERC20Detailed(asset).balanceOf(reserve.aTokenAddress),\n      IERC20Detailed(reserve.stableDebtTokenAddress).totalSupply(),\n      IERC20Detailed(reserve.variableDebtTokenAddress).totalSupply(),\n      reserve.currentLiquidityRate,\n      reserve.currentVariableBorrowRate,\n      reserve.currentStableBorrowRate,\n      IStableDebtToken(reserve.stableDebtTokenAddress).getAverageStableRate(),\n      reserve.liquidityIndex,\n      reserve.variableBorrowIndex,\n      reserve.lastUpdateTimestamp\n    );\n  }\n\n  function getUserReserveData(address asset, address user)\n    external\n    view\n    returns (\n      uint256 currentATokenBalance,\n      uint256 currentStableDebt,\n      uint256 currentVariableDebt,\n      uint256 principalStableDebt,\n      uint256 scaledVariableDebt,\n      uint256 stableBorrowRate,\n      uint256 liquidityRate,\n      uint40 stableRateLastUpdated,\n      bool usageAsCollateralEnabled\n    )\n  {\n    DataTypes.ReserveData memory reserve =\n      ILendingPool(ADDRESSES_PROVIDER.getLendingPool()).getReserveData(asset);\n\n    DataTypes.UserConfigurationMap memory userConfig =\n      ILendingPool(ADDRESSES_PROVIDER.getLendingPool()).getUserConfiguration(user);\n\n    currentATokenBalance = IERC20Detailed(reserve.aTokenAddress).balanceOf(user);\n    currentVariableDebt = IERC20Detailed(reserve.variableDebtTokenAddress).balanceOf(user);\n    currentStableDebt = IERC20Detailed(reserve.stableDebtTokenAddress).balanceOf(user);\n    principalStableDebt = IStableDebtToken(reserve.stableDebtTokenAddress).principalBalanceOf(user);\n    scaledVariableDebt = IVariableDebtToken(reserve.variableDebtTokenAddress).scaledBalanceOf(user);\n    liquidityRate = reserve.currentLiquidityRate;\n    stableBorrowRate = IStableDebtToken(reserve.stableDebtTokenAddress).getUserStableRate(user);\n    stableRateLastUpdated = IStableDebtToken(reserve.stableDebtTokenAddress).getUserLastUpdated(\n      user\n    );\n    usageAsCollateralEnabled = userConfig.isUsingAsCollateral(reserve.id);\n  }\n\n  function getReserveTokensAddresses(address asset)\n    external\n    view\n    returns (\n      address aTokenAddress,\n      address stableDebtTokenAddress,\n      address variableDebtTokenAddress\n    )\n  {\n    DataTypes.ReserveData memory reserve =\n      ILendingPool(ADDRESSES_PROVIDER.getLendingPool()).getReserveData(asset);\n\n    return (\n      reserve.aTokenAddress,\n      reserve.stableDebtTokenAddress,\n      reserve.variableDebtTokenAddress\n    );\n  }\n}\n",
  "sourceMap": "746:5766:52:-:0;;;1195:117;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1269:38;;-1:-1:-1;;;;;;1269:38:52;;;746:5766;;14:329:114;123:6;176:2;164:9;155:7;151:23;147:32;144:2;;;192:1;189;182:12;144:2;218:16;;-1:-1:-1;;;;;263:31:114;;253:42;;243:2;;309:1;306;299:12;243:2;332:5;134:209;-1:-1:-1;;;134:209:114:o;:::-;746:5766:52;;;;;;;;;;;;",
  "sourcePath": "node_modules/@aave/protocol-v2/contracts/misc/AaveProtocolDataProvider.sol",
  "type": "contract"
}