{
  "types": {
    "CallOf": "Call",
    "DispatchTime": {
      "type": "enum",
      "type_mapping": [
        [
          "At",
          "BlockNumber"
        ],
        [
          "After",
          "BlockNumber"
        ]
      ]
    },
    "ScheduleTaskIndex": "u32",
    "DelayedOrigin": {
      "type": "struct",
      "type_mapping": [
        [
          "delay",
          "BlockNumber"
        ],
        [
          "origin",
          "PalletsOrigin"
        ]
      ]
    },
    "AuthorityOrigin": "DelayedOrigin",
    "StorageValue": "Vec<u8>",
    "GraduallyUpdate": {
      "type": "struct",
      "type_mapping": [
        [
          "key",
          "StorageKey"
        ],
        [
          "targetValue",
          "StorageValue"
        ],
        [
          "perBlock",
          "StorageValue"
        ]
      ]
    },
    "StorageKeyBytes": "Vec<u8>",
    "StorageValueBytes": "Vec<u8>",
    "RpcDataProviderId": "Text",
    "DataProviderId": "u8",
    "TimestampedValue": {
      "type": "struct",
      "type_mapping": [
        [
          "value",
          "OracleValue"
        ],
        [
          "timestamp",
          "Moment"
        ]
      ]
    },
    "TimestampedValueOf": "TimestampedValue",
    "OrderedSet": "Vec<AccountId>",
    "OrmlAccountData": {
      "type": "struct",
      "type_mapping": [
        [
          "free",
          "Balance"
        ],
        [
          "frozen",
          "Balance"
        ],
        [
          "reserved",
          "Balance"
        ]
      ]
    },
    "OrmlBalanceLock": {
      "type": "struct",
      "type_mapping": [
        [
          "amount",
          "Balance"
        ],
        [
          "id",
          "LockIdentifier"
        ]
      ]
    },
    "AuctionInfo": {
      "type": "struct",
      "type_mapping": [
        [
          "bid",
          "Option<(AccountId, Balance)>"
        ],
        [
          "start",
          "BlockNumber"
        ],
        [
          "end",
          "Option<BlockNumber>"
        ]
      ]
    },
    "DelayedDispatchTime": {
      "type": "enum",
      "type_mapping": [
        [
          "At",
          "BlockNumber"
        ],
        [
          "After",
          "BlockNumber"
        ]
      ]
    },
    "DispatchId": "u32",
    "Price": "FixedU128",
    "OrmlVestingSchedule": {
      "type": "struct",
      "type_mapping": [
        [
          "start",
          "BlockNumber"
        ],
        [
          "period",
          "BlockNumber"
        ],
        [
          "periodCount",
          "u32"
        ],
        [
          "perPeriod",
          "Compact<Balance>"
        ]
      ]
    },
    "VestingScheduleOf": "OrmlVestingSchedule",
    "PoolInfo": {
      "type": "struct",
      "type_mapping": [
        [
          "totalShares",
          "Compact<Share>"
        ],
        [
          "totalRewards",
          "Compact<Balance>"
        ],
        [
          "totalWithdrawnRewards",
          "Compact<Balance>"
        ]
      ]
    },
    "Share": "u128",
    "OracleValue": "Price",
    "PalletBalanceOf": "Balance",
    "CollateralAuctionItem": {
      "type": "struct",
      "type_mapping": [
        [
          "refundRecipient",
          "AccountId"
        ],
        [
          "currencyId",
          "CurrencyId"
        ],
        [
          "initialAmount",
          "Compact<Balance>"
        ],
        [
          "amount",
          "Compact<Balance>"
        ],
        [
          "target",
          "Compact<Balance>"
        ],
        [
          "startTime",
          "BlockNumber"
        ]
      ]
    },
    "DebitAuctionItem": {
      "type": "struct",
      "type_mapping": [
        [
          "initialAmount",
          "Compact<Balance>"
        ],
        [
          "amount",
          "Compact<Balance>"
        ],
        [
          "fix",
          "Compact<Balance>"
        ],
        [
          "startTime",
          "BlockNumber"
        ]
      ]
    },
    "SurplusAuctionItem": {
      "type": "struct",
      "type_mapping": [
        [
          "amount",
          "Compact<Balance>"
        ],
        [
          "startTime",
          "BlockNumber"
        ]
      ]
    },
    "Exchange": {
      "type": "enum",
      "value_list": [
        "Auction",
        "Exchange"
      ]
    },
    "OptionRate": "Option<Rate>",
    "OptionRatio": "Option<Ratio>",
    "ChangeOptionRate": {
      "type": "enum",
      "type_mapping": [
        [
          "NoChange",
          "Null"
        ],
        [
          "NewValue",
          "OptionRate"
        ]
      ]
    },
    "ChangeOptionRatio": {
      "type": "enum",
      "type_mapping": [
        [
          "NoChange",
          "Null"
        ],
        [
          "NewValue",
          "OptionRatio"
        ]
      ]
    },
    "ChangeBalance": {
      "type": "enum",
      "type_mapping": [
        [
          "NoChange",
          "Null"
        ],
        [
          "NewValue",
          "Balance"
        ]
      ]
    },
    "RiskManagementParams": {
      "type": "struct",
      "type_mapping": [
        [
          "maximumTotalDebitValue",
          "Balance"
        ],
        [
          "interestRatePerSec",
          "Option<Rate>"
        ],
        [
          "liquidationRatio",
          "Option<Rate>"
        ],
        [
          "liquidationPenalty",
          "Option<Rate>"
        ],
        [
          "requiredCollateralRatio",
          "Option<Rate>"
        ]
      ]
    },
    "CandidateInfoOf": "CandidateInfo",
    "TradingPairProvisionParameters": {
      "type": "struct",
      "type_mapping": [
        [
          "minContribution",
          "(Balance, Balance)"
        ],
        [
          "targetProvision",
          "(Balance, Balance)"
        ],
        [
          "accumulatedProvision",
          "(Balance, Balance)"
        ],
        [
          "notBefore",
          "BlockNumber"
        ]
      ]
    },
    "BalanceWrapper": {
      "type": "struct",
      "type_mapping": [
        [
          "amount",
          "Balance"
        ]
      ]
    },
    "BalanceRequest": {
      "type": "struct",
      "type_mapping": [
        [
          "amount",
          "Balance"
        ]
      ]
    },
    "TradingPairStatus": {
      "type": "enum",
      "type_mapping": [
        [
          "NotEnabled",
          "Null"
        ],
        [
          "Provisioning",
          "TradingPairProvisionParameters"
        ],
        [
          "Enabled",
          "Null"
        ]
      ]
    },
    "Erc20Info": {
      "type": "struct",
      "type_mapping": [
        [
          "address",
          "EvmAddress"
        ],
        [
          "name",
          "Vec<u8>"
        ],
        [
          "symbol",
          "Vec<u8>"
        ],
        [
          "decimals",
          "u8"
        ]
      ]
    },
    "EstimateResourcesResponse": {
      "type": "struct",
      "type_mapping": [
        [
          "gas",
          "u256"
        ],
        [
          "storage",
          "i32"
        ],
        [
          "weightFee",
          "u256"
        ]
      ]
    },
    "EvmAccountInfo": {
      "type": "struct",
      "type_mapping": [
        [
          "nonce",
          "Index"
        ],
        [
          "contractInfo",
          "Option<EvmContractInfo>"
        ]
      ]
    },
    "CodeInfo": {
      "type": "struct",
      "type_mapping": [
        [
          "codeSize",
          "u32"
        ],
        [
          "refCount",
          "u32"
        ]
      ]
    },
    "EvmContractInfo": {
      "type": "struct",
      "type_mapping": [
        [
          "codeHash",
          "H256"
        ],
        [
          "maintainer",
          "H160"
        ],
        [
          "deployed",
          "bool"
        ]
      ]
    },
    "EvmAddress": "H160",
    "CallRequest": {
      "type": "struct",
      "type_mapping": [
        [
          "from",
          "Option<H160>"
        ],
        [
          "to",
          "Option<H160>"
        ],
        [
          "gasLimit",
          "Option<u32>"
        ],
        [
          "storageLimit",
          "Option<u32>"
        ],
        [
          "value",
          "Option<U128>"
        ],
        [
          "data",
          "Option<Bytes>"
        ]
      ]
    },
    "RedeemStrategy": {
      "type": "enum",
      "type_mapping": [
        [
          "Immediately",
          "Null"
        ],
        [
          "Target",
          "EraIndex"
        ],
        [
          "WaitForUnbonding",
          "Null"
        ]
      ]
    },
    "RelaychainAccountId": "AccountId",
    "SlashInfo": {
      "type": "struct",
      "type_mapping": [
        [
          "validator",
          "RelaychainAccountId"
        ],
        [
          "relaychainTokenAmount",
          "Balance"
        ]
      ]
    },
    "ValidatorBacking": {
      "type": "struct",
      "type_mapping": [
        [
          "totalInsurance",
          "Balance"
        ],
        [
          "isFrozen",
          "bool"
        ]
      ]
    },
    "Guarantee": {
      "type": "struct",
      "type_mapping": [
        [
          "total",
          "Balance"
        ],
        [
          "bonded",
          "Balance"
        ],
        [
          "unbonding",
          "Option<(Balance, BlockNumber)>"
        ]
      ]
    },
    "PoolId": {
      "type": "enum",
      "type_mapping": [
        [
          "LoansIncentive",
          "CurrencyId"
        ],
        [
          "DexIncentive",
          "CurrencyId"
        ],
        [
          "HomaIncentive",
          "Null"
        ],
        [
          "DexSaving",
          "CurrencyId"
        ],
        [
          "HomaValidatorAllowance",
          "AccountId"
        ]
      ]
    },
    "Position": {
      "type": "struct",
      "type_mapping": [
        [
          "collateral",
          "Balance"
        ],
        [
          "debit",
          "Balance"
        ]
      ]
    },
    "CID": "Vec<u8>",
    "Attributes": "BTreeMap<Vec<u8>, Vec<u8>>",
    "TokenInfoOf": {
      "type": "struct",
      "type_mapping": [
        [
          "metadata",
          "CID"
        ],
        [
          "owner",
          "AccountId"
        ],
        [
          "data",
          "TokenData"
        ]
      ]
    },
    "Properties": {
      "type": "struct",
      "type_mapping": [
        [
          "_set",
          {
            "_bitLength": 8,
            "Transferable": 1,
            "Burnable": 2,
            "Mintable": 4,
            "ClassPropertiesMutable": 8
          }
        ]
      ]
    },
    "ClassData": {
      "type": "struct",
      "type_mapping": [
        [
          "deposit",
          "Balance"
        ],
        [
          "properties",
          "Properties"
        ],
        [
          "attributes",
          "Attributes"
        ]
      ]
    },
    "TokenData": {
      "type": "struct",
      "type_mapping": [
        [
          "deposit",
          "Balance"
        ],
        [
          "attributes",
          "Attributes"
        ]
      ]
    },
    "TokenId": "u64",
    "TokenIdOf": "TokenId",
    "NFTClassId": "u32",
    "ClassIdOf": "ClassId",
    "NFTBalance": "u128",
    "NFTBalanceOf": "NFTBalance",
    "ClassInfoOf": {
      "type": "struct",
      "type_mapping": [
        [
          "metadata",
          "CID"
        ],
        [
          "totalIssuance",
          "TokenId"
        ],
        [
          "owner",
          "AccountId"
        ],
        [
          "data",
          "ClassData"
        ]
      ]
    },
    "NomineeId": "AccountId",
    "HomaUnlockChunk": {
      "type": "struct",
      "type_mapping": [
        [
          "value",
          "Balance"
        ],
        [
          "era",
          "EraIndex"
        ]
      ]
    },
    "BondingLedger": {
      "type": "struct",
      "type_mapping": [
        [
          "total",
          "Balance"
        ],
        [
          "active",
          "Balance"
        ],
        [
          "unlocking",
          "Vec<HomaUnlockChunk>"
        ]
      ]
    },
    "Amount": "i128",
    "AmountOf": "Amount",
    "AuctionId": "u32",
    "AuctionIdOf": "AuctionId",
    "TokenSymbol": {
      "type": "enum",
      "value_list": {
        "ACA": 0,
        "AUSD": 1,
        "DOT": 2,
        "LDOT": 3,
        "RENBTC": 4,
        "KAR": 128,
        "KUSD": 129,
        "KSM": 130,
        "LKSM": 131,
        "CASH": 140
      }
    },
    "DexShare": {
      "type": "enum",
      "type_mapping": [
        [
          "Token",
          "TokenSymbol"
        ],
        [
          "Erc20",
          "EvmAddress"
        ]
      ]
    },
    "CurrencyId": {
      "type": "enum",
      "type_mapping": [
        [
          "Token",
          "TokenSymbol"
        ],
        [
          "DEXShare",
          "(DexShare, DexShare)"
        ],
        [
          "ERC20",
          "EvmAddress"
        ],
        [
          "ChainSafe",
          "[u8; 32]"
        ]
      ]
    },
    "CurrencyIdOf": "CurrencyId",
    "ACA": {
      "type": "enum",
      "value_list": [
        "KAR",
        "ACA"
      ]
    },
    "TreasuryReserve": {
      "type": "enum",
      "value_list": [
        "Root",
        "Treasury",
        "HonzonTreasury",
        "HomaTreasury",
        "TreasuryReserve"
      ]
    },
    "Band": {
      "type": "enum",
      "value_list": [
        "Aggregated",
        "Acala",
        "Band"
      ]
    },
    "TradingPair": "(CurrencyId,  CurrencyId)",
    "OracleKey": "CurrencyId",
    "AsOriginId": "AuthoritysOriginId",
    "Loan": {
      "type": "enum",
      "value_list": [
        "Any",
        "CancelProxy",
        "Governance",
        "Auction",
        "Swap",
        "Loan"
      ]
    },
    "SubAccountStatus": {
      "type": "struct",
      "type_mapping": [
        [
          "bonded",
          "Balance"
        ],
        [
          "available",
          "Balance"
        ],
        [
          "unbonding",
          "Vec<(EraIndex,Balance)>"
        ],
        [
          "mockRewardRate",
          "Rate"
        ]
      ]
    },
    "Params": {
      "type": "struct",
      "type_mapping": [
        [
          "targetMaxFreeUnbondedRatio",
          "Ratio"
        ],
        [
          "targetMinFreeUnbondedRatio",
          "Ratio"
        ],
        [
          "targetUnbondingToFreeRatio",
          "Ratio"
        ],
        [
          "unbondingToFreeAdjustment",
          "Ratio"
        ],
        [
          "baseFeeRate",
          "Rate"
        ]
      ]
    },
    "Finished": {
      "type": "enum",
      "value_list": [
        "Started",
        "RelaychainUpdated",
        "LedgerUpdated",
        "Finished"
      ]
    },
    "Ledger": {
      "type": "struct",
      "type_mapping": [
        [
          "bonded",
          "Balance"
        ],
        [
          "unbondingToFree",
          "Balance"
        ],
        [
          "freePool",
          "Balance"
        ],
        [
          "toUnbondNextEra",
          "(Balance, Balance)"
        ]
      ]
    },
    "ChangeRate": {
      "type": "enum",
      "type_mapping": [
        [
          "NoChange",
          "Null"
        ],
        [
          "NewValue",
          "Rate"
        ]
      ]
    },
    "ChangeRatio": {
      "type": "enum",
      "type_mapping": [
        [
          "NoChange",
          "Null"
        ],
        [
          "NewValue",
          "Ratio"
        ]
      ]
    },
    "BalanceInfo": {
      "type": "struct",
      "type_mapping": [
        [
          "amount",
          "Balance"
        ]
      ]
    },
    "PolkadotAccountId": "AccountId",
    "PolkadotAccountIdOf": "PolkadotAccountId",
    "ExchangeRate": "FixedU128",
    "Rate": "FixedU128",
    "Ratio": "FixedU128",
    "PublicKey": "[u8; 20]",
    "DestAddress": "Vec<u8>",
    "DepositNonce": "u64",
    "ResourceId": "[u8; 32]",
    "ChainId": "u8",
    "Keys": "SessionKeys1",
    "runtime_common::check_nonce::CheckNonce": "Compact<u32>"
  }
}
