<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>unfrigginbelievable</title>
        <link>https://paragraph.com/@unfrigginbelievable</link>
        <description>undefined</description>
        <lastBuildDate>Wed, 24 Jun 2026 04:49:45 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <image>
            <title>unfrigginbelievable</title>
            <url>https://storage.googleapis.com/papyrus_images/424feb7473475acc75e11e97bca2202d0a7ad0aefecceb0430cd1a064a874666.png</url>
            <link>https://paragraph.com/@unfrigginbelievable</link>
        </image>
        <copyright>All rights reserved</copyright>
        <item>
            <title><![CDATA[Explanation of AAVE-V3 Error Codes]]></title>
            <link>https://paragraph.com/@unfrigginbelievable/explanation-of-aave-v3-error-codes</link>
            <guid>JWD9pez8YKuCwAAX6Mdi</guid>
            <pubDate>Mon, 08 Aug 2022 20:13:09 GMT</pubDate>
            <description><![CDATA[If you are working with Aave-v3 you probably have gotten some cryptic error codes spit back at you from the smart contracts. If you google what they mean, you will probably get sent to the v2 protocol errors page, but these codes are completely different in v3. For now, the v3 codes are not in the docs, so I’m posting them here. I got these straight from the aave-core-v3 githubCALLER_NOT_POOL_ADMIN = '1'; // 'The caller of the function is not a pool admin' CALLER_NOT_EMERGENCY_ADMIN = '2'; //...]]></description>
            <content:encoded><![CDATA[<p>If you are working with Aave-v3 you probably have gotten some cryptic error codes spit back at you from the smart contracts. If you google what they mean, you will probably get sent to the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.aave.com/developers/v/2.0/guides/troubleshooting-errors">v2 protocol errors page</a>, but these codes are completely different in v3.</p><p>For now, the v3 codes are not in the docs, so I’m posting them here. I got these straight from the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/aave/aave-v3-core/blob/master/contracts/protocol/libraries/helpers/Errors.sol">aave-core-v3 github</a></p><pre data-type="codeBlock" text="CALLER_NOT_POOL_ADMIN = &apos;1&apos;; // &apos;The caller of the function is not a pool admin&apos;
CALLER_NOT_EMERGENCY_ADMIN = &apos;2&apos;; // &apos;The caller of the function is not an emergencyadmin&apos;
CALLER_NOT_POOL_OR_EMERGENCY_ADMIN = &apos;3&apos;; // &apos;The caller of the function is not a pool oremergency admin&apos;
CALLER_NOT_RISK_OR_POOL_ADMIN = &apos;4&apos;; // &apos;The caller of the function is not a risk or pooladmin&apos;
CALLER_NOT_ASSET_LISTING_OR_POOL_ADMIN = &apos;5&apos;; // &apos;The caller of the function is not anasset listing or pool admin&apos;
CALLER_NOT_BRIDGE = &apos;6&apos;; // &apos;The caller of the function is not a bridge&apos;
ADDRESSES_PROVIDER_NOT_REGISTERED = &apos;7&apos;; // &apos;Pool addresses provider is not registered&apos;
INVALID_ADDRESSES_PROVIDER_ID = &apos;8&apos;; // &apos;Invalid id for the pool addresses provider&apos;
NOT_CONTRACT = &apos;9&apos;; // &apos;Address is not a contract&apos;
CALLER_NOT_POOL_CONFIGURATOR = &apos;10&apos;; // &apos;The caller of the function is not the poolconfigurator&apos;
CALLER_NOT_ATOKEN = &apos;11&apos;; // &apos;The caller of the function is not an AToken&apos;
INVALID_ADDRESSES_PROVIDER = &apos;12&apos;; // &apos;The address of the pool addresses provider isinvalid&apos;
INVALID_FLASHLOAN_EXECUTOR_RETURN = &apos;13&apos;; // &apos;Invalid return value of the flashloanexecutor function&apos;
RESERVE_ALREADY_ADDED = &apos;14&apos;; // &apos;Reserve has already been added to reserve list&apos;
NO_MORE_RESERVES_ALLOWED = &apos;15&apos;; // &apos;Maximum amount of reserves in the pool reached&apos;
EMODE_CATEGORY_RESERVED = &apos;16&apos;; // &apos;Zero eMode category is reserved for volatileheterogeneous assets&apos;
INVALID_EMODE_CATEGORY_ASSIGNMENT = &apos;17&apos;; // &apos;Invalid eMode category assignment to asset&apos;
RESERVE_LIQUIDITY_NOT_ZERO = &apos;18&apos;; // &apos;The liquidity of the reserve needs to be 0&apos;
FLASHLOAN_PREMIUM_INVALID = &apos;19&apos;; // &apos;Invalid flashloan premium&apos;
INVALID_RESERVE_PARAMS = &apos;20&apos;; // &apos;Invalid risk parameters for the reserve&apos;
INVALID_EMODE_CATEGORY_PARAMS = &apos;21&apos;; // &apos;Invalid risk parameters for the eMode category&apos;
BRIDGE_PROTOCOL_FEE_INVALID = &apos;22&apos;; // &apos;Invalid bridge protocol fee&apos;
CALLER_MUST_BE_POOL = &apos;23&apos;; // &apos;The caller of this function must be a pool&apos;
INVALID_MINT_AMOUNT = &apos;24&apos;; // &apos;Invalid amount to mint&apos;
INVALID_BURN_AMOUNT = &apos;25&apos;; // &apos;Invalid amount to burn&apos;
INVALID_AMOUNT = &apos;26&apos;; // &apos;Amount must be greater than 0&apos;
RESERVE_INACTIVE = &apos;27&apos;; // &apos;Action requires an active reserve&apos;
RESERVE_FROZEN = &apos;28&apos;; // &apos;Action cannot be performed because the reserve is frozen&apos;
RESERVE_PAUSED = &apos;29&apos;; // &apos;Action cannot be performed because the reserve is paused&apos;
BORROWING_NOT_ENABLED = &apos;30&apos;; // &apos;Borrowing is not enabled&apos;
STABLE_BORROWING_NOT_ENABLED = &apos;31&apos;; // &apos;Stable borrowing is not enabled&apos;
NOT_ENOUGH_AVAILABLE_USER_BALANCE = &apos;32&apos;; // &apos;User cannot withdraw more than theavailable balance&apos;
INVALID_INTEREST_RATE_MODE_SELECTED = &apos;33&apos;; // &apos;Invalid interest rate mode selected&apos;
COLLATERAL_BALANCE_IS_ZERO = &apos;34&apos;; // &apos;The collateral balance is 0&apos;
HEALTH_FACTOR_LOWER_THAN_LIQUIDATION_THRESHOLD = &apos;35&apos;; // &apos;Health factor is lesser thanthe liquidation threshold&apos;
COLLATERAL_CANNOT_COVER_NEW_BORROW = &apos;36&apos;; // &apos;There is not enough collateral to cover anew borrow&apos;
COLLATERAL_SAME_AS_BORROWING_CURRENCY = &apos;37&apos;; // &apos;Collateral is (mostly) the samecurrency that is being borrowed&apos;
AMOUNT_BIGGER_THAN_MAX_LOAN_SIZE_STABLE = &apos;38&apos;; // &apos;The requested amount is greater thanthe max loan size in stable rate mode&apos;
NO_DEBT_OF_SELECTED_TYPE = &apos;39&apos;; // &apos;For repayment of a specific type of debt, the userneeds to have debt that type&apos;
NO_EXPLICIT_AMOUNT_TO_REPAY_ON_BEHALF = &apos;40&apos;; // &apos;To repay on behalf of a user anexplicit amount to repay is needed&apos;
NO_OUTSTANDING_STABLE_DEBT = &apos;41&apos;; // &apos;User does not have outstanding stable rate debt onthis reserve&apos;
NO_OUTSTANDING_VARIABLE_DEBT = &apos;42&apos;; // &apos;User does not have outstanding variable ratedebt on this reserve&apos;
UNDERLYING_BALANCE_ZERO = &apos;43&apos;; // &apos;The underlying balance needs to be greater than 0&apos;
INTEREST_RATE_REBALANCE_CONDITIONS_NOT_MET = &apos;44&apos;; // &apos;Interest rate rebalance conditionswere not met&apos;
HEALTH_FACTOR_NOT_BELOW_THRESHOLD = &apos;45&apos;; // &apos;Health factor is not below the threshold&apos;
COLLATERAL_CANNOT_BE_LIQUIDATED = &apos;46&apos;; // &apos;The collateral chosen cannot be liquidated&apos;
SPECIFIED_CURRENCY_NOT_BORROWED_BY_USER = &apos;47&apos;; // &apos;User did not borrow the specifiedcurrency&apos;
SAME_BLOCK_BORROW_REPAY = &apos;48&apos;; // &apos;Borrow and repay in same block is not allowed&apos;
INCONSISTENT_FLASHLOAN_PARAMS = &apos;49&apos;; // &apos;Inconsistent flashloan parameters&apos;
BORROW_CAP_EXCEEDED = &apos;50&apos;; // &apos;Borrow cap is exceeded&apos;
SUPPLY_CAP_EXCEEDED = &apos;51&apos;; // &apos;Supply cap is exceeded&apos;
UNBACKED_MINT_CAP_EXCEEDED = &apos;52&apos;; // &apos;Unbacked mint cap is exceeded&apos;
DEBT_CEILING_EXCEEDED = &apos;53&apos;; // &apos;Debt ceiling is exceeded&apos;
ATOKEN_SUPPLY_NOT_ZERO = &apos;54&apos;; // &apos;AToken supply is not zero&apos;
STABLE_DEBT_NOT_ZERO = &apos;55&apos;; // &apos;Stable debt supply is not zero&apos;
VARIABLE_DEBT_SUPPLY_NOT_ZERO = &apos;56&apos;; // &apos;Variable debt supply is not zero&apos;
LTV_VALIDATION_FAILED = &apos;57&apos;; // &apos;Ltv validation failed&apos;
INCONSISTENT_EMODE_CATEGORY = &apos;58&apos;; // &apos;Inconsistent eMode category&apos;
PRICE_ORACLE_SENTINEL_CHECK_FAILED = &apos;59&apos;; // &apos;Price oracle sentinel validation failed&apos;
ASSET_NOT_BORROWABLE_IN_ISOLATION = &apos;60&apos;; // &apos;Asset is not borrowable in isolation mode&apos;
RESERVE_ALREADY_INITIALIZED = &apos;61&apos;; // &apos;Reserve has already been initialized&apos;
USER_IN_ISOLATION_MODE = &apos;62&apos;; // &apos;User is in isolation mode&apos;
INVALID_LTV = &apos;63&apos;; // &apos;Invalid ltv parameter for the reserve&apos;
INVALID_LIQ_THRESHOLD = &apos;64&apos;; // &apos;Invalid liquidity threshold parameter for the reserve&apos;
INVALID_LIQ_BONUS = &apos;65&apos;; // &apos;Invalid liquidity bonus parameter for the reserve&apos;
INVALID_DECIMALS = &apos;66&apos;; // &apos;Invalid decimals parameter of the underlying asset of thereserve&apos;
INVALID_RESERVE_FACTOR = &apos;67&apos;; // &apos;Invalid reserve factor parameter for the reserve&apos;
INVALID_BORROW_CAP = &apos;68&apos;; // &apos;Invalid borrow cap for the reserve&apos;
INVALID_SUPPLY_CAP = &apos;69&apos;; // &apos;Invalid supply cap for the reserve&apos;
INVALID_LIQUIDATION_PROTOCOL_FEE = &apos;70&apos;; // &apos;Invalid liquidation protocol fee for thereserve&apos;
INVALID_EMODE_CATEGORY = &apos;71&apos;; // &apos;Invalid eMode category for the reserve&apos;
INVALID_UNBACKED_MINT_CAP = &apos;72&apos;; // &apos;Invalid unbacked mint cap for the reserve&apos;
INVALID_DEBT_CEILING = &apos;73&apos;; // &apos;Invalid debt ceiling for the reserve
INVALID_RESERVE_INDEX = &apos;74&apos;; // &apos;Invalid reserve index&apos;
ACL_ADMIN_CANNOT_BE_ZERO = &apos;75&apos;; // &apos;ACL admin cannot be set to the zero address&apos;
INCONSISTENT_PARAMS_LENGTH = &apos;76&apos;; // &apos;Array parameters that should be equal length arenot&apos;
ZERO_ADDRESS_NOT_VALID = &apos;77&apos;; // &apos;Zero address not valid&apos;
INVALID_EXPIRATION = &apos;78&apos;; // &apos;Invalid expiration&apos;
INVALID_SIGNATURE = &apos;79&apos;; // &apos;Invalid signature&apos;
OPERATION_NOT_SUPPORTED = &apos;80&apos;; // &apos;Operation not supported&apos;
DEBT_CEILING_NOT_ZERO = &apos;81&apos;; // &apos;Debt ceiling is not zero&apos;
ASSET_NOT_LISTED = &apos;82&apos;; // &apos;Asset is not listed&apos;
INVALID_OPTIMAL_USAGE_RATIO = &apos;83&apos;; // &apos;Invalid optimal usage ratio&apos;
INVALID_OPTIMAL_STABLE_TO_TOTAL_DEBT_RATIO = &apos;84&apos;; // &apos;Invalid optimal stable to totaldebt ratio&apos;
UNDERLYING_CANNOT_BE_RESCUED = &apos;85&apos;; // &apos;The underlying asset cannot be rescued&apos;
ADDRESSES_PROVIDER_ALREADY_ADDED = &apos;86&apos;; // &apos;Reserve has already been added to reservelist&apos;
POOL_ADDRESSES_DO_NOT_MATCH = &apos;87&apos;; // &apos;The token implementation pool address and thepool address provided by the initializing pool do not match&apos;
STABLE_BORROWING_ENABLED = &apos;88&apos;; // &apos;Stable borrowing is enabled&apos;
SILOED_BORROWING_VIOLATION = &apos;89&apos;; // &apos;User is trying to borrow multiple assets includinga siloed one&apos;
RESERVE_DEBT_NOT_ZERO = &apos;90&apos;; // the total debt of the reserve needs to be 0
"><code><span class="hljs-attr">CALLER_NOT_POOL_ADMIN</span> = <span class="hljs-string">'1'</span><span class="hljs-comment">; // 'The caller of the function is not a pool admin'</span>
<span class="hljs-attr">CALLER_NOT_EMERGENCY_ADMIN</span> = <span class="hljs-string">'2'</span><span class="hljs-comment">; // 'The caller of the function is not an emergencyadmin'</span>
<span class="hljs-attr">CALLER_NOT_POOL_OR_EMERGENCY_ADMIN</span> = <span class="hljs-string">'3'</span><span class="hljs-comment">; // 'The caller of the function is not a pool oremergency admin'</span>
<span class="hljs-attr">CALLER_NOT_RISK_OR_POOL_ADMIN</span> = <span class="hljs-string">'4'</span><span class="hljs-comment">; // 'The caller of the function is not a risk or pooladmin'</span>
<span class="hljs-attr">CALLER_NOT_ASSET_LISTING_OR_POOL_ADMIN</span> = <span class="hljs-string">'5'</span><span class="hljs-comment">; // 'The caller of the function is not anasset listing or pool admin'</span>
<span class="hljs-attr">CALLER_NOT_BRIDGE</span> = <span class="hljs-string">'6'</span><span class="hljs-comment">; // 'The caller of the function is not a bridge'</span>
<span class="hljs-attr">ADDRESSES_PROVIDER_NOT_REGISTERED</span> = <span class="hljs-string">'7'</span><span class="hljs-comment">; // 'Pool addresses provider is not registered'</span>
<span class="hljs-attr">INVALID_ADDRESSES_PROVIDER_ID</span> = <span class="hljs-string">'8'</span><span class="hljs-comment">; // 'Invalid id for the pool addresses provider'</span>
<span class="hljs-attr">NOT_CONTRACT</span> = <span class="hljs-string">'9'</span><span class="hljs-comment">; // 'Address is not a contract'</span>
<span class="hljs-attr">CALLER_NOT_POOL_CONFIGURATOR</span> = <span class="hljs-string">'10'</span><span class="hljs-comment">; // 'The caller of the function is not the poolconfigurator'</span>
<span class="hljs-attr">CALLER_NOT_ATOKEN</span> = <span class="hljs-string">'11'</span><span class="hljs-comment">; // 'The caller of the function is not an AToken'</span>
<span class="hljs-attr">INVALID_ADDRESSES_PROVIDER</span> = <span class="hljs-string">'12'</span><span class="hljs-comment">; // 'The address of the pool addresses provider isinvalid'</span>
<span class="hljs-attr">INVALID_FLASHLOAN_EXECUTOR_RETURN</span> = <span class="hljs-string">'13'</span><span class="hljs-comment">; // 'Invalid return value of the flashloanexecutor function'</span>
<span class="hljs-attr">RESERVE_ALREADY_ADDED</span> = <span class="hljs-string">'14'</span><span class="hljs-comment">; // 'Reserve has already been added to reserve list'</span>
<span class="hljs-attr">NO_MORE_RESERVES_ALLOWED</span> = <span class="hljs-string">'15'</span><span class="hljs-comment">; // 'Maximum amount of reserves in the pool reached'</span>
<span class="hljs-attr">EMODE_CATEGORY_RESERVED</span> = <span class="hljs-string">'16'</span><span class="hljs-comment">; // 'Zero eMode category is reserved for volatileheterogeneous assets'</span>
<span class="hljs-attr">INVALID_EMODE_CATEGORY_ASSIGNMENT</span> = <span class="hljs-string">'17'</span><span class="hljs-comment">; // 'Invalid eMode category assignment to asset'</span>
<span class="hljs-attr">RESERVE_LIQUIDITY_NOT_ZERO</span> = <span class="hljs-string">'18'</span><span class="hljs-comment">; // 'The liquidity of the reserve needs to be 0'</span>
<span class="hljs-attr">FLASHLOAN_PREMIUM_INVALID</span> = <span class="hljs-string">'19'</span><span class="hljs-comment">; // 'Invalid flashloan premium'</span>
<span class="hljs-attr">INVALID_RESERVE_PARAMS</span> = <span class="hljs-string">'20'</span><span class="hljs-comment">; // 'Invalid risk parameters for the reserve'</span>
<span class="hljs-attr">INVALID_EMODE_CATEGORY_PARAMS</span> = <span class="hljs-string">'21'</span><span class="hljs-comment">; // 'Invalid risk parameters for the eMode category'</span>
<span class="hljs-attr">BRIDGE_PROTOCOL_FEE_INVALID</span> = <span class="hljs-string">'22'</span><span class="hljs-comment">; // 'Invalid bridge protocol fee'</span>
<span class="hljs-attr">CALLER_MUST_BE_POOL</span> = <span class="hljs-string">'23'</span><span class="hljs-comment">; // 'The caller of this function must be a pool'</span>
<span class="hljs-attr">INVALID_MINT_AMOUNT</span> = <span class="hljs-string">'24'</span><span class="hljs-comment">; // 'Invalid amount to mint'</span>
<span class="hljs-attr">INVALID_BURN_AMOUNT</span> = <span class="hljs-string">'25'</span><span class="hljs-comment">; // 'Invalid amount to burn'</span>
<span class="hljs-attr">INVALID_AMOUNT</span> = <span class="hljs-string">'26'</span><span class="hljs-comment">; // 'Amount must be greater than 0'</span>
<span class="hljs-attr">RESERVE_INACTIVE</span> = <span class="hljs-string">'27'</span><span class="hljs-comment">; // 'Action requires an active reserve'</span>
<span class="hljs-attr">RESERVE_FROZEN</span> = <span class="hljs-string">'28'</span><span class="hljs-comment">; // 'Action cannot be performed because the reserve is frozen'</span>
<span class="hljs-attr">RESERVE_PAUSED</span> = <span class="hljs-string">'29'</span><span class="hljs-comment">; // 'Action cannot be performed because the reserve is paused'</span>
<span class="hljs-attr">BORROWING_NOT_ENABLED</span> = <span class="hljs-string">'30'</span><span class="hljs-comment">; // 'Borrowing is not enabled'</span>
<span class="hljs-attr">STABLE_BORROWING_NOT_ENABLED</span> = <span class="hljs-string">'31'</span><span class="hljs-comment">; // 'Stable borrowing is not enabled'</span>
<span class="hljs-attr">NOT_ENOUGH_AVAILABLE_USER_BALANCE</span> = <span class="hljs-string">'32'</span><span class="hljs-comment">; // 'User cannot withdraw more than theavailable balance'</span>
<span class="hljs-attr">INVALID_INTEREST_RATE_MODE_SELECTED</span> = <span class="hljs-string">'33'</span><span class="hljs-comment">; // 'Invalid interest rate mode selected'</span>
<span class="hljs-attr">COLLATERAL_BALANCE_IS_ZERO</span> = <span class="hljs-string">'34'</span><span class="hljs-comment">; // 'The collateral balance is 0'</span>
<span class="hljs-attr">HEALTH_FACTOR_LOWER_THAN_LIQUIDATION_THRESHOLD</span> = <span class="hljs-string">'35'</span><span class="hljs-comment">; // 'Health factor is lesser thanthe liquidation threshold'</span>
<span class="hljs-attr">COLLATERAL_CANNOT_COVER_NEW_BORROW</span> = <span class="hljs-string">'36'</span><span class="hljs-comment">; // 'There is not enough collateral to cover anew borrow'</span>
<span class="hljs-attr">COLLATERAL_SAME_AS_BORROWING_CURRENCY</span> = <span class="hljs-string">'37'</span><span class="hljs-comment">; // 'Collateral is (mostly) the samecurrency that is being borrowed'</span>
<span class="hljs-attr">AMOUNT_BIGGER_THAN_MAX_LOAN_SIZE_STABLE</span> = <span class="hljs-string">'38'</span><span class="hljs-comment">; // 'The requested amount is greater thanthe max loan size in stable rate mode'</span>
<span class="hljs-attr">NO_DEBT_OF_SELECTED_TYPE</span> = <span class="hljs-string">'39'</span><span class="hljs-comment">; // 'For repayment of a specific type of debt, the userneeds to have debt that type'</span>
<span class="hljs-attr">NO_EXPLICIT_AMOUNT_TO_REPAY_ON_BEHALF</span> = <span class="hljs-string">'40'</span><span class="hljs-comment">; // 'To repay on behalf of a user anexplicit amount to repay is needed'</span>
<span class="hljs-attr">NO_OUTSTANDING_STABLE_DEBT</span> = <span class="hljs-string">'41'</span><span class="hljs-comment">; // 'User does not have outstanding stable rate debt onthis reserve'</span>
<span class="hljs-attr">NO_OUTSTANDING_VARIABLE_DEBT</span> = <span class="hljs-string">'42'</span><span class="hljs-comment">; // 'User does not have outstanding variable ratedebt on this reserve'</span>
<span class="hljs-attr">UNDERLYING_BALANCE_ZERO</span> = <span class="hljs-string">'43'</span><span class="hljs-comment">; // 'The underlying balance needs to be greater than 0'</span>
<span class="hljs-attr">INTEREST_RATE_REBALANCE_CONDITIONS_NOT_MET</span> = <span class="hljs-string">'44'</span><span class="hljs-comment">; // 'Interest rate rebalance conditionswere not met'</span>
<span class="hljs-attr">HEALTH_FACTOR_NOT_BELOW_THRESHOLD</span> = <span class="hljs-string">'45'</span><span class="hljs-comment">; // 'Health factor is not below the threshold'</span>
<span class="hljs-attr">COLLATERAL_CANNOT_BE_LIQUIDATED</span> = <span class="hljs-string">'46'</span><span class="hljs-comment">; // 'The collateral chosen cannot be liquidated'</span>
<span class="hljs-attr">SPECIFIED_CURRENCY_NOT_BORROWED_BY_USER</span> = <span class="hljs-string">'47'</span><span class="hljs-comment">; // 'User did not borrow the specifiedcurrency'</span>
<span class="hljs-attr">SAME_BLOCK_BORROW_REPAY</span> = <span class="hljs-string">'48'</span><span class="hljs-comment">; // 'Borrow and repay in same block is not allowed'</span>
<span class="hljs-attr">INCONSISTENT_FLASHLOAN_PARAMS</span> = <span class="hljs-string">'49'</span><span class="hljs-comment">; // 'Inconsistent flashloan parameters'</span>
<span class="hljs-attr">BORROW_CAP_EXCEEDED</span> = <span class="hljs-string">'50'</span><span class="hljs-comment">; // 'Borrow cap is exceeded'</span>
<span class="hljs-attr">SUPPLY_CAP_EXCEEDED</span> = <span class="hljs-string">'51'</span><span class="hljs-comment">; // 'Supply cap is exceeded'</span>
<span class="hljs-attr">UNBACKED_MINT_CAP_EXCEEDED</span> = <span class="hljs-string">'52'</span><span class="hljs-comment">; // 'Unbacked mint cap is exceeded'</span>
<span class="hljs-attr">DEBT_CEILING_EXCEEDED</span> = <span class="hljs-string">'53'</span><span class="hljs-comment">; // 'Debt ceiling is exceeded'</span>
<span class="hljs-attr">ATOKEN_SUPPLY_NOT_ZERO</span> = <span class="hljs-string">'54'</span><span class="hljs-comment">; // 'AToken supply is not zero'</span>
<span class="hljs-attr">STABLE_DEBT_NOT_ZERO</span> = <span class="hljs-string">'55'</span><span class="hljs-comment">; // 'Stable debt supply is not zero'</span>
<span class="hljs-attr">VARIABLE_DEBT_SUPPLY_NOT_ZERO</span> = <span class="hljs-string">'56'</span><span class="hljs-comment">; // 'Variable debt supply is not zero'</span>
<span class="hljs-attr">LTV_VALIDATION_FAILED</span> = <span class="hljs-string">'57'</span><span class="hljs-comment">; // 'Ltv validation failed'</span>
<span class="hljs-attr">INCONSISTENT_EMODE_CATEGORY</span> = <span class="hljs-string">'58'</span><span class="hljs-comment">; // 'Inconsistent eMode category'</span>
<span class="hljs-attr">PRICE_ORACLE_SENTINEL_CHECK_FAILED</span> = <span class="hljs-string">'59'</span><span class="hljs-comment">; // 'Price oracle sentinel validation failed'</span>
<span class="hljs-attr">ASSET_NOT_BORROWABLE_IN_ISOLATION</span> = <span class="hljs-string">'60'</span><span class="hljs-comment">; // 'Asset is not borrowable in isolation mode'</span>
<span class="hljs-attr">RESERVE_ALREADY_INITIALIZED</span> = <span class="hljs-string">'61'</span><span class="hljs-comment">; // 'Reserve has already been initialized'</span>
<span class="hljs-attr">USER_IN_ISOLATION_MODE</span> = <span class="hljs-string">'62'</span><span class="hljs-comment">; // 'User is in isolation mode'</span>
<span class="hljs-attr">INVALID_LTV</span> = <span class="hljs-string">'63'</span><span class="hljs-comment">; // 'Invalid ltv parameter for the reserve'</span>
<span class="hljs-attr">INVALID_LIQ_THRESHOLD</span> = <span class="hljs-string">'64'</span><span class="hljs-comment">; // 'Invalid liquidity threshold parameter for the reserve'</span>
<span class="hljs-attr">INVALID_LIQ_BONUS</span> = <span class="hljs-string">'65'</span><span class="hljs-comment">; // 'Invalid liquidity bonus parameter for the reserve'</span>
<span class="hljs-attr">INVALID_DECIMALS</span> = <span class="hljs-string">'66'</span><span class="hljs-comment">; // 'Invalid decimals parameter of the underlying asset of thereserve'</span>
<span class="hljs-attr">INVALID_RESERVE_FACTOR</span> = <span class="hljs-string">'67'</span><span class="hljs-comment">; // 'Invalid reserve factor parameter for the reserve'</span>
<span class="hljs-attr">INVALID_BORROW_CAP</span> = <span class="hljs-string">'68'</span><span class="hljs-comment">; // 'Invalid borrow cap for the reserve'</span>
<span class="hljs-attr">INVALID_SUPPLY_CAP</span> = <span class="hljs-string">'69'</span><span class="hljs-comment">; // 'Invalid supply cap for the reserve'</span>
<span class="hljs-attr">INVALID_LIQUIDATION_PROTOCOL_FEE</span> = <span class="hljs-string">'70'</span><span class="hljs-comment">; // 'Invalid liquidation protocol fee for thereserve'</span>
<span class="hljs-attr">INVALID_EMODE_CATEGORY</span> = <span class="hljs-string">'71'</span><span class="hljs-comment">; // 'Invalid eMode category for the reserve'</span>
<span class="hljs-attr">INVALID_UNBACKED_MINT_CAP</span> = <span class="hljs-string">'72'</span><span class="hljs-comment">; // 'Invalid unbacked mint cap for the reserve'</span>
<span class="hljs-attr">INVALID_DEBT_CEILING</span> = <span class="hljs-string">'73'</span><span class="hljs-comment">; // 'Invalid debt ceiling for the reserve</span>
<span class="hljs-attr">INVALID_RESERVE_INDEX</span> = <span class="hljs-string">'74'</span><span class="hljs-comment">; // 'Invalid reserve index'</span>
<span class="hljs-attr">ACL_ADMIN_CANNOT_BE_ZERO</span> = <span class="hljs-string">'75'</span><span class="hljs-comment">; // 'ACL admin cannot be set to the zero address'</span>
<span class="hljs-attr">INCONSISTENT_PARAMS_LENGTH</span> = <span class="hljs-string">'76'</span><span class="hljs-comment">; // 'Array parameters that should be equal length arenot'</span>
<span class="hljs-attr">ZERO_ADDRESS_NOT_VALID</span> = <span class="hljs-string">'77'</span><span class="hljs-comment">; // 'Zero address not valid'</span>
<span class="hljs-attr">INVALID_EXPIRATION</span> = <span class="hljs-string">'78'</span><span class="hljs-comment">; // 'Invalid expiration'</span>
<span class="hljs-attr">INVALID_SIGNATURE</span> = <span class="hljs-string">'79'</span><span class="hljs-comment">; // 'Invalid signature'</span>
<span class="hljs-attr">OPERATION_NOT_SUPPORTED</span> = <span class="hljs-string">'80'</span><span class="hljs-comment">; // 'Operation not supported'</span>
<span class="hljs-attr">DEBT_CEILING_NOT_ZERO</span> = <span class="hljs-string">'81'</span><span class="hljs-comment">; // 'Debt ceiling is not zero'</span>
<span class="hljs-attr">ASSET_NOT_LISTED</span> = <span class="hljs-string">'82'</span><span class="hljs-comment">; // 'Asset is not listed'</span>
<span class="hljs-attr">INVALID_OPTIMAL_USAGE_RATIO</span> = <span class="hljs-string">'83'</span><span class="hljs-comment">; // 'Invalid optimal usage ratio'</span>
<span class="hljs-attr">INVALID_OPTIMAL_STABLE_TO_TOTAL_DEBT_RATIO</span> = <span class="hljs-string">'84'</span><span class="hljs-comment">; // 'Invalid optimal stable to totaldebt ratio'</span>
<span class="hljs-attr">UNDERLYING_CANNOT_BE_RESCUED</span> = <span class="hljs-string">'85'</span><span class="hljs-comment">; // 'The underlying asset cannot be rescued'</span>
<span class="hljs-attr">ADDRESSES_PROVIDER_ALREADY_ADDED</span> = <span class="hljs-string">'86'</span><span class="hljs-comment">; // 'Reserve has already been added to reservelist'</span>
<span class="hljs-attr">POOL_ADDRESSES_DO_NOT_MATCH</span> = <span class="hljs-string">'87'</span><span class="hljs-comment">; // 'The token implementation pool address and thepool address provided by the initializing pool do not match'</span>
<span class="hljs-attr">STABLE_BORROWING_ENABLED</span> = <span class="hljs-string">'88'</span><span class="hljs-comment">; // 'Stable borrowing is enabled'</span>
<span class="hljs-attr">SILOED_BORROWING_VIOLATION</span> = <span class="hljs-string">'89'</span><span class="hljs-comment">; // 'User is trying to borrow multiple assets includinga siloed one'</span>
<span class="hljs-attr">RESERVE_DEBT_NOT_ZERO</span> = <span class="hljs-string">'90'</span><span class="hljs-comment">; // the total debt of the reserve needs to be 0</span>
</code></pre>]]></content:encoded>
            <author>unfrigginbelievable@newsletter.paragraph.com (unfrigginbelievable)</author>
        </item>
    </channel>
</rss>