[ { "type": "constructor", "inputs": [ { "name": "registry_", "type":
"address", "internalType": "address" }, { "name": "platformRecipient_",
"type": "address", "internalType": "address" }, { "name": "guardian_",
"type": "address", "internalType": "address" } ], "stateMutability":
"nonpayable" }, { "name": "EnforcedPause", "type": "error", "inputs": [] },
{ "name": "ExpectedPause", "type": "error", "inputs": [] }, { "name":
"FailedCall", "type": "error", "inputs": [] }, { "name": "IncorrectValue",
"type": "error", "inputs": [] }, { "name": "InsufficientBalance", "type":
"error", "inputs": [ { "name": "balance", "type": "uint256", "internalType":
"uint256" }, { "name": "needed", "type": "uint256", "internalType":
"uint256" } ] }, { "name": "InvalidFill", "type": "error", "inputs": [] }, {
"name": "InvalidMembershipToken", "type": "error", "inputs": [] }, { "name":
"InvalidOrder", "type": "error", "inputs": [] }, { "name":
"InvalidRecipient", "type": "error", "inputs": [] }, { "name":
"InvalidShortString", "type": "error", "inputs": [] }, { "name":
"InvalidSignature", "type": "error", "inputs": [] }, { "name": "MakerOnly",
"type": "error", "inputs": [] }, { "name": "MembershipAlreadyActivated",
"type": "error", "inputs": [] }, { "name": "NonExactTransfer", "type":
"error", "inputs": [ { "name": "token", "type": "address", "internalType":
"address" } ] }, { "name": "OrderExpired", "type": "error", "inputs": [] },
{ "name": "OrderUnavailable", "type": "error", "inputs": [] }, { "name":
"OwnableInvalidOwner", "type": "error", "inputs": [ { "name": "owner",
"type": "address", "internalType": "address" } ] }, { "name":
"OwnableUnauthorizedAccount", "type": "error", "inputs": [ { "name":
"account", "type": "address", "internalType": "address" } ] }, { "name":
"ReentrancyGuardReentrantCall", "type": "error", "inputs": [] }, { "name":
"SafeERC20FailedOperation", "type": "error", "inputs": [ { "name": "token",
"type": "address", "internalType": "address" } ] }, { "name":
"StringTooLong", "type": "error", "inputs": [ { "name": "str", "type":
"string", "internalType": "string" } ] }, { "name": "UnsupportedNativeBuy",
"type": "error", "inputs": [] }, { "name": "EIP712DomainChanged", "type":
"event", "inputs": [], "anonymous": false }, { "name": "FeeReserveRefunded",
"type": "event", "inputs": [ { "name": "orderHash", "type": "bytes32",
"indexed": true, "internalType": "bytes32" }, { "name": "maker", "type":
"address", "indexed": true, "internalType": "address" }, { "name": "amount",
"type": "uint256", "indexed": false, "internalType": "uint256" } ],
"anonymous": false }, { "name": "FundedOrderCreated", "type": "event",
"inputs": [ { "name": "orderHash", "type": "bytes32", "indexed": true,
"internalType": "bytes32" }, { "name": "maker", "type": "address",
"indexed": true, "internalType": "address" }, { "name": "marketId", "type":
"uint256", "indexed": true, "internalType": "uint256" }, { "name": "order",
"type": "tuple", "indexed": false, "components": [ { "name": "marketId",
"type": "uint256", "internalType": "uint256" }, { "name": "maker", "type":
"address", "internalType": "address" }, { "name": "quoteToken", "type":
"address", "internalType": "address" }, { "name": "baseAmount", "type":
"uint256", "internalType": "uint256" }, { "name": "quoteAmount", "type":
"uint256", "internalType": "uint256" }, { "name": "expiry", "type":
"uint64", "internalType": "uint64" }, { "name": "salt", "type": "uint256",
"internalType": "uint256" }, { "name": "side", "type": "uint8",
"internalType": "uint8" }, { "name": "escrow", "type": "bool",
"internalType": "bool" } ], "internalType": "struct SidelotExchange.Order"
}, { "name": "deposited", "type": "uint256", "indexed": false,
"internalType": "uint256" } ], "anonymous": false }, { "name":
"MembershipTokenActivated", "type": "event", "inputs": [ { "name": "token",
"type": "address", "indexed": true, "internalType": "address" }, { "name":
"decimals", "type": "uint8", "indexed": false, "internalType": "uint8" }, {
"name": "minimumBalance", "type": "uint256", "indexed": false,
"internalType": "uint256" } ], "anonymous": false }, { "name":
"OrderCancelled", "type": "event", "inputs": [ { "name": "orderHash",
"type": "bytes32", "indexed": true, "internalType": "bytes32" }, { "name":
"maker", "type": "address", "indexed": true, "internalType": "address" }, {
"name": "refundTo", "type": "address", "indexed": true, "internalType":
"address" }, { "name": "refunded", "type": "uint256", "indexed": false,
"internalType": "uint256" } ], "anonymous": false }, { "name":
"OrderFilled", "type": "event", "inputs": [ { "name": "orderHash", "type":
"bytes32", "indexed": true, "internalType": "bytes32" }, { "name": "maker",
"type": "address", "indexed": true, "internalType": "address" }, { "name":
"taker", "type": "address", "indexed": true, "internalType": "address" }, {
"name": "marketId", "type": "uint256", "indexed": false, "internalType":
"uint256" }, { "name": "baseAmount", "type": "uint256", "indexed": false,
"internalType": "uint256" }, { "name": "quoteAmount", "type": "uint256",
"indexed": false, "internalType": "uint256" }, { "name": "launcherFee",
"type": "uint256", "indexed": false, "internalType": "uint256" }, { "name":
"platformFee", "type": "uint256", "indexed": false, "internalType":
"uint256" }, { "name": "cumulativeBase", "type": "uint256", "indexed":
false, "internalType": "uint256" } ], "anonymous": false }, { "name":
"OwnershipTransferStarted", "type": "event", "inputs": [ { "name":
"previousOwner", "type": "address", "indexed": true, "internalType":
"address" }, { "name": "newOwner", "type": "address", "indexed": true,
"internalType": "address" } ], "anonymous": false }, { "name":
"OwnershipTransferred", "type": "event", "inputs": [ { "name":
"previousOwner", "type": "address", "indexed": true, "internalType":
"address" }, { "name": "newOwner", "type": "address", "indexed": true,
"internalType": "address" } ], "anonymous": false }, { "name": "Paused",
"type": "event", "inputs": [ { "name": "account", "type": "address",
"indexed": false, "internalType": "address" } ], "anonymous": false }, {
"name": "Unpaused", "type": "event", "inputs": [ { "name": "account",
"type": "address", "indexed": false, "internalType": "address" } ],
"anonymous": false }, { "name": "BPS_DENOMINATOR", "type": "function",
"inputs": [], "outputs": [ { "name": "", "type": "uint256", "internalType":
"uint256" } ], "stateMutability": "view" }, { "name": "BUYER_FEE_BPS",
"type": "function", "inputs": [], "outputs": [ { "name": "", "type":
"uint256", "internalType": "uint256" } ], "stateMutability": "view" }, {
"name": "FEE_POLICY_VERSION", "type": "function", "inputs": [], "outputs": [
{ "name": "", "type": "uint256", "internalType": "uint256" } ],
"stateMutability": "view" }, { "name": "FOUNDING_MARKET_COUNT", "type":
"function", "inputs": [], "outputs": [ { "name": "", "type": "uint256",
"internalType": "uint256" } ], "stateMutability": "view" }, { "name":
"LAUNCHER_FEE_BPS", "type": "function", "inputs": [], "outputs": [ { "name":
"", "type": "uint256", "internalType": "uint256" } ], "stateMutability":
"view" }, { "name": "MINIMUM_HOLDER_TOKENS", "type": "function", "inputs":
[], "outputs": [ { "name": "", "type": "uint256", "internalType": "uint256"
} ], "stateMutability": "view" }, { "name": "ORDER_TYPEHASH", "type":
"function", "inputs": [], "outputs": [ { "name": "", "type": "bytes32",
"internalType": "bytes32" } ], "stateMutability": "view" }, { "name":
"acceptOwnership", "type": "function", "inputs": [], "outputs": [],
"stateMutability": "nonpayable" }, { "name": "activateMembershipToken",
"type": "function", "inputs": [ { "name": "token", "type": "address",
"internalType": "address" } ], "outputs": [], "stateMutability":
"nonpayable" }, { "name": "cancelOrder", "type": "function", "inputs": [ {
"name": "order", "type": "tuple", "components": [ { "name": "marketId",
"type": "uint256", "internalType": "uint256" }, { "name": "maker", "type":
"address", "internalType": "address" }, { "name": "quoteToken", "type":
"address", "internalType": "address" }, { "name": "baseAmount", "type":
"uint256", "internalType": "uint256" }, { "name": "quoteAmount", "type":
"uint256", "internalType": "uint256" }, { "name": "expiry", "type":
"uint64", "internalType": "uint64" }, { "name": "salt", "type": "uint256",
"internalType": "uint256" }, { "name": "side", "type": "uint8",
"internalType": "uint8" }, { "name": "escrow", "type": "bool",
"internalType": "bool" } ], "internalType": "struct SidelotExchange.Order"
}, { "name": "refundTo", "type": "address", "internalType": "address" } ],
"outputs": [], "stateMutability": "nonpayable" }, { "name": "cancelled",
"type": "function", "inputs": [ { "name": "", "type": "bytes32",
"internalType": "bytes32" } ], "outputs": [ { "name": "", "type": "bool",
"internalType": "bool" } ], "stateMutability": "view" }, { "name":
"createFundedOrder", "type": "function", "inputs": [ { "name": "order",
"type": "tuple", "components": [ { "name": "marketId", "type": "uint256",
"internalType": "uint256" }, { "name": "maker", "type": "address",
"internalType": "address" }, { "name": "quoteToken", "type": "address",
"internalType": "address" }, { "name": "baseAmount", "type": "uint256",
"internalType": "uint256" }, { "name": "quoteAmount", "type": "uint256",
"internalType": "uint256" }, { "name": "expiry", "type": "uint64",
"internalType": "uint64" }, { "name": "salt", "type": "uint256",
"internalType": "uint256" }, { "name": "side", "type": "uint8",
"internalType": "uint8" }, { "name": "escrow", "type": "bool",
"internalType": "bool" } ], "internalType": "struct SidelotExchange.Order" }
], "outputs": [], "stateMutability": "payable" }, { "name": "eip712Domain",
"type": "function", "inputs": [], "outputs": [ { "name": "fields", "type":
"bytes1", "internalType": "bytes1" }, { "name": "name", "type": "string",
"internalType": "string" }, { "name": "version", "type": "string",
"internalType": "string" }, { "name": "chainId", "type": "uint256",
"internalType": "uint256" }, { "name": "verifyingContract", "type":
"address", "internalType": "address" }, { "name": "salt", "type": "bytes32",
"internalType": "bytes32" }, { "name": "extensions", "type": "uint256[]",
"internalType": "uint256[]" } ], "stateMutability": "view" }, { "name":
"escrowRemaining", "type": "function", "inputs": [ { "name": "", "type":
"bytes32", "internalType": "bytes32" } ], "outputs": [ { "name": "", "type":
"uint256", "internalType": "uint256" } ], "stateMutability": "view" }, {
"name": "expireOrder", "type": "function", "inputs": [ { "name": "order",
"type": "tuple", "components": [ { "name": "marketId", "type": "uint256",
"internalType": "uint256" }, { "name": "maker", "type": "address",
"internalType": "address" }, { "name": "quoteToken", "type": "address",
"internalType": "address" }, { "name": "baseAmount", "type": "uint256",
"internalType": "uint256" }, { "name": "quoteAmount", "type": "uint256",
"internalType": "uint256" }, { "name": "expiry", "type": "uint64",
"internalType": "uint64" }, { "name": "salt", "type": "uint256",
"internalType": "uint256" }, { "name": "side", "type": "uint8",
"internalType": "uint8" }, { "name": "escrow", "type": "bool",
"internalType": "bool" } ], "internalType": "struct SidelotExchange.Order" }
], "outputs": [], "stateMutability": "nonpayable" }, { "name": "fillOrder",
"type": "function", "inputs": [ { "name": "order", "type": "tuple",
"components": [ { "name": "marketId", "type": "uint256", "internalType":
"uint256" }, { "name": "maker", "type": "address", "internalType": "address"
}, { "name": "quoteToken", "type": "address", "internalType": "address" }, {
"name": "baseAmount", "type": "uint256", "internalType": "uint256" }, {
"name": "quoteAmount", "type": "uint256", "internalType": "uint256" }, {
"name": "expiry", "type": "uint64", "internalType": "uint64" }, { "name":
"salt", "type": "uint256", "internalType": "uint256" }, { "name": "side",
"type": "uint8", "internalType": "uint8" }, { "name": "escrow", "type":
"bool", "internalType": "bool" } ], "internalType": "struct
SidelotExchange.Order" }, { "name": "amount", "type": "uint256",
"internalType": "uint256" }, { "name": "maxBuyerTotal", "type": "uint256",
"internalType": "uint256" }, { "name": "minSellerProceeds", "type":
"uint256", "internalType": "uint256" }, { "name": "signature", "type":
"bytes", "internalType": "bytes" } ], "outputs": [], "stateMutability":
"payable" }, { "name": "filledBase", "type": "function", "inputs": [ {
"name": "", "type": "bytes32", "internalType": "bytes32" } ], "outputs": [ {
"name": "", "type": "uint256", "internalType": "uint256" } ],
"stateMutability": "view" }, { "name": "funded", "type": "function",
"inputs": [ { "name": "", "type": "bytes32", "internalType": "bytes32" } ],
"outputs": [ { "name": "", "type": "bool", "internalType": "bool" } ],
"stateMutability": "view" }, { "name": "fundedOrderCount", "type":
"function", "inputs": [ { "name": "marketId", "type": "uint256",
"internalType": "uint256" } ], "outputs": [ { "name": "", "type": "uint256",
"internalType": "uint256" } ], "stateMutability": "view" }, { "name":
"fundedOrderDeposit", "type": "function", "inputs": [ { "name": "order",
"type": "tuple", "components": [ { "name": "marketId", "type": "uint256",
"internalType": "uint256" }, { "name": "maker", "type": "address",
"internalType": "address" }, { "name": "quoteToken", "type": "address",
"internalType": "address" }, { "name": "baseAmount", "type": "uint256",
"internalType": "uint256" }, { "name": "quoteAmount", "type": "uint256",
"internalType": "uint256" }, { "name": "expiry", "type": "uint64",
"internalType": "uint64" }, { "name": "salt", "type": "uint256",
"internalType": "uint256" }, { "name": "side", "type": "uint8",
"internalType": "uint8" }, { "name": "escrow", "type": "bool",
"internalType": "bool" } ], "internalType": "struct SidelotExchange.Order" }
], "outputs": [ { "name": "", "type": "uint256", "internalType": "uint256" }
], "stateMutability": "pure" }, { "name": "getFundedOrder", "type":
"function", "inputs": [ { "name": "marketId", "type": "uint256",
"internalType": "uint256" }, { "name": "index", "type": "uint256",
"internalType": "uint256" } ], "outputs": [ { "name": "", "type": "tuple",
"components": [ { "name": "marketId", "type": "uint256", "internalType":
"uint256" }, { "name": "maker", "type": "address", "internalType": "address"
}, { "name": "quoteToken", "type": "address", "internalType": "address" }, {
"name": "baseAmount", "type": "uint256", "internalType": "uint256" }, {
"name": "quoteAmount", "type": "uint256", "internalType": "uint256" }, {
"name": "expiry", "type": "uint64", "internalType": "uint64" }, { "name":
"salt", "type": "uint256", "internalType": "uint256" }, { "name": "side",
"type": "uint8", "internalType": "uint8" }, { "name": "escrow", "type":
"bool", "internalType": "bool" } ], "internalType": "struct
SidelotExchange.Order" } ], "stateMutability": "view" }, { "name":
"hashOrder", "type": "function", "inputs": [ { "name": "order", "type":
"tuple", "components": [ { "name": "marketId", "type": "uint256",
"internalType": "uint256" }, { "name": "maker", "type": "address",
"internalType": "address" }, { "name": "quoteToken", "type": "address",
"internalType": "address" }, { "name": "baseAmount", "type": "uint256",
"internalType": "uint256" }, { "name": "quoteAmount", "type": "uint256",
"internalType": "uint256" }, { "name": "expiry", "type": "uint64",
"internalType": "uint64" }, { "name": "salt", "type": "uint256",
"internalType": "uint256" }, { "name": "side", "type": "uint8",
"internalType": "uint8" }, { "name": "escrow", "type": "bool",
"internalType": "bool" } ], "internalType": "struct SidelotExchange.Order" }
], "outputs": [ { "name": "", "type": "bytes32", "internalType": "bytes32" }
], "stateMutability": "view" }, { "name": "isHolderExempt", "type":
"function", "inputs": [ { "name": "buyer", "type": "address",
"internalType": "address" } ], "outputs": [ { "name": "", "type": "bool",
"internalType": "bool" } ], "stateMutability": "view" }, { "name":
"membershipToken", "type": "function", "inputs": [], "outputs": [ { "name":
"", "type": "address", "internalType": "address" } ], "stateMutability":
"view" }, { "name": "membershipTokenDecimals", "type": "function", "inputs":
[], "outputs": [ { "name": "", "type": "uint8", "internalType": "uint8" } ],
"stateMutability": "view" }, { "name": "minimumHolderBalance", "type":
"function", "inputs": [], "outputs": [ { "name": "", "type": "uint256",
"internalType": "uint256" } ], "stateMutability": "view" }, { "name":
"owner", "type": "function", "inputs": [], "outputs": [ { "name": "",
"type": "address", "internalType": "address" } ], "stateMutability": "view"
}, { "name": "pause", "type": "function", "inputs": [], "outputs": [],
"stateMutability": "nonpayable" }, { "name": "paused", "type": "function",
"inputs": [], "outputs": [ { "name": "", "type": "bool", "internalType":
"bool" } ], "stateMutability": "view" }, { "name": "pendingOwner", "type":
"function", "inputs": [], "outputs": [ { "name": "", "type": "address",
"internalType": "address" } ], "stateMutability": "view" }, { "name":
"platformRecipient", "type": "function", "inputs": [], "outputs": [ {
"name": "", "type": "address", "internalType": "address" } ],
"stateMutability": "view" }, { "name": "quoteFill", "type": "function",
"inputs": [ { "name": "order", "type": "tuple", "components": [ { "name":
"marketId", "type": "uint256", "internalType": "uint256" }, { "name":
"maker", "type": "address", "internalType": "address" }, { "name":
"quoteToken", "type": "address", "internalType": "address" }, { "name":
"baseAmount", "type": "uint256", "internalType": "uint256" }, { "name":
"quoteAmount", "type": "uint256", "internalType": "uint256" }, { "name":
"expiry", "type": "uint64", "internalType": "uint64" }, { "name": "salt",
"type": "uint256", "internalType": "uint256" }, { "name": "side", "type":
"uint8", "internalType": "uint8" }, { "name": "escrow", "type": "bool",
"internalType": "bool" } ], "internalType": "struct SidelotExchange.Order"
}, { "name": "amount", "type": "uint256", "internalType": "uint256" }, {
"name": "taker", "type": "address", "internalType": "address" } ],
"outputs": [ { "name": "", "type": "tuple", "components": [ { "name":
"quoteAmount", "type": "uint256", "internalType": "uint256" }, { "name":
"launcherFee", "type": "uint256", "internalType": "uint256" }, { "name":
"platformFee", "type": "uint256", "internalType": "uint256" }, { "name":
"buyerTotal", "type": "uint256", "internalType": "uint256" }, { "name":
"waivedPlatformFee", "type": "uint256", "internalType": "uint256" }, {
"name": "holderExempt", "type": "bool", "internalType": "bool" }, { "name":
"foundingMarket", "type": "bool", "internalType": "bool" } ],
"internalType": "struct SidelotExchange.FillQuote" } ], "stateMutability":
"view" }, { "name": "registry", "type": "function", "inputs": [], "outputs":
[ { "name": "", "type": "address", "internalType": "contract
SidelotMarketRegistry" } ], "stateMutability": "view" }, { "name":
"renounceOwnership", "type": "function", "inputs": [], "outputs": [],
"stateMutability": "nonpayable" }, { "name": "transferOwnership", "type":
"function", "inputs": [ { "name": "newOwner", "type": "address",
"internalType": "address" } ], "outputs": [], "stateMutability":
"nonpayable" }, { "name": "unpause", "type": "function", "inputs": [],
"outputs": [], "stateMutability": "nonpayable" } ]