Skip to content

Could not validate Abi #15

@kaleb-keny

Description

@kaleb-keny

I can't seem to be able to upload the below functions type abi

[
  {
    "name": "facets",
    "type": "function",
    "stateMutability": "pure",
    "inputs": [],
    "outputs": [
      {
        "type": "tuple[]",
        "components": [
          {
            "type": "address",
            "name": "facetAddress"
          },
          {
            "type": "bytes4[]",
            "name": "functionSelectors"
          }
        ]
      }
    ]
  },
  {
    "name": "facetFunctionSelectors",
    "type": "function",
    "stateMutability": "pure",
    "inputs": [
      {
        "type": "address",
        "name": "facet"
      }
    ],
    "outputs": [
      {
        "type": "bytes4[]",
        "name": "functionSelectors"
      }
    ]
  },
  {
    "name": "facetAddresses",
    "type": "function",
    "stateMutability": "pure",
    "inputs": [],
    "outputs": [
      {
        "type": "address[]",
        "name": "addresses"
      }
    ]
  },
  {
    "name": "facetAddress",
    "type": "function",
    "stateMutability": "pure",
    "inputs": [
      {
        "type": "bytes4",
        "name": "functionSelector"
      }
    ],
    "outputs": [
      {
        "type": "address"
      }
    ]
  },
  {
    "name": "emitDiamondCutEvent",
    "type": "function",
    "stateMutability": "nonpayable",
    "inputs": [],
    "outputs": [
      {
        "type": "bool"
      }
    ]
  },
  {
    "inputs": [],
    "name": "createAccount",
    "outputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "requestedAccountId",
        "type": "uint128"
      }
    ],
    "name": "createAccount",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "getAccountLastInteraction",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "getAccountOwner",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "getAccountPermissions",
    "outputs": [
      {
        "components": [
          {
            "internalType": "address",
            "name": "user",
            "type": "address"
          },
          {
            "internalType": "bytes32[]",
            "name": "permissions",
            "type": "bytes32[]"
          }
        ],
        "internalType": "struct IAccountModule.AccountPermissions[]",
        "name": "accountPerms",
        "type": "tuple[]"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "getAccountTokenAddress",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      },
      {
        "internalType": "bytes32",
        "name": "permission",
        "type": "bytes32"
      },
      {
        "internalType": "address",
        "name": "user",
        "type": "address"
      }
    ],
    "name": "grantPermission",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      },
      {
        "internalType": "bytes32",
        "name": "permission",
        "type": "bytes32"
      },
      {
        "internalType": "address",
        "name": "user",
        "type": "address"
      }
    ],
    "name": "hasPermission",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      },
      {
        "internalType": "bytes32",
        "name": "permission",
        "type": "bytes32"
      },
      {
        "internalType": "address",
        "name": "user",
        "type": "address"
      }
    ],
    "name": "isAuthorized",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "notifyAccountTransfer",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      },
      {
        "internalType": "bytes32",
        "name": "permission",
        "type": "bytes32"
      }
    ],
    "name": "renouncePermission",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      },
      {
        "internalType": "bytes32",
        "name": "permission",
        "type": "bytes32"
      },
      {
        "internalType": "address",
        "name": "user",
        "type": "address"
      }
    ],
    "name": "revokePermission",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "id",
        "type": "bytes32"
      }
    ],
    "name": "getAssociatedSystem",
    "outputs": [
      {
        "internalType": "address",
        "name": "addr",
        "type": "address"
      },
      {
        "internalType": "bytes32",
        "name": "kind",
        "type": "bytes32"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "id",
        "type": "bytes32"
      },
      {
        "internalType": "string",
        "name": "name",
        "type": "string"
      },
      {
        "internalType": "string",
        "name": "symbol",
        "type": "string"
      },
      {
        "internalType": "string",
        "name": "uri",
        "type": "string"
      },
      {
        "internalType": "address",
        "name": "impl",
        "type": "address"
      }
    ],
    "name": "initOrUpgradeNft",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "id",
        "type": "bytes32"
      },
      {
        "internalType": "string",
        "name": "name",
        "type": "string"
      },
      {
        "internalType": "string",
        "name": "symbol",
        "type": "string"
      },
      {
        "internalType": "uint8",
        "name": "decimals",
        "type": "uint8"
      },
      {
        "internalType": "address",
        "name": "impl",
        "type": "address"
      }
    ],
    "name": "initOrUpgradeToken",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "id",
        "type": "bytes32"
      },
      {
        "internalType": "address",
        "name": "endpoint",
        "type": "address"
      }
    ],
    "name": "registerUnmanagedSystem",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "acceptOwnership",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "getImplementation",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "newNominatedOwner",
        "type": "address"
      }
    ],
    "name": "nominateNewOwner",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "nominatedOwner",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "owner",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "renounceNomination",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "newImplementation",
        "type": "address"
      }
    ],
    "name": "simulateUpgradeTo",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "newImplementation",
        "type": "address"
      }
    ],
    "name": "upgradeTo",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "requestedMarketId",
        "type": "uint128"
      },
      {
        "internalType": "string",
        "name": "marketName",
        "type": "string"
      },
      {
        "internalType": "string",
        "name": "marketSymbol",
        "type": "string"
      }
    ],
    "name": "createMarket",
    "outputs": [
      {
        "internalType": "uint128",
        "name": "",
        "type": "uint128"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "contract ISynthetixSystem",
        "name": "synthetix",
        "type": "address"
      },
      {
        "internalType": "contract ISpotMarketSystem",
        "name": "spotMarket",
        "type": "address"
      }
    ],
    "name": "initializeFactory",
    "outputs": [
      {
        "internalType": "uint128",
        "name": "",
        "type": "uint128"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "interestRate",
    "outputs": [
      {
        "internalType": "uint128",
        "name": "",
        "type": "uint128"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "perpsMarketId",
        "type": "uint128"
      }
    ],
    "name": "minimumCredit",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "perpsMarketId",
        "type": "uint128"
      }
    ],
    "name": "name",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "perpsMarketId",
        "type": "uint128"
      }
    ],
    "name": "reportedDebt",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "string",
        "name": "marketName",
        "type": "string"
      }
    ],
    "name": "setPerpsMarketName",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes4",
        "name": "interfaceId",
        "type": "bytes4"
      }
    ],
    "name": "supportsInterface",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "utilizationRate",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "rate",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "delegatedCollateral",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "lockedCredit",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "debt",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "accountDebt",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "getAccountCollateralIds",
    "outputs": [
      {
        "internalType": "uint256[]",
        "name": "",
        "type": "uint256[]"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "getAccountOpenPositions",
    "outputs": [
      {
        "internalType": "uint256[]",
        "name": "",
        "type": "uint256[]"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "getAvailableMargin",
    "outputs": [
      {
        "internalType": "int256",
        "name": "availableMargin",
        "type": "int256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      },
      {
        "internalType": "uint128",
        "name": "collateralId",
        "type": "uint128"
      }
    ],
    "name": "getCollateralAmount",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      },
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "getOpenPosition",
    "outputs": [
      {
        "internalType": "int256",
        "name": "totalPnl",
        "type": "int256"
      },
      {
        "internalType": "int256",
        "name": "accruedFunding",
        "type": "int256"
      },
      {
        "internalType": "int128",
        "name": "positionSize",
        "type": "int128"
      },
      {
        "internalType": "uint256",
        "name": "owedInterest",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      },
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "getOpenPositionSize",
    "outputs": [
      {
        "internalType": "int128",
        "name": "positionSize",
        "type": "int128"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "getRequiredMargins",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "requiredInitialMargin",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "requiredMaintenanceMargin",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxLiquidationReward",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "getWithdrawableMargin",
    "outputs": [
      {
        "internalType": "int256",
        "name": "withdrawableMargin",
        "type": "int256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      },
      {
        "internalType": "uint128",
        "name": "collateralId",
        "type": "uint128"
      },
      {
        "internalType": "int256",
        "name": "amountDelta",
        "type": "int256"
      }
    ],
    "name": "modifyCollateral",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      },
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "payDebt",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "totalAccountOpenInterest",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "totalCollateralValue",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "currentFundingRate",
    "outputs": [
      {
        "internalType": "int256",
        "name": "",
        "type": "int256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "currentFundingVelocity",
    "outputs": [
      {
        "internalType": "int256",
        "name": "",
        "type": "int256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "int128",
        "name": "orderSize",
        "type": "int128"
      },
      {
        "internalType": "uint256",
        "name": "price",
        "type": "uint256"
      }
    ],
    "name": "fillPrice",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "getMarketSummary",
    "outputs": [
      {
        "components": [
          {
            "internalType": "int256",
            "name": "skew",
            "type": "int256"
          },
          {
            "internalType": "uint256",
            "name": "size",
            "type": "uint256"
          },
          {
            "internalType": "uint256",
            "name": "maxOpenInterest",
            "type": "uint256"
          },
          {
            "internalType": "int256",
            "name": "currentFundingRate",
            "type": "int256"
          },
          {
            "internalType": "int256",
            "name": "currentFundingVelocity",
            "type": "int256"
          },
          {
            "internalType": "uint256",
            "name": "indexPrice",
            "type": "uint256"
          }
        ],
        "internalType": "struct IPerpsMarketModule.MarketSummary",
        "name": "summary",
        "type": "tuple"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "indexPrice",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "maxOpenInterest",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "metadata",
    "outputs": [
      {
        "internalType": "string",
        "name": "name",
        "type": "string"
      },
      {
        "internalType": "string",
        "name": "symbol",
        "type": "string"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "size",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "skew",
    "outputs": [
      {
        "internalType": "int256",
        "name": "",
        "type": "int256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "components": [
          {
            "internalType": "uint128",
            "name": "marketId",
            "type": "uint128"
          },
          {
            "internalType": "uint128",
            "name": "accountId",
            "type": "uint128"
          },
          {
            "internalType": "int128",
            "name": "sizeDelta",
            "type": "int128"
          },
          {
            "internalType": "uint128",
            "name": "settlementStrategyId",
            "type": "uint128"
          },
          {
            "internalType": "uint256",
            "name": "acceptablePrice",
            "type": "uint256"
          },
          {
            "internalType": "bytes32",
            "name": "trackingCode",
            "type": "bytes32"
          },
          {
            "internalType": "address",
            "name": "referrer",
            "type": "address"
          }
        ],
        "internalType": "struct AsyncOrder.OrderCommitmentRequest",
        "name": "commitment",
        "type": "tuple"
      }
    ],
    "name": "commitOrder",
    "outputs": [
      {
        "components": [
          {
            "internalType": "uint256",
            "name": "commitmentTime",
            "type": "uint256"
          },
          {
            "components": [
              {
                "internalType": "uint128",
                "name": "marketId",
                "type": "uint128"
              },
              {
                "internalType": "uint128",
                "name": "accountId",
                "type": "uint128"
              },
              {
                "internalType": "int128",
                "name": "sizeDelta",
                "type": "int128"
              },
              {
                "internalType": "uint128",
                "name": "settlementStrategyId",
                "type": "uint128"
              },
              {
                "internalType": "uint256",
                "name": "acceptablePrice",
                "type": "uint256"
              },
              {
                "internalType": "bytes32",
                "name": "trackingCode",
                "type": "bytes32"
              },
              {
                "internalType": "address",
                "name": "referrer",
                "type": "address"
              }
            ],
            "internalType": "struct AsyncOrder.OrderCommitmentRequest",
            "name": "request",
            "type": "tuple"
          }
        ],
        "internalType": "struct AsyncOrder.Data",
        "name": "retOrder",
        "type": "tuple"
      },
      {
        "internalType": "uint256",
        "name": "fees",
        "type": "uint256"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "int128",
        "name": "sizeDelta",
        "type": "int128"
      }
    ],
    "name": "computeOrderFees",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "orderFees",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "fillPrice",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "int128",
        "name": "sizeDelta",
        "type": "int128"
      },
      {
        "internalType": "uint256",
        "name": "price",
        "type": "uint256"
      }
    ],
    "name": "computeOrderFeesWithPrice",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "orderFees",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "fillPrice",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "getOrder",
    "outputs": [
      {
        "components": [
          {
            "internalType": "uint256",
            "name": "commitmentTime",
            "type": "uint256"
          },
          {
            "components": [
              {
                "internalType": "uint128",
                "name": "marketId",
                "type": "uint128"
              },
              {
                "internalType": "uint128",
                "name": "accountId",
                "type": "uint128"
              },
              {
                "internalType": "int128",
                "name": "sizeDelta",
                "type": "int128"
              },
              {
                "internalType": "uint128",
                "name": "settlementStrategyId",
                "type": "uint128"
              },
              {
                "internalType": "uint256",
                "name": "acceptablePrice",
                "type": "uint256"
              },
              {
                "internalType": "bytes32",
                "name": "trackingCode",
                "type": "bytes32"
              },
              {
                "internalType": "address",
                "name": "referrer",
                "type": "address"
              }
            ],
            "internalType": "struct AsyncOrder.OrderCommitmentRequest",
            "name": "request",
            "type": "tuple"
          }
        ],
        "internalType": "struct AsyncOrder.Data",
        "name": "order",
        "type": "tuple"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "uint128",
        "name": "settlementStrategyId",
        "type": "uint128"
      }
    ],
    "name": "getSettlementRewardCost",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      },
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "int128",
        "name": "sizeDelta",
        "type": "int128"
      }
    ],
    "name": "requiredMarginForOrder",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "requiredMargin",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      },
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "int128",
        "name": "sizeDelta",
        "type": "int128"
      },
      {
        "internalType": "uint256",
        "name": "price",
        "type": "uint256"
      }
    ],
    "name": "requiredMarginForOrderWithPrice",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "requiredMargin",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "settleOrder",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "cancelOrder",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "feature",
        "type": "bytes32"
      },
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "addToFeatureFlagAllowlist",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "feature",
        "type": "bytes32"
      }
    ],
    "name": "getDeniers",
    "outputs": [
      {
        "internalType": "address[]",
        "name": "",
        "type": "address[]"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "feature",
        "type": "bytes32"
      }
    ],
    "name": "getFeatureFlagAllowAll",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "feature",
        "type": "bytes32"
      }
    ],
    "name": "getFeatureFlagAllowlist",
    "outputs": [
      {
        "internalType": "address[]",
        "name": "",
        "type": "address[]"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "feature",
        "type": "bytes32"
      }
    ],
    "name": "getFeatureFlagDenyAll",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "feature",
        "type": "bytes32"
      },
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "isFeatureAllowed",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "feature",
        "type": "bytes32"
      },
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "removeFromFeatureFlagAllowlist",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "feature",
        "type": "bytes32"
      },
      {
        "internalType": "address[]",
        "name": "deniers",
        "type": "address[]"
      }
    ],
    "name": "setDeniers",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "feature",
        "type": "bytes32"
      },
      {
        "internalType": "bool",
        "name": "allowAll",
        "type": "bool"
      }
    ],
    "name": "setFeatureFlagAllowAll",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "feature",
        "type": "bytes32"
      },
      {
        "internalType": "bool",
        "name": "denyAll",
        "type": "bool"
      }
    ],
    "name": "setFeatureFlagDenyAll",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "canLiquidate",
    "outputs": [
      {
        "internalType": "bool",
        "name": "isEligible",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "canLiquidateMarginOnly",
    "outputs": [
      {
        "internalType": "bool",
        "name": "isEligible",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "flaggedAccounts",
    "outputs": [
      {
        "internalType": "uint256[]",
        "name": "accountIds",
        "type": "uint256[]"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "liquidate",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "liquidationReward",
        "type": "uint256"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "maxNumberOfAccounts",
        "type": "uint256"
      }
    ],
    "name": "liquidateFlagged",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "liquidationReward",
        "type": "uint256"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128[]",
        "name": "accountIds",
        "type": "uint128[]"
      }
    ],
    "name": "liquidateFlaggedAccounts",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "liquidationReward",
        "type": "uint256"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "accountId",
        "type": "uint128"
      }
    ],
    "name": "liquidateMarginOnly",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "liquidationReward",
        "type": "uint256"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "liquidationCapacity",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "capacity",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxLiquidationInWindow",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "latestLiquidationTimestamp",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "components": [
          {
            "internalType": "enum SettlementStrategy.Type",
            "name": "strategyType",
            "type": "uint8"
          },
          {
            "internalType": "uint256",
            "name": "settlementDelay",
            "type": "uint256"
          },
          {
            "internalType": "uint256",
            "name": "settlementWindowDuration",
            "type": "uint256"
          },
          {
            "internalType": "address",
            "name": "priceVerificationContract",
            "type": "address"
          },
          {
            "internalType": "bytes32",
            "name": "feedId",
            "type": "bytes32"
          },
          {
            "internalType": "uint256",
            "name": "settlementReward",
            "type": "uint256"
          },
          {
            "internalType": "bool",
            "name": "disabled",
            "type": "bool"
          },
          {
            "internalType": "uint256",
            "name": "commitmentPriceDelay",
            "type": "uint256"
          }
        ],
        "internalType": "struct SettlementStrategy.Data",
        "name": "strategy",
        "type": "tuple"
      }
    ],
    "name": "addSettlementStrategy",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "strategyId",
        "type": "uint256"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "getFundingParameters",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "skewScale",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxFundingVelocity",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "getLiquidationParameters",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "initialMarginRatioD18",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "minimumInitialMarginRatioD18",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maintenanceMarginScalarD18",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "flagRewardRatioD18",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "minimumPositionMargin",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "getLockedOiRatio",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "getMaxLiquidationParameters",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "maxLiquidationLimitAccumulationMultiplier",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxSecondsInLiquidationWindow",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxLiquidationPd",
        "type": "uint256"
      },
      {
        "internalType": "address",
        "name": "endorsedLiquidator",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "getMaxMarketSize",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "maxMarketSize",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "getMaxMarketValue",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "maxMarketValue",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      }
    ],
    "name": "getOrderFees",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "makerFee",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "takerFee",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "perpsMarketId",
        "type": "uint128"
      }
    ],
    "name": "getPriceData",
    "outputs": [
      {
        "internalType": "bytes32",
        "name": "feedId",
        "type": "bytes32"
      },
      {
        "internalType": "uint256",
        "name": "strictStalenessTolerance",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "uint256",
        "name": "strategyId",
        "type": "uint256"
      }
    ],
    "name": "getSettlementStrategy",
    "outputs": [
      {
        "components": [
          {
            "internalType": "enum SettlementStrategy.Type",
            "name": "strategyType",
            "type": "uint8"
          },
          {
            "internalType": "uint256",
            "name": "settlementDelay",
            "type": "uint256"
          },
          {
            "internalType": "uint256",
            "name": "settlementWindowDuration",
            "type": "uint256"
          },
          {
            "internalType": "address",
            "name": "priceVerificationContract",
            "type": "address"
          },
          {
            "internalType": "bytes32",
            "name": "feedId",
            "type": "bytes32"
          },
          {
            "internalType": "uint256",
            "name": "settlementReward",
            "type": "uint256"
          },
          {
            "internalType": "bool",
            "name": "disabled",
            "type": "bool"
          },
          {
            "internalType": "uint256",
            "name": "commitmentPriceDelay",
            "type": "uint256"
          }
        ],
        "internalType": "struct SettlementStrategy.Data",
        "name": "settlementStrategy",
        "type": "tuple"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "uint256",
        "name": "skewScale",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxFundingVelocity",
        "type": "uint256"
      }
    ],
    "name": "setFundingParameters",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "uint256",
        "name": "initialMarginRatioD18",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "minimumInitialMarginRatioD18",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maintenanceMarginScalarD18",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "flagRewardRatioD18",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "minimumPositionMargin",
        "type": "uint256"
      }
    ],
    "name": "setLiquidationParameters",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "uint256",
        "name": "lockedOiRatioD18",
        "type": "uint256"
      }
    ],
    "name": "setLockedOiRatio",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "uint256",
        "name": "maxLiquidationLimitAccumulationMultiplier",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxSecondsInLiquidationWindow",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxLiquidationPd",
        "type": "uint256"
      },
      {
        "internalType": "address",
        "name": "endorsedLiquidator",
        "type": "address"
      }
    ],
    "name": "setMaxLiquidationParameters",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "uint256",
        "name": "maxMarketSize",
        "type": "uint256"
      }
    ],
    "name": "setMaxMarketSize",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "uint256",
        "name": "maxMarketValue",
        "type": "uint256"
      }
    ],
    "name": "setMaxMarketValue",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "uint256",
        "name": "makerFeeRatio",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "takerFeeRatio",
        "type": "uint256"
      }
    ],
    "name": "setOrderFees",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "uint256",
        "name": "strategyId",
        "type": "uint256"
      },
      {
        "components": [
          {
            "internalType": "enum SettlementStrategy.Type",
            "name": "strategyType",
            "type": "uint8"
          },
          {
            "internalType": "uint256",
            "name": "settlementDelay",
            "type": "uint256"
          },
          {
            "internalType": "uint256",
            "name": "settlementWindowDuration",
            "type": "uint256"
          },
          {
            "internalType": "address",
            "name": "priceVerificationContract",
            "type": "address"
          },
          {
            "internalType": "bytes32",
            "name": "feedId",
            "type": "bytes32"
          },
          {
            "internalType": "uint256",
            "name": "settlementReward",
            "type": "uint256"
          },
          {
            "internalType": "bool",
            "name": "disabled",
            "type": "bool"
          },
          {
            "internalType": "uint256",
            "name": "commitmentPriceDelay",
            "type": "uint256"
          }
        ],
        "internalType": "struct SettlementStrategy.Data",
        "name": "strategy",
        "type": "tuple"
      }
    ],
    "name": "setSettlementStrategy",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "marketId",
        "type": "uint128"
      },
      {
        "internalType": "uint256",
        "name": "strategyId",
        "type": "uint256"
      },
      {
        "internalType": "bool",
        "name": "enabled",
        "type": "bool"
      }
    ],
    "name": "setSettlementStrategyEnabled",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "perpsMarketId",
        "type": "uint128"
      },
      {
        "internalType": "bytes32",
        "name": "feedId",
        "type": "bytes32"
      },
      {
        "internalType": "uint256",
        "name": "strictStalenessTolerance",
        "type": "uint256"
      }
    ],
    "name": "updatePriceData",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "collateralId",
        "type": "uint128"
      }
    ],
    "name": "getCollateralConfiguration",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "maxCollateralAmount",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "collateralId",
        "type": "uint128"
      }
    ],
    "name": "getCollateralConfigurationFull",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "maxCollateralAmount",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "upperLimitDiscount",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "lowerLimitDiscount",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "discountScalar",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "getCollateralLiquidateRewardRatio",
    "outputs": [
      {
        "internalType": "uint128",
        "name": "collateralLiquidateRewardRatioD18",
        "type": "uint128"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "collateralId",
        "type": "uint128"
      }
    ],
    "name": "getRegisteredDistributor",
    "outputs": [
      {
        "internalType": "address",
        "name": "distributor",
        "type": "address"
      },
      {
        "internalType": "address[]",
        "name": "poolDelegatedCollateralTypes",
        "type": "address[]"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "distributor",
        "type": "address"
      }
    ],
    "name": "isRegistered",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "token",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "distributor",
        "type": "address"
      },
      {
        "internalType": "uint128",
        "name": "collateralId",
        "type": "uint128"
      },
      {
        "internalType": "address[]",
        "name": "poolDelegatedCollateralTypes",
        "type": "address[]"
      }
    ],
    "name": "registerDistributor",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "collateralId",
        "type": "uint128"
      },
      {
        "internalType": "uint256",
        "name": "maxCollateralAmount",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "upperLimitDiscount",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "lowerLimitDiscount",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "discountScalar",
        "type": "uint256"
      }
    ],
    "name": "setCollateralConfiguration",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "collateralLiquidateRewardRatioD18",
        "type": "uint128"
      }
    ],
    "name": "setCollateralLiquidateRewardRatio",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "getFeeCollector",
    "outputs": [
      {
        "internalType": "address",
        "name": "feeCollector",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "getInterestRateParameters",
    "outputs": [
      {
        "internalType": "uint128",
        "name": "lowUtilizationInterestRateGradient",
        "type": "uint128"
      },
      {
        "internalType": "uint128",
        "name": "interestRateGradientBreakpoint",
        "type": "uint128"
      },
      {
        "internalType": "uint128",
        "name": "highUtilizationInterestRateGradient",
        "type": "uint128"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "getKeeperCostNodeId",
    "outputs": [
      {
        "internalType": "bytes32",
        "name": "keeperCostNodeId",
        "type": "bytes32"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "getKeeperRewardGuards",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "minKeeperRewardUsd",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "minKeeperProfitRatioD18",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxKeeperRewardUsd",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxKeeperScalingRatioD18",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "getMarkets",
    "outputs": [
      {
        "internalType": "uint256[]",
        "name": "marketIds",
        "type": "uint256[]"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "getPerAccountCaps",
    "outputs": [
      {
        "internalType": "uint128",
        "name": "maxPositionsPerAccount",
        "type": "uint128"
      },
      {
        "internalType": "uint128",
        "name": "maxCollateralsPerAccount",
        "type": "uint128"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "referrer",
        "type": "address"
      }
    ],
    "name": "getReferrerShare",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "shareRatioD18",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "getSupportedCollaterals",
    "outputs": [
      {
        "internalType": "uint256[]",
        "name": "supportedCollaterals",
        "type": "uint256[]"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "collateralId",
        "type": "uint128"
      }
    ],
    "name": "globalCollateralValue",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "collateralValue",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "feeCollector",
        "type": "address"
      }
    ],
    "name": "setFeeCollector",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "lowUtilizationInterestRateGradient",
        "type": "uint128"
      },
      {
        "internalType": "uint128",
        "name": "interestRateGradientBreakpoint",
        "type": "uint128"
      },
      {
        "internalType": "uint128",
        "name": "highUtilizationInterestRateGradient",
        "type": "uint128"
      }
    ],
    "name": "setInterestRateParameters",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "minKeeperRewardUsd",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "minKeeperProfitRatioD18",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxKeeperRewardUsd",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxKeeperScalingRatioD18",
        "type": "uint256"
      }
    ],
    "name": "setKeeperRewardGuards",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint128",
        "name": "maxPositionsPerAccount",
        "type": "uint128"
      },
      {
        "internalType": "uint128",
        "name": "maxCollateralsPerAccount",
        "type": "uint128"
      }
    ],
    "name": "setPerAccountCaps",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "totalGlobalCollateralValue",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "totalCollateralValue",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "updateInterestRate",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes32",
        "name": "keeperCostNodeId",
        "type": "bytes32"
      }
    ],
    "name": "updateKeeperCostNodeId",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "referrer",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "shareRatioD18",
        "type": "uint256"
      }
    ],
    "name": "updateReferrerShare",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  }
]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions