[
{
"inputs": [
{
"internalType": "uint256",
"name": "startFeeBps",
"type": "uint256"
},
{
"internalType": "address",
"name": "initialOwner",
"type": "address"
},
{
"internalType": "address",
"name": "alkimiyaTreasury",
"type": "address"
},
{
"internalType": "uint256",
"name": "gracePeriod",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "maxBountyFrac",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "bountyIncreasePerSecond",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [
{
"internalType": "address",
"name": "target",
"type": "address"
}
],
"name": "AddressEmptyCode",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "AddressInsufficientBalance",
"type": "error"
},
{
"inputs": [],
"name": "ECDSAInvalidSignature",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "length",
"type": "uint256"
}
],
"name": "ECDSAInvalidSignatureLength",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "s",
"type": "bytes32"
}
],
"name": "ECDSAInvalidSignatureS",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
},
{
"internalType": "uint256",
"name": "balance",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "needed",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "tokenId",
"type": "uint256"
}
],
"name": "ERC1155InsufficientBalance",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "approver",
"type": "address"
}
],
"name": "ERC1155InvalidApprover",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "idsLength",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "valuesLength",
"type": "uint256"
}
],
"name": "ERC1155InvalidArrayLength",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "operator",
"type": "address"
}
],
"name": "ERC1155InvalidOperator",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "receiver",
"type": "address"
}
],
"name": "ERC1155InvalidReceiver",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "ERC1155InvalidSender",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "operator",
"type": "address"
},
{
"internalType": "address",
"name": "owner",
"type": "address"
}
],
"name": "ERC1155MissingApprovalForAll",
"type": "error"
},
{
"inputs": [],
"name": "FailedInnerCall",
"type": "error"
},
{
"inputs": [],
"name": "InvalidShortString",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
}
],
"name": "OwnableInvalidOwner",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "OwnableUnauthorizedAccount",
"type": "error"
},
{
"inputs": [],
"name": "ReentrancyGuardReentrantCall",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "token",
"type": "address"
}
],
"name": "SafeERC20FailedOperation",
"type": "error"
},
{
"inputs": [],
"name": "SilicaPools__ArrayLengthMismatch",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "caller",
"type": "address"
},
{
"internalType": "address",
"name": "expectedCaller",
"type": "address"
}
],
"name": "SilicaPools__InvalidCaller",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes",
"name": "signature",
"type": "bytes"
}
],
"name": "SilicaPools__InvalidSignature",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "expiry",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "blockTimestamp",
"type": "uint256"
}
],
"name": "SilicaPools__OrderExpired",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "orderHash",
"type": "bytes32"
}
],
"name": "SilicaPools__OrderIsCancelled",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "orderHash",
"type": "bytes32"
}
],
"name": "SilicaPools__PartialOrdersNotSupported",
"type": "error"
},
{
"inputs": [],
"name": "SilicaPools__Paused",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "poolHash",
"type": "bytes32"
}
],
"name": "SilicaPools__PoolAlreadyEnded",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "poolHash",
"type": "bytes32"
}
],
"name": "SilicaPools__PoolAlreadyStarted",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "poolHash",
"type": "bytes32"
}
],
"name": "SilicaPools__PoolNotEnded",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "attemptedTimestamp",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "targetTimestamp",
"type": "uint256"
}
],
"name": "SilicaPools__TooEarlyToEnd",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "attemptedTimestamp",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "targetTimestamp",
"type": "uint256"
}
],
"name": "SilicaPools__TooEarlyToStart",
"type": "error"
},
{
"inputs": [
{
"internalType": "string",
"name": "str",
"type": "string"
}
],
"name": "StringTooLong",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "operator",
"type": "address"
},
{
"indexed": false,
"internalType": "bool",
"name": "approved",
"type": "bool"
}
],
"name": "ApprovalForAll",
"type": "event"
},
{
"anonymous": false,
"inputs": [],
"name": "EIP712DomainChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferStarted",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferred",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "newRate",
"type": "uint256"
}
],
"name": "SilicaPools__BountyIncreaseRateChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "poolHash",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint256",
"name": "bountyAmount",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "receiver",
"type": "address"
}
],
"name": "SilicaPools__BountyPaid",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "poolHash",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "orderHash",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "address",
"name": "shortRecipient",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "longRecipient",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "payer",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "payoutToken",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "sharesMinted",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "collateralAmount",
"type": "uint256"
}
],
"name": "SilicaPools__CollateralizedMint",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "newFeeBps",
"type": "uint256"
}
],
"name": "SilicaPools__FillFeeChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "payer",
"type": "address"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "poolHash",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "orderHash",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint256",
"name": "tokenId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "tokenPaid",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "SilicaPools__FillFeePaid",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "newGracePeriod",
"type": "uint256"
}
],
"name": "SilicaPools__GracePeriodChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "newMaxFraction",
"type": "uint256"
}
],
"name": "SilicaPools__MaxBountyFractionChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "orderHash",
"type": "bytes32"
}
],
"name": "SilicaPools__OrderCancelled",
"type": "event"
},
{
"anonymous": false,
"inputs": [],
"name": "SilicaPools__PauseProtocol",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "poolHash",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint256",
"name": "endingIndexBalance",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint128",
"name": "balanceChangePerShare",
"type": "uint128"
}
],
"name": "SilicaPools__PoolEnded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "poolHash",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"indexed": false,
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"indexed": false,
"internalType": "uint48",
"name": "targetStartTime",
"type": "uint48"
},
{
"indexed": false,
"internalType": "uint48",
"name": "targetEndTime",
"type": "uint48"
},
{
"indexed": true,
"internalType": "address",
"name": "index",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "payoutToken",
"type": "address"
},
{
"indexed": false,
"internalType": "uint128",
"name": "indexShares",
"type": "uint128"
},
{
"indexed": false,
"internalType": "uint128",
"name": "indexInitialBalance",
"type": "uint128"
}
],
"name": "SilicaPools__PoolStarted",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "poolHash",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "recipient",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "payoutToken",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "tokenId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "sharesRedeemed",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "payoutTokenAmount",
"type": "uint256"
}
],
"name": "SilicaPools__SharesRedeemed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "poolHash",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "recipient",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "payoutToken",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "sharesRefunded",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "payoutTokenAmount",
"type": "uint256"
}
],
"name": "SilicaPools__SharesRefunded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "orderHash",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "maker",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "taker",
"type": "address"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "offeredPoolHash",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "requestedPoolHash",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "address",
"name": "offeredIndex",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "requestedIndex",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "filledFraction",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "remainingFraction",
"type": "uint256"
}
],
"name": "SilicaPools__TradeHistoryEvent",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "newTreasuryAddress",
"type": "address"
}
],
"name": "SilicaPools__TreasuryAddressChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [],
"name": "SilicaPools__UnpauseProtocol",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "orderHash",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "poolHash",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "index",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "payoutToken",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "capMinusFloor",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "sharesMinted",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "sharesTransferred",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "upfrontTokenAddr",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "upfrontTokenAmount",
"type": "uint256"
}
],
"name": "SilicaPools__VolumeAccountingEvent",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "operator",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256[]",
"name": "ids",
"type": "uint256[]"
},
{
"indexed": false,
"internalType": "uint256[]",
"name": "values",
"type": "uint256[]"
}
],
"name": "TransferBatch",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "operator",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "id",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "value",
"type": "uint256"
}
],
"name": "TransferSingle",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "string",
"name": "value",
"type": "string"
},
{
"indexed": true,
"internalType": "uint256",
"name": "id",
"type": "uint256"
}
],
"name": "URI",
"type": "event"
},
{
"inputs": [],
"name": "INVERSE_BASIS_POINT",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "MAX_FILL_FEE_BPS",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "TOKENID_SALT",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "acceptOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "uint256",
"name": "id",
"type": "uint256"
}
],
"name": "balanceOf",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address[]",
"name": "accounts",
"type": "address[]"
},
{
"internalType": "uint256[]",
"name": "ids",
"type": "uint256[]"
}
],
"name": "balanceOfBatch",
"outputs": [
{
"internalType": "uint256[]",
"name": "",
"type": "uint256[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "bountyFractionIncreasePerSecond",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "bountyGracePeriod",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "address",
"name": "maker",
"type": "address"
},
{
"internalType": "address",
"name": "taker",
"type": "address"
},
{
"internalType": "uint48",
"name": "expiry",
"type": "uint48"
},
{
"internalType": "address",
"name": "offeredUpfrontToken",
"type": "address"
},
{
"internalType": "uint128",
"name": "offeredUpfrontAmount",
"type": "uint128"
},
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "offeredLongSharesParams",
"type": "tuple"
},
{
"internalType": "uint128",
"name": "offeredLongShares",
"type": "uint128"
},
{
"internalType": "address",
"name": "requestedUpfrontToken",
"type": "address"
},
{
"internalType": "uint128",
"name": "requestedUpfrontAmount",
"type": "uint128"
},
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "requestedLongSharesParams",
"type": "tuple"
},
{
"internalType": "uint128",
"name": "requestedLongShares",
"type": "uint128"
}
],
"internalType": "struct ISilicaPools.SilicaOrder[]",
"name": "orders",
"type": "tuple[]"
}
],
"name": "cancelOrders",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams[]",
"name": "poolParams",
"type": "tuple[]"
},
{
"internalType": "uint256[]",
"name": "shares",
"type": "uint256[]"
}
],
"name": "collateralRefund",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "poolParams",
"type": "tuple"
},
{
"internalType": "bytes32",
"name": "orderHash",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "shares",
"type": "uint256"
},
{
"internalType": "address",
"name": "longRecipient",
"type": "address"
},
{
"internalType": "address",
"name": "shortRecipient",
"type": "address"
}
],
"name": "collateralizedMint",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "domainSeparatorV4",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "eip712Domain",
"outputs": [
{
"internalType": "bytes1",
"name": "fields",
"type": "bytes1"
},
{
"internalType": "string",
"name": "name",
"type": "string"
},
{
"internalType": "string",
"name": "version",
"type": "string"
},
{
"internalType": "uint256",
"name": "chainId",
"type": "uint256"
},
{
"internalType": "address",
"name": "verifyingContract",
"type": "address"
},
{
"internalType": "bytes32",
"name": "salt",
"type": "bytes32"
},
{
"internalType": "uint256[]",
"name": "extensions",
"type": "uint256[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams[]",
"name": "poolParams",
"type": "tuple[]"
}
],
"name": "endBounty",
"outputs": [
{
"internalType": "uint256[]",
"name": "",
"type": "uint256[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "poolParams",
"type": "tuple"
}
],
"name": "endPool",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams[]",
"name": "poolParams",
"type": "tuple[]"
}
],
"name": "endPools",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "fillFeeBps",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "address",
"name": "maker",
"type": "address"
},
{
"internalType": "address",
"name": "taker",
"type": "address"
},
{
"internalType": "uint48",
"name": "expiry",
"type": "uint48"
},
{
"internalType": "address",
"name": "offeredUpfrontToken",
"type": "address"
},
{
"internalType": "uint128",
"name": "offeredUpfrontAmount",
"type": "uint128"
},
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "offeredLongSharesParams",
"type": "tuple"
},
{
"internalType": "uint128",
"name": "offeredLongShares",
"type": "uint128"
},
{
"internalType": "address",
"name": "requestedUpfrontToken",
"type": "address"
},
{
"internalType": "uint128",
"name": "requestedUpfrontAmount",
"type": "uint128"
},
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "requestedLongSharesParams",
"type": "tuple"
},
{
"internalType": "uint128",
"name": "requestedLongShares",
"type": "uint128"
}
],
"internalType": "struct ISilicaPools.SilicaOrder",
"name": "order",
"type": "tuple"
},
{
"internalType": "bytes",
"name": "signature",
"type": "bytes"
},
{
"internalType": "uint256",
"name": "fraction",
"type": "uint256"
}
],
"name": "fillOrder",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "address",
"name": "maker",
"type": "address"
},
{
"internalType": "address",
"name": "taker",
"type": "address"
},
{
"internalType": "uint48",
"name": "expiry",
"type": "uint48"
},
{
"internalType": "address",
"name": "offeredUpfrontToken",
"type": "address"
},
{
"internalType": "uint128",
"name": "offeredUpfrontAmount",
"type": "uint128"
},
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "offeredLongSharesParams",
"type": "tuple"
},
{
"internalType": "uint128",
"name": "offeredLongShares",
"type": "uint128"
},
{
"internalType": "address",
"name": "requestedUpfrontToken",
"type": "address"
},
{
"internalType": "uint128",
"name": "requestedUpfrontAmount",
"type": "uint128"
},
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "requestedLongSharesParams",
"type": "tuple"
},
{
"internalType": "uint128",
"name": "requestedLongShares",
"type": "uint128"
}
],
"internalType": "struct ISilicaPools.SilicaOrder[]",
"name": "orders",
"type": "tuple[]"
},
{
"internalType": "bytes[]",
"name": "signatures",
"type": "bytes[]"
},
{
"internalType": "uint256[]",
"name": "fractions",
"type": "uint256[]"
}
],
"name": "fillOrders",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "longTokenId",
"type": "uint256"
}
],
"name": "fromLongTokenId",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "shortTokenId",
"type": "uint256"
}
],
"name": "fromShortTokenId",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "address",
"name": "maker",
"type": "address"
},
{
"internalType": "address",
"name": "taker",
"type": "address"
},
{
"internalType": "uint48",
"name": "expiry",
"type": "uint48"
},
{
"internalType": "address",
"name": "offeredUpfrontToken",
"type": "address"
},
{
"internalType": "uint128",
"name": "offeredUpfrontAmount",
"type": "uint128"
},
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "offeredLongSharesParams",
"type": "tuple"
},
{
"internalType": "uint128",
"name": "offeredLongShares",
"type": "uint128"
},
{
"internalType": "address",
"name": "requestedUpfrontToken",
"type": "address"
},
{
"internalType": "uint128",
"name": "requestedUpfrontAmount",
"type": "uint128"
},
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "requestedLongSharesParams",
"type": "tuple"
},
{
"internalType": "uint128",
"name": "requestedLongShares",
"type": "uint128"
}
],
"internalType": "struct ISilicaPools.SilicaOrder",
"name": "order",
"type": "tuple"
},
{
"internalType": "bytes32",
"name": "domainSeparator",
"type": "bytes32"
}
],
"name": "hashOrder",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "poolParams",
"type": "tuple"
}
],
"name": "hashPool",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "address",
"name": "operator",
"type": "address"
}
],
"name": "isApprovedForAll",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "maxBountyFraction",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams[]",
"name": "poolParams",
"type": "tuple[]"
}
],
"name": "maxCollateralRefund",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "orderHash",
"type": "bytes32"
}
],
"name": "orderCancelled",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "owner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "pause",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "paused",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "pendingOwner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "poolHash",
"type": "bytes32"
}
],
"name": "poolState",
"outputs": [
{
"components": [
{
"internalType": "uint128",
"name": "collateralMinted",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "sharesMinted",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "indexShares",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "indexInitialBalance",
"type": "uint128"
},
{
"internalType": "uint48",
"name": "actualStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "actualEndTimestamp",
"type": "uint48"
},
{
"internalType": "uint128",
"name": "balanceChangePerShare",
"type": "uint128"
}
],
"internalType": "struct ISilicaPools.PoolState",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams[]",
"name": "longPoolParams",
"type": "tuple[]"
},
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams[]",
"name": "shortPoolParams",
"type": "tuple[]"
}
],
"name": "redeem",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "longParams",
"type": "tuple"
}
],
"name": "redeemLong",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "shortParams",
"type": "tuple"
}
],
"name": "redeemShort",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "renounceOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "sBountyFractionIncreasePerSecond",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "sBountyGracePeriod",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "sMaxBountyFraction",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "from",
"type": "address"
},
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256[]",
"name": "ids",
"type": "uint256[]"
},
{
"internalType": "uint256[]",
"name": "values",
"type": "uint256[]"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "safeBatchTransferFrom",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "from",
"type": "address"
},
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256",
"name": "id",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "value",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "safeTransferFrom",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "operator",
"type": "address"
},
{
"internalType": "bool",
"name": "approved",
"type": "bool"
}
],
"name": "setApprovalForAll",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "newIncreaseAmount",
"type": "uint256"
}
],
"name": "setBountyFractionIncreasePerSecond",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "newGracePeriod",
"type": "uint256"
}
],
"name": "setBountyGracePeriod",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "newFillFeeBps",
"type": "uint256"
}
],
"name": "setFillFeeBps",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "newMaxFraction",
"type": "uint256"
}
],
"name": "setMaxBountyFraction",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "newTreasury",
"type": "address"
}
],
"name": "setTreasuryAddress",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams[]",
"name": "poolParams",
"type": "tuple[]"
}
],
"name": "startBounty",
"outputs": [
{
"internalType": "uint256[]",
"name": "",
"type": "uint256[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "poolParams",
"type": "tuple"
}
],
"name": "startPool",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams[]",
"name": "poolParams",
"type": "tuple[]"
}
],
"name": "startPools",
"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": [
{
"internalType": "bytes32",
"name": "poolHash",
"type": "bytes32"
}
],
"name": "toLongTokenId",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "poolHash",
"type": "bytes32"
}
],
"name": "toShortTokenId",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "treasuryAddress",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "unpause",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "uri",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams[]",
"name": "poolParams",
"type": "tuple[]"
},
{
"internalType": "uint256[]",
"name": "shares",
"type": "uint256[]"
}
],
"name": "viewCollateralRefund",
"outputs": [
{
"internalType": "uint256[]",
"name": "expectedRefunds",
"type": "uint256[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams[]",
"name": "poolParams",
"type": "tuple[]"
},
{
"internalType": "address[]",
"name": "accounts",
"type": "address[]"
}
],
"name": "viewMaxCollateralRefund",
"outputs": [
{
"internalType": "uint256[]",
"name": "expectedRefund",
"type": "uint256[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "longParams",
"type": "tuple"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "viewRedeemLong",
"outputs": [
{
"internalType": "uint256",
"name": "expectedPayout",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint128",
"name": "floor",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "cap",
"type": "uint128"
},
{
"internalType": "address",
"name": "index",
"type": "address"
},
{
"internalType": "uint48",
"name": "targetStartTimestamp",
"type": "uint48"
},
{
"internalType": "uint48",
"name": "targetEndTimestamp",
"type": "uint48"
},
{
"internalType": "address",
"name": "payoutToken",
"type": "address"
}
],
"internalType": "struct ISilicaPools.PoolParams",
"name": "shortParams",
"type": "tuple"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "viewRedeemShort",
"outputs": [
{
"internalType": "uint256",
"name": "expectedPayout",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
}
]