diff --git a/421614-main/AllErrors.json b/421614-main/AllErrors.json index ec40659b6..81ca903fe 100644 --- a/421614-main/AllErrors.json +++ b/421614-main/AllErrors.json @@ -967,6 +967,16 @@ } ] }, + { + "type": "error", + "name": "InvalidTransactionTypeIndex", + "inputs": [ + { + "type": "uint128", + "name": "txnType" + } + ] + }, { "type": "error", "name": "OnlyMarketOwner", @@ -1269,7 +1279,7 @@ "inputs": [ { "type": "uint128", - "name": "synthMarketId" + "name": "collateralId" }, { "type": "uint256", @@ -1286,12 +1296,12 @@ "name": "InsufficientCollateralAvailableForWithdraw", "inputs": [ { - "type": "uint256", - "name": "availableUsdDenominated" + "type": "int256", + "name": "withdrawableMarginUsd" }, { "type": "uint256", - "name": "requiredUsdDenominated" + "name": "requestedMarginUsd" } ] }, @@ -1301,7 +1311,7 @@ "inputs": [ { "type": "uint128", - "name": "synthMarketId" + "name": "collateralId" }, { "type": "uint256", @@ -1323,6 +1333,16 @@ } ] }, + { + "type": "error", + "name": "InvalidId", + "inputs": [ + { + "type": "uint128", + "name": "id" + } + ] + }, { "type": "error", "name": "KeeperCostsNotSet", @@ -1334,7 +1354,7 @@ "inputs": [ { "type": "uint128", - "name": "synthMarketId" + "name": "collateralId" }, { "type": "uint256", @@ -1360,6 +1380,16 @@ } ] }, + { + "type": "error", + "name": "NonexistentDebt", + "inputs": [ + { + "type": "uint128", + "name": "accountId" + } + ] + }, { "type": "error", "name": "PendingOrderExists", @@ -1381,7 +1411,21 @@ "inputs": [ { "type": "uint128", - "name": "synthMarketId" + "name": "collateralId" + } + ] + }, + { + "type": "error", + "name": "ExceedsMarketCreditCapacity", + "inputs": [ + { + "type": "int256", + "name": "delegatedCollateral" + }, + { + "type": "int256", + "name": "newLockedCredit" } ] }, @@ -1468,16 +1512,6 @@ } ] }, - { - "type": "error", - "name": "InsufficientAccountMargin", - "inputs": [ - { - "type": "uint256", - "name": "leftover" - } - ] - }, { "type": "error", "name": "OrderNotValid", @@ -1529,6 +1563,30 @@ } ] }, + { + "type": "error", + "name": "AccountHasOpenPositions", + "inputs": [ + { + "type": "uint128", + "name": "accountId" + } + ] + }, + { + "type": "error", + "name": "InvalidDistributor", + "inputs": [ + { + "type": "uint128", + "name": "id" + }, + { + "type": "address", + "name": "distributor" + } + ] + }, { "type": "error", "name": "NotEligibleForLiquidation", @@ -1539,6 +1597,26 @@ } ] }, + { + "type": "error", + "name": "NotEligibleForMarginLiquidation", + "inputs": [ + { + "type": "uint128", + "name": "accountId" + } + ] + }, + { + "type": "error", + "name": "InvalidDistributorContract", + "inputs": [ + { + "type": "address", + "name": "distributor" + } + ] + }, { "type": "error", "name": "InvalidInterestRateParameters", diff --git a/421614-main/AllErrors.readable.json b/421614-main/AllErrors.readable.json index 54134068c..05207e1ff 100644 --- a/421614-main/AllErrors.readable.json +++ b/421614-main/AllErrors.readable.json @@ -95,6 +95,7 @@ "error StringTooLong(string str)", "error InvalidMarketOwner()", "error InvalidSynthImplementation(uint256 synthImplementation)", + "error InvalidTransactionTypeIndex(uint128 txnType)", "error OnlyMarketOwner(address marketOwner, address sender)", "error ExceedsMaxSynthAmount(uint256 maxSynthAmount, uint256 synthAmountCharged)", "error ExceedsMaxUsdAmount(uint256 maxUsdAmount, uint256 usdAmountCharged)", @@ -122,28 +123,34 @@ "error PerpsMarketAlreadyInitialized()", "error PerpsMarketNotInitialized()", "error AccountLiquidatable(uint128 accountId)", - "error InsufficientCollateral(uint128 synthMarketId, uint256 collateralAmount, uint256 withdrawAmount)", - "error InsufficientCollateralAvailableForWithdraw(uint256 availableUsdDenominated, uint256 requiredUsdDenominated)", - "error InsufficientSynthCollateral(uint128 synthMarketId, uint256 collateralAmount, uint256 withdrawAmount)", + "error InsufficientCollateral(uint128 collateralId, uint256 collateralAmount, uint256 withdrawAmount)", + "error InsufficientCollateralAvailableForWithdraw(int256 withdrawableMarginUsd, uint256 requestedMarginUsd)", + "error InsufficientSynthCollateral(uint128 collateralId, uint256 collateralAmount, uint256 withdrawAmount)", "error InvalidAmountDelta(int256 amountDelta)", + "error InvalidId(uint128 id)", "error KeeperCostsNotSet()", - "error MaxCollateralExceeded(uint128 synthMarketId, uint256 maxAmount, uint256 collateralAmount, uint256 depositAmount)", + "error MaxCollateralExceeded(uint128 collateralId, uint256 maxAmount, uint256 collateralAmount, uint256 depositAmount)", "error MaxCollateralsPerAccountReached(uint128 maxCollateralsPerAccount)", + "error NonexistentDebt(uint128 accountId)", "error PendingOrderExists()", "error PriceFeedNotSet(uint128 marketId)", - "error SynthNotEnabledForCollateral(uint128 synthMarketId)", + "error SynthNotEnabledForCollateral(uint128 collateralId)", + "error ExceedsMarketCreditCapacity(int256 delegatedCollateral, int256 newLockedCredit)", "error InsufficientMargin(int256 availableMargin, uint256 minMargin)", "error MaxOpenInterestReached(uint128 marketId, uint256 maxMarketSize, int256 newSideSize)", "error MaxPositionsPerAccountReached(uint128 maxPositionsPerAccount)", "error MaxUSDOpenInterestReached(uint128 marketId, uint256 maxMarketValue, int256 newSideSize, uint256 price)", "error ZeroSizeOrder()", "error AcceptablePriceExceeded(uint256 fillPrice, uint256 acceptablePrice)", - "error InsufficientAccountMargin(uint256 leftover)", "error OrderNotValid()", "error SettlementWindowExpired(uint256 timestamp, uint256 settlementTime, uint256 settlementExpiration)", "error SettlementWindowNotOpen(uint256 timestamp, uint256 settlementTime)", "error AcceptablePriceNotExceeded(uint256 fillPrice, uint256 acceptablePrice)", + "error AccountHasOpenPositions(uint128 accountId)", + "error InvalidDistributor(uint128 id, address distributor)", "error NotEligibleForLiquidation(uint128 accountId)", + "error NotEligibleForMarginLiquidation(uint128 accountId)", + "error InvalidDistributorContract(address distributor)", "error InvalidInterestRateParameters(uint128 lowUtilizationInterestRateGradient, uint128 highUtilizationInterestRateGradient)", "error InvalidReferrerShareRatio(uint256 shareRatioD18)", "error FeeRequired(uint256 amount)", diff --git a/421614-main/CollateralToken_fBTC.json b/421614-main/CollateralToken_fBTC.json new file mode 100644 index 000000000..bdce6a14b --- /dev/null +++ b/421614-main/CollateralToken_fBTC.json @@ -0,0 +1,273 @@ +[ + { + "type": "error", + "name": "InsufficientAllowance", + "inputs": [ + { + "type": "uint256", + "name": "required" + }, + { + "type": "uint256", + "name": "existing" + } + ] + }, + { + "type": "error", + "name": "InsufficientBalance", + "inputs": [ + { + "type": "uint256", + "name": "required" + }, + { + "type": "uint256", + "name": "existing" + } + ] + }, + { + "type": "event", + "anonymous": false, + "name": "Approval", + "inputs": [ + { + "type": "address", + "name": "owner", + "indexed": true + }, + { + "type": "address", + "name": "spender", + "indexed": true + }, + { + "type": "uint256", + "name": "amount" + } + ] + }, + { + "type": "event", + "anonymous": false, + "name": "Transfer", + "inputs": [ + { + "type": "address", + "name": "from", + "indexed": true + }, + { + "type": "address", + "name": "to", + "indexed": true + }, + { + "type": "uint256", + "name": "amount" + } + ] + }, + { + "type": "function", + "name": "allowance", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "address", + "name": "owner" + }, + { + "type": "address", + "name": "spender" + } + ], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "approve", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "balanceOf", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "address", + "name": "owner" + } + ], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "decimals", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint8" + } + ] + }, + { + "type": "function", + "name": "decreaseAllowance", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "subtractedValue" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "increaseAllowance", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "addedValue" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "name", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "string" + } + ] + }, + { + "type": "function", + "name": "symbol", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "string" + } + ] + }, + { + "type": "function", + "name": "totalSupply", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "transfer", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "to" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "transferFrom", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "from" + }, + { + "type": "address", + "name": "to" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + } +] \ No newline at end of file diff --git a/421614-main/CollateralToken_fBTC.readable.json b/421614-main/CollateralToken_fBTC.readable.json new file mode 100644 index 000000000..3dbb8e226 --- /dev/null +++ b/421614-main/CollateralToken_fBTC.readable.json @@ -0,0 +1,17 @@ +[ + "error InsufficientAllowance(uint256 required, uint256 existing)", + "error InsufficientBalance(uint256 required, uint256 existing)", + "event Approval(address indexed owner, address indexed spender, uint256 amount)", + "event Transfer(address indexed from, address indexed to, uint256 amount)", + "function allowance(address owner, address spender) view returns (uint256)", + "function approve(address spender, uint256 amount) returns (bool)", + "function balanceOf(address owner) view returns (uint256)", + "function decimals() view returns (uint8)", + "function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)", + "function increaseAllowance(address spender, uint256 addedValue) returns (bool)", + "function name() view returns (string)", + "function symbol() view returns (string)", + "function totalSupply() view returns (uint256)", + "function transfer(address to, uint256 amount) returns (bool)", + "function transferFrom(address from, address to, uint256 amount) returns (bool)" +] \ No newline at end of file diff --git a/421614-main/CollateralToken_sBTC.json b/421614-main/CollateralToken_sBTC.json new file mode 100644 index 000000000..bdce6a14b --- /dev/null +++ b/421614-main/CollateralToken_sBTC.json @@ -0,0 +1,273 @@ +[ + { + "type": "error", + "name": "InsufficientAllowance", + "inputs": [ + { + "type": "uint256", + "name": "required" + }, + { + "type": "uint256", + "name": "existing" + } + ] + }, + { + "type": "error", + "name": "InsufficientBalance", + "inputs": [ + { + "type": "uint256", + "name": "required" + }, + { + "type": "uint256", + "name": "existing" + } + ] + }, + { + "type": "event", + "anonymous": false, + "name": "Approval", + "inputs": [ + { + "type": "address", + "name": "owner", + "indexed": true + }, + { + "type": "address", + "name": "spender", + "indexed": true + }, + { + "type": "uint256", + "name": "amount" + } + ] + }, + { + "type": "event", + "anonymous": false, + "name": "Transfer", + "inputs": [ + { + "type": "address", + "name": "from", + "indexed": true + }, + { + "type": "address", + "name": "to", + "indexed": true + }, + { + "type": "uint256", + "name": "amount" + } + ] + }, + { + "type": "function", + "name": "allowance", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "address", + "name": "owner" + }, + { + "type": "address", + "name": "spender" + } + ], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "approve", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "balanceOf", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "address", + "name": "owner" + } + ], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "decimals", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint8" + } + ] + }, + { + "type": "function", + "name": "decreaseAllowance", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "subtractedValue" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "increaseAllowance", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "addedValue" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "name", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "string" + } + ] + }, + { + "type": "function", + "name": "symbol", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "string" + } + ] + }, + { + "type": "function", + "name": "totalSupply", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "transfer", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "to" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "transferFrom", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "from" + }, + { + "type": "address", + "name": "to" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + } +] \ No newline at end of file diff --git a/421614-main/CollateralToken_sBTC.readable.json b/421614-main/CollateralToken_sBTC.readable.json new file mode 100644 index 000000000..3dbb8e226 --- /dev/null +++ b/421614-main/CollateralToken_sBTC.readable.json @@ -0,0 +1,17 @@ +[ + "error InsufficientAllowance(uint256 required, uint256 existing)", + "error InsufficientBalance(uint256 required, uint256 existing)", + "event Approval(address indexed owner, address indexed spender, uint256 amount)", + "event Transfer(address indexed from, address indexed to, uint256 amount)", + "function allowance(address owner, address spender) view returns (uint256)", + "function approve(address spender, uint256 amount) returns (bool)", + "function balanceOf(address owner) view returns (uint256)", + "function decimals() view returns (uint8)", + "function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)", + "function increaseAllowance(address spender, uint256 addedValue) returns (bool)", + "function name() view returns (string)", + "function symbol() view returns (string)", + "function totalSupply() view returns (uint256)", + "function transfer(address to, uint256 amount) returns (bool)", + "function transferFrom(address from, address to, uint256 amount) returns (bool)" +] \ No newline at end of file diff --git a/421614-main/CollateralToken_sETH.json b/421614-main/CollateralToken_sETH.json new file mode 100644 index 000000000..bdce6a14b --- /dev/null +++ b/421614-main/CollateralToken_sETH.json @@ -0,0 +1,273 @@ +[ + { + "type": "error", + "name": "InsufficientAllowance", + "inputs": [ + { + "type": "uint256", + "name": "required" + }, + { + "type": "uint256", + "name": "existing" + } + ] + }, + { + "type": "error", + "name": "InsufficientBalance", + "inputs": [ + { + "type": "uint256", + "name": "required" + }, + { + "type": "uint256", + "name": "existing" + } + ] + }, + { + "type": "event", + "anonymous": false, + "name": "Approval", + "inputs": [ + { + "type": "address", + "name": "owner", + "indexed": true + }, + { + "type": "address", + "name": "spender", + "indexed": true + }, + { + "type": "uint256", + "name": "amount" + } + ] + }, + { + "type": "event", + "anonymous": false, + "name": "Transfer", + "inputs": [ + { + "type": "address", + "name": "from", + "indexed": true + }, + { + "type": "address", + "name": "to", + "indexed": true + }, + { + "type": "uint256", + "name": "amount" + } + ] + }, + { + "type": "function", + "name": "allowance", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "address", + "name": "owner" + }, + { + "type": "address", + "name": "spender" + } + ], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "approve", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "balanceOf", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "address", + "name": "owner" + } + ], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "decimals", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint8" + } + ] + }, + { + "type": "function", + "name": "decreaseAllowance", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "subtractedValue" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "increaseAllowance", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "addedValue" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "name", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "string" + } + ] + }, + { + "type": "function", + "name": "symbol", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "string" + } + ] + }, + { + "type": "function", + "name": "totalSupply", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "transfer", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "to" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "transferFrom", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "from" + }, + { + "type": "address", + "name": "to" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + } +] \ No newline at end of file diff --git a/421614-main/CollateralToken_sETH.readable.json b/421614-main/CollateralToken_sETH.readable.json new file mode 100644 index 000000000..3dbb8e226 --- /dev/null +++ b/421614-main/CollateralToken_sETH.readable.json @@ -0,0 +1,17 @@ +[ + "error InsufficientAllowance(uint256 required, uint256 existing)", + "error InsufficientBalance(uint256 required, uint256 existing)", + "event Approval(address indexed owner, address indexed spender, uint256 amount)", + "event Transfer(address indexed from, address indexed to, uint256 amount)", + "function allowance(address owner, address spender) view returns (uint256)", + "function approve(address spender, uint256 amount) returns (bool)", + "function balanceOf(address owner) view returns (uint256)", + "function decimals() view returns (uint8)", + "function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)", + "function increaseAllowance(address spender, uint256 addedValue) returns (bool)", + "function name() view returns (string)", + "function symbol() view returns (string)", + "function totalSupply() view returns (uint256)", + "function transfer(address to, uint256 amount) returns (bool)", + "function transferFrom(address from, address to, uint256 amount) returns (bool)" +] \ No newline at end of file diff --git a/421614-main/MintableToken_fBTC.json b/421614-main/MintableToken_fBTC.json new file mode 100644 index 000000000..ab1a91afd --- /dev/null +++ b/421614-main/MintableToken_fBTC.json @@ -0,0 +1,340 @@ +[ + { + "type": "constructor", + "stateMutability": "payable", + "payable": true, + "inputs": [ + { + "type": "address", + "name": "owner" + }, + { + "type": "string", + "name": "name" + }, + { + "type": "string", + "name": "symbol" + }, + { + "type": "uint8", + "name": "tokenDecimals" + }, + { + "type": "uint256", + "name": "initialSupply" + } + ] + }, + { + "type": "function", + "name": "allowance", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "address", + "name": "owner" + }, + { + "type": "address", + "name": "spender" + } + ], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "approve", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "balanceOf", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "address", + "name": "account" + } + ], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "decimals", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint8" + } + ] + }, + { + "type": "function", + "name": "decreaseAllowance", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "subtractedValue" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "increaseAllowance", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "addedValue" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "mint", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "uint256", + "name": "amount" + }, + { + "type": "address", + "name": "to" + } + ], + "outputs": [] + }, + { + "type": "function", + "name": "name", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "string" + } + ] + }, + { + "type": "function", + "name": "owner", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "address" + } + ] + }, + { + "type": "function", + "name": "renounceOwnership", + "constant": false, + "payable": false, + "inputs": [], + "outputs": [] + }, + { + "type": "function", + "name": "symbol", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "string" + } + ] + }, + { + "type": "function", + "name": "totalSupply", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "transfer", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "to" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "transferFrom", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "from" + }, + { + "type": "address", + "name": "to" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "transferOwnership", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "newOwner" + } + ], + "outputs": [] + }, + { + "type": "event", + "anonymous": false, + "name": "Approval", + "inputs": [ + { + "type": "address", + "name": "owner", + "indexed": true + }, + { + "type": "address", + "name": "spender", + "indexed": true + }, + { + "type": "uint256", + "name": "value" + } + ] + }, + { + "type": "event", + "anonymous": false, + "name": "OwnershipTransferred", + "inputs": [ + { + "type": "address", + "name": "previousOwner", + "indexed": true + }, + { + "type": "address", + "name": "newOwner", + "indexed": true + } + ] + }, + { + "type": "event", + "anonymous": false, + "name": "Transfer", + "inputs": [ + { + "type": "address", + "name": "from", + "indexed": true + }, + { + "type": "address", + "name": "to", + "indexed": true + }, + { + "type": "uint256", + "name": "value" + } + ] + } +] \ No newline at end of file diff --git a/421614-main/MintableToken_fBTC.readable.json b/421614-main/MintableToken_fBTC.readable.json new file mode 100644 index 000000000..fbc6990df --- /dev/null +++ b/421614-main/MintableToken_fBTC.readable.json @@ -0,0 +1,21 @@ +[ + "constructor(address owner, string name, string symbol, uint8 tokenDecimals, uint256 initialSupply) payable", + "function allowance(address owner, address spender) view returns (uint256)", + "function approve(address spender, uint256 amount) returns (bool)", + "function balanceOf(address account) view returns (uint256)", + "function decimals() view returns (uint8)", + "function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)", + "function increaseAllowance(address spender, uint256 addedValue) returns (bool)", + "function mint(uint256 amount, address to)", + "function name() view returns (string)", + "function owner() view returns (address)", + "function renounceOwnership()", + "function symbol() view returns (string)", + "function totalSupply() view returns (uint256)", + "function transfer(address to, uint256 amount) returns (bool)", + "function transferFrom(address from, address to, uint256 amount) returns (bool)", + "function transferOwnership(address newOwner)", + "event Approval(address indexed owner, address indexed spender, uint256 value)", + "event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)", + "event Transfer(address indexed from, address indexed to, uint256 value)" +] \ No newline at end of file diff --git a/421614-main/PerpsMarketProxy.json b/421614-main/PerpsMarketProxy.json index b3e447a00..21403b332 100644 --- a/421614-main/PerpsMarketProxy.json +++ b/421614-main/PerpsMarketProxy.json @@ -1001,7 +1001,7 @@ "inputs": [ { "type": "uint128", - "name": "synthMarketId" + "name": "collateralId" }, { "type": "uint256", @@ -1018,12 +1018,12 @@ "name": "InsufficientCollateralAvailableForWithdraw", "inputs": [ { - "type": "uint256", - "name": "availableUsdDenominated" + "type": "int256", + "name": "withdrawableMarginUsd" }, { "type": "uint256", - "name": "requiredUsdDenominated" + "name": "requestedMarginUsd" } ] }, @@ -1033,7 +1033,7 @@ "inputs": [ { "type": "uint128", - "name": "synthMarketId" + "name": "collateralId" }, { "type": "uint256", @@ -1055,6 +1055,16 @@ } ] }, + { + "type": "error", + "name": "InvalidId", + "inputs": [ + { + "type": "uint128", + "name": "id" + } + ] + }, { "type": "error", "name": "KeeperCostsNotSet", @@ -1066,7 +1076,7 @@ "inputs": [ { "type": "uint128", - "name": "synthMarketId" + "name": "collateralId" }, { "type": "uint256", @@ -1092,6 +1102,16 @@ } ] }, + { + "type": "error", + "name": "NonexistentDebt", + "inputs": [ + { + "type": "uint128", + "name": "accountId" + } + ] + }, { "type": "error", "name": "OverflowUint128ToInt128", @@ -1118,7 +1138,7 @@ "inputs": [ { "type": "uint128", - "name": "synthMarketId" + "name": "collateralId" } ] }, @@ -1134,7 +1154,7 @@ }, { "type": "uint128", - "name": "synthMarketId", + "name": "collateralId", "indexed": true }, { @@ -1148,6 +1168,62 @@ } ] }, + { + "type": "event", + "anonymous": false, + "name": "DebtPaid", + "inputs": [ + { + "type": "uint128", + "name": "accountId", + "indexed": true + }, + { + "type": "uint256", + "name": "amount" + }, + { + "type": "address", + "name": "sender", + "indexed": true + } + ] + }, + { + "type": "event", + "anonymous": false, + "name": "InterestRateUpdated", + "inputs": [ + { + "type": "uint128", + "name": "superMarketId", + "indexed": true + }, + { + "type": "uint128", + "name": "interestRate" + } + ] + }, + { + "type": "function", + "name": "debt", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "uint128", + "name": "accountId" + } + ], + "outputs": [ + { + "type": "uint256", + "name": "accountDebt" + } + ] + }, { "type": "function", "name": "getAccountCollateralIds", @@ -1216,7 +1292,7 @@ }, { "type": "uint128", - "name": "synthMarketId" + "name": "collateralId" } ], "outputs": [ @@ -1341,7 +1417,7 @@ }, { "type": "uint128", - "name": "synthMarketId" + "name": "collateralId" }, { "type": "int256", @@ -1350,6 +1426,23 @@ ], "outputs": [] }, + { + "type": "function", + "name": "payDebt", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "uint128", + "name": "accountId" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [] + }, { "type": "function", "name": "totalAccountOpenInterest", @@ -1588,6 +1681,20 @@ } ] }, + { + "type": "error", + "name": "ExceedsMarketCreditCapacity", + "inputs": [ + { + "type": "int256", + "name": "delegatedCollateral" + }, + { + "type": "int256", + "name": "newLockedCredit" + } + ] + }, { "type": "error", "name": "InsufficientMargin", @@ -2063,16 +2170,6 @@ } ] }, - { - "type": "error", - "name": "InsufficientAccountMargin", - "inputs": [ - { - "type": "uint256", - "name": "leftover" - } - ] - }, { "type": "error", "name": "OrderNotValid", @@ -2133,19 +2230,19 @@ { "type": "event", "anonymous": false, - "name": "CollateralDeducted", + "name": "AccountCharged", "inputs": [ { - "type": "uint256", - "name": "account" + "type": "uint128", + "name": "accountId" }, { - "type": "uint128", - "name": "synthMarketId" + "type": "int256", + "name": "amount" }, { "type": "uint256", - "name": "amount" + "name": "accountDebt" } ] }, @@ -2607,6 +2704,30 @@ ], "outputs": [] }, + { + "type": "error", + "name": "AccountHasOpenPositions", + "inputs": [ + { + "type": "uint128", + "name": "accountId" + } + ] + }, + { + "type": "error", + "name": "InvalidDistributor", + "inputs": [ + { + "type": "uint128", + "name": "id" + }, + { + "type": "address", + "name": "distributor" + } + ] + }, { "type": "error", "name": "NotEligibleForLiquidation", @@ -2617,6 +2738,16 @@ } ] }, + { + "type": "error", + "name": "NotEligibleForMarginLiquidation", + "inputs": [ + { + "type": "uint128", + "name": "accountId" + } + ] + }, { "type": "event", "anonymous": false, @@ -2665,6 +2796,26 @@ } ] }, + { + "type": "event", + "anonymous": false, + "name": "AccountMarginLiquidation", + "inputs": [ + { + "type": "uint128", + "name": "accountId", + "indexed": true + }, + { + "type": "uint256", + "name": "seizedMarginValue" + }, + { + "type": "uint256", + "name": "liquidationReward" + } + ] + }, { "type": "event", "anonymous": false, @@ -2709,6 +2860,25 @@ } ] }, + { + "type": "function", + "name": "canLiquidateMarginOnly", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "uint128", + "name": "accountId" + } + ], + "outputs": [ + { + "type": "bool", + "name": "isEligible" + } + ] + }, { "type": "function", "name": "flaggedAccounts", @@ -2777,6 +2947,24 @@ } ] }, + { + "type": "function", + "name": "liquidateMarginOnly", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "uint128", + "name": "accountId" + } + ], + "outputs": [ + { + "type": "uint256", + "name": "liquidationReward" + } + ] + }, { "type": "function", "name": "liquidationCapacity", @@ -3666,48 +3854,77 @@ }, { "type": "error", - "name": "InvalidFeeCollectorInterface", + "name": "InvalidDistributorContract", "inputs": [ { "type": "address", - "name": "invalidFeeCollector" + "name": "distributor" } ] }, { - "type": "error", - "name": "InvalidInterestRateParameters", + "type": "event", + "anonymous": false, + "name": "CollateralConfigurationSet", "inputs": [ { "type": "uint128", - "name": "lowUtilizationInterestRateGradient" + "name": "collateralId", + "indexed": true }, { - "type": "uint128", - "name": "highUtilizationInterestRateGradient" + "type": "uint256", + "name": "maxCollateralAmount" + }, + { + "type": "uint256", + "name": "upperLimitDiscount" + }, + { + "type": "uint256", + "name": "lowerLimitDiscount" + }, + { + "type": "uint256", + "name": "discountScalar" } ] }, { - "type": "error", - "name": "InvalidReferrerShareRatio", + "type": "event", + "anonymous": false, + "name": "CollateralLiquidateRewardRatioSet", "inputs": [ { - "type": "uint256", - "name": "shareRatioD18" + "type": "uint128", + "name": "collateralLiquidateRewardRatioD18" } ] }, { "type": "event", "anonymous": false, - "name": "CollateralConfigurationSet", + "name": "RewardDistributorRegistered", + "inputs": [ + { + "type": "address", + "name": "distributor" + } + ] + }, + { + "type": "function", + "name": "getCollateralConfiguration", + "constant": true, + "stateMutability": "view", + "payable": false, "inputs": [ { "type": "uint128", - "name": "synthMarketId", - "indexed": true - }, + "name": "collateralId" + } + ], + "outputs": [ { "type": "uint256", "name": "maxCollateralAmount" @@ -3715,48 +3932,219 @@ ] }, { - "type": "event", - "anonymous": false, - "name": "FeeCollectorSet", + "type": "function", + "name": "getCollateralConfigurationFull", + "constant": true, + "stateMutability": "view", + "payable": false, "inputs": [ + { + "type": "uint128", + "name": "collateralId" + } + ], + "outputs": [ + { + "type": "uint256", + "name": "maxCollateralAmount" + }, + { + "type": "uint256", + "name": "upperLimitDiscount" + }, + { + "type": "uint256", + "name": "lowerLimitDiscount" + }, + { + "type": "uint256", + "name": "discountScalar" + } + ] + }, + { + "type": "function", + "name": "getCollateralLiquidateRewardRatio", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint128", + "name": "collateralLiquidateRewardRatioD18" + } + ] + }, + { + "type": "function", + "name": "getRegisteredDistributor", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "uint128", + "name": "collateralId" + } + ], + "outputs": [ { "type": "address", - "name": "feeCollector" + "name": "distributor" + }, + { + "type": "address[]", + "name": "poolDelegatedCollateralTypes" } ] }, { - "type": "event", - "anonymous": false, - "name": "InterestRateParametersSet", + "type": "function", + "name": "isRegistered", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "address", + "name": "distributor" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "registerDistributor", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "token" + }, + { + "type": "address", + "name": "distributor" + }, + { + "type": "uint128", + "name": "collateralId" + }, + { + "type": "address[]", + "name": "poolDelegatedCollateralTypes" + } + ], + "outputs": [] + }, + { + "type": "function", + "name": "setCollateralConfiguration", + "constant": false, + "payable": false, "inputs": [ + { + "type": "uint128", + "name": "collateralId" + }, { "type": "uint256", - "name": "lowUtilizationInterestRateGradient" + "name": "maxCollateralAmount" }, { "type": "uint256", - "name": "interestRateGradientBreakpoint" + "name": "upperLimitDiscount" + }, + { + "type": "uint256", + "name": "lowerLimitDiscount" }, { "type": "uint256", + "name": "discountScalar" + } + ], + "outputs": [] + }, + { + "type": "function", + "name": "setCollateralLiquidateRewardRatio", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "uint128", + "name": "collateralLiquidateRewardRatioD18" + } + ], + "outputs": [] + }, + { + "type": "error", + "name": "InvalidFeeCollectorInterface", + "inputs": [ + { + "type": "address", + "name": "invalidFeeCollector" + } + ] + }, + { + "type": "error", + "name": "InvalidInterestRateParameters", + "inputs": [ + { + "type": "uint128", + "name": "lowUtilizationInterestRateGradient" + }, + { + "type": "uint128", "name": "highUtilizationInterestRateGradient" } ] }, + { + "type": "error", + "name": "InvalidReferrerShareRatio", + "inputs": [ + { + "type": "uint256", + "name": "shareRatioD18" + } + ] + }, { "type": "event", "anonymous": false, - "name": "InterestRateUpdated", + "name": "FeeCollectorSet", "inputs": [ { - "type": "uint128", - "name": "superMarketId", - "indexed": true + "type": "address", + "name": "feeCollector" + } + ] + }, + { + "type": "event", + "anonymous": false, + "name": "InterestRateParametersSet", + "inputs": [ + { + "type": "uint256", + "name": "lowUtilizationInterestRateGradient" }, { - "type": "uint128", - "name": "interestRate" + "type": "uint256", + "name": "interestRateGradientBreakpoint" + }, + { + "type": "uint256", + "name": "highUtilizationInterestRateGradient" } ] }, @@ -3824,36 +4212,6 @@ } ] }, - { - "type": "event", - "anonymous": false, - "name": "SynthDeductionPrioritySet", - "inputs": [ - { - "type": "uint128[]", - "name": "newSynthDeductionPriority" - } - ] - }, - { - "type": "function", - "name": "getCollateralConfiguration", - "constant": true, - "stateMutability": "view", - "payable": false, - "inputs": [ - { - "type": "uint128", - "name": "synthMarketId" - } - ], - "outputs": [ - { - "type": "uint256", - "name": "maxCollateralAmount" - } - ] - }, { "type": "function", "name": "getFeeCollector", @@ -3995,19 +4353,6 @@ } ] }, - { - "type": "function", - "name": "getSynthDeductionPriority", - "constant": true, - "stateMutability": "view", - "payable": false, - "inputs": [], - "outputs": [ - { - "type": "uint128[]" - } - ] - }, { "type": "function", "name": "globalCollateralValue", @@ -4027,23 +4372,6 @@ } ] }, - { - "type": "function", - "name": "setCollateralConfiguration", - "constant": false, - "payable": false, - "inputs": [ - { - "type": "uint128", - "name": "synthMarketId" - }, - { - "type": "uint256", - "name": "maxCollateralAmount" - } - ], - "outputs": [] - }, { "type": "function", "name": "setFeeCollector", @@ -4120,19 +4448,6 @@ ], "outputs": [] }, - { - "type": "function", - "name": "setSynthDeductionPriority", - "constant": false, - "payable": false, - "inputs": [ - { - "type": "uint128[]", - "name": "newSynthDeductionPriority" - } - ], - "outputs": [] - }, { "type": "function", "name": "totalGlobalCollateralValue", diff --git a/421614-main/PerpsMarketProxy.readable.json b/421614-main/PerpsMarketProxy.readable.json index b5703c57a..8cc6c0e52 100644 --- a/421614-main/PerpsMarketProxy.readable.json +++ b/421614-main/PerpsMarketProxy.readable.json @@ -68,27 +68,33 @@ "function utilizationRate() view returns (uint256 rate, uint256 delegatedCollateral, uint256 lockedCredit)", "error AccountLiquidatable(uint128 accountId)", "error AccountNotFound(uint128 accountId)", - "error InsufficientCollateral(uint128 synthMarketId, uint256 collateralAmount, uint256 withdrawAmount)", - "error InsufficientCollateralAvailableForWithdraw(uint256 availableUsdDenominated, uint256 requiredUsdDenominated)", - "error InsufficientSynthCollateral(uint128 synthMarketId, uint256 collateralAmount, uint256 withdrawAmount)", + "error InsufficientCollateral(uint128 collateralId, uint256 collateralAmount, uint256 withdrawAmount)", + "error InsufficientCollateralAvailableForWithdraw(int256 withdrawableMarginUsd, uint256 requestedMarginUsd)", + "error InsufficientSynthCollateral(uint128 collateralId, uint256 collateralAmount, uint256 withdrawAmount)", "error InvalidAmountDelta(int256 amountDelta)", + "error InvalidId(uint128 id)", "error KeeperCostsNotSet()", - "error MaxCollateralExceeded(uint128 synthMarketId, uint256 maxAmount, uint256 collateralAmount, uint256 depositAmount)", + "error MaxCollateralExceeded(uint128 collateralId, uint256 maxAmount, uint256 collateralAmount, uint256 depositAmount)", "error MaxCollateralsPerAccountReached(uint128 maxCollateralsPerAccount)", + "error NonexistentDebt(uint128 accountId)", "error OverflowUint128ToInt128()", "error PendingOrderExists()", "error PriceFeedNotSet(uint128 marketId)", - "error SynthNotEnabledForCollateral(uint128 synthMarketId)", - "event CollateralModified(uint128 indexed accountId, uint128 indexed synthMarketId, int256 amountDelta, address indexed sender)", + "error SynthNotEnabledForCollateral(uint128 collateralId)", + "event CollateralModified(uint128 indexed accountId, uint128 indexed collateralId, int256 amountDelta, address indexed sender)", + "event DebtPaid(uint128 indexed accountId, uint256 amount, address indexed sender)", + "event InterestRateUpdated(uint128 indexed superMarketId, uint128 interestRate)", + "function debt(uint128 accountId) view returns (uint256 accountDebt)", "function getAccountCollateralIds(uint128 accountId) view returns (uint256[])", "function getAccountOpenPositions(uint128 accountId) view returns (uint256[])", "function getAvailableMargin(uint128 accountId) view returns (int256 availableMargin)", - "function getCollateralAmount(uint128 accountId, uint128 synthMarketId) view returns (uint256)", + "function getCollateralAmount(uint128 accountId, uint128 collateralId) view returns (uint256)", "function getOpenPosition(uint128 accountId, uint128 marketId) view returns (int256 totalPnl, int256 accruedFunding, int128 positionSize, uint256 owedInterest)", "function getOpenPositionSize(uint128 accountId, uint128 marketId) view returns (int128 positionSize)", "function getRequiredMargins(uint128 accountId) view returns (uint256 requiredInitialMargin, uint256 requiredMaintenanceMargin, uint256 maxLiquidationReward)", "function getWithdrawableMargin(uint128 accountId) view returns (int256 withdrawableMargin)", - "function modifyCollateral(uint128 accountId, uint128 synthMarketId, int256 amountDelta)", + "function modifyCollateral(uint128 accountId, uint128 collateralId, int256 amountDelta)", + "function payDebt(uint128 accountId, uint256 amount)", "function totalAccountOpenInterest(uint128 accountId) view returns (uint256)", "function totalCollateralValue(uint128 accountId) view returns (uint256)", "function currentFundingRate(uint128 marketId) view returns (int256)", @@ -100,6 +106,7 @@ "function metadata(uint128 marketId) view returns (string name, string symbol)", "function size(uint128 marketId) view returns (uint256)", "function skew(uint128 marketId) view returns (int256)", + "error ExceedsMarketCreditCapacity(int256 delegatedCollateral, int256 newLockedCredit)", "error InsufficientMargin(int256 availableMargin, uint256 minMargin)", "error InvalidSettlementStrategy(uint256 settlementStrategyId)", "error MaxOpenInterestReached(uint128 marketId, uint256 maxMarketSize, int256 newSideSize)", @@ -117,14 +124,13 @@ "function requiredMarginForOrder(uint128 accountId, uint128 marketId, int128 sizeDelta) view returns (uint256 requiredMargin)", "function requiredMarginForOrderWithPrice(uint128 accountId, uint128 marketId, int128 sizeDelta, uint256 price) view returns (uint256 requiredMargin)", "error AcceptablePriceExceeded(uint256 fillPrice, uint256 acceptablePrice)", - "error InsufficientAccountMargin(uint256 leftover)", "error OrderNotValid()", "error OverflowInt128ToUint128()", "error OverflowUint256ToUint64()", "error SettlementStrategyNotFound(uint8 strategyType)", "error SettlementWindowExpired(uint256 timestamp, uint256 settlementTime, uint256 settlementExpiration)", "error SettlementWindowNotOpen(uint256 timestamp, uint256 settlementTime)", - "event CollateralDeducted(uint256 account, uint128 synthMarketId, uint256 amount)", + "event AccountCharged(uint128 accountId, int256 amount, uint256 accountDebt)", "event InterestCharged(uint128 indexed accountId, uint256 interest)", "event MarketUpdated(uint128 marketId, uint256 price, int256 skew, uint256 size, int256 sizeDelta, int256 currentFundingRate, int256 currentFundingVelocity, uint128 interestRate)", "event OrderSettled(uint128 indexed marketId, uint128 indexed accountId, uint256 fillPrice, int256 pnl, int256 accruedFunding, int128 sizeDelta, int128 newSize, uint256 totalFees, uint256 referralFees, uint256 collectedFees, uint256 settlementReward, bytes32 indexed trackingCode, address settler)", @@ -147,15 +153,21 @@ "function setDeniers(bytes32 feature, address[] deniers)", "function setFeatureFlagAllowAll(bytes32 feature, bool allowAll)", "function setFeatureFlagDenyAll(bytes32 feature, bool denyAll)", + "error AccountHasOpenPositions(uint128 accountId)", + "error InvalidDistributor(uint128 id, address distributor)", "error NotEligibleForLiquidation(uint128 accountId)", + "error NotEligibleForMarginLiquidation(uint128 accountId)", "event AccountFlaggedForLiquidation(uint128 indexed accountId, int256 availableMargin, uint256 requiredMaintenanceMargin, uint256 liquidationReward, uint256 flagReward)", "event AccountLiquidationAttempt(uint128 indexed accountId, uint256 reward, bool fullLiquidation)", + "event AccountMarginLiquidation(uint128 indexed accountId, uint256 seizedMarginValue, uint256 liquidationReward)", "event PositionLiquidated(uint128 indexed accountId, uint128 indexed marketId, uint256 amountLiquidated, int128 currentPositionSize)", "function canLiquidate(uint128 accountId) view returns (bool isEligible)", + "function canLiquidateMarginOnly(uint128 accountId) view returns (bool isEligible)", "function flaggedAccounts() view returns (uint256[] accountIds)", "function liquidate(uint128 accountId) returns (uint256 liquidationReward)", "function liquidateFlagged(uint256 maxNumberOfAccounts) returns (uint256 liquidationReward)", "function liquidateFlaggedAccounts(uint128[] accountIds) returns (uint256 liquidationReward)", + "function liquidateMarginOnly(uint128 accountId) returns (uint256 liquidationReward)", "function liquidationCapacity(uint128 marketId) view returns (uint256 capacity, uint256 maxLiquidationInWindow, uint256 latestLiquidationTimestamp)", "error InvalidSettlementWindowDuration(uint256 duration)", "event FundingParametersSet(uint128 indexed marketId, uint256 skewScale, uint256 maxFundingVelocity)", @@ -188,19 +200,27 @@ "function setSettlementStrategy(uint128 marketId, uint256 strategyId, tuple(uint8 strategyType, uint256 settlementDelay, uint256 settlementWindowDuration, address priceVerificationContract, bytes32 feedId, uint256 settlementReward, bool disabled, uint256 commitmentPriceDelay) strategy)", "function setSettlementStrategyEnabled(uint128 marketId, uint256 strategyId, bool enabled)", "function updatePriceData(uint128 perpsMarketId, bytes32 feedId, uint256 strictStalenessTolerance)", + "error InvalidDistributorContract(address distributor)", + "event CollateralConfigurationSet(uint128 indexed collateralId, uint256 maxCollateralAmount, uint256 upperLimitDiscount, uint256 lowerLimitDiscount, uint256 discountScalar)", + "event CollateralLiquidateRewardRatioSet(uint128 collateralLiquidateRewardRatioD18)", + "event RewardDistributorRegistered(address distributor)", + "function getCollateralConfiguration(uint128 collateralId) view returns (uint256 maxCollateralAmount)", + "function getCollateralConfigurationFull(uint128 collateralId) view returns (uint256 maxCollateralAmount, uint256 upperLimitDiscount, uint256 lowerLimitDiscount, uint256 discountScalar)", + "function getCollateralLiquidateRewardRatio() view returns (uint128 collateralLiquidateRewardRatioD18)", + "function getRegisteredDistributor(uint128 collateralId) view returns (address distributor, address[] poolDelegatedCollateralTypes)", + "function isRegistered(address distributor) view returns (bool)", + "function registerDistributor(address token, address distributor, uint128 collateralId, address[] poolDelegatedCollateralTypes)", + "function setCollateralConfiguration(uint128 collateralId, uint256 maxCollateralAmount, uint256 upperLimitDiscount, uint256 lowerLimitDiscount, uint256 discountScalar)", + "function setCollateralLiquidateRewardRatio(uint128 collateralLiquidateRewardRatioD18)", "error InvalidFeeCollectorInterface(address invalidFeeCollector)", "error InvalidInterestRateParameters(uint128 lowUtilizationInterestRateGradient, uint128 highUtilizationInterestRateGradient)", "error InvalidReferrerShareRatio(uint256 shareRatioD18)", - "event CollateralConfigurationSet(uint128 indexed synthMarketId, uint256 maxCollateralAmount)", "event FeeCollectorSet(address feeCollector)", "event InterestRateParametersSet(uint256 lowUtilizationInterestRateGradient, uint256 interestRateGradientBreakpoint, uint256 highUtilizationInterestRateGradient)", - "event InterestRateUpdated(uint128 indexed superMarketId, uint128 interestRate)", "event KeeperCostNodeIdUpdated(bytes32 keeperCostNodeId)", "event KeeperRewardGuardsSet(uint256 minKeeperRewardUsd, uint256 minKeeperProfitRatioD18, uint256 maxKeeperRewardUsd, uint256 maxKeeperScalingRatioD18)", "event PerAccountCapsSet(uint128 maxPositionsPerAccount, uint128 maxCollateralsPerAccount)", "event ReferrerShareUpdated(address referrer, uint256 shareRatioD18)", - "event SynthDeductionPrioritySet(uint128[] newSynthDeductionPriority)", - "function getCollateralConfiguration(uint128 synthMarketId) view returns (uint256 maxCollateralAmount)", "function getFeeCollector() view returns (address feeCollector)", "function getInterestRateParameters() view returns (uint128 lowUtilizationInterestRateGradient, uint128 interestRateGradientBreakpoint, uint128 highUtilizationInterestRateGradient)", "function getKeeperCostNodeId() view returns (bytes32 keeperCostNodeId)", @@ -209,14 +229,11 @@ "function getPerAccountCaps() view returns (uint128 maxPositionsPerAccount, uint128 maxCollateralsPerAccount)", "function getReferrerShare(address referrer) view returns (uint256 shareRatioD18)", "function getSupportedCollaterals() view returns (uint256[] supportedCollaterals)", - "function getSynthDeductionPriority() view returns (uint128[])", "function globalCollateralValue(uint128 collateralId) view returns (uint256 collateralValue)", - "function setCollateralConfiguration(uint128 synthMarketId, uint256 maxCollateralAmount)", "function setFeeCollector(address feeCollector)", "function setInterestRateParameters(uint128 lowUtilizationInterestRateGradient, uint128 interestRateGradientBreakpoint, uint128 highUtilizationInterestRateGradient)", "function setKeeperRewardGuards(uint256 minKeeperRewardUsd, uint256 minKeeperProfitRatioD18, uint256 maxKeeperRewardUsd, uint256 maxKeeperScalingRatioD18)", "function setPerAccountCaps(uint128 maxPositionsPerAccount, uint128 maxCollateralsPerAccount)", - "function setSynthDeductionPriority(uint128[] newSynthDeductionPriority)", "function totalGlobalCollateralValue() view returns (uint256 totalCollateralValue)", "function updateInterestRate()", "function updateKeeperCostNodeId(bytes32 keeperCostNodeId)", diff --git a/421614-main/SpotMarketProxy.json b/421614-main/SpotMarketProxy.json index 853301abb..ac692b0f0 100644 --- a/421614-main/SpotMarketProxy.json +++ b/421614-main/SpotMarketProxy.json @@ -215,6 +215,16 @@ } ] }, + { + "type": "error", + "name": "InvalidTransactionTypeIndex", + "inputs": [ + { + "type": "uint128", + "name": "txnType" + } + ] + }, { "type": "error", "name": "MismatchAssociatedSystemKind", @@ -609,6 +619,33 @@ } ] }, + { + "type": "function", + "name": "indexPrice", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "uint128", + "name": "marketId" + }, + { + "type": "uint128", + "name": "transactionType" + }, + { + "type": "uint8", + "name": "priceTolerance" + } + ], + "outputs": [ + { + "type": "uint256", + "name": "price" + } + ] + }, { "type": "function", "name": "initOrUpgradeNft", diff --git a/421614-main/SpotMarketProxy.readable.json b/421614-main/SpotMarketProxy.readable.json index abcf83c2b..83e479e3f 100644 --- a/421614-main/SpotMarketProxy.readable.json +++ b/421614-main/SpotMarketProxy.readable.json @@ -20,6 +20,7 @@ "error FeatureUnavailable(bytes32 which)", "error InvalidMarketOwner()", "error InvalidSynthImplementation(uint256 synthImplementation)", + "error InvalidTransactionTypeIndex(uint128 txnType)", "error MismatchAssociatedSystemKind(bytes32 expected, bytes32 actual)", "error MissingAssociatedSystem(bytes32 id)", "error OnlyMarketOwner(address marketOwner, address sender)", @@ -42,6 +43,7 @@ "function getPriceData(uint128 synthMarketId) view returns (bytes32 buyFeedId, bytes32 sellFeedId, uint256 strictPriceStalenessTolerance)", "function getSynth(uint128 marketId) view returns (address synthAddress)", "function getSynthImpl(uint128 marketId) view returns (address implAddress)", + "function indexPrice(uint128 marketId, uint128 transactionType, uint8 priceTolerance) view returns (uint256 price)", "function initOrUpgradeNft(bytes32 id, string name, string symbol, string uri, address impl)", "function initOrUpgradeToken(bytes32 id, string name, string symbol, uint8 decimals, address impl)", "function minimumCredit(uint128 marketId) view returns (uint256 lockedAmount)", diff --git a/421614-main/SynthToken_sBTC.json b/421614-main/SynthToken_sBTC.json new file mode 100644 index 000000000..3feb59732 --- /dev/null +++ b/421614-main/SynthToken_sBTC.json @@ -0,0 +1,448 @@ +[ + { + "type": "error", + "name": "AlreadyInitialized", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientAllowance", + "inputs": [ + { + "type": "uint256", + "name": "required" + }, + { + "type": "uint256", + "name": "existing" + } + ] + }, + { + "type": "error", + "name": "InsufficientBalance", + "inputs": [ + { + "type": "uint256", + "name": "required" + }, + { + "type": "uint256", + "name": "existing" + } + ] + }, + { + "type": "error", + "name": "InvalidDecayRate", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidParameter", + "inputs": [ + { + "type": "string", + "name": "parameter" + }, + { + "type": "string", + "name": "reason" + } + ] + }, + { + "type": "error", + "name": "Unauthorized", + "inputs": [ + { + "type": "address", + "name": "addr" + } + ] + }, + { + "type": "event", + "anonymous": false, + "name": "Approval", + "inputs": [ + { + "type": "address", + "name": "owner", + "indexed": true + }, + { + "type": "address", + "name": "spender", + "indexed": true + }, + { + "type": "uint256", + "name": "amount" + } + ] + }, + { + "type": "event", + "anonymous": false, + "name": "Transfer", + "inputs": [ + { + "type": "address", + "name": "from", + "indexed": true + }, + { + "type": "address", + "name": "to", + "indexed": true + }, + { + "type": "uint256", + "name": "amount" + } + ] + }, + { + "type": "function", + "name": "advanceEpoch", + "constant": false, + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "allowance", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "address", + "name": "owner" + }, + { + "type": "address", + "name": "spender" + } + ], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "approve", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "balanceOf", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "address", + "name": "user" + } + ], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "burn", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "from" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [] + }, + { + "type": "function", + "name": "decayRate", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "decimals", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint8" + } + ] + }, + { + "type": "function", + "name": "decreaseAllowance", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "subtractedValue" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "increaseAllowance", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "addedValue" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "initialize", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "string", + "name": "tokenName" + }, + { + "type": "string", + "name": "tokenSymbol" + }, + { + "type": "uint8", + "name": "tokenDecimals" + } + ], + "outputs": [] + }, + { + "type": "function", + "name": "isInitialized", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "mint", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "to" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [] + }, + { + "type": "function", + "name": "name", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "string" + } + ] + }, + { + "type": "function", + "name": "setAllowance", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "from" + }, + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [] + }, + { + "type": "function", + "name": "setDecayRate", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "uint256", + "name": "_rate" + } + ], + "outputs": [] + }, + { + "type": "function", + "name": "symbol", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "string" + } + ] + }, + { + "type": "function", + "name": "totalShares", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "totalSupply", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint256", + "name": "supply" + } + ] + }, + { + "type": "function", + "name": "transfer", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "to" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "transferFrom", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "from" + }, + { + "type": "address", + "name": "to" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + } +] \ No newline at end of file diff --git a/421614-main/SynthToken_sBTC.readable.json b/421614-main/SynthToken_sBTC.readable.json new file mode 100644 index 000000000..4b0300293 --- /dev/null +++ b/421614-main/SynthToken_sBTC.readable.json @@ -0,0 +1,30 @@ +[ + "error AlreadyInitialized()", + "error InsufficientAllowance(uint256 required, uint256 existing)", + "error InsufficientBalance(uint256 required, uint256 existing)", + "error InvalidDecayRate()", + "error InvalidParameter(string parameter, string reason)", + "error Unauthorized(address addr)", + "event Approval(address indexed owner, address indexed spender, uint256 amount)", + "event Transfer(address indexed from, address indexed to, uint256 amount)", + "function advanceEpoch() returns (uint256)", + "function allowance(address owner, address spender) view returns (uint256)", + "function approve(address spender, uint256 amount) returns (bool)", + "function balanceOf(address user) view returns (uint256)", + "function burn(address from, uint256 amount)", + "function decayRate() view returns (uint256)", + "function decimals() view returns (uint8)", + "function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)", + "function increaseAllowance(address spender, uint256 addedValue) returns (bool)", + "function initialize(string tokenName, string tokenSymbol, uint8 tokenDecimals)", + "function isInitialized() view returns (bool)", + "function mint(address to, uint256 amount)", + "function name() view returns (string)", + "function setAllowance(address from, address spender, uint256 amount)", + "function setDecayRate(uint256 _rate)", + "function symbol() view returns (string)", + "function totalShares() view returns (uint256)", + "function totalSupply() view returns (uint256 supply)", + "function transfer(address to, uint256 amount) returns (bool)", + "function transferFrom(address from, address to, uint256 amount) returns (bool)" +] \ No newline at end of file diff --git a/421614-main/SynthToken_sETH.json b/421614-main/SynthToken_sETH.json new file mode 100644 index 000000000..3feb59732 --- /dev/null +++ b/421614-main/SynthToken_sETH.json @@ -0,0 +1,448 @@ +[ + { + "type": "error", + "name": "AlreadyInitialized", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientAllowance", + "inputs": [ + { + "type": "uint256", + "name": "required" + }, + { + "type": "uint256", + "name": "existing" + } + ] + }, + { + "type": "error", + "name": "InsufficientBalance", + "inputs": [ + { + "type": "uint256", + "name": "required" + }, + { + "type": "uint256", + "name": "existing" + } + ] + }, + { + "type": "error", + "name": "InvalidDecayRate", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidParameter", + "inputs": [ + { + "type": "string", + "name": "parameter" + }, + { + "type": "string", + "name": "reason" + } + ] + }, + { + "type": "error", + "name": "Unauthorized", + "inputs": [ + { + "type": "address", + "name": "addr" + } + ] + }, + { + "type": "event", + "anonymous": false, + "name": "Approval", + "inputs": [ + { + "type": "address", + "name": "owner", + "indexed": true + }, + { + "type": "address", + "name": "spender", + "indexed": true + }, + { + "type": "uint256", + "name": "amount" + } + ] + }, + { + "type": "event", + "anonymous": false, + "name": "Transfer", + "inputs": [ + { + "type": "address", + "name": "from", + "indexed": true + }, + { + "type": "address", + "name": "to", + "indexed": true + }, + { + "type": "uint256", + "name": "amount" + } + ] + }, + { + "type": "function", + "name": "advanceEpoch", + "constant": false, + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "allowance", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "address", + "name": "owner" + }, + { + "type": "address", + "name": "spender" + } + ], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "approve", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "balanceOf", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [ + { + "type": "address", + "name": "user" + } + ], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "burn", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "from" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [] + }, + { + "type": "function", + "name": "decayRate", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "decimals", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint8" + } + ] + }, + { + "type": "function", + "name": "decreaseAllowance", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "subtractedValue" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "increaseAllowance", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "addedValue" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "initialize", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "string", + "name": "tokenName" + }, + { + "type": "string", + "name": "tokenSymbol" + }, + { + "type": "uint8", + "name": "tokenDecimals" + } + ], + "outputs": [] + }, + { + "type": "function", + "name": "isInitialized", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "mint", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "to" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [] + }, + { + "type": "function", + "name": "name", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "string" + } + ] + }, + { + "type": "function", + "name": "setAllowance", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "from" + }, + { + "type": "address", + "name": "spender" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [] + }, + { + "type": "function", + "name": "setDecayRate", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "uint256", + "name": "_rate" + } + ], + "outputs": [] + }, + { + "type": "function", + "name": "symbol", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "string" + } + ] + }, + { + "type": "function", + "name": "totalShares", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint256" + } + ] + }, + { + "type": "function", + "name": "totalSupply", + "constant": true, + "stateMutability": "view", + "payable": false, + "inputs": [], + "outputs": [ + { + "type": "uint256", + "name": "supply" + } + ] + }, + { + "type": "function", + "name": "transfer", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "to" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + }, + { + "type": "function", + "name": "transferFrom", + "constant": false, + "payable": false, + "inputs": [ + { + "type": "address", + "name": "from" + }, + { + "type": "address", + "name": "to" + }, + { + "type": "uint256", + "name": "amount" + } + ], + "outputs": [ + { + "type": "bool" + } + ] + } +] \ No newline at end of file diff --git a/421614-main/SynthToken_sETH.readable.json b/421614-main/SynthToken_sETH.readable.json new file mode 100644 index 000000000..4b0300293 --- /dev/null +++ b/421614-main/SynthToken_sETH.readable.json @@ -0,0 +1,30 @@ +[ + "error AlreadyInitialized()", + "error InsufficientAllowance(uint256 required, uint256 existing)", + "error InsufficientBalance(uint256 required, uint256 existing)", + "error InvalidDecayRate()", + "error InvalidParameter(string parameter, string reason)", + "error Unauthorized(address addr)", + "event Approval(address indexed owner, address indexed spender, uint256 amount)", + "event Transfer(address indexed from, address indexed to, uint256 amount)", + "function advanceEpoch() returns (uint256)", + "function allowance(address owner, address spender) view returns (uint256)", + "function approve(address spender, uint256 amount) returns (bool)", + "function balanceOf(address user) view returns (uint256)", + "function burn(address from, uint256 amount)", + "function decayRate() view returns (uint256)", + "function decimals() view returns (uint8)", + "function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)", + "function increaseAllowance(address spender, uint256 addedValue) returns (bool)", + "function initialize(string tokenName, string tokenSymbol, uint8 tokenDecimals)", + "function isInitialized() view returns (bool)", + "function mint(address to, uint256 amount)", + "function name() view returns (string)", + "function setAllowance(address from, address spender, uint256 amount)", + "function setDecayRate(uint256 _rate)", + "function symbol() view returns (string)", + "function totalShares() view returns (uint256)", + "function totalSupply() view returns (uint256 supply)", + "function transfer(address to, uint256 amount) returns (bool)", + "function transferFrom(address from, address to, uint256 amount) returns (bool)" +] \ No newline at end of file diff --git a/421614-main/cannon.json b/421614-main/cannon.json index 38fb8f24f..a8eb0aa8f 100644 --- a/421614-main/cannon.json +++ b/421614-main/cannon.json @@ -1,6 +1,6 @@ { "generator": "cannon cli 2.15.8", - "timestamp": 1722345255, + "timestamp": 1722632616, "def": { "setting": { "snx_package": { @@ -19,13 +19,13 @@ "defaultValue": "snax" }, "spot_market_package": { - "defaultValue": "synthetix-spot-market:3.3.15" + "defaultValue": "synthetix-spot-market:3.3.21-dev.fd4c5628" }, "perps_market_package": { - "defaultValue": "synthetix-perps-market:3.3.19" + "defaultValue": "synthetix-perps-market:3.4.1" }, "perps_super_market_name": { - "defaultValue": "High MCap" + "defaultValue": "Multi Collateral Perps" }, "usdc_issuance_ratio": { "defaultValue": "<%= parseEther('1.2') %>" @@ -105,6 +105,13 @@ "USDe_min_delegation": { "defaultValue": "<%= parseEther('100') %>" }, + "btc_address": { + "defaultValue": "<%= imports.btc_mock_collateral.contracts.MintableToken.address %>", + "description": "Mock usdc address" + }, + "referrer_fee": { + "defaultValue": "<%= parseEther('0.2') %>" + }, "perps_keeper_cost_package": { "defaultValue": "arbitrum-gas-price-oracle:3.3.16" }, @@ -237,6 +244,18 @@ "defaultValue": "0x6ec879b1e9963de5ee97e9c8710b742d6228252a5e2ca12d4ae81d7fe5ee8c5d", "description": "https://pyth.network/developers/price-feed-ids#pyth-evm-mainnet" }, + "pyth_feed_id_sol": { + "defaultValue": "0xef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d", + "description": "https://pyth.network/developers/price-feed-ids#pyth-evm-mainnet" + }, + "pyth_feed_id_wif": { + "defaultValue": "0x4ca4beeca86f0d164160323817a4e42b10010a724c2217c6ee41b54cd4cc61fc", + "description": "https://pyth.network/developers/price-feed-ids#pyth-evm-mainnet" + }, + "pyth_feed_id_btc": { + "defaultValue": "0xe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43", + "description": "https://pyth.network/developers/price-feed-ids#pyth-evm-mainnet" + }, "usd_token_name": { "defaultValue": "<%= formatBytes32String('USDToken') %>" } @@ -271,7 +290,7 @@ "options": { "coreProxyOwner": "<%= settings.owner %>", "owner": "<%= settings.owner %>", - "salt": "<%= settings.salt %>", + "salt": "multi-coll", "synthetixPackage": "<%= settings.snx_package %>@<%= settings.target_preset %>", "spotMarketPackage": "<%= settings.spot_market_package %>@<%= settings.target_preset %>" }, @@ -344,6 +363,191 @@ "name": "Spartan Council Pool ARB Rewards for USDe LP" } }, + "btc_mock_collateral": { + "source": "mintable-token:1.8", + "target": "synthetix-mock-tokens:1.8@btc", + "options": { + "name": "Fake BTC Coin", + "symbol": "fBTC", + "owner": "<%= settings.owner %>", + "decimals": "18" + } + }, + "perps_gas_oracle_node": { + "source": "<%= settings.perps_keeper_cost_package %>", + "targetPreset": "<%= settings.target_preset %>", + "options": { + "salt": "<%= settings.salt %>" + } + }, + "RewardsDistributor_PerpsCollateral_sETH_ARB_liquidation_rewards": { + "source": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "options": { + "salt": "<%= settings.salt %>", + "rewardManager": "<%= imports.system.contracts.CoreProxy.address %>", + "poolId": "<%= extras.spartan_council_pool_id %>", + "collateralType": "<%= settings.arb_address %>", + "payoutToken": "<%= extras.synth_eth_token_address %>", + "payoutTokenDecimals": "18", + "name": "Perps Collateral Liquidation Rewards for ARB (as sETH)", + "authorizedDistributor": "<%= imports.perpsFactory.contracts.PerpsMarketProxy.address %>" + } + }, + "RewardsDistributor_PerpsCollateral_sETH_DAI_liquidation_rewards": { + "source": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "options": { + "salt": "<%= settings.salt %>", + "rewardManager": "<%= imports.system.contracts.CoreProxy.address %>", + "poolId": "<%= extras.spartan_council_pool_id %>", + "collateralType": "<%= settings.dai_address %>", + "payoutToken": "<%= extras.synth_eth_token_address %>", + "payoutTokenDecimals": "18", + "name": "Perps Collateral Liquidation Rewards for DAI (as sETH)", + "authorizedDistributor": "<%= imports.perpsFactory.contracts.PerpsMarketProxy.address %>" + } + }, + "RewardsDistributor_PerpsCollateral_sETH_USDC_liquidation_rewards": { + "source": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "options": { + "salt": "<%= settings.salt %>", + "rewardManager": "<%= imports.system.contracts.CoreProxy.address %>", + "poolId": "<%= extras.spartan_council_pool_id %>", + "collateralType": "<%= settings.usdc_address %>", + "payoutToken": "<%= extras.synth_eth_token_address %>", + "payoutTokenDecimals": "18", + "name": "Perps Collateral Liquidation Rewards for USDC (as sETH)", + "authorizedDistributor": "<%= imports.perpsFactory.contracts.PerpsMarketProxy.address %>" + } + }, + "RewardsDistributor_PerpsCollateral_sETH_USDe_liquidation_rewards": { + "source": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "options": { + "salt": "<%= settings.salt %>", + "rewardManager": "<%= imports.system.contracts.CoreProxy.address %>", + "poolId": "<%= extras.spartan_council_pool_id %>", + "collateralType": "<%= settings.USDe_address %>", + "payoutToken": "<%= extras.synth_eth_token_address %>", + "payoutTokenDecimals": "18", + "name": "Perps Collateral Liquidation Rewards for USDe (as sETH)", + "authorizedDistributor": "<%= imports.perpsFactory.contracts.PerpsMarketProxy.address %>" + } + }, + "RewardsDistributor_PerpsCollateral_sETH_sUSDE_liquidation_rewards": { + "source": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "options": { + "salt": "<%= settings.salt %>", + "rewardManager": "<%= imports.system.contracts.CoreProxy.address %>", + "poolId": "<%= extras.spartan_council_pool_id %>", + "collateralType": "<%= settings.sUSDe_address %>", + "payoutToken": "<%= extras.synth_eth_token_address %>", + "payoutTokenDecimals": "18", + "name": "Perps Collateral Liquidation Rewards for sUSDE (as sETH)", + "authorizedDistributor": "<%= imports.perpsFactory.contracts.PerpsMarketProxy.address %>" + } + }, + "RewardsDistributor_PerpsCollateral_sETH_wETH_liquidation_rewards": { + "source": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "options": { + "salt": "<%= settings.salt %>", + "rewardManager": "<%= imports.system.contracts.CoreProxy.address %>", + "poolId": "<%= extras.spartan_council_pool_id %>", + "collateralType": "<%= settings.weth_address %>", + "payoutToken": "<%= extras.synth_eth_token_address %>", + "payoutTokenDecimals": "18", + "name": "Perps Collateral Liquidation Rewards for wETH (as sETH)", + "authorizedDistributor": "<%= imports.perpsFactory.contracts.PerpsMarketProxy.address %>" + } + }, + "RewardsDistributor_PerpsCollateral_sBTC_ARB_liquidation_rewards": { + "source": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "options": { + "salt": "<%= settings.salt %>", + "rewardManager": "<%= imports.system.contracts.CoreProxy.address %>", + "poolId": "<%= extras.spartan_council_pool_id %>", + "collateralType": "<%= settings.arb_address %>", + "payoutToken": "<%= extras.synth_btc_token_address %>", + "payoutTokenDecimals": "18", + "name": "Perps Collateral Liquidation Rewards for ARB (as sBTC)", + "authorizedDistributor": "<%= imports.perpsFactory.contracts.PerpsMarketProxy.address %>" + } + }, + "RewardsDistributor_PerpsCollateral_sBTC_DAI_liquidation_rewards": { + "source": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "options": { + "salt": "<%= settings.salt %>", + "rewardManager": "<%= imports.system.contracts.CoreProxy.address %>", + "poolId": "<%= extras.spartan_council_pool_id %>", + "collateralType": "<%= settings.dai_address %>", + "payoutToken": "<%= extras.synth_btc_token_address %>", + "payoutTokenDecimals": "18", + "name": "Perps Collateral Liquidation Rewards for DAI (as sBTC)", + "authorizedDistributor": "<%= imports.perpsFactory.contracts.PerpsMarketProxy.address %>" + } + }, + "RewardsDistributor_PerpsCollateral_sBTC_USDC_liquidation_rewards": { + "source": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "options": { + "salt": "<%= settings.salt %>", + "rewardManager": "<%= imports.system.contracts.CoreProxy.address %>", + "poolId": "<%= extras.spartan_council_pool_id %>", + "collateralType": "<%= settings.usdc_address %>", + "payoutToken": "<%= extras.synth_btc_token_address %>", + "payoutTokenDecimals": "18", + "name": "Perps Collateral Liquidation Rewards for USDC (as sBTC)", + "authorizedDistributor": "<%= imports.perpsFactory.contracts.PerpsMarketProxy.address %>" + } + }, + "RewardsDistributor_PerpsCollateral_sBTC_USDe_liquidation_rewards": { + "source": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "options": { + "salt": "<%= settings.salt %>", + "rewardManager": "<%= imports.system.contracts.CoreProxy.address %>", + "poolId": "<%= extras.spartan_council_pool_id %>", + "collateralType": "<%= settings.USDe_address %>", + "payoutToken": "<%= extras.synth_btc_token_address %>", + "payoutTokenDecimals": "18", + "name": "Perps Collateral Liquidation Rewards for USDe (as sBTC)", + "authorizedDistributor": "<%= imports.perpsFactory.contracts.PerpsMarketProxy.address %>" + } + }, + "RewardsDistributor_PerpsCollateral_sBTC_sUSDE_liquidation_rewards": { + "source": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "options": { + "salt": "<%= settings.salt %>", + "rewardManager": "<%= imports.system.contracts.CoreProxy.address %>", + "poolId": "<%= extras.spartan_council_pool_id %>", + "collateralType": "<%= settings.sUSDe_address %>", + "payoutToken": "<%= extras.synth_btc_token_address %>", + "payoutTokenDecimals": "18", + "name": "Perps Collateral Liquidation Rewards for sUSDE (as sBTC)", + "authorizedDistributor": "<%= imports.perpsFactory.contracts.PerpsMarketProxy.address %>" + } + }, + "RewardsDistributor_PerpsCollateral_sBTC_wETH_liquidation_rewards": { + "source": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "options": { + "salt": "<%= settings.salt %>", + "rewardManager": "<%= imports.system.contracts.CoreProxy.address %>", + "poolId": "<%= extras.spartan_council_pool_id %>", + "collateralType": "<%= settings.weth_address %>", + "payoutToken": "<%= extras.synth_btc_token_address %>", + "payoutTokenDecimals": "18", + "name": "Perps Collateral Liquidation Rewards for wETH (as sBTC)", + "authorizedDistributor": "<%= imports.perpsFactory.contracts.PerpsMarketProxy.address %>" + } + }, "pyth_erc7412_wrapper": { "source": "pyth-erc7412-wrapper:3.3.15", "targetPreset": "<%= settings.target_preset %>", @@ -770,143 +974,6 @@ } } }, - "SpotMarketProxy_createSynth_usdc": { - "target": [ - "spotFactory.SpotMarketProxy" - ], - "fromCall": { - "func": "owner" - }, - "func": "createSynth", - "args": [ - "Synthetic USD Coin", - "sUSDC", - "<%= settings.owner %>" - ], - "extra": { - "synth_usdc_market_id": { - "event": "SynthRegistered", - "arg": 0 - }, - "synth_usdc_token_address": { - "event": "SynthRegistered", - "arg": 1 - } - } - }, - "SpotMarketProxy_updatePriceData_usdc": { - "target": [ - "spotFactory.SpotMarketProxy" - ], - "fromCall": { - "func": "getMarketOwner", - "args": [ - "<%= extras.synth_usdc_market_id %>" - ] - }, - "func": "updatePriceData", - "args": [ - "<%= extras.synth_usdc_market_id %>", - "<%= extras.usdc_oracle_id %>", - "<%= extras.usdc_oracle_id %>", - "<%= settings.usdc_staleness_tolerance %>" - ] - }, - "CoreProxy_configureMaximumMarketCollateral_usdc": { - "target": [ - "system.CoreProxy" - ], - "fromCall": { - "func": "owner", - "args": [] - }, - "func": "configureMaximumMarketCollateral", - "args": [ - "<%= extras.synth_usdc_market_id %>", - "<%= settings.usdc_address %>", - "<%= settings.synth_usdc_max_market_collateral %>" - ] - }, - "SpotMarketProxy_setWrapper_usdc": { - "target": [ - "spotFactory.SpotMarketProxy" - ], - "fromCall": { - "func": "getMarketOwner", - "args": [ - "<%= extras.synth_usdc_market_id %>" - ] - }, - "func": "setWrapper", - "args": [ - "<%= extras.synth_usdc_market_id %>", - "<%= settings.usdc_address %>", - "<%= settings.synth_usdc_max_market_collateral %>" - ] - }, - "SpotMarketProxy_addSettlementStrategy_usdc": { - "target": [ - "spotFactory.SpotMarketProxy" - ], - "fromCall": { - "func": "getMarketOwner", - "args": [ - "<%= extras.synth_usdc_market_id %>" - ] - }, - "func": "addSettlementStrategy", - "args": [ - "<%= extras.synth_usdc_market_id %>", - { - "strategyType": "1", - "settlementDelay": "0", - "settlementWindowDuration": "1", - "priceVerificationContract": "0x0000000000000000000000000000000000000000", - "feedId": "0x0000000000000000000000000000000000000000000000000000000000000000", - "url": "", - "settlementReward": 0, - "minimumUsdExchangeAmount": "0", - "maxRoundingLoss": "1", - "priceDeviationTolerance": "0", - "disabled": false - } - ], - "extra": { - "synth_usdc_settlement_strategy_id": { - "event": "SettlementStrategyAdded", - "arg": 1 - } - } - }, - "SpotMarketProxy_setSettlementStrategy_usdc": { - "target": [ - "spotFactory.SpotMarketProxy" - ], - "fromCall": { - "func": "getMarketOwner", - "args": [ - "<%= extras.synth_usdc_market_id %>" - ] - }, - "func": "setSettlementStrategy", - "args": [ - "<%= extras.synth_usdc_market_id %>", - "<%= extras.synth_usdc_settlement_strategy_id %>", - { - "strategyType": "1", - "settlementDelay": "<%= settings.big_cap_settlement_delay %>", - "settlementWindowDuration": "<%= settings.big_cap_settlement_window_duration %>", - "priceVerificationContract": "<%= imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address %>", - "feedId": "<%= settings.pyth_feed_id_usdc %>", - "url": "<%= settings.pyth_feed_url %>", - "settlementReward": "<%= settings.settlement_reward %>", - "minimumUsdExchangeAmount": "<%= settings.settlement_minimum_usd_exchange_amount %>", - "maxRoundingLoss": "<%= settings.settlement_max_rounding_loss %>", - "priceDeviationTolerance": "<%= settings.price_deviation_tolerance %>", - "disabled": false - } - ] - }, "CoreProxy_configureCollateral_usdc": { "target": [ "system.CoreProxy" @@ -1032,151 +1099,14 @@ } } }, - "SpotMarketProxy_createSynth_dai": { + "CoreProxy_configureCollateral_dai": { "target": [ - "spotFactory.SpotMarketProxy" + "system.CoreProxy" ], "fromCall": { "func": "owner" }, - "func": "createSynth", - "args": [ - "Synthetic DAI", - "sDAI", - "<%= settings.owner %>" - ], - "extra": { - "synth_dai_market_id": { - "event": "SynthRegistered", - "arg": 0 - }, - "synth_dai_token_address": { - "event": "SynthRegistered", - "arg": 1 - } - } - }, - "SpotMarketProxy_updatePriceData_dai": { - "target": [ - "spotFactory.SpotMarketProxy" - ], - "fromCall": { - "func": "getMarketOwner", - "args": [ - "<%= extras.synth_dai_market_id %>" - ] - }, - "func": "updatePriceData", - "args": [ - "<%= extras.synth_dai_market_id %>", - "<%= extras.dai_oracle_id %>", - "<%= extras.dai_oracle_id %>", - "<%= settings.dai_staleness_tolerance %>" - ] - }, - "CoreProxy_configureMaximumMarketCollateral_dai": { - "target": [ - "system.CoreProxy" - ], - "fromCall": { - "func": "owner", - "args": [] - }, - "func": "configureMaximumMarketCollateral", - "args": [ - "<%= extras.synth_dai_market_id %>", - "<%= settings.dai_address %>", - "<%= settings.synth_dai_max_market_collateral %>" - ] - }, - "SpotMarketProxy_setWrapper_dai": { - "target": [ - "spotFactory.SpotMarketProxy" - ], - "fromCall": { - "func": "getMarketOwner", - "args": [ - "<%= extras.synth_dai_market_id %>" - ] - }, - "func": "setWrapper", - "args": [ - "<%= extras.synth_dai_market_id %>", - "<%= settings.dai_address %>", - "<%= settings.synth_dai_max_market_collateral %>" - ] - }, - "SpotMarketProxy_addSettlementStrategy_dai": { - "target": [ - "spotFactory.SpotMarketProxy" - ], - "fromCall": { - "func": "getMarketOwner", - "args": [ - "<%= extras.synth_dai_market_id %>" - ] - }, - "func": "addSettlementStrategy", - "args": [ - "<%= extras.synth_dai_market_id %>", - { - "strategyType": "1", - "settlementDelay": "0", - "settlementWindowDuration": "1", - "priceVerificationContract": "0x0000000000000000000000000000000000000000", - "feedId": "0x0000000000000000000000000000000000000000000000000000000000000000", - "url": "", - "settlementReward": 0, - "minimumUsdExchangeAmount": "0", - "maxRoundingLoss": "1", - "priceDeviationTolerance": "0", - "disabled": false - } - ], - "extra": { - "synth_dai_settlement_strategy_id": { - "event": "SettlementStrategyAdded", - "arg": 1 - } - } - }, - "SpotMarketProxy_setSettlementStrategy_dai": { - "target": [ - "spotFactory.SpotMarketProxy" - ], - "fromCall": { - "func": "getMarketOwner", - "args": [ - "<%= extras.synth_dai_market_id %>" - ] - }, - "func": "setSettlementStrategy", - "args": [ - "<%= extras.synth_dai_market_id %>", - "<%= extras.synth_dai_settlement_strategy_id %>", - { - "strategyType": "1", - "settlementDelay": "<%= settings.big_cap_settlement_delay %>", - "settlementWindowDuration": "<%= settings.big_cap_settlement_window_duration %>", - "priceVerificationContract": "<%= imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address %>", - "feedId": "<%= settings.pyth_feed_id_dai %>", - "url": "<%= settings.pyth_feed_url %>", - "settlementReward": "<%= settings.settlement_reward %>", - "minimumUsdExchangeAmount": "<%= settings.settlement_minimum_usd_exchange_amount %>", - "maxRoundingLoss": "<%= settings.settlement_max_rounding_loss %>", - "priceDeviationTolerance": "<%= settings.price_deviation_tolerance %>", - "disabled": false - } - ] - }, - "CoreProxy_configureCollateral_dai": { - "target": [ - "system.CoreProxy" - ], - "fromCall": { - "func": "owner" - }, - "func": "configureCollateral", + "func": "configureCollateral", "args": [ { "tokenAddress": "<%= settings.dai_address %>", @@ -1694,932 +1624,2864 @@ "<%= imports.RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDe_lp.contracts.RewardsDistributor.address %>" ] }, - "createEthPerpsMarket": { + "registerPythBtcOracleNode": { "target": [ - "perpsFactory.PerpsMarketProxy" + "system.oracle_manager.Proxy" ], - "fromCall": { - "func": "owner" - }, - "func": "createMarket", + "func": "registerNode", "args": [ - "<%= settings.perpsEthMarketId %>", - "Ethereum", - "ETH" + 5, + "<%= defaultAbiCoder.encode(['address', 'bytes32', 'bool'], [settings.pyth_price_verification_address, settings.pyth_feed_id_btc, false]) %>", + [] ], "extra": { - "eth_perps_market_id": { - "event": "MarketCreated", + "btc_pyth_oracle_id": { + "event": "NodeRegistered", "arg": 0 } }, "depends": [ - "invoke.PerpsMarketProxy_addToFeatureFlagAllowlist_createMarket_deployer", - "invoke.PerpsMarketProxy_setFeatureFlagAllowAll_perpsSystem" + "provision.system", + "setting.pyth_feed_id_btc", + "setting.pyth_price_verification_address" ] }, - "setPerpsPriceEth": { + "registerLookupBtcOracleNode": { "target": [ - "perpsFactory.PerpsMarketProxy" + "system.oracle_manager.Proxy" ], - "fromCall": { - "func": "owner" - }, - "func": "updatePriceData", + "func": "registerNode", "args": [ - "<%= extras.eth_perps_market_id %>", - "<%= extras.eth_oracle_id %>", - "<%= settings.big_cap_strict_staleness_tolerance %>" + 9, + "<%= defaultAbiCoder.encode(['address', 'bytes32', 'uint256'], [imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address, settings.pyth_feed_id_btc, settings.big_cap_default_staleness_tolerance]) %>", + [] + ], + "extra": { + "btc_lookup_oracle_id": { + "event": "NodeRegistered", + "arg": 0 + } + }, + "depends": [ + "provision.pyth_erc7412_wrapper", + "provision.system", + "setting.big_cap_default_staleness_tolerance", + "setting.pyth_feed_id_btc" ] }, - "addPerpsEthSettlementStrategy": { + "registerBtcOracleNode": { "target": [ - "perpsFactory.PerpsMarketProxy" + "system.oracle_manager.Proxy" ], - "fromCall": { - "func": "owner" - }, - "func": "addSettlementStrategy", + "func": "registerNode", "args": [ - "<%= extras.eth_perps_market_id %>", - { - "strategyType": "0", - "settlementDelay": "0", - "settlementWindowDuration": "1", - "priceVerificationContract": "0x0000000000000000000000000000000000000000", - "feedId": "0x0000000000000000000000000000000000000000000000000000000000000000", - "settlementReward": "0", - "disabled": false, - "commitmentPriceDelay": "0" - } + 7, + "<%= defaultAbiCoder.encode(['uint256'], [settings.big_cap_default_staleness_tolerance]) %>", + [ + "<%= extras.btc_pyth_oracle_id %>", + "<%= extras.btc_lookup_oracle_id %>" + ] ], "extra": { - "eth_pyth_settlement_strategy": { - "event": "SettlementStrategyAdded", - "arg": 2 + "btc_oracle_id": { + "event": "NodeRegistered", + "arg": 0 } } }, - "setPerpsEthSettlementStrategy": { + "registerPythSolOracleNode": { "target": [ - "perpsFactory.PerpsMarketProxy" + "system.oracle_manager.Proxy" ], - "fromCall": { - "func": "owner" - }, - "func": "setSettlementStrategy", + "func": "registerNode", "args": [ - "<%= extras.eth_perps_market_id %>", - "<%= extras.eth_pyth_settlement_strategy %>", - { - "strategyType": "0", - "settlementDelay": "<%= settings.big_cap_settlement_delay %>", - "settlementWindowDuration": "<%= settings.big_cap_settlement_window_duration %>", - "priceVerificationContract": "<%= imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address %>", - "feedId": "<%= settings.pythEthFeedId %>", - "settlementReward": "<%= settings.settlement_reward %>", - "disabled": false, - "commitmentPriceDelay": "<%= settings.commitment_price_delay %>" + 5, + "<%= defaultAbiCoder.encode(['address', 'bytes32', 'bool'], [settings.pyth_price_verification_address, settings.pyth_feed_id_sol, false]) %>", + [] + ], + "extra": { + "sol_pyth_oracle_id": { + "event": "NodeRegistered", + "arg": 0 } + }, + "depends": [ + "provision.system", + "setting.pyth_feed_id_sol", + "setting.pyth_price_verification_address" ] }, - "setPerpsEthFundingParameters": { + "registerLookupSolOracleNode": { "target": [ - "perpsFactory.PerpsMarketProxy" + "system.oracle_manager.Proxy" ], - "fromCall": { - "func": "owner" - }, - "func": "setFundingParameters", + "func": "registerNode", "args": [ - "<%= extras.eth_perps_market_id %>", - "<%= settings.perpsEthSkewScale %>", - "<%= settings.perpsEthMaxFundingVelocity %>" - ] - }, - "setPerpsEthOrderFees": { - "target": [ - "perpsFactory.PerpsMarketProxy" + 9, + "<%= defaultAbiCoder.encode(['address', 'bytes32', 'uint256'], [imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address, settings.pyth_feed_id_sol, settings.big_cap_default_staleness_tolerance]) %>", + [] ], - "fromCall": { - "func": "owner" + "extra": { + "sol_lookup_oracle_id": { + "event": "NodeRegistered", + "arg": 0 + } }, - "func": "setOrderFees", - "args": [ - "<%= extras.eth_perps_market_id %>", - "<%= settings.perpsEthMakerFeeRatio %>", - "<%= settings.perpsEthTakerFeeRatio %>" + "depends": [ + "provision.pyth_erc7412_wrapper", + "provision.system", + "setting.big_cap_default_staleness_tolerance", + "setting.pyth_feed_id_sol" ] }, - "setPerpsEthMaxMarketSize": { + "registerSolOracleNode": { "target": [ - "perpsFactory.PerpsMarketProxy" + "system.oracle_manager.Proxy" ], - "fromCall": { - "func": "owner" + "func": "registerNode", + "args": [ + 7, + "<%= defaultAbiCoder.encode(['uint256'], [settings.big_cap_default_staleness_tolerance]) %>", + [ + "<%= extras.sol_pyth_oracle_id %>", + "<%= extras.sol_lookup_oracle_id %>" + ] + ], + "extra": { + "sol_oracle_id": { + "event": "NodeRegistered", + "arg": 0 + } + } + }, + "registerPythWifOracleNode": { + "target": [ + "system.oracle_manager.Proxy" + ], + "func": "registerNode", + "args": [ + 5, + "<%= defaultAbiCoder.encode(['address', 'bytes32', 'bool'], [settings.pyth_price_verification_address, settings.pyth_feed_id_wif, false]) %>", + [] + ], + "extra": { + "wif_pyth_oracle_id": { + "event": "NodeRegistered", + "arg": 0 + } }, - "func": "setMaxMarketSize", + "depends": [ + "provision.system", + "setting.pyth_feed_id_wif", + "setting.pyth_price_verification_address" + ] + }, + "registerLookupWifOracleNode": { + "target": [ + "system.oracle_manager.Proxy" + ], + "func": "registerNode", "args": [ - "<%= extras.eth_perps_market_id %>", - "<%= settings.perpsEthMaxMarketSize %>" + 9, + "<%= defaultAbiCoder.encode(['address', 'bytes32', 'uint256'], [imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address, settings.pyth_feed_id_wif, settings.big_cap_default_staleness_tolerance]) %>", + [] + ], + "extra": { + "wif_lookup_oracle_id": { + "event": "NodeRegistered", + "arg": 0 + } + }, + "depends": [ + "provision.pyth_erc7412_wrapper", + "provision.system", + "setting.big_cap_default_staleness_tolerance", + "setting.pyth_feed_id_wif" ] }, - "setPerpsEthMaxMarketValue": { + "registerWifOracleNode": { "target": [ - "perpsFactory.PerpsMarketProxy" + "system.oracle_manager.Proxy" + ], + "func": "registerNode", + "args": [ + 7, + "<%= defaultAbiCoder.encode(['uint256'], [settings.big_cap_default_staleness_tolerance]) %>", + [ + "<%= extras.wif_pyth_oracle_id %>", + "<%= extras.wif_lookup_oracle_id %>" + ] + ], + "extra": { + "wif_oracle_id": { + "event": "NodeRegistered", + "arg": 0 + } + } + }, + "SpotMarketProxy_createSynth_dai": { + "target": [ + "spotFactory.SpotMarketProxy" ], "fromCall": { "func": "owner" }, - "func": "setMaxMarketValue", + "func": "createSynth", "args": [ - "<%= extras.eth_perps_market_id %>", - "<%= settings.perpsEthMaxMarketValue %>" - ] + "Synthetic DAI", + "sDAI", + "<%= settings.owner %>" + ], + "extra": { + "synth_dai_market_id": { + "event": "SynthRegistered", + "arg": 0 + }, + "synth_dai_token_address": { + "event": "SynthRegistered", + "arg": 1 + } + } }, - "setPerpsEthMaxLiquidationParameters": { + "SpotMarketProxy_updatePriceData_dai": { "target": [ - "perpsFactory.PerpsMarketProxy" + "spotFactory.SpotMarketProxy" ], "fromCall": { - "func": "owner" + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_dai_market_id %>" + ] }, - "func": "setMaxLiquidationParameters", + "func": "updatePriceData", "args": [ - "<%= extras.eth_perps_market_id %>", - "<%= settings.perpsEthMaxLiquidationLimitAccumulationMultiplier %>", - "<%= settings.perpsEthMaxSecondsInLiquidationWindow %>", - "<%= settings.perpsEthMaxLiquidationPd %>", - "<%= settings.perpsEthEndorsedLiquidator %>" + "<%= extras.synth_dai_market_id %>", + "<%= extras.dai_oracle_id %>", + "<%= extras.dai_oracle_id %>", + "<%= settings.dai_staleness_tolerance %>" ] }, - "setPerpsEthLiquidationParameters": { + "CoreProxy_configureMaximumMarketCollateral_dai": { "target": [ - "perpsFactory.PerpsMarketProxy" + "system.CoreProxy" ], "fromCall": { - "func": "owner" + "func": "owner", + "args": [] }, - "func": "setLiquidationParameters", + "func": "configureMaximumMarketCollateral", "args": [ - "<%= extras.eth_perps_market_id %>", - "<%= settings.perpsEthInitialMarginRatio %>", - "<%= settings.perpsEthMinimumInitialMarginRatio %>", - "<%= settings.perpsEthMaintenanceMarginScalar %>", - "<%= settings.perpsEthFlagRewardRatioD18 %>", - "<%= settings.perpsEthMinimumPositionMargin %>" + "<%= extras.synth_dai_market_id %>", + "<%= settings.dai_address %>", + "<%= settings.synth_dai_max_market_collateral %>" ] }, - "setPerpsEthLockedOiRatio": { + "SpotMarketProxy_setWrapper_dai": { "target": [ - "perpsFactory.PerpsMarketProxy" + "spotFactory.SpotMarketProxy" ], "fromCall": { - "func": "owner" + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_dai_market_id %>" + ] }, - "func": "setLockedOiRatio", + "func": "setWrapper", "args": [ - "<%= extras.eth_perps_market_id %>", - "<%= settings.perpsEthLockedOiRatio %>" + "<%= extras.synth_dai_market_id %>", + "<%= settings.dai_address %>", + "<%= settings.synth_dai_max_market_collateral %>" ] }, - "CoreProxy_setMinLiquidityRatio": { + "SpotMarketProxy_addSettlementStrategy_dai": { "target": [ - "system.CoreProxy" + "spotFactory.SpotMarketProxy" ], "fromCall": { - "func": "owner" + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_dai_market_id %>" + ] }, - "func": "setMinLiquidityRatio(uint256)", + "func": "addSettlementStrategy", "args": [ - "<%= settings.minimum_liquidity_ratio %>" + "<%= extras.synth_dai_market_id %>", + { + "strategyType": "1", + "settlementDelay": "0", + "settlementWindowDuration": "1", + "priceVerificationContract": "0x0000000000000000000000000000000000000000", + "feedId": "0x0000000000000000000000000000000000000000000000000000000000000000", + "url": "", + "settlementReward": 0, + "minimumUsdExchangeAmount": "0", + "maxRoundingLoss": "1", + "priceDeviationTolerance": "0", + "disabled": false + } + ], + "extra": { + "synth_dai_settlement_strategy_id": { + "event": "SettlementStrategyAdded", + "arg": 1 + } + } + }, + "SpotMarketProxy_setSettlementStrategy_dai": { + "target": [ + "spotFactory.SpotMarketProxy" + ], + "fromCall": { + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_dai_market_id %>" + ] + }, + "func": "setSettlementStrategy", + "args": [ + "<%= extras.synth_dai_market_id %>", + "<%= extras.synth_dai_settlement_strategy_id %>", + { + "strategyType": "1", + "settlementDelay": "<%= settings.big_cap_settlement_delay %>", + "settlementWindowDuration": "<%= settings.big_cap_settlement_window_duration %>", + "priceVerificationContract": "<%= imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address %>", + "feedId": "<%= settings.pyth_feed_id_dai %>", + "url": "<%= settings.pyth_feed_url %>", + "settlementReward": "<%= settings.settlement_reward %>", + "minimumUsdExchangeAmount": "<%= settings.settlement_minimum_usd_exchange_amount %>", + "maxRoundingLoss": "<%= settings.settlement_max_rounding_loss %>", + "priceDeviationTolerance": "<%= settings.price_deviation_tolerance %>", + "disabled": false + } ] }, - "CoreProxy_setConfig_accountTimeoutWithdraw": { + "SpotMarketProxy_createSynth_eth": { "target": [ - "system.CoreProxy" + "spotFactory.SpotMarketProxy" ], "fromCall": { "func": "owner" }, - "func": "setConfig", + "func": "createSynth", "args": [ - "<%= formatBytes32String('accountTimeoutWithdraw') %>", - "<%= settings.account_withdraw_timeout %>" - ] + "Synthetic Ether", + "sETH", + "<%= settings.owner %>" + ], + "extra": { + "synth_eth_market_id": { + "event": "SynthRegistered", + "arg": 0 + }, + "synth_eth_token_address": { + "event": "SynthRegistered", + "arg": 1 + } + } }, - "CoreProxy_setPoolConfiguration_SpartanCouncil": { + "SpotMarketProxy_updatePriceData_eth": { "target": [ - "system.CoreProxy" + "spotFactory.SpotMarketProxy" ], "fromCall": { - "func": "getPoolOwner", + "func": "getMarketOwner", "args": [ - "<%= extras.spartan_council_pool_id %>" + "<%= extras.synth_eth_market_id %>" ] }, - "func": "setPoolConfiguration", + "func": "updatePriceData", "args": [ - "<%= extras.spartan_council_pool_id %>", - [ - { - "marketId": "<%= extras.synth_dai_market_id %>", - "weightD18": 1, - "maxDebtShareValueD18": "<%= parseEther('1') %>" - }, - { - "marketId": "<%= extras.synth_usdc_market_id %>", - "weightD18": 1, - "maxDebtShareValueD18": "<%= parseEther('1') %>" - }, - { - "marketId": "<%= imports.perpsFactory.extras.superMarketId %>", - "weightD18": 98, - "maxDebtShareValueD18": "<%= parseEther('1') %>" - } - ] + "<%= extras.synth_eth_market_id %>", + "<%= extras.eth_oracle_id %>", + "<%= extras.eth_oracle_id %>", + "<%= settings.bigCapStrictStalenessTolerance %>" ] }, - "CoreProxy_initOrUpgradeToken_USDToken": { + "SpotMarketProxy_setMarketSkewScale_eth": { "target": [ - "system.CoreProxy" + "spotFactory.SpotMarketProxy" ], "fromCall": { - "func": "owner" + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_eth_market_id %>" + ] }, - "func": "initOrUpgradeToken", + "func": "setMarketSkewScale", "args": [ - "<%= settings.usd_token_name %>", - "Synthetix USD", - "USDx", - 18, - "<%= imports.system.contracts.USDRouter.address %>" + "<%= extras.synth_eth_market_id %>", + "<%= parseEther(settings.synth_eth_skew_scale) %>" + ], + "depends": [ + "var.eth_spot_settings" ] - } - }, - "var": { - "perpsEthSettings": { - "perpsEthMarketId": "100", - "pythEthFeedId": "0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace", - "perpsEthSkewScale": "<%= parseEther(String(350_000)) %>", - "perpsEthMaxFundingVelocity": "<%= parseEther('9') %>", - "perpsEthMakerFeeRatio": "<%= parseEther('0.000001') %>", - "perpsEthTakerFeeRatio": "<%= parseEther('0.0005') %>", - "perpsEthMaxMarketSize": "<%= parseEther(String(10_000)) %>", - "perpsEthMaxMarketValue": "<%= parseEther(String(15_000_000)) %>", - "perpsEthInitialMarginRatio": "<%= parseEther('1.16') %>", - "perpsEthMinimumInitialMarginRatio": "<%= parseEther('0.02') %>", - "perpsEthMaintenanceMarginScalar": "<%= parseEther('0.28') %>", - "perpsEthFlagRewardRatioD18": "<%= parseEther('0.0003') %>", - "perpsEthMinimumPositionMargin": "<%= parseEther('50') %>", - "perpsEthMaxLiquidationLimitAccumulationMultiplier": "<%= parseEther('1.5') %>", - "perpsEthMaxSecondsInLiquidationWindow": "30", - "perpsEthLockedOiRatio": "<%= parseEther('0.25') %>", - "perpsEthMaxLiquidationPd": "<%= parseEther('0.0005') %>", - "perpsEthEndorsedLiquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306" - } - }, - "name": "synthetix-omnibus", - "version": "14", - "description": "Arbitrum deployment", - "preset": "main" - }, - "state": { - "setting.account_withdraw_timeout": { - "artifacts": { - "settings": { - "account_withdraw_timeout": "0x0000000000000000000000000000000000000000000000000000000000015180" - } - }, - "hash": "499bee72da669b28b86b21fa2a35e988", - "version": 7 - }, - "setting.arb_address": { - "artifacts": { - "settings": { - "arb_address": "0x7b356eEdABc1035834cd1f714658627fcb4820E3" - } - }, - "hash": "1355739c0d9505ae90445b9c4ba45477", - "version": 7 - }, - "setting.big_cap_default_staleness_tolerance": { - "artifacts": { - "settings": { - "big_cap_default_staleness_tolerance": "3600" - } }, - "hash": "cbe1a4d89aef65379151a3c5b905bd85", - "version": 7 - }, - "setting.big_cap_settlement_delay": { - "artifacts": { - "settings": { - "big_cap_settlement_delay": "2" - } + "SpotMarketProxy_setWrapper_eth": { + "target": [ + "spotFactory.SpotMarketProxy" + ], + "fromCall": { + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_eth_market_id %>" + ] + }, + "func": "setWrapper", + "args": [ + "<%= extras.synth_eth_market_id %>", + "<%= settings.weth_address %>", + "<%= parseEther(settings.synth_eth_max_market_collateral) %>" + ] }, - "hash": "dc88d99e217842b1532ccb97f443b6c1", - "version": 7 - }, - "setting.big_cap_settlement_window_duration": { - "artifacts": { - "settings": { - "big_cap_settlement_window_duration": "60" + "SpotMarketProxy_addSettlementStrategy_eth": { + "target": [ + "spotFactory.SpotMarketProxy" + ], + "fromCall": { + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_eth_market_id %>" + ] + }, + "func": "addSettlementStrategy", + "args": [ + "<%= extras.synth_eth_market_id %>", + { + "strategyType": "1", + "settlementDelay": "0", + "settlementWindowDuration": "1", + "priceVerificationContract": "0x0000000000000000000000000000000000000000", + "feedId": "0x0000000000000000000000000000000000000000000000000000000000000000", + "url": "", + "settlementReward": 0, + "minimumUsdExchangeAmount": "0", + "maxRoundingLoss": "1", + "priceDeviationTolerance": "0", + "disabled": false + } + ], + "extra": { + "synth_eth_settlement_strategy_id": { + "event": "SettlementStrategyAdded", + "arg": 1 + } } }, - "hash": "c85e06d9961059219500923347f33fea", - "version": 7 - }, - "setting.bundleSalt": { - "artifacts": { - "settings": { - "bundleSalt": "snax" - } + "SpotMarketProxy_setSettlementStrategy_eth": { + "target": [ + "spotFactory.SpotMarketProxy" + ], + "fromCall": { + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_eth_market_id %>" + ] + }, + "func": "setSettlementStrategy", + "args": [ + "<%= extras.synth_eth_market_id %>", + "<%= extras.synth_eth_settlement_strategy_id %>", + { + "strategyType": "1", + "settlementDelay": "<%= settings.big_cap_settlement_delay %>", + "settlementWindowDuration": "<%= settings.big_cap_settlement_window_duration %>", + "priceVerificationContract": "<%= imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address %>", + "feedId": "<%= settings.pyth_feed_id_eth %>", + "url": "<%= settings.pyth_feed_url %>", + "settlementReward": "<%= settings.settlement_reward %>", + "minimumUsdExchangeAmount": "<%= settings.settlement_minimum_usd_exchange_amount %>", + "maxRoundingLoss": "<%= settings.settlement_max_rounding_loss %>", + "priceDeviationTolerance": "<%= settings.price_deviation_tolerance %>", + "disabled": false + } + ] }, - "hash": "1ce8073982f8b8f0b4fa5c488c1fac79", - "version": 7 - }, - "setting.buyback_snx_package": { - "artifacts": { - "settings": { - "buyback_snx_package": "buyback-snx:3.3.15" - } + "CoreProxy_configureCollateral_sETH": { + "target": [ + "system.CoreProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "configureCollateral", + "args": [ + { + "tokenAddress": "<%= extras.synth_eth_token_address %>", + "oracleNodeId": "<%= extras.eth_oracle_id %>", + "issuanceRatioD18": "<%= parseEther('2') %>", + "liquidationRatioD18": "<%= parseEther('1.1') %>", + "liquidationRewardD18": "<%= parseEther('1') %>", + "minDelegationD18": "<%= parseEther('1') %>", + "depositingEnabled": false + } + ] }, - "hash": "0091281378142a3a0e8f8649d3730e34", - "version": 7 - }, - "setting.dai_address": { - "artifacts": { - "settings": { - "dai_address": "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9" - } + "CoreProxy_configureMaximumMarketCollateral_eth": { + "target": [ + "system.CoreProxy" + ], + "fromCall": { + "func": "owner", + "args": [] + }, + "func": "configureMaximumMarketCollateral", + "args": [ + "<%= imports.perpsFactory.extras.superMarketId %>", + "<%= extras.synth_eth_token_address %>", + "<%= parseEther(settings.synth_eth_max_market_collateral) %>" + ] }, - "hash": "1d6030687b67b3ce21190a75a9afb2f7", - "version": 7 - }, - "setting.dai_issuance_ratio": { - "artifacts": { - "settings": { - "dai_issuance_ratio": "1200000000000000000" - } + "CoreProxy_configureMaximumMarketCollateral_WETH": { + "target": [ + "system.CoreProxy" + ], + "fromCall": { + "func": "owner", + "args": [] + }, + "func": "configureMaximumMarketCollateral", + "args": [ + "<%= extras.synth_eth_market_id %>", + "<%= settings.weth_address %>", + "<%= parseEther(settings.synth_eth_max_market_collateral) %>" + ] }, - "hash": "877facbdbdc07d8b56635d46ac5ffe14", - "version": 7 - }, - "setting.dai_liquidation_ratio": { - "artifacts": { - "settings": { - "dai_liquidation_ratio": "1050000000000000000" + "SpotMarketProxy_createSynth_btc": { + "target": [ + "spotFactory.SpotMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "createSynth", + "args": [ + "Synthetic Bitcoin", + "sBTC", + "<%= settings.owner %>" + ], + "extra": { + "synth_btc_market_id": { + "event": "SynthRegistered", + "arg": 0 + }, + "synth_btc_token_address": { + "event": "SynthRegistered", + "arg": 1 + } } }, - "hash": "b8ef3cf0b2ae29972f2b898f8e1fa78f", - "version": 7 - }, - "setting.dai_liquidation_reward": { - "artifacts": { - "settings": { - "dai_liquidation_reward": "1000000000000000000" - } + "SpotMarketProxy_updatePriceData_btc": { + "target": [ + "spotFactory.SpotMarketProxy" + ], + "fromCall": { + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_btc_market_id %>" + ] + }, + "func": "updatePriceData", + "args": [ + "<%= extras.synth_btc_market_id %>", + "<%= extras.btc_oracle_id %>", + "<%= extras.btc_oracle_id %>", + "<%= settings.bigCapStrictStalenessTolerance %>" + ] }, - "hash": "845fb85d1e0ccaf6b0afd054626bbe97", - "version": 7 - }, - "setting.dai_min_delegation": { - "artifacts": { - "settings": { - "dai_min_delegation": "100000000000000000000" - } + "SpotMarketProxy_setMarketSkewScale_btc": { + "target": [ + "spotFactory.SpotMarketProxy" + ], + "fromCall": { + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_eth_market_id %>" + ] + }, + "func": "setMarketSkewScale", + "args": [ + "<%= extras.synth_btc_market_id %>", + "<%= parseEther(settings.synth_btc_skew_scale) %>" + ], + "depends": [ + "var.btc_spot_settings" + ] }, - "hash": "ad27ad0c2fad068c59a31bad017dda13", - "version": 7 - }, - "setting.dai_staleness_tolerance": { - "artifacts": { - "settings": { - "dai_staleness_tolerance": "3600" - } + "SpotMarketProxy_setWrapper_btc": { + "target": [ + "spotFactory.SpotMarketProxy" + ], + "fromCall": { + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_btc_market_id %>" + ] + }, + "func": "setWrapper", + "args": [ + "<%= extras.synth_btc_market_id %>", + "<%= settings.btc_address %>", + "<%= parseEther(settings.synth_btc_max_collateral_amount) %>" + ], + "depends": [ + "var.btc_spot_settings" + ] }, - "hash": "4e448eb07415cbfff6dd319eccc4992d", - "version": 7 - }, - "setting.deployer": { - "artifacts": { - "settings": { - "deployer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" - } - }, - "hash": "3f34e398af2b36b5093aa17a4fca6630", - "version": 7 - }, - "setting.minimum_liquidity_ratio": { - "artifacts": { - "settings": { - "minimum_liquidity_ratio": "2000000000000000000" - } - }, - "hash": "320589bee1252dfa54fdb6ddd47fe821", - "version": 7 - }, - "setting.owner": { - "artifacts": { - "settings": { - "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + "SpotMarketProxy_addSettlementStrategy_btc": { + "target": [ + "spotFactory.SpotMarketProxy" + ], + "fromCall": { + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_btc_market_id %>" + ] + }, + "func": "addSettlementStrategy", + "args": [ + "<%= extras.synth_btc_market_id %>", + { + "strategyType": "1", + "settlementDelay": "0", + "settlementWindowDuration": "1", + "priceVerificationContract": "0x0000000000000000000000000000000000000000", + "feedId": "0x0000000000000000000000000000000000000000000000000000000000000000", + "url": "", + "settlementReward": 0, + "minimumUsdExchangeAmount": "0", + "maxRoundingLoss": "1", + "priceDeviationTolerance": "0", + "disabled": false + } + ], + "extra": { + "synth_btc_settlement_strategy_id": { + "event": "SettlementStrategyAdded", + "arg": 1 + } } }, - "hash": "3f34e398af2b36b5093aa17a4fca6630", - "version": 7 - }, - "setting.perps_keeper_cost_package": { - "artifacts": { - "settings": { - "perps_keeper_cost_package": "arbitrum-gas-price-oracle:3.3.16" - } + "SpotMarketProxy_setSettlementStrategy_sBTC": { + "target": [ + "spotFactory.SpotMarketProxy" + ], + "fromCall": { + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_btc_market_id %>" + ] + }, + "func": "setSettlementStrategy", + "args": [ + "<%= extras.synth_btc_market_id %>", + "<%= extras.synth_btc_settlement_strategy_id %>", + { + "strategyType": "1", + "settlementDelay": "<%= settings.big_cap_settlement_delay %>", + "settlementWindowDuration": "<%= settings.big_cap_settlement_window_duration %>", + "priceVerificationContract": "<%= imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address %>", + "feedId": "<%= settings.pyth_feed_id_btc %>", + "url": "<%= settings.pyth_feed_url %>", + "settlementReward": "<%= settings.settlement_reward %>", + "minimumUsdExchangeAmount": "<%= settings.settlement_minimum_usd_exchange_amount %>", + "maxRoundingLoss": "<%= settings.settlement_max_rounding_loss %>", + "priceDeviationTolerance": "<%= settings.price_deviation_tolerance %>", + "disabled": false + } + ] }, - "hash": "5344ee6b18a6667a31ade7106f0d3cfc", - "version": 7 - }, - "setting.perps_market_package": { - "artifacts": { - "settings": { - "perps_market_package": "synthetix-perps-market:3.3.19" - } + "CoreProxy_configureCollateral_wBTC": { + "target": [ + "system.CoreProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "configureCollateral", + "args": [ + { + "tokenAddress": "<%= settings.btc_address %>", + "oracleNodeId": "<%= extras.btc_oracle_id %>", + "issuanceRatioD18": "<%= parseEther('2') %>", + "liquidationRatioD18": "<%= parseEther('1.1') %>", + "liquidationRewardD18": "<%= parseEther('0.5') %>", + "minDelegationD18": "<%= parseEther('0.5') %>", + "depositingEnabled": false + } + ] }, - "hash": "c653661787890881dbe33bb974096037", - "version": 7 - }, - "setting.perps_super_market_name": { - "artifacts": { - "settings": { - "perps_super_market_name": "High MCap" - } + "CoreProxy_configureMaximumMarketCollateral_wBTC": { + "target": [ + "system.CoreProxy" + ], + "fromCall": { + "func": "owner", + "args": [] + }, + "func": "configureMaximumMarketCollateral", + "args": [ + "<%= extras.synth_btc_market_id %>", + "<%= settings.btc_address %>", + "<%= parseEther(settings.synth_btc_max_collateral_amount) %>" + ] }, - "hash": "92e2e331ed7c2c6a57cdf1512104ae7f", - "version": 7 - }, - "setting.pool_owner": { - "artifacts": { - "settings": { - "pool_owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" - } + "CoreProxy_configureCollateral_sBTC": { + "target": [ + "system.CoreProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "configureCollateral", + "args": [ + { + "tokenAddress": "<%= extras.synth_btc_token_address %>", + "oracleNodeId": "<%= extras.btc_oracle_id %>", + "issuanceRatioD18": "<%= parseEther('2') %>", + "liquidationRatioD18": "<%= parseEther('1.1') %>", + "liquidationRewardD18": "<%= parseEther('0.5') %>", + "minDelegationD18": "<%= parseEther('0.5') %>", + "depositingEnabled": false + } + ] }, - "hash": "3f34e398af2b36b5093aa17a4fca6630", - "version": 7 - }, - "setting.price_deviation_tolerance": { - "artifacts": { - "settings": { - "price_deviation_tolerance": "1000000000000000000" - } + "CoreProxy_configureMaximumMarketCollateral_sBTC": { + "target": [ + "system.CoreProxy" + ], + "fromCall": { + "func": "owner", + "args": [] + }, + "func": "configureMaximumMarketCollateral", + "args": [ + "<%= imports.perpsFactory.extras.superMarketId %>", + "<%= extras.synth_btc_token_address %>", + "<%= parseEther(settings.synth_btc_max_collateral_amount) %>" + ] }, - "hash": "845fb85d1e0ccaf6b0afd054626bbe97", - "version": 7 - }, - "setting.pyth_feed_id_arb": { - "artifacts": { - "settings": { - "pyth_feed_id_arb": "0x3fa4252848f9f0a1480be62745a4629d9eb1322aebab8a791e344b3b9c1adcf5" + "SpotMarketProxy_createSynth_usdc": { + "target": [ + "spotFactory.SpotMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "createSynth", + "args": [ + "Synthetic USD Coin", + "sUSDC", + "<%= settings.owner %>" + ], + "extra": { + "synth_usdc_market_id": { + "event": "SynthRegistered", + "arg": 0 + }, + "synth_usdc_token_address": { + "event": "SynthRegistered", + "arg": 1 + } } }, - "hash": "5a1d4bc143427649808f3d9d7603de7d", - "version": 7 - }, - "setting.pyth_feed_id_dai": { - "artifacts": { - "settings": { - "pyth_feed_id_dai": "0xb0948a5e5313200c632b51bb5ca32f6de0d36e9950a942d19751e833f70dabfd" - } + "SpotMarketProxy_updatePriceData_usdc": { + "target": [ + "spotFactory.SpotMarketProxy" + ], + "fromCall": { + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_usdc_market_id %>" + ] + }, + "func": "updatePriceData", + "args": [ + "<%= extras.synth_usdc_market_id %>", + "<%= extras.usdc_oracle_id %>", + "<%= extras.usdc_oracle_id %>", + "<%= settings.usdc_staleness_tolerance %>" + ] }, - "hash": "6679923d435e2075d476bd1c6fd6553f", - "version": 7 - }, - "setting.pyth_feed_id_eth": { - "artifacts": { - "settings": { - "pyth_feed_id_eth": "0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace" - } + "CoreProxy_configureMaximumMarketCollateral_usdc": { + "target": [ + "system.CoreProxy" + ], + "fromCall": { + "func": "owner", + "args": [] + }, + "func": "configureMaximumMarketCollateral", + "args": [ + "<%= extras.synth_usdc_market_id %>", + "<%= settings.usdc_address %>", + "<%= settings.synth_usdc_max_market_collateral %>" + ] }, - "hash": "abc699926b0576805bfb24798e836b48", - "version": 7 - }, - "setting.pyth_feed_id_usdc": { - "artifacts": { - "settings": { - "pyth_feed_id_usdc": "0xeaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a" - } + "SpotMarketProxy_setWrapper_usdc": { + "target": [ + "spotFactory.SpotMarketProxy" + ], + "fromCall": { + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_usdc_market_id %>" + ] + }, + "func": "setWrapper", + "args": [ + "<%= extras.synth_usdc_market_id %>", + "<%= settings.usdc_address %>", + "<%= settings.synth_usdc_max_market_collateral %>" + ] }, - "hash": "8e934a240774af30606b75bdd802ea25", - "version": 7 - }, - "setting.pyth_feed_url": { - "artifacts": { - "settings": { - "pyth_feed_url": "https://api.synthetix.io/pyth-mainnet/api/get_vaa_ccip?data={data}" + "SpotMarketProxy_addSettlementStrategy_usdc": { + "target": [ + "spotFactory.SpotMarketProxy" + ], + "fromCall": { + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_usdc_market_id %>" + ] + }, + "func": "addSettlementStrategy", + "args": [ + "<%= extras.synth_usdc_market_id %>", + { + "strategyType": "1", + "settlementDelay": "0", + "settlementWindowDuration": "1", + "priceVerificationContract": "0x0000000000000000000000000000000000000000", + "feedId": "0x0000000000000000000000000000000000000000000000000000000000000000", + "url": "", + "settlementReward": 0, + "minimumUsdExchangeAmount": "0", + "maxRoundingLoss": "1", + "priceDeviationTolerance": "0", + "disabled": false + } + ], + "extra": { + "synth_usdc_settlement_strategy_id": { + "event": "SettlementStrategyAdded", + "arg": 1 + } } }, - "hash": "7cdbc8d7837fb76c09f018ecea7fe65e", - "version": 7 - }, - "setting.pyth_price_verification_address": { - "artifacts": { - "settings": { - "pyth_price_verification_address": "0x4374e5a8b9C22271E9EB878A2AA31DE97DF15DAF" - } + "SpotMarketProxy_setSettlementStrategy_usdc": { + "target": [ + "spotFactory.SpotMarketProxy" + ], + "fromCall": { + "func": "getMarketOwner", + "args": [ + "<%= extras.synth_usdc_market_id %>" + ] + }, + "func": "setSettlementStrategy", + "args": [ + "<%= extras.synth_usdc_market_id %>", + "<%= extras.synth_usdc_settlement_strategy_id %>", + { + "strategyType": "1", + "settlementDelay": "<%= settings.big_cap_settlement_delay %>", + "settlementWindowDuration": "<%= settings.big_cap_settlement_window_duration %>", + "priceVerificationContract": "<%= imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address %>", + "feedId": "<%= settings.pyth_feed_id_usdc %>", + "url": "<%= settings.pyth_feed_url %>", + "settlementReward": "<%= settings.settlement_reward %>", + "minimumUsdExchangeAmount": "<%= settings.settlement_minimum_usd_exchange_amount %>", + "maxRoundingLoss": "<%= settings.settlement_max_rounding_loss %>", + "priceDeviationTolerance": "<%= settings.price_deviation_tolerance %>", + "disabled": false + } + ] }, - "hash": "ee3aca0a521c56aaa4a6f67045e01142", - "version": 7 - }, - "setting.salt": { - "artifacts": { - "settings": { - "salt": "snax" - } + "registerPerps_KeeperCostEthOracleNode": { + "target": [ + "system.oracle_manager.Proxy" + ], + "func": "registerNode", + "args": [ + 2, + "<%= defaultAbiCoder.encode(['address', 'uint256', 'uint256', 'uint256', 'uint256', 'uint256', 'uint256'], [imports.perps_gas_oracle_node.contracts.ArbGasPriceOracle.address, settings.perps_keeper_l1_cost_settle_gas_units, settings.perps_keeper_l2_cost_settle_gas_units, settings.perps_keeper_l1_cost_flag_gas_units, settings.perps_keeper_l2_cost_flag_gas_units, settings.perps_keeper_l1_cost_liquidate_gas_units, settings.perps_keeper_l2_cost_liquidate_gas_units]) %>", + [] + ], + "extra": { + "perps_keeper_cost_eth_oracle_id": { + "event": "NodeRegistered", + "arg": 0 + } + }, + "depends": [ + "provision.perps_gas_oracle_node", + "provision.system", + "var.perps_keeper_settings" + ] }, - "hash": "1ce8073982f8b8f0b4fa5c488c1fac79", - "version": 7 - }, - "setting.settlement_max_rounding_loss": { - "artifacts": { - "settings": { - "settlement_max_rounding_loss": "1000000000000" + "registerPerps_KeeperCostUsdOracleNode": { + "target": [ + "system.oracle_manager.Proxy" + ], + "func": "registerNode", + "args": [ + 1, + "<%= defaultAbiCoder.encode(['uint256'], [7]) %>", + [ + "<%= extras.perps_keeper_cost_eth_oracle_id %>", + "<%= extras.eth_oracle_id %>" + ] + ], + "extra": { + "perps_keeper_cost_usd_oracle_id": { + "event": "NodeRegistered", + "arg": 0 + } } }, - "hash": "607df2dbd59151d89ce5055ae20c68c6", - "version": 7 - }, - "setting.settlement_minimum_usd_exchange_amount": { - "artifacts": { - "settings": { - "settlement_minimum_usd_exchange_amount": "1000000000000" - } + "setPerpsLiquidationRewardGuards": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setKeeperRewardGuards", + "args": [ + "<%= parseEther(settings.perps_liquidation_min_keeper_reward_usd) %>", + "<%= parseEther(settings.perps_liquidation_min_keeper_profit_ratio_d18) %>", + "<%= parseEther(settings.perps_liquidation_max_keeper_reward_usd) %>", + "<%= parseEther(settings.perps_liquidation_max_keeper_scaling_ratio_d18) %>" + ], + "depends": [ + "provision.perpsFactory", + "var.perps_global_settings" + ] }, - "hash": "607df2dbd59151d89ce5055ae20c68c6", - "version": 7 - }, - "setting.settlement_reward": { - "artifacts": { - "settings": { - "settlement_reward": "500000000000000000" - } + "setPerAccountCapsPerps": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setPerAccountCaps", + "args": [ + "<%= settings.perps_max_positions_per_account %>", + "<%= settings.perps_max_collaterals_per_account %>" + ] }, - "hash": "432e3c15ccbe73e998f322de6cb6a0c3", - "version": 7 - }, - "setting.snx_package": { - "artifacts": { - "settings": { - "snx_package": "synthetix:3.3.18" - } + "setPerpsMarketKeeperCostNodeId": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "updateKeeperCostNodeId", + "args": [ + "<%= extras.perps_keeper_cost_usd_oracle_id %>" + ] }, - "hash": "bf213d1a83605ef69753be3a7653f373", - "version": 7 - }, - "setting.spartan_council_pool_id_setting": { - "artifacts": { - "settings": { - "spartan_council_pool_id_setting": "1" - } + "setInterestRateParams": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setInterestRateParameters", + "args": [ + "<%= parseEther(settings.perps_low_util_gradient) %>", + "<%= parseEther(settings.perps_gradient_breakpoint) %>", + "<%= parseEther(settings.perps_high_util_gradient) %>" + ], + "depends": [ + "provision.perpsFactory", + "var.perps_global_settings" + ] }, - "hash": "5f6fb867a611e73895d85f93fc6f7baa", - "version": 7 - }, - "setting.spot_market_package": { - "artifacts": { - "settings": { - "spot_market_package": "synthetix-spot-market:3.3.15" - } + "PerpsMarketProxy_setCollateralLiquidationRatio_btc": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setCollateralLiquidateRewardRatio", + "args": [ + "<%= parseEther(settings.perps_collateral_liquidation_ratio) %>" + ], + "depends": [ + "var.perps_global_settings" + ] }, - "hash": "d8987ab98144a375af937e0df8cbcca5", - "version": 7 - }, - "setting.synth_dai_max_market_collateral": { - "artifacts": { - "settings": { - "synth_dai_max_market_collateral": "0" - } + "setPolynomialAsReferrerOnPerpsMarket": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "updateReferrerShare", + "args": [ + "0x159c143eF9Be79d5672726150462C9EfA679b27c", + "<%= settings.referrer_fee %>" + ] }, - "hash": "4dcc24a97eaa6583aab6a5b0cb07d27e", - "version": 7 - }, - "setting.synth_usdc_max_market_collateral": { - "artifacts": { - "settings": { - "synth_usdc_max_market_collateral": "10000000000000000000000000" - } + "setKwentaAsReferrerOnPerpsMarket": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "updateReferrerShare", + "args": [ + "0xFffe627790EF1B28E3b48000b8Ba964b55766fF8", + "<%= settings.referrer_fee %>" + ] }, - "hash": "864c3d00b6ac650501aef463342c436d", - "version": 7 - }, - "setting.target_preset": { - "artifacts": { - "settings": { - "target_preset": "main" - } + "setInfinexAsReferrerOnPerpsMarket": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "updateReferrerShare", + "args": [ + "0xa7DB9b0a95D253022068d43BD1d64756f92eF83C", + "<%= settings.referrer_fee %>" + ] }, - "hash": "79d2862416f9389ec7270a618c6ce1b3", - "version": 7 - }, - "setting.usdc_address": { - "artifacts": { - "settings": { - "usdc_address": "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d" - } + "createBtcPerpsMarket": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "createMarket", + "args": [ + "<%= settings.btc_perps_market_id %>", + "Bitcoin", + "BTC" + ], + "depends": [ + "var.perps_btc_market_settings" + ] }, - "hash": "778dc94af5aa64fe0640d2dd986ab589", - "version": 7 - }, - "setting.usdc_issuance_ratio": { - "artifacts": { - "settings": { - "usdc_issuance_ratio": "1200000000000000000" - } + "setPerpsPriceBtc": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "updatePriceData", + "args": [ + "<%= settings.btc_perps_market_id %>", + "<%= extras.btc_oracle_id %>", + "<%= settings.bigCapStrictStalenessTolerance %>" + ], + "depends": [ + "invoke.createBtcPerpsMarket", + "var.perps_btc_market_settings" + ] }, - "hash": "877facbdbdc07d8b56635d46ac5ffe14", - "version": 7 - }, - "setting.usdc_liquidation_ratio": { - "artifacts": { - "settings": { - "usdc_liquidation_ratio": "1050000000000000000" - } + "addPerpsBtcSettlementStrategy": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "addSettlementStrategy", + "args": [ + "<%= settings.btc_perps_market_id %>", + { + "strategyType": "0", + "settlementDelay": "0", + "settlementWindowDuration": "1", + "priceVerificationContract": "0x0000000000000000000000000000000000000000", + "feedId": "0x0000000000000000000000000000000000000000000000000000000000000000", + "settlementReward": "0", + "disabled": false, + "commitmentPriceDelay": "0" + } + ], + "extra": { + "btc_pyth_settlement_strategy": { + "event": "SettlementStrategyAdded", + "arg": 2 + } + }, + "depends": [ + "invoke.createBtcPerpsMarket" + ] }, - "hash": "b8ef3cf0b2ae29972f2b898f8e1fa78f", - "version": 7 - }, - "setting.usdc_liquidation_reward": { - "artifacts": { - "settings": { - "usdc_liquidation_reward": "1000000000000000000" - } + "setPerpsBtcSettlementStrategy": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setSettlementStrategy", + "args": [ + "<%= settings.btc_perps_market_id %>", + "<%= extras.btc_pyth_settlement_strategy %>", + { + "strategyType": "0", + "settlementDelay": "<%= settings.big_cap_settlement_delay %>", + "settlementWindowDuration": "<%= settings.big_cap_settlement_window_duration %>", + "priceVerificationContract": "<%= imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address %>", + "feedId": "<%= settings.pyth_feed_id_btc %>", + "settlementReward": "<%= parseEther(settings.settlement_reward) %>", + "disabled": false, + "commitmentPriceDelay": "<%= settings.commitment_price_delay %>" + } + ], + "depends": [ + "invoke.addPerpsBtcSettlementStrategy", + "provision.perpsFactory", + "provision.pyth_erc7412_wrapper", + "var.perps_btc_market_settings" + ] }, - "hash": "845fb85d1e0ccaf6b0afd054626bbe97", - "version": 7 - }, - "setting.usdc_min_delegation": { - "artifacts": { - "settings": { - "usdc_min_delegation": "100000000000000000000" - } + "setPerpsBtcFundingParameters": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setFundingParameters", + "args": [ + "<%= settings.btc_perps_market_id %>", + "<%= parseEther(settings.btc_perps_market_skew_scale) %>", + "<%= parseEther(settings.btc_perps_market_max_funding_velocity) %>" + ], + "depends": [ + "invoke.createBtcPerpsMarket", + "var.perps_btc_market_settings" + ] }, - "hash": "ad27ad0c2fad068c59a31bad017dda13", - "version": 7 - }, - "setting.usdc_staleness_tolerance": { - "artifacts": { - "settings": { - "usdc_staleness_tolerance": "3600" - } + "setPerpsBtcOrderFees": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setOrderFees", + "args": [ + "<%= settings.btc_perps_market_id %>", + "<%= parseEther(settings.btc_perps_maker_fee_ratio) %>", + "<%= parseEther(settings.btc_perps_taker_fee_ratio) %>" + ], + "depends": [ + "invoke.createBtcPerpsMarket", + "var.perps_btc_market_settings" + ] }, - "hash": "4e448eb07415cbfff6dd319eccc4992d", - "version": 7 - }, - "setting.weth_address": { - "artifacts": { - "settings": { - "weth_address": "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73" - } + "setPerpsBtcMaxMarketSize": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setMaxMarketSize", + "args": [ + "<%= settings.btc_perps_market_id %>", + "<%= parseEther(settings.btc_perps_max_market_size) %>" + ], + "depends": [ + "invoke.createBtcPerpsMarket", + "var.perps_btc_market_settings" + ] }, - "hash": "5811ed3dbd778e42d1838b6f558ac3ae", - "version": 7 - }, - "provision.arb_mock_collateral": { - "artifacts": { - "imports": { - "arb_mock_collateral": { - "url": "ipfs://QmfLFMtEhXTpE99Q11YNvTfteczbGPALegwmo5XC1QCRhV", - "tags": [ - "latest" - ], - "preset": "with-synthetix-omnibus", - "settings": { - "decimals": "18", - "initialSupply": "0", - "name": "Token", - "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", - "salt": "", - "symbol": "TKN" - }, - "contracts": { - "MintableToken": { - "address": "0x7b356eEdABc1035834cd1f714658627fcb4820E3", - "abi": [ - "constructor(address owner, string name, string symbol, uint8 tokenDecimals, uint256 initialSupply) payable", - "function allowance(address owner, address spender) view returns (uint256)", - "function approve(address spender, uint256 amount) returns (bool)", - "function balanceOf(address account) view returns (uint256)", - "function decimals() view returns (uint8)", - "function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)", - "function increaseAllowance(address spender, uint256 addedValue) returns (bool)", - "function mint(uint256 amount, address to)", - "function name() view returns (string)", - "function owner() view returns (address)", - "function renounceOwnership()", - "function symbol() view returns (string)", - "function totalSupply() view returns (uint256)", - "function transfer(address to, uint256 amount) returns (bool)", - "function transferFrom(address from, address to, uint256 amount) returns (bool)", - "function transferOwnership(address newOwner)", - "event Approval(address indexed owner, address indexed spender, uint256 value)", - "event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)", - "event Transfer(address indexed from, address indexed to, uint256 value)" - ], - "constructorArgs": [ - "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", - "Fake ARB Coin", - "fARB", - "18", - "0" - ], - "linkedLibraries": {}, - "deployTxnHash": "0xf86b4247c1bcdba8cc9e81b8d9030dd0e5c2b2bfc765a31dda71ef2261b20777", - "sourceName": "src/MintableToken.sol", - "contractName": "MintableToken", - "deployedOn": "contract.MintableToken", - "highlight": true, - "gasUsed": 865741, - "gasCost": "707980000" - } - }, - "extras": { - "decimals": "18", - "initialSupply": "0", - "name": "Token", - "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", - "salt": "", - "symbol": "TKN" - } - } - } + "setPerpsBtcMaxMarketValue": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setMaxMarketValue", + "args": [ + "<%= settings.btc_perps_market_id %>", + "<%= parseEther(settings.btc_perps_max_market_value) %>" + ], + "depends": [ + "invoke.createBtcPerpsMarket", + "var.perps_btc_market_settings" + ] }, - "hash": null, - "version": 7 - }, - "provision.dai_mock_collateral": { - "artifacts": { - "imports": { - "dai_mock_collateral": { - "url": "ipfs://QmaysZfLnr6DXWyYP3XfS3FxRhz6XoFvkVZc6NubuHRbBz", - "tags": [ - "latest" - ], - "preset": "with-synthetix-omnibus", - "settings": { - "decimals": "18", - "initialSupply": "0", - "name": "Token", - "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", - "salt": "", - "symbol": "TKN" - }, - "contracts": { - "MintableToken": { - "address": "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", - "abi": [ - "constructor(address owner, string name, string symbol, uint8 tokenDecimals, uint256 initialSupply) payable", - "function allowance(address owner, address spender) view returns (uint256)", - "function approve(address spender, uint256 amount) returns (bool)", - "function balanceOf(address account) view returns (uint256)", - "function decimals() view returns (uint8)", - "function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)", - "function increaseAllowance(address spender, uint256 addedValue) returns (bool)", - "function mint(uint256 amount, address to)", - "function name() view returns (string)", - "function owner() view returns (address)", - "function renounceOwnership()", - "function symbol() view returns (string)", - "function totalSupply() view returns (uint256)", - "function transfer(address to, uint256 amount) returns (bool)", - "function transferFrom(address from, address to, uint256 amount) returns (bool)", - "function transferOwnership(address newOwner)", - "event Approval(address indexed owner, address indexed spender, uint256 value)", - "event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)", - "event Transfer(address indexed from, address indexed to, uint256 value)" - ], - "constructorArgs": [ - "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", - "Fake DAI Coin", - "fDAI", - "18", - "0" - ], - "linkedLibraries": {}, - "deployTxnHash": "0x25159c435ef3145f60eebfe7bbb84c9f74fd00d730cfba9331bcec52470c6543", - "sourceName": "src/MintableToken.sol", - "contractName": "MintableToken", - "deployedOn": "contract.MintableToken", - "highlight": true, - "gasUsed": 867303, - "gasCost": "696820000" - } - }, - "extras": { - "decimals": "18", - "initialSupply": "0", - "name": "Token", - "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", - "salt": "", - "symbol": "TKN" - } + "setPerpsBtcMaxLiquidationParameters": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setMaxLiquidationParameters", + "args": [ + "<%= settings.btc_perps_market_id %>", + "<%= parseEther(settings.btc_perps_max_liquidation_limit_accumulation_multiplier) %>", + "<%= settings.btc_perps_max_seconds_in_liquidation_window %>", + "<%= parseEther(settings.btc_perps_max_liquidation_pd) %>", + "<%= settings.btc_perps_endorsed_liquidator %>" + ], + "depends": [ + "invoke.createBtcPerpsMarket", + "var.perps_btc_market_settings" + ] + }, + "setPerpsBtcLiquidationParameters": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setLiquidationParameters", + "args": [ + "<%= settings.btc_perps_market_id %>", + "<%= parseEther(settings.btc_perps_initial_margin_ratio) %>", + "<%= parseEther(settings.btc_perps_minimum_initial_margin_ratio) %>", + "<%= parseEther(settings.btc_perps_maintenance_margin_scalar) %>", + "<%= parseEther(settings.btc_perps_flag_reward_ratio_d18) %>", + "<%= parseEther(settings.btc_perps_minimum_position_margin) %>" + ], + "depends": [ + "invoke.createBtcPerpsMarket", + "var.perps_btc_market_settings" + ] + }, + "setPerpsBtcLockedOiRatio": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setLockedOiRatio", + "args": [ + "<%= settings.btc_perps_market_id %>", + "<%= parseEther(settings.btc_perps_locked_oi_ratio) %>" + ], + "depends": [ + "invoke.createBtcPerpsMarket", + "var.perps_btc_market_settings" + ] + }, + "createEthPerpsMarket": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "createMarket", + "args": [ + "<%= settings.eth_perps_market_id %>", + "Ethereum", + "ETH" + ], + "depends": [ + "invoke.PerpsMarketProxy_addToFeatureFlagAllowlist_createMarket_deployer", + "invoke.PerpsMarketProxy_setFeatureFlagAllowAll_perpsSystem", + "var.perps_eth_market_settings" + ] + }, + "setPerpsPriceEth": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "updatePriceData", + "args": [ + "<%= settings.eth_perps_market_id %>", + "<%= extras.eth_oracle_id %>", + "<%= settings.bigCapStrictStalenessTolerance %>" + ], + "depends": [ + "invoke.createEthPerpsMarket", + "var.perps_eth_market_settings" + ] + }, + "addPerpsEthSettlementStrategy": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "addSettlementStrategy", + "args": [ + "<%= settings.eth_perps_market_id %>", + { + "strategyType": "0", + "settlementDelay": "0", + "settlementWindowDuration": "1", + "priceVerificationContract": "0x0000000000000000000000000000000000000000", + "feedId": "0x0000000000000000000000000000000000000000000000000000000000000000", + "settlementReward": "0", + "disabled": false, + "commitmentPriceDelay": "0" } - } + ], + "extra": { + "eth_pyth_settlement_strategy": { + "event": "SettlementStrategyAdded", + "arg": 2 + } + }, + "depends": [ + "invoke.createEthPerpsMarket", + "var.perps_eth_market_settings" + ] }, - "hash": null, - "version": 7 - }, - "provision.pyth_erc7412_wrapper": { - "artifacts": { - "imports": { - "pyth_erc7412_wrapper": { - "url": "ipfs://QmUCeV91jQWH5quzNc2HFfKCrdokTapDYX7jEbqqeVb9my", - "tags": [ - "latest" - ], - "preset": "main", - "settings": { - "pythAddress": "0x420000000000000000000000000000000000000F" - }, - "contracts": { - "PythERC7412Wrapper": { - "address": "0x0eA49b2e23387cD99ceceBDa52041c604e40992E", - "abi": [ - "constructor(address _pythAddress)", - "error FeeRequired(uint256 amount)", - "error NotSupported(uint8 updateType)", - "error OracleDataRequired(address oracleContract, bytes oracleQuery)", - "error OverflowInt256ToUint256()", - "error OverflowUint256ToInt256()", - "function fulfillOracleQuery(bytes signedOffchainData) payable", - "function getBenchmarkPrice(bytes32 priceId, uint64 requestedTime) view returns (int256)", - "function getLatestPrice(bytes32 priceId, uint256 stalenessTolerance) view returns (int256)", - "function oracleId() pure returns (bytes32)", - "function pythAddress() view returns (address)" - ], - "constructorArgs": [ - "0x4374e5a8b9C22271E9EB878A2AA31DE97DF15DAF" - ], - "linkedLibraries": {}, - "deployTxnHash": "", - "sourceName": "contracts/PythERC7412Wrapper.sol", - "contractName": "PythERC7412Wrapper", - "deployedOn": "contract.PythERC7412Wrapper", - "gasUsed": 0, - "gasCost": "0" - } - }, - "extras": { - "pythAddress": "0x420000000000000000000000000000000000000F" - } + "setPerpsEthSettlementStrategy": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setSettlementStrategy", + "args": [ + "<%= settings.eth_perps_market_id %>", + "<%= extras.eth_pyth_settlement_strategy %>", + { + "strategyType": "0", + "settlementDelay": "<%= settings.big_cap_settlement_delay %>", + "settlementWindowDuration": "<%= settings.big_cap_settlement_window_duration %>", + "priceVerificationContract": "<%= imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address %>", + "feedId": "<%= settings.pyth_feed_id_eth %>", + "settlementReward": "<%= parseEther(settings.settlement_reward) %>", + "disabled": false, + "commitmentPriceDelay": "<%= settings.commitment_price_delay %>" } - } + ], + "depends": [ + "invoke.addPerpsEthSettlementStrategy", + "provision.perpsFactory", + "provision.pyth_erc7412_wrapper", + "setting.big_cap_settlement_delay", + "setting.big_cap_settlement_window_duration", + "setting.commitment_price_delay", + "setting.pyth_feed_id_eth", + "setting.settlement_reward", + "var.perps_eth_market_settings" + ] }, - "hash": null, - "version": 7 - }, - "provision.system": { - "artifacts": { - "imports": { - "system": { - "url": "ipfs://QmSgHhNgePb527rtjuEvzJGAyTYpHv3yWE7PsR87BMaX2u", - "tags": [ - "latest" - ], - "target": "synthetix:3.3.18@main", - "preset": "main", - "contracts": { - "AccountModule": { - "address": "0x92D1c57Bfb7655327186380CD8bb69f4a972Fd2C", - "abi": [ - "error FeatureUnavailable(bytes32 which)", - "error InvalidAccountId(uint128 accountId)", - "error InvalidPermission(bytes32 permission)", - "error OnlyAccountTokenProxy(address origin)", - "error PermissionDenied(uint128 accountId, bytes32 permission, address target)", - "error PermissionNotGranted(uint128 accountId, bytes32 permission, address user)", - "error PositionOutOfBounds()", - "error ValueAlreadyInSet()", - "error ValueNotInSet()", - "error ZeroAddress()", - "event AccountCreated(uint128 indexed accountId, address indexed owner)", - "event PermissionGranted(uint128 indexed accountId, bytes32 indexed permission, address indexed user, address sender)", - "event PermissionRevoked(uint128 indexed accountId, bytes32 indexed permission, address indexed user, address sender)", - "function createAccount() returns (uint128 accountId)", - "function createAccount(uint128 requestedAccountId)", - "function getAccountLastInteraction(uint128 accountId) view returns (uint256)", - "function getAccountOwner(uint128 accountId) view returns (address)", - "function getAccountPermissions(uint128 accountId) view returns (tuple(address user, bytes32[] permissions)[] accountPerms)", - "function getAccountTokenAddress() view returns (address)", - "function grantPermission(uint128 accountId, bytes32 permission, address user)", - "function hasPermission(uint128 accountId, bytes32 permission, address user) view returns (bool)", - "function isAuthorized(uint128 accountId, bytes32 permission, address user) view returns (bool)", - "function notifyAccountTransfer(address to, uint128 accountId)", - "function renouncePermission(uint128 accountId, bytes32 permission)", - "function revokePermission(uint128 accountId, bytes32 permission, address user)" - ], - "constructorArgs": [], - "linkedLibraries": {}, - "deployTxnHash": "0xec0d2d664d51f81f2f720606c85682cf40a70d57c86c1aa75b12cc7b5677e458", - "sourceName": "contracts/modules/core/AccountModule.sol", - "contractName": "AccountModule", - "deployedOn": "contract.AccountModule", + "setPerpsEthFundingParameters": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setFundingParameters", + "args": [ + "<%= settings.eth_perps_market_id %>", + "<%= parseEther(settings.eth_perps_market_skew_scale) %>", + "<%= parseEther(settings.eth_perps_market_max_funding_velocity) %>" + ], + "depends": [ + "invoke.createEthPerpsMarket", + "var.perps_eth_market_settings" + ] + }, + "setPerpsEthOrderFees": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setOrderFees", + "args": [ + "<%= settings.eth_perps_market_id %>", + "<%= parseEther(settings.eth_perps_maker_fee_ratio) %>", + "<%= parseEther(settings.eth_perps_taker_fee_ratio) %>" + ], + "depends": [ + "invoke.createEthPerpsMarket", + "var.perps_eth_market_settings" + ] + }, + "setPerpsEthMaxMarketSize": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setMaxMarketSize", + "args": [ + "<%= settings.eth_perps_market_id %>", + "<%= parseEther(settings.eth_perps_max_market_size) %>" + ], + "depends": [ + "invoke.createEthPerpsMarket", + "var.perps_eth_market_settings" + ] + }, + "setPerpsEthMaxMarketValue": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setMaxMarketValue", + "args": [ + "<%= settings.eth_perps_market_id %>", + "<%= parseEther(settings.eth_perps_max_market_value) %>" + ], + "depends": [ + "invoke.createEthPerpsMarket", + "var.perps_eth_market_settings" + ] + }, + "setPerpsEthMaxLiquidationParameters": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setMaxLiquidationParameters", + "args": [ + "<%= settings.eth_perps_market_id %>", + "<%= parseEther(settings.eth_perps_max_liquidation_limit_accumulation_multiplier) %>", + "<%= settings.eth_perps_max_seconds_in_liquidation_window %>", + "<%= parseEther(settings.eth_perps_max_liquidation_pd) %>", + "<%= settings.eth_perps_endorsed_liquidator %>" + ], + "depends": [ + "invoke.createEthPerpsMarket", + "var.perps_eth_market_settings" + ] + }, + "setPerpsEthLiquidationParameters": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setLiquidationParameters", + "args": [ + "<%= settings.eth_perps_market_id %>", + "<%= parseEther(settings.eth_perps_initial_margin_ratio) %>", + "<%= parseEther(settings.eth_perps_minimum_initial_margin_ratio) %>", + "<%= parseEther(settings.eth_perps_maintenance_margin_scalar) %>", + "<%= parseEther(settings.eth_perps_flag_reward_ratio) %>", + "<%= parseEther(settings.eth_perps_minimum_position_margin) %>" + ], + "depends": [ + "invoke.createEthPerpsMarket", + "var.perps_eth_market_settings" + ] + }, + "setPerpsEthLockedOiRatio": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setLockedOiRatio", + "args": [ + "<%= settings.eth_perps_market_id %>", + "<%= parseEther(settings.eth_perps_locked_oi_ratio) %>" + ], + "depends": [ + "invoke.createEthPerpsMarket", + "var.perps_eth_market_settings" + ] + }, + "createSolPerpsMarket": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "createMarket", + "args": [ + "<%= settings.sol_perps_market_id %>", + "Solana", + "SOL" + ], + "depends": [ + "var.perps_sol_market_settings" + ] + }, + "setPerpsPriceSol": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "updatePriceData", + "args": [ + "<%= settings.sol_perps_market_id %>", + "<%= extras.sol_oracle_id %>", + "<%= settings.bigCapStrictStalenessTolerance %>" + ], + "depends": [ + "invoke.createSolPerpsMarket", + "var.perps_sol_market_settings" + ] + }, + "addPerpsSolSettlementStrategy": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "addSettlementStrategy", + "args": [ + "<%= settings.sol_perps_market_id %>", + { + "strategyType": "0", + "settlementDelay": "<%= settings.big_cap_settlement_delay %>", + "settlementWindowDuration": "<%= settings.big_cap_settlement_window_duration %>", + "priceVerificationContract": "<%= imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address %>", + "feedId": "<%= settings.pyth_feed_id_sol %>", + "settlementReward": "<%= parseEther(settings.settlement_reward) %>", + "disabled": false, + "commitmentPriceDelay": "<%= settings.commitment_price_delay %>" + } + ], + "extra": { + "sol_pyth_settlement_strategy": { + "event": "SettlementStrategyAdded", + "arg": 2 + } + }, + "depends": [ + "invoke.createSolPerpsMarket" + ] + }, + "setPerpsSolSettlementStrategy": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setSettlementStrategy", + "args": [ + "<%= settings.sol_perps_market_id %>", + "<%= extras.sol_pyth_settlement_strategy %>", + { + "strategyType": "0", + "settlementDelay": "<%= settings.big_cap_settlement_delay %>", + "settlementWindowDuration": "<%= settings.big_cap_settlement_window_duration %>", + "priceVerificationContract": "<%= imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address %>", + "feedId": "<%= settings.pyth_feed_id_sol %>", + "settlementReward": "<%= parseEther(settings.settlement_reward) %>", + "disabled": false, + "commitmentPriceDelay": "<%= settings.commitment_price_delay %>" + } + ], + "depends": [ + "invoke.addPerpsSolSettlementStrategy", + "provision.perpsFactory", + "provision.pyth_erc7412_wrapper", + "var.perps_sol_market_settings" + ] + }, + "setPerpsSolFundingParameters": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setFundingParameters", + "args": [ + "<%= settings.sol_perps_market_id %>", + "<%= parseEther(settings.sol_perps_market_skew_scale) %>", + "<%= parseEther(settings.sol_perps_market_max_funding_velocity) %>" + ], + "depends": [ + "invoke.createSolPerpsMarket", + "var.perps_sol_market_settings" + ] + }, + "setPerpsSolOrderFees": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setOrderFees", + "args": [ + "<%= settings.sol_perps_market_id %>", + "<%= parseEther(settings.sol_perps_maker_fee_ratio) %>", + "<%= parseEther(settings.sol_perps_taker_fee_ratio) %>" + ], + "depends": [ + "invoke.createSolPerpsMarket", + "var.perps_sol_market_settings" + ] + }, + "setPerpsSolMaxMarketSize": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setMaxMarketSize", + "args": [ + "<%= settings.sol_perps_market_id %>", + "<%= parseEther(settings.sol_perps_max_market_size) %>" + ], + "depends": [ + "invoke.createSolPerpsMarket", + "var.perps_sol_market_settings" + ] + }, + "setPerpsSolMaxMarketValue": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setMaxMarketValue", + "args": [ + "<%= settings.sol_perps_market_id %>", + "<%= parseEther(settings.sol_perps_max_market_value) %>" + ], + "depends": [ + "invoke.createSolPerpsMarket", + "var.perps_sol_market_settings" + ] + }, + "setPerpsSolMaxLiquidationParameters": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setMaxLiquidationParameters", + "args": [ + "<%= settings.sol_perps_market_id %>", + "<%= parseEther(settings.sol_perps_max_liquidation_limit_accumulation_multiplier) %>", + "<%= settings.sol_perps_max_seconds_in_liquidation_window %>", + "<%= parseEther(settings.sol_perps_max_liquidation_pd) %>", + "<%= settings.sol_perps_endorsed_liquidator %>" + ], + "depends": [ + "invoke.createSolPerpsMarket", + "var.perps_sol_market_settings" + ] + }, + "setPerpsSolLiquidationParameters": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setLiquidationParameters", + "args": [ + "<%= settings.sol_perps_market_id %>", + "<%= parseEther(settings.sol_perps_initial_margin_ratio) %>", + "<%= parseEther(settings.sol_perps_minimum_initial_margin_ratio) %>", + "<%= parseEther(settings.sol_perps_maintenance_margin_scalar) %>", + "<%= parseEther(settings.sol_perps_flag_reward_ratio_d18) %>", + "<%= parseEther(settings.sol_perps_minimum_position_margin) %>" + ], + "depends": [ + "invoke.createSolPerpsMarket", + "var.perps_sol_market_settings" + ] + }, + "setPerpsSolLockedOiRatio": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setLockedOiRatio", + "args": [ + "<%= settings.sol_perps_market_id %>", + "<%= parseEther(settings.sol_perps_locked_oi_ratio) %>" + ], + "depends": [ + "invoke.createSolPerpsMarket", + "var.perps_sol_market_settings" + ] + }, + "createWifPerpsMarket": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "createMarket", + "args": [ + "<%= settings.wif_perps_market_id %>", + "dogwifhat", + "Wif" + ], + "depends": [ + "var.perps_wif_market_settings" + ] + }, + "setPerpsPriceWif": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "updatePriceData", + "args": [ + "<%= settings.wif_perps_market_id %>", + "<%= extras.wif_oracle_id %>", + "<%= settings.bigCapStrictStalenessTolerance %>" + ], + "depends": [ + "invoke.createWifPerpsMarket", + "var.perps_wif_market_settings" + ] + }, + "addPerpsWifSettlementStrategy": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "addSettlementStrategy", + "args": [ + "<%= settings.wif_perps_market_id %>", + { + "strategyType": "0", + "settlementDelay": "0", + "settlementWindowDuration": "1", + "priceVerificationContract": "0x0000000000000000000000000000000000000000", + "feedId": "0x0000000000000000000000000000000000000000000000000000000000000000", + "settlementReward": "0", + "disabled": false, + "commitmentPriceDelay": "0" + } + ], + "extra": { + "wif_pyth_settlement_strategy": { + "event": "SettlementStrategyAdded", + "arg": 2 + } + }, + "depends": [ + "invoke.createWifPerpsMarket" + ] + }, + "setPerpsWifSettlementStrategy": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setSettlementStrategy", + "args": [ + "<%= settings.wif_perps_market_id %>", + "<%= extras.wif_pyth_settlement_strategy %>", + { + "strategyType": "0", + "settlementDelay": "<%= settings.big_cap_settlement_delay %>", + "settlementWindowDuration": "<%= settings.big_cap_settlement_window_duration %>", + "priceVerificationContract": "<%= imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address %>", + "feedId": "<%= settings.pyth_feed_id_wif %>", + "settlementReward": "<%= parseEther(settings.settlement_reward) %>", + "disabled": false, + "commitmentPriceDelay": "<%= settings.commitment_price_delay %>" + } + ], + "depends": [ + "invoke.addPerpsWifSettlementStrategy", + "provision.perpsFactory", + "provision.pyth_erc7412_wrapper", + "var.perps_wif_market_settings" + ] + }, + "setPerpsWifFundingParameters": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setFundingParameters", + "args": [ + "<%= settings.wif_perps_market_id %>", + "<%= parseEther(settings.wif_perps_market_skew_scale) %>", + "<%= parseEther(settings.wif_perps_market_max_funding_velocity) %>" + ], + "depends": [ + "invoke.createWifPerpsMarket", + "var.perps_wif_market_settings" + ] + }, + "setPerpsWifOrderFees": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setOrderFees", + "args": [ + "<%= settings.wif_perps_market_id %>", + "<%= parseEther(settings.wif_perps_maker_fee_ratio) %>", + "<%= parseEther(settings.wif_perps_taker_fee_ratio) %>" + ], + "depends": [ + "invoke.createWifPerpsMarket", + "var.perps_wif_market_settings" + ] + }, + "setPerpsWifMaxMarketSize": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setMaxMarketSize", + "args": [ + "<%= settings.wif_perps_market_id %>", + "<%= parseEther(settings.wif_perps_max_market_size) %>" + ], + "depends": [ + "invoke.createWifPerpsMarket", + "var.perps_wif_market_settings" + ] + }, + "setPerpsWifMaxMarketValue": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setMaxMarketValue", + "args": [ + "<%= settings.wif_perps_market_id %>", + "<%= parseEther(settings.wif_perps_max_market_value) %>" + ], + "depends": [ + "invoke.createWifPerpsMarket", + "var.perps_wif_market_settings" + ] + }, + "setPerpsWifMaxLiquidationParameters": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setMaxLiquidationParameters", + "args": [ + "<%= settings.wif_perps_market_id %>", + "<%= parseEther(settings.wif_perps_max_liquidation_limit_accumulation_multiplier) %>", + "<%= settings.wif_perps_max_seconds_in_liquidation_window %>", + "<%= parseEther(settings.wif_perps_max_liquidation_pd) %>", + "<%= settings.wif_perps_endorsed_liquidator %>" + ], + "depends": [ + "invoke.createWifPerpsMarket", + "var.perps_wif_market_settings" + ] + }, + "setPerpsWifLiquidationParameters": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setLiquidationParameters", + "args": [ + "<%= settings.wif_perps_market_id %>", + "<%= parseEther(settings.wif_perps_initial_margin_ratio) %>", + "<%= parseEther(settings.wif_perps_minimum_initial_margin_ratio) %>", + "<%= parseEther(settings.wif_perps_maintenance_margin_scalar) %>", + "<%= parseEther(settings.wif_perps_flag_reward_ratio_d18) %>", + "<%= parseEther(settings.wif_perps_minimum_position_margin) %>" + ], + "depends": [ + "invoke.createWifPerpsMarket", + "var.perps_wif_market_settings" + ] + }, + "setPerpsWifLockedOiRatio": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setLockedOiRatio", + "args": [ + "<%= settings.wif_perps_market_id %>", + "<%= parseEther(settings.wif_perps_locked_oi_ratio) %>" + ], + "depends": [ + "invoke.createWifPerpsMarket", + "var.perps_wif_market_settings" + ] + }, + "setPerpsMaxCollateralForSnxUsd": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setCollateralConfiguration", + "args": [ + "0", + "<%= MaxUint256 %>", + "0", + "0", + "0" + ] + }, + "PerpsMarketProxy_setCollateralConfiguration_eth": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setCollateralConfiguration", + "args": [ + "<%= extras.synth_eth_market_id %>", + "<%= parseEther(settings.synth_eth_max_market_collateral) %>", + "<%= settings.eth_upper_limit_discount %>", + "<%= settings.eth_lower_limit_discount %>", + "<%= settings.eth_discount_scalar %>" + ] + }, + "PerpsMarketProxy_registerDistributor_eth_usdc": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "registerDistributor", + "args": [ + "<%= settings.synth_eth_token_address %>", + "<%= imports.RewardsDistributor_PerpsCollateral_sETH_USDC_liquidation_rewards.contracts.RewardsDistributorExternal.address %>", + "<%= settings.synth_eth_market_id %>", + [ + "<%= settings.usdc_address %>" + ] + ] + }, + "PerpsMarketProxy_setCollateralConfiguration_btc": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setCollateralConfiguration", + "args": [ + "<%= extras.synth_btc_market_id %>", + "<%= parseEther(settings.synth_btc_max_collateral_amount) %>", + "<%= settings.btc_upper_limit_discount %>", + "<%= settings.btc_lower_limit_discount %>", + "<%= settings.btc_discount_scalar %>" + ], + "depends": [ + "var.perps_collateral_sBTC_settings" + ] + }, + "PerpsMarketProxy_registerDistributor_btc_usdc": { + "target": [ + "perpsFactory.PerpsMarketProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "registerDistributor", + "args": [ + "<%= settings.synth_btc_token_address %>", + "<%= imports.RewardsDistributor_PerpsCollateral_sBTC_USDC_liquidation_rewards.contracts.RewardsDistributorExternal.address %>", + "<%= settings.synth_btc_market_id %>", + [ + "<%= settings.usdc_address %>" + ] + ] + }, + "CoreProxy_setMinLiquidityRatio": { + "target": [ + "system.CoreProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setMinLiquidityRatio(uint256)", + "args": [ + "<%= settings.minimum_liquidity_ratio %>" + ] + }, + "CoreProxy_setConfig_accountTimeoutWithdraw": { + "target": [ + "system.CoreProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "setConfig", + "args": [ + "<%= formatBytes32String('accountTimeoutWithdraw') %>", + "<%= settings.account_withdraw_timeout %>" + ] + }, + "CoreProxy_setPoolConfiguration_SpartanCouncil": { + "target": [ + "system.CoreProxy" + ], + "fromCall": { + "func": "getPoolOwner", + "args": [ + "<%= extras.spartan_council_pool_id %>" + ] + }, + "func": "setPoolConfiguration", + "args": [ + "<%= extras.spartan_council_pool_id %>", + [ + { + "marketId": "<%= extras.synth_dai_market_id %>", + "weightD18": 1, + "maxDebtShareValueD18": "<%= parseEther('1') %>" + }, + { + "marketId": "<%= extras.synth_usdc_market_id %>", + "weightD18": 1, + "maxDebtShareValueD18": "<%= parseEther('1') %>" + }, + { + "marketId": "<%= extras.synth_btc_market_id %>", + "weightD18": 1, + "maxDebtShareValueD18": "<%= parseEther('1') %>" + }, + { + "marketId": "<%= extras.synth_eth_market_id %>", + "weightD18": 1, + "maxDebtShareValueD18": "<%= parseEther('1') %>" + }, + { + "marketId": "<%= imports.perpsFactory.extras.superMarketId %>", + "weightD18": 98, + "maxDebtShareValueD18": "<%= parseEther('1') %>" + } + ] + ] + }, + "CoreProxy_initOrUpgradeToken_USDToken": { + "target": [ + "system.CoreProxy" + ], + "fromCall": { + "func": "owner" + }, + "func": "initOrUpgradeToken", + "args": [ + "<%= settings.usd_token_name %>", + "Synthetix USD", + "USDx", + 18, + "<%= imports.system.contracts.USDRouter.address %>" + ] + } + }, + "var": { + "eth_spot_settings": { + "synth_eth_max_market_collateral": "1000", + "synth_eth_skew_scale": "350000" + }, + "btc_spot_settings": { + "synth_btc_max_collateral_amount": "75", + "synth_btc_skew_scale": "3500" + }, + "perps_keeper_settings": { + "perps_keeper_l1_cost_settle_gas_units": "<%= String(30_000) %>", + "perps_keeper_l2_cost_settle_gas_units": "<%= String(2_450_000) %>", + "perps_keeper_l1_cost_flag_gas_units": "<%= String(31_000) %>", + "perps_keeper_l2_cost_flag_gas_units": "<%= String(1_160_000) %>", + "perps_keeper_l1_cost_liquidate_gas_units": "<%= String(5_500) %>", + "perps_keeper_l2_cost_liquidate_gas_units": "<%= String(600_000) %>" + }, + "perps_global_settings": { + "perps_liquidation_min_keeper_reward_usd": "1", + "perps_liquidation_min_keeper_profit_ratio_d18": "0.30", + "perps_liquidation_max_keeper_reward_usd": "30", + "perps_liquidation_max_keeper_scaling_ratio_d18": "0.0003", + "perps_low_util_gradient": "0", + "perps_gradient_breakpoint": "0", + "perps_high_util_gradient": "0", + "perps_collateral_liquidation_ratio": "0.0003", + "perps_max_positions_per_account": "10", + "perps_max_collaterals_per_account": "3" + }, + "perps_btc_market_settings": { + "btc_perps_market_id": "200", + "btc_perps_market_skew_scale": "<%= String(35_000) %>", + "btc_perps_market_max_funding_velocity": "9", + "btc_perps_maker_fee_ratio": "0", + "btc_perps_taker_fee_ratio": "0.0005", + "btc_perps_max_market_size": "1200", + "btc_perps_max_market_value": "<%= String(50_000_000) %>", + "btc_perps_initial_margin_ratio": "0.744", + "btc_perps_maintenance_margin_scalar": "0.333", + "btc_perps_minimum_initial_margin_ratio": "0.02", + "btc_perps_flag_reward_ratio_d18": "0.0003", + "btc_perps_max_liquidation_limit_accumulation_multiplier": "1.5", + "btc_perps_max_seconds_in_liquidation_window": "30", + "btc_perps_minimum_position_margin": "50", + "btc_perps_locked_oi_ratio": "0.25", + "btc_perps_max_liquidation_pd": "0.0005", + "btc_perps_endorsed_liquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306" + }, + "perps_eth_market_settings": { + "eth_perps_market_id": "100", + "eth_perps_market_skew_scale": "<%= String(350_000) %>", + "eth_perps_market_max_funding_velocity": "9", + "eth_perps_maker_fee_ratio": "0", + "eth_perps_taker_fee_ratio": "0.0005", + "eth_perps_max_market_size": "<%= String(15_000) %>", + "eth_perps_max_market_value": "<%= String(40_000_000) %>", + "eth_perps_initial_margin_ratio": "0.744", + "eth_perps_minimum_initial_margin_ratio": "0.02", + "eth_perps_maintenance_margin_scalar": "0.333", + "eth_perps_flag_reward_ratio": "0.0003", + "eth_perps_minimum_position_margin": "50", + "eth_perps_locked_oi_ratio": "0.25", + "eth_perps_max_liquidation_limit_accumulation_multiplier": "1.5", + "eth_perps_max_seconds_in_liquidation_window": "30", + "eth_perps_max_liquidation_pd": "0.0005", + "eth_perps_endorsed_liquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306" + }, + "perps_sol_market_settings": { + "sol_perps_market_id": "300", + "sol_perps_market_skew_scale": "<%= String(1_406_250) %>", + "sol_perps_market_max_funding_velocity": "9", + "sol_perps_maker_fee_ratio": "0", + "sol_perps_taker_fee_ratio": "0.0008", + "sol_perps_max_market_size": "<%= String(270_000) %>", + "sol_perps_max_market_value": "<%= String(40_000_000) %>", + "sol_perps_initial_margin_ratio": "5.503", + "sol_perps_maintenance_margin_scalar": "0.333", + "sol_perps_minimum_initial_margin_ratio": "0.002", + "sol_perps_flag_reward_ratio_d18": "0.0003", + "sol_perps_max_liquidation_limit_accumulation_multiplier": "1.5", + "sol_perps_max_seconds_in_liquidation_window": "30", + "sol_perps_minimum_position_margin": "50", + "sol_perps_locked_oi_ratio": "0.50", + "sol_perps_max_liquidation_pd": "0.0005", + "sol_perps_endorsed_liquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306" + }, + "perps_wif_market_settings": { + "wif_perps_market_id": "400", + "wif_perps_market_skew_scale": "<%= String(15_000_000) %>", + "wif_perps_market_max_funding_velocity": "36", + "wif_perps_maker_fee_ratio": "0", + "wif_perps_taker_fee_ratio": "0.0010", + "wif_perps_max_market_size": "<%= String(2_500_000) %>", + "wif_perps_max_market_value": "<%= String(3_000_000) %>", + "wif_perps_initial_margin_ratio": "1", + "wif_perps_maintenance_margin_scalar": "0.5", + "wif_perps_minimum_initial_margin_ratio": "0.04", + "wif_perps_flag_reward_ratio_d18": "0.0003", + "wif_perps_max_liquidation_limit_accumulation_multiplier": "1.5", + "wif_perps_max_seconds_in_liquidation_window": "30", + "wif_perps_minimum_position_margin": "50", + "wif_perps_locked_oi_ratio": "0.50", + "wif_perps_max_liquidation_pd": "0.0005", + "wif_perps_endorsed_liquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306" + }, + "perps_collateral_sETH_settings": { + "eth_upper_limit_discount": "<%= parseEther('0.1') %>", + "eth_lower_limit_discount": "<%= parseEther('0.01') %>", + "eth_discount_scalar": "<%= parseEther('1') %>" + }, + "perps_collateral_sBTC_settings": { + "btc_upper_limit_discount": "<%= parseEther('0.075') %>", + "btc_lower_limit_discount": "<%= parseEther('0.010') %>", + "btc_discount_scalar": "<%= parseEther('1') %>" + } + }, + "name": "synthetix-omnibus", + "version": "15", + "description": "Arbitrum deployment", + "preset": "main" + }, + "state": { + "setting.account_withdraw_timeout": { + "artifacts": { + "settings": { + "account_withdraw_timeout": "0x0000000000000000000000000000000000000000000000000000000000015180" + } + }, + "hash": "499bee72da669b28b86b21fa2a35e988", + "version": 7 + }, + "setting.arb_address": { + "artifacts": { + "settings": { + "arb_address": "0x7b356eEdABc1035834cd1f714658627fcb4820E3" + } + }, + "hash": "1355739c0d9505ae90445b9c4ba45477", + "version": 7 + }, + "setting.big_cap_default_staleness_tolerance": { + "artifacts": { + "settings": { + "big_cap_default_staleness_tolerance": "3600" + } + }, + "hash": "cbe1a4d89aef65379151a3c5b905bd85", + "version": 7 + }, + "setting.big_cap_settlement_delay": { + "artifacts": { + "settings": { + "big_cap_settlement_delay": "2" + } + }, + "hash": "dc88d99e217842b1532ccb97f443b6c1", + "version": 7 + }, + "setting.big_cap_settlement_window_duration": { + "artifacts": { + "settings": { + "big_cap_settlement_window_duration": "60" + } + }, + "hash": "c85e06d9961059219500923347f33fea", + "version": 7 + }, + "setting.bundleSalt": { + "artifacts": { + "settings": { + "bundleSalt": "snax" + } + }, + "hash": "1ce8073982f8b8f0b4fa5c488c1fac79", + "version": 7 + }, + "setting.buyback_snx_package": { + "artifacts": { + "settings": { + "buyback_snx_package": "buyback-snx:3.3.15" + } + }, + "hash": "0091281378142a3a0e8f8649d3730e34", + "version": 7 + }, + "setting.dai_address": { + "artifacts": { + "settings": { + "dai_address": "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9" + } + }, + "hash": "1d6030687b67b3ce21190a75a9afb2f7", + "version": 7 + }, + "setting.dai_issuance_ratio": { + "artifacts": { + "settings": { + "dai_issuance_ratio": "1200000000000000000" + } + }, + "hash": "877facbdbdc07d8b56635d46ac5ffe14", + "version": 7 + }, + "setting.dai_liquidation_ratio": { + "artifacts": { + "settings": { + "dai_liquidation_ratio": "1050000000000000000" + } + }, + "hash": "b8ef3cf0b2ae29972f2b898f8e1fa78f", + "version": 7 + }, + "setting.dai_liquidation_reward": { + "artifacts": { + "settings": { + "dai_liquidation_reward": "1000000000000000000" + } + }, + "hash": "845fb85d1e0ccaf6b0afd054626bbe97", + "version": 7 + }, + "setting.dai_min_delegation": { + "artifacts": { + "settings": { + "dai_min_delegation": "100000000000000000000" + } + }, + "hash": "ad27ad0c2fad068c59a31bad017dda13", + "version": 7 + }, + "setting.dai_staleness_tolerance": { + "artifacts": { + "settings": { + "dai_staleness_tolerance": "3600" + } + }, + "hash": "4e448eb07415cbfff6dd319eccc4992d", + "version": 7 + }, + "setting.deployer": { + "artifacts": { + "settings": { + "deployer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "hash": "3f34e398af2b36b5093aa17a4fca6630", + "version": 7 + }, + "setting.minimum_liquidity_ratio": { + "artifacts": { + "settings": { + "minimum_liquidity_ratio": "2000000000000000000" + } + }, + "hash": "320589bee1252dfa54fdb6ddd47fe821", + "version": 7 + }, + "setting.owner": { + "artifacts": { + "settings": { + "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "hash": "3f34e398af2b36b5093aa17a4fca6630", + "version": 7 + }, + "setting.perps_keeper_cost_package": { + "artifacts": { + "settings": { + "perps_keeper_cost_package": "arbitrum-gas-price-oracle:3.3.16" + } + }, + "hash": "5344ee6b18a6667a31ade7106f0d3cfc", + "version": 7 + }, + "setting.perps_market_package": { + "artifacts": { + "settings": { + "perps_market_package": "synthetix-perps-market:3.4.1" + } + }, + "hash": "c0c52eb68b9cdc020800d3966c1d97dc", + "version": 7 + }, + "setting.perps_super_market_name": { + "artifacts": { + "settings": { + "perps_super_market_name": "Multi Collateral Perps" + } + }, + "hash": "77e6916ac11b49b1f04a707ad6a320f2", + "version": 7 + }, + "setting.pool_owner": { + "artifacts": { + "settings": { + "pool_owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "hash": "3f34e398af2b36b5093aa17a4fca6630", + "version": 7 + }, + "setting.price_deviation_tolerance": { + "artifacts": { + "settings": { + "price_deviation_tolerance": "1000000000000000000" + } + }, + "hash": "845fb85d1e0ccaf6b0afd054626bbe97", + "version": 7 + }, + "setting.pyth_feed_id_arb": { + "artifacts": { + "settings": { + "pyth_feed_id_arb": "0x3fa4252848f9f0a1480be62745a4629d9eb1322aebab8a791e344b3b9c1adcf5" + } + }, + "hash": "5a1d4bc143427649808f3d9d7603de7d", + "version": 7 + }, + "setting.pyth_feed_id_dai": { + "artifacts": { + "settings": { + "pyth_feed_id_dai": "0xb0948a5e5313200c632b51bb5ca32f6de0d36e9950a942d19751e833f70dabfd" + } + }, + "hash": "6679923d435e2075d476bd1c6fd6553f", + "version": 7 + }, + "setting.pyth_feed_id_eth": { + "artifacts": { + "settings": { + "pyth_feed_id_eth": "0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace" + } + }, + "hash": "abc699926b0576805bfb24798e836b48", + "version": 7 + }, + "setting.pyth_feed_id_usdc": { + "artifacts": { + "settings": { + "pyth_feed_id_usdc": "0xeaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a" + } + }, + "hash": "8e934a240774af30606b75bdd802ea25", + "version": 7 + }, + "setting.pyth_feed_url": { + "artifacts": { + "settings": { + "pyth_feed_url": "https://api.synthetix.io/pyth-mainnet/api/get_vaa_ccip?data={data}" + } + }, + "hash": "7cdbc8d7837fb76c09f018ecea7fe65e", + "version": 7 + }, + "setting.pyth_price_verification_address": { + "artifacts": { + "settings": { + "pyth_price_verification_address": "0x4374e5a8b9C22271E9EB878A2AA31DE97DF15DAF" + } + }, + "hash": "ee3aca0a521c56aaa4a6f67045e01142", + "version": 7 + }, + "setting.salt": { + "artifacts": { + "settings": { + "salt": "snax" + } + }, + "hash": "1ce8073982f8b8f0b4fa5c488c1fac79", + "version": 7 + }, + "setting.settlement_max_rounding_loss": { + "artifacts": { + "settings": { + "settlement_max_rounding_loss": "1000000000000" + } + }, + "hash": "607df2dbd59151d89ce5055ae20c68c6", + "version": 7 + }, + "setting.settlement_minimum_usd_exchange_amount": { + "artifacts": { + "settings": { + "settlement_minimum_usd_exchange_amount": "1000000000000" + } + }, + "hash": "607df2dbd59151d89ce5055ae20c68c6", + "version": 7 + }, + "setting.settlement_reward": { + "artifacts": { + "settings": { + "settlement_reward": "500000000000000000" + } + }, + "hash": "432e3c15ccbe73e998f322de6cb6a0c3", + "version": 7 + }, + "setting.snx_package": { + "artifacts": { + "settings": { + "snx_package": "synthetix:3.3.18" + } + }, + "hash": "bf213d1a83605ef69753be3a7653f373", + "version": 7 + }, + "setting.spartan_council_pool_id_setting": { + "artifacts": { + "settings": { + "spartan_council_pool_id_setting": "1" + } + }, + "hash": "5f6fb867a611e73895d85f93fc6f7baa", + "version": 7 + }, + "setting.spot_market_package": { + "artifacts": { + "settings": { + "spot_market_package": "synthetix-spot-market:3.3.21-dev.fd4c5628" + } + }, + "hash": "6e3e1fbf53a7ac1e622bbb3752aa7022", + "version": 7 + }, + "setting.synth_dai_max_market_collateral": { + "artifacts": { + "settings": { + "synth_dai_max_market_collateral": "0" + } + }, + "hash": "4dcc24a97eaa6583aab6a5b0cb07d27e", + "version": 7 + }, + "setting.synth_usdc_max_market_collateral": { + "artifacts": { + "settings": { + "synth_usdc_max_market_collateral": "10000000000000000000000000" + } + }, + "hash": "864c3d00b6ac650501aef463342c436d", + "version": 7 + }, + "setting.target_preset": { + "artifacts": { + "settings": { + "target_preset": "main" + } + }, + "hash": "79d2862416f9389ec7270a618c6ce1b3", + "version": 7 + }, + "setting.usdc_address": { + "artifacts": { + "settings": { + "usdc_address": "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d" + } + }, + "hash": "778dc94af5aa64fe0640d2dd986ab589", + "version": 7 + }, + "setting.usdc_issuance_ratio": { + "artifacts": { + "settings": { + "usdc_issuance_ratio": "1200000000000000000" + } + }, + "hash": "877facbdbdc07d8b56635d46ac5ffe14", + "version": 7 + }, + "setting.usdc_liquidation_ratio": { + "artifacts": { + "settings": { + "usdc_liquidation_ratio": "1050000000000000000" + } + }, + "hash": "b8ef3cf0b2ae29972f2b898f8e1fa78f", + "version": 7 + }, + "setting.usdc_liquidation_reward": { + "artifacts": { + "settings": { + "usdc_liquidation_reward": "1000000000000000000" + } + }, + "hash": "845fb85d1e0ccaf6b0afd054626bbe97", + "version": 7 + }, + "setting.usdc_min_delegation": { + "artifacts": { + "settings": { + "usdc_min_delegation": "100000000000000000000" + } + }, + "hash": "ad27ad0c2fad068c59a31bad017dda13", + "version": 7 + }, + "setting.usdc_staleness_tolerance": { + "artifacts": { + "settings": { + "usdc_staleness_tolerance": "3600" + } + }, + "hash": "4e448eb07415cbfff6dd319eccc4992d", + "version": 7 + }, + "setting.weth_address": { + "artifacts": { + "settings": { + "weth_address": "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73" + } + }, + "hash": "5811ed3dbd778e42d1838b6f558ac3ae", + "version": 7 + }, + "provision.arb_mock_collateral": { + "artifacts": { + "imports": { + "arb_mock_collateral": { + "url": "ipfs://QmfLFMtEhXTpE99Q11YNvTfteczbGPALegwmo5XC1QCRhV", + "tags": [ + "latest" + ], + "preset": "with-synthetix-omnibus", + "settings": { + "decimals": "18", + "initialSupply": "0", + "name": "Token", + "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", + "salt": "", + "symbol": "TKN" + }, + "contracts": { + "MintableToken": { + "address": "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + "abi": [ + "constructor(address owner, string name, string symbol, uint8 tokenDecimals, uint256 initialSupply) payable", + "function allowance(address owner, address spender) view returns (uint256)", + "function approve(address spender, uint256 amount) returns (bool)", + "function balanceOf(address account) view returns (uint256)", + "function decimals() view returns (uint8)", + "function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)", + "function increaseAllowance(address spender, uint256 addedValue) returns (bool)", + "function mint(uint256 amount, address to)", + "function name() view returns (string)", + "function owner() view returns (address)", + "function renounceOwnership()", + "function symbol() view returns (string)", + "function totalSupply() view returns (uint256)", + "function transfer(address to, uint256 amount) returns (bool)", + "function transferFrom(address from, address to, uint256 amount) returns (bool)", + "function transferOwnership(address newOwner)", + "event Approval(address indexed owner, address indexed spender, uint256 value)", + "event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)", + "event Transfer(address indexed from, address indexed to, uint256 value)" + ], + "constructorArgs": [ + "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", + "Fake ARB Coin", + "fARB", + "18", + "0" + ], + "linkedLibraries": {}, + "deployTxnHash": "0xf86b4247c1bcdba8cc9e81b8d9030dd0e5c2b2bfc765a31dda71ef2261b20777", + "sourceName": "src/MintableToken.sol", + "contractName": "MintableToken", + "deployedOn": "contract.MintableToken", + "highlight": true, + "gasUsed": 865741, + "gasCost": "707980000" + } + }, + "extras": { + "decimals": "18", + "initialSupply": "0", + "name": "Token", + "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", + "salt": "", + "symbol": "TKN" + } + } + } + }, + "hash": null, + "version": 7 + }, + "provision.dai_mock_collateral": { + "artifacts": { + "imports": { + "dai_mock_collateral": { + "url": "ipfs://QmaysZfLnr6DXWyYP3XfS3FxRhz6XoFvkVZc6NubuHRbBz", + "tags": [ + "latest" + ], + "preset": "with-synthetix-omnibus", + "settings": { + "decimals": "18", + "initialSupply": "0", + "name": "Token", + "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", + "salt": "", + "symbol": "TKN" + }, + "contracts": { + "MintableToken": { + "address": "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", + "abi": [ + "constructor(address owner, string name, string symbol, uint8 tokenDecimals, uint256 initialSupply) payable", + "function allowance(address owner, address spender) view returns (uint256)", + "function approve(address spender, uint256 amount) returns (bool)", + "function balanceOf(address account) view returns (uint256)", + "function decimals() view returns (uint8)", + "function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)", + "function increaseAllowance(address spender, uint256 addedValue) returns (bool)", + "function mint(uint256 amount, address to)", + "function name() view returns (string)", + "function owner() view returns (address)", + "function renounceOwnership()", + "function symbol() view returns (string)", + "function totalSupply() view returns (uint256)", + "function transfer(address to, uint256 amount) returns (bool)", + "function transferFrom(address from, address to, uint256 amount) returns (bool)", + "function transferOwnership(address newOwner)", + "event Approval(address indexed owner, address indexed spender, uint256 value)", + "event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)", + "event Transfer(address indexed from, address indexed to, uint256 value)" + ], + "constructorArgs": [ + "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", + "Fake DAI Coin", + "fDAI", + "18", + "0" + ], + "linkedLibraries": {}, + "deployTxnHash": "0x25159c435ef3145f60eebfe7bbb84c9f74fd00d730cfba9331bcec52470c6543", + "sourceName": "src/MintableToken.sol", + "contractName": "MintableToken", + "deployedOn": "contract.MintableToken", + "highlight": true, + "gasUsed": 867303, + "gasCost": "696820000" + } + }, + "extras": { + "decimals": "18", + "initialSupply": "0", + "name": "Token", + "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", + "salt": "", + "symbol": "TKN" + } + } + } + }, + "hash": null, + "version": 7 + }, + "provision.pyth_erc7412_wrapper": { + "artifacts": { + "imports": { + "pyth_erc7412_wrapper": { + "url": "ipfs://QmUCeV91jQWH5quzNc2HFfKCrdokTapDYX7jEbqqeVb9my", + "tags": [ + "latest" + ], + "preset": "main", + "settings": { + "pythAddress": "0x420000000000000000000000000000000000000F" + }, + "contracts": { + "PythERC7412Wrapper": { + "address": "0x0eA49b2e23387cD99ceceBDa52041c604e40992E", + "abi": [ + "constructor(address _pythAddress)", + "error FeeRequired(uint256 amount)", + "error NotSupported(uint8 updateType)", + "error OracleDataRequired(address oracleContract, bytes oracleQuery)", + "error OverflowInt256ToUint256()", + "error OverflowUint256ToInt256()", + "function fulfillOracleQuery(bytes signedOffchainData) payable", + "function getBenchmarkPrice(bytes32 priceId, uint64 requestedTime) view returns (int256)", + "function getLatestPrice(bytes32 priceId, uint256 stalenessTolerance) view returns (int256)", + "function oracleId() pure returns (bytes32)", + "function pythAddress() view returns (address)" + ], + "constructorArgs": [ + "0x4374e5a8b9C22271E9EB878A2AA31DE97DF15DAF" + ], + "linkedLibraries": {}, + "deployTxnHash": "", + "sourceName": "contracts/PythERC7412Wrapper.sol", + "contractName": "PythERC7412Wrapper", + "deployedOn": "contract.PythERC7412Wrapper", + "gasUsed": 0, + "gasCost": "0" + } + }, + "extras": { + "pythAddress": "0x420000000000000000000000000000000000000F" + } + } + } + }, + "hash": null, + "version": 7 + }, + "provision.system": { + "artifacts": { + "imports": { + "system": { + "url": "ipfs://QmSgHhNgePb527rtjuEvzJGAyTYpHv3yWE7PsR87BMaX2u", + "tags": [ + "latest" + ], + "target": "synthetix:3.3.18@main", + "preset": "main", + "contracts": { + "AccountModule": { + "address": "0x92D1c57Bfb7655327186380CD8bb69f4a972Fd2C", + "abi": [ + "error FeatureUnavailable(bytes32 which)", + "error InvalidAccountId(uint128 accountId)", + "error InvalidPermission(bytes32 permission)", + "error OnlyAccountTokenProxy(address origin)", + "error PermissionDenied(uint128 accountId, bytes32 permission, address target)", + "error PermissionNotGranted(uint128 accountId, bytes32 permission, address user)", + "error PositionOutOfBounds()", + "error ValueAlreadyInSet()", + "error ValueNotInSet()", + "error ZeroAddress()", + "event AccountCreated(uint128 indexed accountId, address indexed owner)", + "event PermissionGranted(uint128 indexed accountId, bytes32 indexed permission, address indexed user, address sender)", + "event PermissionRevoked(uint128 indexed accountId, bytes32 indexed permission, address indexed user, address sender)", + "function createAccount() returns (uint128 accountId)", + "function createAccount(uint128 requestedAccountId)", + "function getAccountLastInteraction(uint128 accountId) view returns (uint256)", + "function getAccountOwner(uint128 accountId) view returns (address)", + "function getAccountPermissions(uint128 accountId) view returns (tuple(address user, bytes32[] permissions)[] accountPerms)", + "function getAccountTokenAddress() view returns (address)", + "function grantPermission(uint128 accountId, bytes32 permission, address user)", + "function hasPermission(uint128 accountId, bytes32 permission, address user) view returns (bool)", + "function isAuthorized(uint128 accountId, bytes32 permission, address user) view returns (bool)", + "function notifyAccountTransfer(address to, uint128 accountId)", + "function renouncePermission(uint128 accountId, bytes32 permission)", + "function revokePermission(uint128 accountId, bytes32 permission, address user)" + ], + "constructorArgs": [], + "linkedLibraries": {}, + "deployTxnHash": "0xec0d2d664d51f81f2f720606c85682cf40a70d57c86c1aa75b12cc7b5677e458", + "sourceName": "contracts/modules/core/AccountModule.sol", + "contractName": "AccountModule", + "deployedOn": "contract.AccountModule", "gasUsed": 1209268, "gasCost": "444570000" }, @@ -5452,11 +7314,11 @@ "artifacts": { "imports": { "spotFactory": { - "url": "ipfs://QmabUcXBqc1yTTwbw8QkK7kj5YTd3xavxrkmQNy8qEHTHS", + "url": "ipfs://QmcwZbXNZoBVNtoLNaPHSjg1aT6eaGBoKVJc7gb1pwqJ8M", "tags": [ "latest" ], - "target": "synthetix-spot-market:3.3.15@main", + "target": "synthetix-spot-market:3.3.21-dev.fd4c5628@main", "preset": "main", "contracts": { "AsyncOrderConfigurationModule": { @@ -5482,7 +7344,7 @@ "gasCost": "711400000" }, "AsyncOrderModule": { - "address": "0x2B52baA05b1e261Abf0E8644E3cE2297285AC302", + "address": "0x8F09aDe8Ec994C3F977E5eA03026E1E2eFA314a7", "abi": [ "error IneligibleForCancellation(uint256 timestamp, uint256 expirationTime)", "error InsufficientSharesAmount(uint256 expected, uint256 actual)", @@ -5501,15 +7363,17 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0x9c43405054bb4e9927cdcb2516abf6d354d52528cf841b6ee7dd634d3a330f30", + "deployTxnHash": "0xb0b3a2b04eba0512e60ba7ce63fd30e39e9b8d018338ba2ed6cf2b51a8a80cc2", + "deployTxnBlockNumber": "68535256", + "deployTimestamp": "1722632220", "sourceName": "contracts/modules/AsyncOrderModule.sol", "contractName": "AsyncOrderModule", "deployedOn": "contract.AsyncOrderModule", - "gasUsed": 1434298, - "gasCost": "706260000" + "gasUsed": 1317254, + "gasCost": "100000000" }, "AsyncOrderSettlementModule": { - "address": "0x9AD676D1D35C087bd441Fe16CD5aDd61FBCA852D", + "address": "0x6344FB25202Ce5a0134A3dAb7496443c3f1A95a7", "abi": [ "error InvalidClaim(uint256 asyncOrderId)", "error InvalidSettlementStrategy(uint8 strategyType)", @@ -5526,15 +7390,17 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0xb30b082266acd557b9168e1b45d9ab135d2a816b1f1c17cd0dbb4849305be58f", + "deployTxnHash": "0x77b0560887b2817b986fa1ef799820b535fed15fce0c533c095834f76675a9ed", + "deployTxnBlockNumber": "68535263", + "deployTimestamp": "1722632222", "sourceName": "contracts/modules/AsyncOrderSettlementModule.sol", "contractName": "AsyncOrderSettlementModule", "deployedOn": "contract.AsyncOrderSettlementModule", - "gasUsed": 2124640, - "gasCost": "702020000" + "gasUsed": 1963714, + "gasCost": "100000000" }, "AtomicOrderModule": { - "address": "0xC04a9239DC38A6AED425f5FF0fEc6Ac6266A27A7", + "address": "0xe0be9AA35c46D4aF31b6183F1253B77EC6156ebb", "abi": [ "error ExceedsMaxSynthAmount(uint256 maxSynthAmount, uint256 synthAmountCharged)", "error ExceedsMaxUsdAmount(uint256 maxUsdAmount, uint256 usdAmountCharged)", @@ -5559,12 +7425,14 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0x32ec289041da52852aa3ee4c3cf06a79ce646b1e650ed5fa3879dfc181f237e4", + "deployTxnHash": "0x632559cf6876183fe218f97aecdeaf2427392564f06ace541981effe140db8a3", + "deployTxnBlockNumber": "68535270", + "deployTimestamp": "1722632224", "sourceName": "contracts/modules/AtomicOrderModule.sol", "contractName": "AtomicOrderModule", "deployedOn": "contract.AtomicOrderModule", - "gasUsed": 2259356, - "gasCost": "700620000" + "gasUsed": 2090754, + "gasCost": "100000000" }, "CoreModule": { "address": "0xEB8BA0e83C485e0e90115c7549e12D9813656C30", @@ -5629,7 +7497,7 @@ "gasCost": "703280000" }, "MarketConfigurationModule": { - "address": "0xC10cd6Cf0F7D12529433110DaF0fC3Dc14669961", + "address": "0x3358873fF691f58b3243B1c4F698350A6603C6b1", "abi": [ "error InvalidCollateralLeverage(uint256)", "error InvalidFeeCollectorInterface(address invalidFeeCollector)", @@ -5663,19 +7531,22 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0xbd8e98d544b6c81bc68b77f1de4365e598bad8c8591728f3759fe83488ebed2c", + "deployTxnHash": "0xa184cfd6c7ccfcdd18b302c08386ab9716edfe806950ae21e87e5eb026c80df4", + "deployTxnBlockNumber": "68535276", + "deployTimestamp": "1722632226", "sourceName": "contracts/modules/MarketConfigurationModule.sol", "contractName": "MarketConfigurationModule", "deployedOn": "contract.MarketConfigurationModule", - "gasUsed": 798044, - "gasCost": "703400000" + "gasUsed": 720683, + "gasCost": "100000000" }, "SpotMarketFactoryModule": { - "address": "0x4300a068B3826aCEFaE7062b411aF467a34Bf3A6", + "address": "0xB2E57aC75df91784d76f9Dc0C00AdEFf2eFAe317", "abi": [ "error FeatureUnavailable(bytes32 which)", "error InvalidMarketOwner()", "error InvalidSynthImplementation(uint256 synthImplementation)", + "error InvalidTransactionTypeIndex(uint128 txnType)", "error MismatchAssociatedSystemKind(bytes32 expected, bytes32 actual)", "error MissingAssociatedSystem(bytes32 id)", "error NotNominated(address addr)", @@ -5701,6 +7572,7 @@ "function getPriceData(uint128 synthMarketId) view returns (bytes32 buyFeedId, bytes32 sellFeedId, uint256 strictPriceStalenessTolerance)", "function getSynth(uint128 marketId) view returns (address synthAddress)", "function getSynthImpl(uint128 marketId) view returns (address implAddress)", + "function indexPrice(uint128 marketId, uint128 transactionType, uint8 priceTolerance) view returns (uint256 price)", "function initOrUpgradeNft(bytes32 id, string name, string symbol, string uri, address impl)", "function initOrUpgradeToken(bytes32 id, string name, string symbol, uint8 decimals, address impl)", "function minimumCredit(uint128 marketId) view returns (uint256 lockedAmount)", @@ -5719,12 +7591,14 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0x67ba3915d433b67601a3c36286c6f72b0ac2ecb79917b9fc97ff93c3e1a4c852", + "deployTxnHash": "0x3df25544cf5875c808981fddb4bf9657ccda933eb4c70b3ef87febde009a545f", + "deployTxnBlockNumber": "68535287", + "deployTimestamp": "1722632229", "sourceName": "contracts/modules/SpotMarketFactoryModule.sol", "contractName": "SpotMarketFactoryModule", "deployedOn": "contract.SpotMarketFactoryModule", - "gasUsed": 2465558, - "gasCost": "707740000" + "gasUsed": 2327414, + "gasCost": "100000000" }, "SynthTokenModule": { "address": "0xac0BE3b71d0bd224FCF83654e5aC2d2c9e2817BC", @@ -5768,7 +7642,7 @@ "gasCost": "701520000" }, "WrapperModule": { - "address": "0xaD2fE7cd224c58871f541DAE01202F93928FEF72", + "address": "0x0731973f1F301aFE098b8FC58af8F29792B30B0F", "abi": [ "error FailedTransfer(address from, address to, uint256 value)", "error InsufficientAmountReceived(uint256 expected, uint256 current)", @@ -5788,12 +7662,14 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0x9592223de9f1264ea8f0916db5e193ca90e9d1c87ffce174fc91d03a7ea44fb1", + "deployTxnHash": "0x0319c17833c6a3cbef0438784f1772cf68f24c54d93cc6a59e2f62f1dfbe8ab9", + "deployTxnBlockNumber": "68535293", + "deployTimestamp": "1722632231", "sourceName": "contracts/modules/WrapperModule.sol", "contractName": "WrapperModule", "deployedOn": "contract.WrapperModule", - "gasUsed": 1827749, - "gasCost": "699410000" + "gasUsed": 1684906, + "gasCost": "100000000" }, "InitialSpotMarketProxy": { "address": "0x93d645c42A0CA3e08E9552367B8c454765fff041", @@ -5830,7 +7706,7 @@ "gasCost": "704870000" }, "SpotMarketRouter": { - "address": "0x3b1d0009899067d7db5e859c182410714caf8725", + "address": "0xa032eef7d27503bd44d3882487627001e77829b8", "abi": [ "error ImplementationIsSterile(address implementation)", "error NoChange()", @@ -5853,6 +7729,7 @@ "error FeatureUnavailable(bytes32 which)", "error InvalidMarketOwner()", "error InvalidSynthImplementation(uint256 synthImplementation)", + "error InvalidTransactionTypeIndex(uint128 txnType)", "error MismatchAssociatedSystemKind(bytes32 expected, bytes32 actual)", "error MissingAssociatedSystem(bytes32 id)", "error OnlyMarketOwner(address marketOwner, address sender)", @@ -5875,6 +7752,7 @@ "function getPriceData(uint128 synthMarketId) view returns (bytes32 buyFeedId, bytes32 sellFeedId, uint256 strictPriceStalenessTolerance)", "function getSynth(uint128 marketId) view returns (address synthAddress)", "function getSynthImpl(uint128 marketId) view returns (address implAddress)", + "function indexPrice(uint128 marketId, uint128 transactionType, uint8 priceTolerance) view returns (uint256 price)", "function initOrUpgradeNft(bytes32 id, string name, string symbol, string uri, address impl)", "function initOrUpgradeToken(bytes32 id, string name, string symbol, uint8 decimals, address impl)", "function minimumCredit(uint128 marketId) view returns (uint256 lockedAmount)", @@ -5993,11 +7871,13 @@ "function setFeatureFlagDenyAll(bytes32 feature, bool denyAll)" ], "deployedOn": "router.SpotMarketRouter", - "deployTxnHash": "0xd79c80f07d8140a3e0e73963716e0950ca6f884e267f26377cdd08e47ab194d5", + "deployTxnHash": "0xbe03ce664a9e4aca8e7d29308d8b56bcd76c6d3252c72d6dc6461daf67513ed7", + "deployTxnBlockNumber": "68535301", + "deployTimestamp": "1722632233", "contractName": "SpotMarketRouter", "sourceName": "SpotMarketRouter.sol", - "gasUsed": 931840, - "gasCost": "711400000" + "gasUsed": 880009, + "gasCost": "100000000" }, "SynthRouter": { "address": "0x87a1e05e307027aea84428aab504148f8f270d90", @@ -6079,6 +7959,7 @@ "error FeatureUnavailable(bytes32 which)", "error InvalidMarketOwner()", "error InvalidSynthImplementation(uint256 synthImplementation)", + "error InvalidTransactionTypeIndex(uint128 txnType)", "error MismatchAssociatedSystemKind(bytes32 expected, bytes32 actual)", "error MissingAssociatedSystem(bytes32 id)", "error OnlyMarketOwner(address marketOwner, address sender)", @@ -6101,6 +7982,7 @@ "function getPriceData(uint128 synthMarketId) view returns (bytes32 buyFeedId, bytes32 sellFeedId, uint256 strictPriceStalenessTolerance)", "function getSynth(uint128 marketId) view returns (address synthAddress)", "function getSynthImpl(uint128 marketId) view returns (address implAddress)", + "function indexPrice(uint128 marketId, uint128 transactionType, uint8 priceTolerance) view returns (uint256 price)", "function initOrUpgradeNft(bytes32 id, string name, string symbol, string uri, address impl)", "function initOrUpgradeToken(bytes32 id, string name, string symbol, uint8 decimals, address impl)", "function minimumCredit(uint128 marketId) view returns (uint256 lockedAmount)", @@ -6219,6 +8101,8 @@ "function setFeatureFlagDenyAll(bytes32 feature, bool denyAll)" ], "deployTxnHash": "", + "deployTxnBlockNumber": "", + "deployTimestamp": "", "sourceName": "", "contractName": "", "deployedOn": "invoke.upgradeSpotMarketProxy", @@ -6230,7 +8114,7 @@ "settings": { "owner": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", "salt": "snax", - "synthetixPackage": "synthetix:3.3.15", + "synthetixPackage": "synthetix", "synthetixPreset": "main" }, "imports": { @@ -8473,21 +10357,23 @@ }, "txns": { "upgradeSpotMarketProxy": { - "hash": "0x5cf6b3b3d30125d7507fb791444f91d1b93883fdc680b34c8290e344f03f46aa", + "hash": "0xc25c041f1548366480db0ef8117780c20003fe6b1a9c2d6be11bc1953633765e", + "blockNumber": "68535305", + "timestamp": "1722632235", "events": { "Upgraded": [ { "name": "Upgraded", "args": [ "0x93d645c42A0CA3e08E9552367B8c454765fff041", - "0x3b1D0009899067D7DB5e859c182410714caf8725" + "0xa032eEf7d27503Bd44D3882487627001E77829b8" ] } ] }, "deployedOn": "invoke.upgradeSpotMarketProxy", - "gasUsed": 57095, - "gasCost": "714810000", + "gasUsed": 55585, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" }, "addCreateSynthToFeatureFlag": { @@ -8566,7 +10452,7 @@ "extras": { "owner": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", "salt": "snax", - "synthetixPackage": "synthetix:3.3.15", + "synthetixPackage": "synthetix", "synthetixPreset": "main" } } @@ -8764,20 +10650,19 @@ "artifacts": { "imports": { "perpsFactory": { - "url": "ipfs://QmXQ7jXenq8VK3XBhv1yoxGAaeRh8hThNrJK7vpzkyheWL", + "url": "ipfs://QmZWhTFwBaiNxMukR8hWiuaefdezkTVP7ocpSKcwwH3w43", "tags": [ "latest" ], - "target": "synthetix-perps-market:3.3.19@main", + "target": "synthetix-perps-market:3.4.1@main", "preset": "main", "contracts": { "AsyncOrderCancelModule": { - "address": "0xD0daD8B7cC53C60726fC60456c30b27E90528879", + "address": "0x391683f29453E86ABd9FBA3Ab0a883EF77F5ACbC", "abi": [ "error AcceptablePriceNotExceeded(uint256 fillPrice, uint256 acceptablePrice)", "error AccountLiquidatable(uint128 accountId)", "error FeatureUnavailable(bytes32 which)", - "error InsufficientAccountMargin(uint256 leftover)", "error InvalidSettlementStrategy(uint256 settlementStrategyId)", "error OrderNotValid()", "error OverflowInt256ToUint256()", @@ -8788,27 +10673,28 @@ "error SettlementWindowNotOpen(uint256 timestamp, uint256 settlementTime)", "error ValueAlreadyInSet()", "error ValueNotInSet()", - "event CollateralDeducted(uint256 account, uint128 synthMarketId, uint256 amount)", + "event AccountCharged(uint128 accountId, int256 amount, uint256 accountDebt)", "event MarketUpdated(uint128 marketId, uint256 price, int256 skew, uint256 size, int256 sizeDelta, int256 currentFundingRate, int256 currentFundingVelocity, uint128 interestRate)", "event OrderCancelled(uint128 indexed marketId, uint128 indexed accountId, uint256 desiredPrice, uint256 fillPrice, int128 sizeDelta, uint256 settlementReward, bytes32 indexed trackingCode, address settler)", "function cancelOrder(uint128 accountId)" ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0x99613285e20537c14958f236ac8cd37a1f168ff858b4746d1eaa4ceb4f439a67", - "deployTxnBlockNumber": "67334613", - "deployTimestamp": "1722223849", + "deployTxnHash": "0xc4e0837dc67f816f9555c163e008d9a02fc824c940926949935d8be2fd0f3629", + "deployTxnBlockNumber": "68535342", + "deployTimestamp": "1722632248", "sourceName": "contracts/modules/AsyncOrderCancelModule.sol", "contractName": "AsyncOrderCancelModule", "deployedOn": "contract.AsyncOrderCancelModule", - "gasUsed": 3255193, + "gasUsed": 1061430, "gasCost": "100000000" }, "AsyncOrderModule": { - "address": "0xC5FaeC34091F12e08CC4CeD6bec0663cD3f1980c", + "address": "0x91112d49095Febf1616af25be7f32Cf580DBC7A3", "abi": [ "error AccountLiquidatable(uint128 accountId)", "error AccountNotFound(uint128 accountId)", + "error ExceedsMarketCreditCapacity(int256 delegatedCollateral, int256 newLockedCredit)", "error FeatureUnavailable(bytes32 which)", "error InsufficientMargin(int256 availableMargin, uint256 minMargin)", "error InvalidMarket(uint128 marketId)", @@ -8839,22 +10725,22 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0x62e4652e32d25a85fc436d2243b2bdefcd06f8de826681e5938f47913b37687e", - "deployTxnBlockNumber": "67334619", - "deployTimestamp": "1722223853", + "deployTxnHash": "0xc86ca2d4e7ce8a341b54aa1c9f250851b3653d85e63da5c83ed8dceeeeca6ca2", + "deployTxnBlockNumber": "68535346", + "deployTimestamp": "1722632249", "sourceName": "contracts/modules/AsyncOrderModule.sol", "contractName": "AsyncOrderModule", "deployedOn": "contract.AsyncOrderModule", - "gasUsed": 6411455, + "gasUsed": 3108708, "gasCost": "100000000" }, "AsyncOrderSettlementPythModule": { - "address": "0x0eA2F7dA4771cA8Ed6d0425DBF7E18264a5E6E39", + "address": "0x8c40995955502B7d5F4555B43BA0aCe402B216B5", "abi": [ "error AcceptablePriceExceeded(uint256 fillPrice, uint256 acceptablePrice)", "error AccountLiquidatable(uint128 accountId)", + "error ExceedsMarketCreditCapacity(int256 delegatedCollateral, int256 newLockedCredit)", "error FeatureUnavailable(bytes32 which)", - "error InsufficientAccountMargin(uint256 leftover)", "error InsufficientMargin(int256 availableMargin, uint256 minMargin)", "error InvalidMarket(uint128 marketId)", "error InvalidSettlementStrategy(uint256 settlementStrategyId)", @@ -8877,7 +10763,7 @@ "error ValueAlreadyInSet()", "error ValueNotInSet()", "error ZeroSizeOrder()", - "event CollateralDeducted(uint256 account, uint128 synthMarketId, uint256 amount)", + "event AccountCharged(uint128 accountId, int256 amount, uint256 accountDebt)", "event InterestCharged(uint128 indexed accountId, uint256 interest)", "event MarketUpdated(uint128 marketId, uint256 price, int256 skew, uint256 size, int256 sizeDelta, int256 currentFundingRate, int256 currentFundingVelocity, uint128 interestRate)", "event OrderSettled(uint128 indexed marketId, uint128 indexed accountId, uint256 fillPrice, int256 pnl, int256 accruedFunding, int128 sizeDelta, int128 newSize, uint256 totalFees, uint256 referralFees, uint256 collectedFees, uint256 settlementReward, bytes32 indexed trackingCode, address settler)", @@ -8885,13 +10771,47 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0x8166efbb406706d453a8b36acdc3c537c69ad2faf5d5c7a122247a06f4662a97", - "deployTxnBlockNumber": "67334635", - "deployTimestamp": "1722223858", + "deployTxnHash": "0x2ace2fc367aa7d3d91d77b2d9a2b4a6b022ec9d11b329ed6b918d0a3466bd450", + "deployTxnBlockNumber": "68535348", + "deployTimestamp": "1722632251", "sourceName": "contracts/modules/AsyncOrderSettlementPythModule.sol", "contractName": "AsyncOrderSettlementPythModule", "deployedOn": "contract.AsyncOrderSettlementPythModule", - "gasUsed": 8365378, + "gasUsed": 3527727, + "gasCost": "100000000" + }, + "CollateralConfigurationModule": { + "address": "0xE35F9a96bFEa977b3660b8EF7fF8B326C9Ee150c", + "abi": [ + "error InvalidDistributor(uint128 id, address distributor)", + "error InvalidDistributorContract(address distributor)", + "error InvalidId(uint128 id)", + "error InvalidParameter(string parameter, string reason)", + "error Unauthorized(address addr)", + "error ValueAlreadyInSet()", + "error ValueNotInSet()", + "error ZeroAddress()", + "event CollateralConfigurationSet(uint128 indexed collateralId, uint256 maxCollateralAmount, uint256 upperLimitDiscount, uint256 lowerLimitDiscount, uint256 discountScalar)", + "event CollateralLiquidateRewardRatioSet(uint128 collateralLiquidateRewardRatioD18)", + "event RewardDistributorRegistered(address distributor)", + "function getCollateralConfiguration(uint128 collateralId) view returns (uint256 maxCollateralAmount)", + "function getCollateralConfigurationFull(uint128 collateralId) view returns (uint256 maxCollateralAmount, uint256 upperLimitDiscount, uint256 lowerLimitDiscount, uint256 discountScalar)", + "function getCollateralLiquidateRewardRatio() view returns (uint128 collateralLiquidateRewardRatioD18)", + "function getRegisteredDistributor(uint128 collateralId) view returns (address distributor, address[] poolDelegatedCollateralTypes)", + "function isRegistered(address distributor) view returns (bool)", + "function registerDistributor(address token, address distributor, uint128 collateralId, address[] poolDelegatedCollateralTypes)", + "function setCollateralConfiguration(uint128 collateralId, uint256 maxCollateralAmount, uint256 upperLimitDiscount, uint256 lowerLimitDiscount, uint256 discountScalar)", + "function setCollateralLiquidateRewardRatio(uint128 collateralLiquidateRewardRatioD18)" + ], + "constructorArgs": [], + "linkedLibraries": {}, + "deployTxnHash": "0x9caff81b8086d5c3a8729e2ad4ca4fbe2eddf5f82d455c3aa313825da315b1b4", + "deployTxnBlockNumber": "68535351", + "deployTimestamp": "1722632252", + "sourceName": "contracts/modules/CollateralConfigurationModule.sol", + "contractName": "CollateralConfigurationModule", + "deployedOn": "contract.CollateralConfigurationModule", + "gasUsed": 904043, "gasCost": "100000000" }, "CoreModule": { @@ -8957,7 +10877,7 @@ "gasCost": "703800000" }, "GlobalPerpsMarketModule": { - "address": "0xCEc84BB584D392617e021535490376A68Cc10f35", + "address": "0x928A72cbd43b2c27d76b2dF40fe408B86062976D", "abi": [ "error InvalidFeeCollectorInterface(address invalidFeeCollector)", "error InvalidInterestRateParameters(uint128 lowUtilizationInterestRateGradient, uint128 highUtilizationInterestRateGradient)", @@ -8968,10 +10888,7 @@ "error OverflowUint256ToUint128()", "error PositionOutOfBounds()", "error Unauthorized(address addr)", - "error ValueAlreadyInSet()", - "error ValueNotInSet()", "error ZeroAddress()", - "event CollateralConfigurationSet(uint128 indexed synthMarketId, uint256 maxCollateralAmount)", "event FeeCollectorSet(address feeCollector)", "event InterestRateParametersSet(uint256 lowUtilizationInterestRateGradient, uint256 interestRateGradientBreakpoint, uint256 highUtilizationInterestRateGradient)", "event InterestRateUpdated(uint128 indexed superMarketId, uint128 interestRate)", @@ -8979,8 +10896,6 @@ "event KeeperRewardGuardsSet(uint256 minKeeperRewardUsd, uint256 minKeeperProfitRatioD18, uint256 maxKeeperRewardUsd, uint256 maxKeeperScalingRatioD18)", "event PerAccountCapsSet(uint128 maxPositionsPerAccount, uint128 maxCollateralsPerAccount)", "event ReferrerShareUpdated(address referrer, uint256 shareRatioD18)", - "event SynthDeductionPrioritySet(uint128[] newSynthDeductionPriority)", - "function getCollateralConfiguration(uint128 synthMarketId) view returns (uint256 maxCollateralAmount)", "function getFeeCollector() view returns (address feeCollector)", "function getInterestRateParameters() view returns (uint128 lowUtilizationInterestRateGradient, uint128 interestRateGradientBreakpoint, uint128 highUtilizationInterestRateGradient)", "function getKeeperCostNodeId() view returns (bytes32 keeperCostNodeId)", @@ -8989,14 +10904,11 @@ "function getPerAccountCaps() view returns (uint128 maxPositionsPerAccount, uint128 maxCollateralsPerAccount)", "function getReferrerShare(address referrer) view returns (uint256 shareRatioD18)", "function getSupportedCollaterals() view returns (uint256[] supportedCollaterals)", - "function getSynthDeductionPriority() view returns (uint128[])", "function globalCollateralValue(uint128 collateralId) view returns (uint256 collateralValue)", - "function setCollateralConfiguration(uint128 synthMarketId, uint256 maxCollateralAmount)", "function setFeeCollector(address feeCollector)", "function setInterestRateParameters(uint128 lowUtilizationInterestRateGradient, uint128 interestRateGradientBreakpoint, uint128 highUtilizationInterestRateGradient)", "function setKeeperRewardGuards(uint256 minKeeperRewardUsd, uint256 minKeeperProfitRatioD18, uint256 maxKeeperRewardUsd, uint256 maxKeeperScalingRatioD18)", "function setPerAccountCaps(uint128 maxPositionsPerAccount, uint128 maxCollateralsPerAccount)", - "function setSynthDeductionPriority(uint128[] newSynthDeductionPriority)", "function totalGlobalCollateralValue() view returns (uint256 totalCollateralValue)", "function updateInterestRate()", "function updateKeeperCostNodeId(bytes32 keeperCostNodeId)", @@ -9004,20 +10916,24 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0xc0cb68339fc1211693e99ba95f8adcc367245fa9c523149e2e689587de4ca482", - "deployTxnBlockNumber": "67334646", - "deployTimestamp": "1722223862", + "deployTxnHash": "0x9c70de1b7a2ca265afca9bb1f96b05617df0ddd3093e00c63628e9b9aef7371c", + "deployTxnBlockNumber": "68535355", + "deployTimestamp": "1722632254", "sourceName": "contracts/modules/GlobalPerpsMarketModule.sol", "contractName": "GlobalPerpsMarketModule", "deployedOn": "contract.GlobalPerpsMarketModule", - "gasUsed": 4365669, + "gasUsed": 1627490, "gasCost": "100000000" }, "LiquidationModule": { - "address": "0xA6d89AC01044e2e528dBc0ae9d4FeCfD464d1577", + "address": "0x4D06965E0941E0881a5308DFF66cD59D28a08E3f", "abi": [ + "error AccountHasOpenPositions(uint128 accountId)", "error FeatureUnavailable(bytes32 which)", + "error InvalidDistributor(uint128 id, address distributor)", + "error InvalidId(uint128 id)", "error NotEligibleForLiquidation(uint128 accountId)", + "error NotEligibleForMarginLiquidation(uint128 accountId)", "error OverflowInt128ToUint128()", "error OverflowInt256ToInt128()", "error OverflowInt256ToUint256()", @@ -9030,28 +10946,31 @@ "error ValueNotInSet()", "event AccountFlaggedForLiquidation(uint128 indexed accountId, int256 availableMargin, uint256 requiredMaintenanceMargin, uint256 liquidationReward, uint256 flagReward)", "event AccountLiquidationAttempt(uint128 indexed accountId, uint256 reward, bool fullLiquidation)", + "event AccountMarginLiquidation(uint128 indexed accountId, uint256 seizedMarginValue, uint256 liquidationReward)", "event MarketUpdated(uint128 marketId, uint256 price, int256 skew, uint256 size, int256 sizeDelta, int256 currentFundingRate, int256 currentFundingVelocity, uint128 interestRate)", "event PositionLiquidated(uint128 indexed accountId, uint128 indexed marketId, uint256 amountLiquidated, int128 currentPositionSize)", "function canLiquidate(uint128 accountId) view returns (bool isEligible)", + "function canLiquidateMarginOnly(uint128 accountId) view returns (bool isEligible)", "function flaggedAccounts() view returns (uint256[] accountIds)", "function liquidate(uint128 accountId) returns (uint256 liquidationReward)", "function liquidateFlagged(uint256 maxNumberOfAccounts) returns (uint256 liquidationReward)", "function liquidateFlaggedAccounts(uint128[] accountIds) returns (uint256 liquidationReward)", + "function liquidateMarginOnly(uint128 accountId) returns (uint256 liquidationReward)", "function liquidationCapacity(uint128 marketId) view returns (uint256 capacity, uint256 maxLiquidationInWindow, uint256 latestLiquidationTimestamp)" ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0x90cd9a078f68938555002be786aff9971fb6874852defec8f0717dab0761db88", - "deployTxnBlockNumber": "67334654", - "deployTimestamp": "1722223865", + "deployTxnHash": "0x94506dc76b77c356bc419e8373444d41af7fa497683515cc8ff4031c10689cdd", + "deployTxnBlockNumber": "68535359", + "deployTimestamp": "1722632256", "sourceName": "contracts/modules/LiquidationModule.sol", "contractName": "LiquidationModule", "deployedOn": "contract.LiquidationModule", - "gasUsed": 7321692, + "gasUsed": 3740161, "gasCost": "100000000" }, "MarketConfigurationModule": { - "address": "0x631634Eecd434092117141c270763c0ac7651c77", + "address": "0x4dBB50B97EBBC4c29EddbE021Ab67b588b979711", "abi": [ "error InvalidSettlementStrategy(uint256 settlementStrategyId)", "error InvalidSettlementWindowDuration(uint256 duration)", @@ -9089,29 +11008,31 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0xee272988116102b61e9ec7fbc164859b3e878ec5e7b5c03149bba627f9acf248", - "deployTxnBlockNumber": "67334663", - "deployTimestamp": "1722223869", + "deployTxnHash": "0x83dc64aa4d6bf2d1784106007f4e375c376d81da741d229982dd38bb7e628370", + "deployTxnBlockNumber": "68535365", + "deployTimestamp": "1722632258", "sourceName": "contracts/modules/MarketConfigurationModule.sol", "contractName": "MarketConfigurationModule", "deployedOn": "contract.MarketConfigurationModule", - "gasUsed": 2477060, + "gasUsed": 1064187, "gasCost": "100000000" }, "PerpsAccountModule": { - "address": "0x3200FfD3eCd930Cd12E1B0bd8cAA260f1cce1F51", + "address": "0xBd495E2cAB97441051e81f48ec2a9739957E069b", "abi": [ "error AccountLiquidatable(uint128 accountId)", "error AccountNotFound(uint128 accountId)", "error FeatureUnavailable(bytes32 which)", - "error InsufficientCollateral(uint128 synthMarketId, uint256 collateralAmount, uint256 withdrawAmount)", - "error InsufficientCollateralAvailableForWithdraw(uint256 availableUsdDenominated, uint256 requiredUsdDenominated)", - "error InsufficientSynthCollateral(uint128 synthMarketId, uint256 collateralAmount, uint256 withdrawAmount)", + "error InsufficientCollateral(uint128 collateralId, uint256 collateralAmount, uint256 withdrawAmount)", + "error InsufficientCollateralAvailableForWithdraw(int256 withdrawableMarginUsd, uint256 requestedMarginUsd)", + "error InsufficientSynthCollateral(uint128 collateralId, uint256 collateralAmount, uint256 withdrawAmount)", "error InvalidAmountDelta(int256 amountDelta)", + "error InvalidId(uint128 id)", "error InvalidMarket(uint128 marketId)", "error KeeperCostsNotSet()", - "error MaxCollateralExceeded(uint128 synthMarketId, uint256 maxAmount, uint256 collateralAmount, uint256 depositAmount)", + "error MaxCollateralExceeded(uint128 collateralId, uint256 maxAmount, uint256 collateralAmount, uint256 depositAmount)", "error MaxCollateralsPerAccountReached(uint128 maxCollateralsPerAccount)", + "error NonexistentDebt(uint128 accountId)", "error OverflowInt256ToUint256()", "error OverflowUint128ToInt128()", "error OverflowUint256ToInt256()", @@ -9120,35 +11041,39 @@ "error PermissionDenied(uint128 accountId, bytes32 permission, address target)", "error PositionOutOfBounds()", "error PriceFeedNotSet(uint128 marketId)", - "error SynthNotEnabledForCollateral(uint128 synthMarketId)", + "error SynthNotEnabledForCollateral(uint128 collateralId)", "error ValueAlreadyInSet()", "error ValueNotInSet()", - "event CollateralModified(uint128 indexed accountId, uint128 indexed synthMarketId, int256 amountDelta, address indexed sender)", + "event CollateralModified(uint128 indexed accountId, uint128 indexed collateralId, int256 amountDelta, address indexed sender)", + "event DebtPaid(uint128 indexed accountId, uint256 amount, address indexed sender)", + "event InterestRateUpdated(uint128 indexed superMarketId, uint128 interestRate)", + "function debt(uint128 accountId) view returns (uint256 accountDebt)", "function getAccountCollateralIds(uint128 accountId) view returns (uint256[])", "function getAccountOpenPositions(uint128 accountId) view returns (uint256[])", "function getAvailableMargin(uint128 accountId) view returns (int256 availableMargin)", - "function getCollateralAmount(uint128 accountId, uint128 synthMarketId) view returns (uint256)", + "function getCollateralAmount(uint128 accountId, uint128 collateralId) view returns (uint256)", "function getOpenPosition(uint128 accountId, uint128 marketId) view returns (int256 totalPnl, int256 accruedFunding, int128 positionSize, uint256 owedInterest)", "function getOpenPositionSize(uint128 accountId, uint128 marketId) view returns (int128 positionSize)", "function getRequiredMargins(uint128 accountId) view returns (uint256 requiredInitialMargin, uint256 requiredMaintenanceMargin, uint256 maxLiquidationReward)", "function getWithdrawableMargin(uint128 accountId) view returns (int256 withdrawableMargin)", - "function modifyCollateral(uint128 accountId, uint128 synthMarketId, int256 amountDelta)", + "function modifyCollateral(uint128 accountId, uint128 collateralId, int256 amountDelta)", + "function payDebt(uint128 accountId, uint256 amount)", "function totalAccountOpenInterest(uint128 accountId) view returns (uint256)", "function totalCollateralValue(uint128 accountId) view returns (uint256)" ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0xfc86b9420b0f661ba413c0f672721177d35dee577a9c1fa32d94645a19e8dedb", - "deployTxnBlockNumber": "67334687", - "deployTimestamp": "1722223879", + "deployTxnHash": "0x6a2202553d5abdc7ec04c7879963bf37f428ef3ae80b0c751ce34cbdb5377110", + "deployTxnBlockNumber": "68535368", + "deployTimestamp": "1722632259", "sourceName": "contracts/modules/PerpsAccountModule.sol", "contractName": "PerpsAccountModule", "deployedOn": "contract.PerpsAccountModule", - "gasUsed": 6023194, + "gasUsed": 3230470, "gasCost": "100000000" }, "PerpsMarketFactoryModule": { - "address": "0x8cD2489f938A6b0b70F2c94e5b342e782ac2941B", + "address": "0x0d63eB71ab86EB414eDcD800dD9C7f6279913Edc", "abi": [ "error FeatureUnavailable(bytes32 which)", "error InvalidMarket(uint128 marketId)", @@ -9175,17 +11100,17 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0x3dbe2ec1c6a497ed214510e5d1936eec17f3ea37faf9bac9202932ec3597b2be", - "deployTxnBlockNumber": "67334696", - "deployTimestamp": "1722223883", + "deployTxnHash": "0x6179174e558e642e84ccedc274866a538ad7f5c88a656ad742e8c542de7a2a7b", + "deployTxnBlockNumber": "68535373", + "deployTimestamp": "1722632261", "sourceName": "contracts/modules/PerpsMarketFactoryModule.sol", "contractName": "PerpsMarketFactoryModule", "deployedOn": "contract.PerpsMarketFactoryModule", - "gasUsed": 3952032, + "gasUsed": 1800970, "gasCost": "100000000" }, "PerpsMarketModule": { - "address": "0x9D6D846D4546614a7e668e66886624c0AE21D786", + "address": "0x60c3433763c59d4Be7684E2912Dda21BA0546a73", "abi": [ "error OverflowInt256ToUint256()", "error OverflowUint256ToInt256()", @@ -9201,17 +11126,17 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0xec583e837899d4c71ac3d0e0205d0550bdb4a43af15294d9631a735c84572937", - "deployTxnBlockNumber": "67334706", - "deployTimestamp": "1722223887", + "deployTxnHash": "0xd2e4f9d24765ed25f4dfd833fd3be53747efd30503f1a6c8990e06346ec96348", + "deployTxnBlockNumber": "68535375", + "deployTimestamp": "1722632263", "sourceName": "contracts/modules/PerpsMarketModule.sol", "contractName": "PerpsMarketModule", "deployedOn": "contract.PerpsMarketModule", - "gasUsed": 2035018, + "gasUsed": 896870, "gasCost": "100000000" }, "InitialProxy": { - "address": "0x111BAbcdd66b1B60A20152a2D3D06d36F8B5703c", + "address": "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460", "abi": [ "error ImplementationIsSterile(address implementation)", "error NoChange()", @@ -9237,15 +11162,17 @@ "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" ], "linkedLibraries": {}, - "deployTxnHash": "0x74e849593be794db7c6c9fb6b899b52bf80770fe69c7c0f4a29b26267ffc2f6b", + "deployTxnHash": "0xad8f9e075d0319fedb98a09f74ef2d6bbe4480171e202098d5334e4b3040d329", + "deployTxnBlockNumber": "68535378", + "deployTimestamp": "1722632265", "sourceName": "contracts/Proxy.sol", "contractName": "Proxy", "deployedOn": "contract.InitialProxy", - "gasUsed": 279722, - "gasCost": "744390000" + "gasUsed": 248149, + "gasCost": "100000000" }, "PerpsMarketRouter": { - "address": "0xe5bbe61dc29670fa52e3a3bcdb7278d926db1a2a", + "address": "0x484ae29e4b68d7625d7cbeeca5be51e6ba47c7c3", "abi": [ "error FeatureUnavailable(bytes32 which)", "error InvalidAccountId(uint128 accountId)", @@ -9316,27 +11243,33 @@ "function utilizationRate() view returns (uint256 rate, uint256 delegatedCollateral, uint256 lockedCredit)", "error AccountLiquidatable(uint128 accountId)", "error AccountNotFound(uint128 accountId)", - "error InsufficientCollateral(uint128 synthMarketId, uint256 collateralAmount, uint256 withdrawAmount)", - "error InsufficientCollateralAvailableForWithdraw(uint256 availableUsdDenominated, uint256 requiredUsdDenominated)", - "error InsufficientSynthCollateral(uint128 synthMarketId, uint256 collateralAmount, uint256 withdrawAmount)", + "error InsufficientCollateral(uint128 collateralId, uint256 collateralAmount, uint256 withdrawAmount)", + "error InsufficientCollateralAvailableForWithdraw(int256 withdrawableMarginUsd, uint256 requestedMarginUsd)", + "error InsufficientSynthCollateral(uint128 collateralId, uint256 collateralAmount, uint256 withdrawAmount)", "error InvalidAmountDelta(int256 amountDelta)", + "error InvalidId(uint128 id)", "error KeeperCostsNotSet()", - "error MaxCollateralExceeded(uint128 synthMarketId, uint256 maxAmount, uint256 collateralAmount, uint256 depositAmount)", + "error MaxCollateralExceeded(uint128 collateralId, uint256 maxAmount, uint256 collateralAmount, uint256 depositAmount)", "error MaxCollateralsPerAccountReached(uint128 maxCollateralsPerAccount)", + "error NonexistentDebt(uint128 accountId)", "error OverflowUint128ToInt128()", "error PendingOrderExists()", "error PriceFeedNotSet(uint128 marketId)", - "error SynthNotEnabledForCollateral(uint128 synthMarketId)", - "event CollateralModified(uint128 indexed accountId, uint128 indexed synthMarketId, int256 amountDelta, address indexed sender)", + "error SynthNotEnabledForCollateral(uint128 collateralId)", + "event CollateralModified(uint128 indexed accountId, uint128 indexed collateralId, int256 amountDelta, address indexed sender)", + "event DebtPaid(uint128 indexed accountId, uint256 amount, address indexed sender)", + "event InterestRateUpdated(uint128 indexed superMarketId, uint128 interestRate)", + "function debt(uint128 accountId) view returns (uint256 accountDebt)", "function getAccountCollateralIds(uint128 accountId) view returns (uint256[])", "function getAccountOpenPositions(uint128 accountId) view returns (uint256[])", "function getAvailableMargin(uint128 accountId) view returns (int256 availableMargin)", - "function getCollateralAmount(uint128 accountId, uint128 synthMarketId) view returns (uint256)", + "function getCollateralAmount(uint128 accountId, uint128 collateralId) view returns (uint256)", "function getOpenPosition(uint128 accountId, uint128 marketId) view returns (int256 totalPnl, int256 accruedFunding, int128 positionSize, uint256 owedInterest)", "function getOpenPositionSize(uint128 accountId, uint128 marketId) view returns (int128 positionSize)", "function getRequiredMargins(uint128 accountId) view returns (uint256 requiredInitialMargin, uint256 requiredMaintenanceMargin, uint256 maxLiquidationReward)", "function getWithdrawableMargin(uint128 accountId) view returns (int256 withdrawableMargin)", - "function modifyCollateral(uint128 accountId, uint128 synthMarketId, int256 amountDelta)", + "function modifyCollateral(uint128 accountId, uint128 collateralId, int256 amountDelta)", + "function payDebt(uint128 accountId, uint256 amount)", "function totalAccountOpenInterest(uint128 accountId) view returns (uint256)", "function totalCollateralValue(uint128 accountId) view returns (uint256)", "function currentFundingRate(uint128 marketId) view returns (int256)", @@ -9348,6 +11281,7 @@ "function metadata(uint128 marketId) view returns (string name, string symbol)", "function size(uint128 marketId) view returns (uint256)", "function skew(uint128 marketId) view returns (int256)", + "error ExceedsMarketCreditCapacity(int256 delegatedCollateral, int256 newLockedCredit)", "error InsufficientMargin(int256 availableMargin, uint256 minMargin)", "error InvalidSettlementStrategy(uint256 settlementStrategyId)", "error MaxOpenInterestReached(uint128 marketId, uint256 maxMarketSize, int256 newSideSize)", @@ -9365,14 +11299,13 @@ "function requiredMarginForOrder(uint128 accountId, uint128 marketId, int128 sizeDelta) view returns (uint256 requiredMargin)", "function requiredMarginForOrderWithPrice(uint128 accountId, uint128 marketId, int128 sizeDelta, uint256 price) view returns (uint256 requiredMargin)", "error AcceptablePriceExceeded(uint256 fillPrice, uint256 acceptablePrice)", - "error InsufficientAccountMargin(uint256 leftover)", "error OrderNotValid()", "error OverflowInt128ToUint128()", "error OverflowUint256ToUint64()", "error SettlementStrategyNotFound(uint8 strategyType)", "error SettlementWindowExpired(uint256 timestamp, uint256 settlementTime, uint256 settlementExpiration)", "error SettlementWindowNotOpen(uint256 timestamp, uint256 settlementTime)", - "event CollateralDeducted(uint256 account, uint128 synthMarketId, uint256 amount)", + "event AccountCharged(uint128 accountId, int256 amount, uint256 accountDebt)", "event InterestCharged(uint128 indexed accountId, uint256 interest)", "event MarketUpdated(uint128 marketId, uint256 price, int256 skew, uint256 size, int256 sizeDelta, int256 currentFundingRate, int256 currentFundingVelocity, uint128 interestRate)", "event OrderSettled(uint128 indexed marketId, uint128 indexed accountId, uint256 fillPrice, int256 pnl, int256 accruedFunding, int128 sizeDelta, int128 newSize, uint256 totalFees, uint256 referralFees, uint256 collectedFees, uint256 settlementReward, bytes32 indexed trackingCode, address settler)", @@ -9395,15 +11328,21 @@ "function setDeniers(bytes32 feature, address[] deniers)", "function setFeatureFlagAllowAll(bytes32 feature, bool allowAll)", "function setFeatureFlagDenyAll(bytes32 feature, bool denyAll)", + "error AccountHasOpenPositions(uint128 accountId)", + "error InvalidDistributor(uint128 id, address distributor)", "error NotEligibleForLiquidation(uint128 accountId)", + "error NotEligibleForMarginLiquidation(uint128 accountId)", "event AccountFlaggedForLiquidation(uint128 indexed accountId, int256 availableMargin, uint256 requiredMaintenanceMargin, uint256 liquidationReward, uint256 flagReward)", "event AccountLiquidationAttempt(uint128 indexed accountId, uint256 reward, bool fullLiquidation)", + "event AccountMarginLiquidation(uint128 indexed accountId, uint256 seizedMarginValue, uint256 liquidationReward)", "event PositionLiquidated(uint128 indexed accountId, uint128 indexed marketId, uint256 amountLiquidated, int128 currentPositionSize)", "function canLiquidate(uint128 accountId) view returns (bool isEligible)", + "function canLiquidateMarginOnly(uint128 accountId) view returns (bool isEligible)", "function flaggedAccounts() view returns (uint256[] accountIds)", "function liquidate(uint128 accountId) returns (uint256 liquidationReward)", "function liquidateFlagged(uint256 maxNumberOfAccounts) returns (uint256 liquidationReward)", "function liquidateFlaggedAccounts(uint128[] accountIds) returns (uint256 liquidationReward)", + "function liquidateMarginOnly(uint128 accountId) returns (uint256 liquidationReward)", "function liquidationCapacity(uint128 marketId) view returns (uint256 capacity, uint256 maxLiquidationInWindow, uint256 latestLiquidationTimestamp)", "error InvalidSettlementWindowDuration(uint256 duration)", "event FundingParametersSet(uint128 indexed marketId, uint256 skewScale, uint256 maxFundingVelocity)", @@ -9436,19 +11375,27 @@ "function setSettlementStrategy(uint128 marketId, uint256 strategyId, tuple(uint8 strategyType, uint256 settlementDelay, uint256 settlementWindowDuration, address priceVerificationContract, bytes32 feedId, uint256 settlementReward, bool disabled, uint256 commitmentPriceDelay) strategy)", "function setSettlementStrategyEnabled(uint128 marketId, uint256 strategyId, bool enabled)", "function updatePriceData(uint128 perpsMarketId, bytes32 feedId, uint256 strictStalenessTolerance)", + "error InvalidDistributorContract(address distributor)", + "event CollateralConfigurationSet(uint128 indexed collateralId, uint256 maxCollateralAmount, uint256 upperLimitDiscount, uint256 lowerLimitDiscount, uint256 discountScalar)", + "event CollateralLiquidateRewardRatioSet(uint128 collateralLiquidateRewardRatioD18)", + "event RewardDistributorRegistered(address distributor)", + "function getCollateralConfiguration(uint128 collateralId) view returns (uint256 maxCollateralAmount)", + "function getCollateralConfigurationFull(uint128 collateralId) view returns (uint256 maxCollateralAmount, uint256 upperLimitDiscount, uint256 lowerLimitDiscount, uint256 discountScalar)", + "function getCollateralLiquidateRewardRatio() view returns (uint128 collateralLiquidateRewardRatioD18)", + "function getRegisteredDistributor(uint128 collateralId) view returns (address distributor, address[] poolDelegatedCollateralTypes)", + "function isRegistered(address distributor) view returns (bool)", + "function registerDistributor(address token, address distributor, uint128 collateralId, address[] poolDelegatedCollateralTypes)", + "function setCollateralConfiguration(uint128 collateralId, uint256 maxCollateralAmount, uint256 upperLimitDiscount, uint256 lowerLimitDiscount, uint256 discountScalar)", + "function setCollateralLiquidateRewardRatio(uint128 collateralLiquidateRewardRatioD18)", "error InvalidFeeCollectorInterface(address invalidFeeCollector)", "error InvalidInterestRateParameters(uint128 lowUtilizationInterestRateGradient, uint128 highUtilizationInterestRateGradient)", "error InvalidReferrerShareRatio(uint256 shareRatioD18)", - "event CollateralConfigurationSet(uint128 indexed synthMarketId, uint256 maxCollateralAmount)", "event FeeCollectorSet(address feeCollector)", "event InterestRateParametersSet(uint256 lowUtilizationInterestRateGradient, uint256 interestRateGradientBreakpoint, uint256 highUtilizationInterestRateGradient)", - "event InterestRateUpdated(uint128 indexed superMarketId, uint128 interestRate)", "event KeeperCostNodeIdUpdated(bytes32 keeperCostNodeId)", "event KeeperRewardGuardsSet(uint256 minKeeperRewardUsd, uint256 minKeeperProfitRatioD18, uint256 maxKeeperRewardUsd, uint256 maxKeeperScalingRatioD18)", "event PerAccountCapsSet(uint128 maxPositionsPerAccount, uint128 maxCollateralsPerAccount)", "event ReferrerShareUpdated(address referrer, uint256 shareRatioD18)", - "event SynthDeductionPrioritySet(uint128[] newSynthDeductionPriority)", - "function getCollateralConfiguration(uint128 synthMarketId) view returns (uint256 maxCollateralAmount)", "function getFeeCollector() view returns (address feeCollector)", "function getInterestRateParameters() view returns (uint128 lowUtilizationInterestRateGradient, uint128 interestRateGradientBreakpoint, uint128 highUtilizationInterestRateGradient)", "function getKeeperCostNodeId() view returns (bytes32 keeperCostNodeId)", @@ -9457,30 +11404,27 @@ "function getPerAccountCaps() view returns (uint128 maxPositionsPerAccount, uint128 maxCollateralsPerAccount)", "function getReferrerShare(address referrer) view returns (uint256 shareRatioD18)", "function getSupportedCollaterals() view returns (uint256[] supportedCollaterals)", - "function getSynthDeductionPriority() view returns (uint128[])", "function globalCollateralValue(uint128 collateralId) view returns (uint256 collateralValue)", - "function setCollateralConfiguration(uint128 synthMarketId, uint256 maxCollateralAmount)", "function setFeeCollector(address feeCollector)", "function setInterestRateParameters(uint128 lowUtilizationInterestRateGradient, uint128 interestRateGradientBreakpoint, uint128 highUtilizationInterestRateGradient)", "function setKeeperRewardGuards(uint256 minKeeperRewardUsd, uint256 minKeeperProfitRatioD18, uint256 maxKeeperRewardUsd, uint256 maxKeeperScalingRatioD18)", "function setPerAccountCaps(uint128 maxPositionsPerAccount, uint128 maxCollateralsPerAccount)", - "function setSynthDeductionPriority(uint128[] newSynthDeductionPriority)", "function totalGlobalCollateralValue() view returns (uint256 totalCollateralValue)", "function updateInterestRate()", "function updateKeeperCostNodeId(bytes32 keeperCostNodeId)", "function updateReferrerShare(address referrer, uint256 shareRatioD18)" ], "deployedOn": "router.PerpsMarketRouter", - "deployTxnHash": "0xa7aed7f084d0e9a33ff78943424f523bea697929cad28585f9a89f996b95377f", - "deployTxnBlockNumber": "67334719", - "deployTimestamp": "1722223891", + "deployTxnHash": "0x706e617db87436d36f68a6a855873d9eefa44cfa5100ca3a65086dc18df97d3c", + "deployTxnBlockNumber": "68535385", + "deployTimestamp": "1722632267", "contractName": "PerpsMarketRouter", "sourceName": "PerpsMarketRouter.sol", - "gasUsed": 2298170, + "gasUsed": 1267717, "gasCost": "100000000" }, "PerpsMarketProxy": { - "address": "0x111BAbcdd66b1B60A20152a2D3D06d36F8B5703c", + "address": "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460", "abi": [ "error FeatureUnavailable(bytes32 which)", "error InvalidAccountId(uint128 accountId)", @@ -9551,27 +11495,33 @@ "function utilizationRate() view returns (uint256 rate, uint256 delegatedCollateral, uint256 lockedCredit)", "error AccountLiquidatable(uint128 accountId)", "error AccountNotFound(uint128 accountId)", - "error InsufficientCollateral(uint128 synthMarketId, uint256 collateralAmount, uint256 withdrawAmount)", - "error InsufficientCollateralAvailableForWithdraw(uint256 availableUsdDenominated, uint256 requiredUsdDenominated)", - "error InsufficientSynthCollateral(uint128 synthMarketId, uint256 collateralAmount, uint256 withdrawAmount)", + "error InsufficientCollateral(uint128 collateralId, uint256 collateralAmount, uint256 withdrawAmount)", + "error InsufficientCollateralAvailableForWithdraw(int256 withdrawableMarginUsd, uint256 requestedMarginUsd)", + "error InsufficientSynthCollateral(uint128 collateralId, uint256 collateralAmount, uint256 withdrawAmount)", "error InvalidAmountDelta(int256 amountDelta)", + "error InvalidId(uint128 id)", "error KeeperCostsNotSet()", - "error MaxCollateralExceeded(uint128 synthMarketId, uint256 maxAmount, uint256 collateralAmount, uint256 depositAmount)", + "error MaxCollateralExceeded(uint128 collateralId, uint256 maxAmount, uint256 collateralAmount, uint256 depositAmount)", "error MaxCollateralsPerAccountReached(uint128 maxCollateralsPerAccount)", + "error NonexistentDebt(uint128 accountId)", "error OverflowUint128ToInt128()", "error PendingOrderExists()", "error PriceFeedNotSet(uint128 marketId)", - "error SynthNotEnabledForCollateral(uint128 synthMarketId)", - "event CollateralModified(uint128 indexed accountId, uint128 indexed synthMarketId, int256 amountDelta, address indexed sender)", + "error SynthNotEnabledForCollateral(uint128 collateralId)", + "event CollateralModified(uint128 indexed accountId, uint128 indexed collateralId, int256 amountDelta, address indexed sender)", + "event DebtPaid(uint128 indexed accountId, uint256 amount, address indexed sender)", + "event InterestRateUpdated(uint128 indexed superMarketId, uint128 interestRate)", + "function debt(uint128 accountId) view returns (uint256 accountDebt)", "function getAccountCollateralIds(uint128 accountId) view returns (uint256[])", "function getAccountOpenPositions(uint128 accountId) view returns (uint256[])", "function getAvailableMargin(uint128 accountId) view returns (int256 availableMargin)", - "function getCollateralAmount(uint128 accountId, uint128 synthMarketId) view returns (uint256)", + "function getCollateralAmount(uint128 accountId, uint128 collateralId) view returns (uint256)", "function getOpenPosition(uint128 accountId, uint128 marketId) view returns (int256 totalPnl, int256 accruedFunding, int128 positionSize, uint256 owedInterest)", "function getOpenPositionSize(uint128 accountId, uint128 marketId) view returns (int128 positionSize)", "function getRequiredMargins(uint128 accountId) view returns (uint256 requiredInitialMargin, uint256 requiredMaintenanceMargin, uint256 maxLiquidationReward)", "function getWithdrawableMargin(uint128 accountId) view returns (int256 withdrawableMargin)", - "function modifyCollateral(uint128 accountId, uint128 synthMarketId, int256 amountDelta)", + "function modifyCollateral(uint128 accountId, uint128 collateralId, int256 amountDelta)", + "function payDebt(uint128 accountId, uint256 amount)", "function totalAccountOpenInterest(uint128 accountId) view returns (uint256)", "function totalCollateralValue(uint128 accountId) view returns (uint256)", "function currentFundingRate(uint128 marketId) view returns (int256)", @@ -9583,6 +11533,7 @@ "function metadata(uint128 marketId) view returns (string name, string symbol)", "function size(uint128 marketId) view returns (uint256)", "function skew(uint128 marketId) view returns (int256)", + "error ExceedsMarketCreditCapacity(int256 delegatedCollateral, int256 newLockedCredit)", "error InsufficientMargin(int256 availableMargin, uint256 minMargin)", "error InvalidSettlementStrategy(uint256 settlementStrategyId)", "error MaxOpenInterestReached(uint128 marketId, uint256 maxMarketSize, int256 newSideSize)", @@ -9600,14 +11551,13 @@ "function requiredMarginForOrder(uint128 accountId, uint128 marketId, int128 sizeDelta) view returns (uint256 requiredMargin)", "function requiredMarginForOrderWithPrice(uint128 accountId, uint128 marketId, int128 sizeDelta, uint256 price) view returns (uint256 requiredMargin)", "error AcceptablePriceExceeded(uint256 fillPrice, uint256 acceptablePrice)", - "error InsufficientAccountMargin(uint256 leftover)", "error OrderNotValid()", "error OverflowInt128ToUint128()", "error OverflowUint256ToUint64()", "error SettlementStrategyNotFound(uint8 strategyType)", "error SettlementWindowExpired(uint256 timestamp, uint256 settlementTime, uint256 settlementExpiration)", "error SettlementWindowNotOpen(uint256 timestamp, uint256 settlementTime)", - "event CollateralDeducted(uint256 account, uint128 synthMarketId, uint256 amount)", + "event AccountCharged(uint128 accountId, int256 amount, uint256 accountDebt)", "event InterestCharged(uint128 indexed accountId, uint256 interest)", "event MarketUpdated(uint128 marketId, uint256 price, int256 skew, uint256 size, int256 sizeDelta, int256 currentFundingRate, int256 currentFundingVelocity, uint128 interestRate)", "event OrderSettled(uint128 indexed marketId, uint128 indexed accountId, uint256 fillPrice, int256 pnl, int256 accruedFunding, int128 sizeDelta, int128 newSize, uint256 totalFees, uint256 referralFees, uint256 collectedFees, uint256 settlementReward, bytes32 indexed trackingCode, address settler)", @@ -9630,15 +11580,21 @@ "function setDeniers(bytes32 feature, address[] deniers)", "function setFeatureFlagAllowAll(bytes32 feature, bool allowAll)", "function setFeatureFlagDenyAll(bytes32 feature, bool denyAll)", + "error AccountHasOpenPositions(uint128 accountId)", + "error InvalidDistributor(uint128 id, address distributor)", "error NotEligibleForLiquidation(uint128 accountId)", + "error NotEligibleForMarginLiquidation(uint128 accountId)", "event AccountFlaggedForLiquidation(uint128 indexed accountId, int256 availableMargin, uint256 requiredMaintenanceMargin, uint256 liquidationReward, uint256 flagReward)", "event AccountLiquidationAttempt(uint128 indexed accountId, uint256 reward, bool fullLiquidation)", + "event AccountMarginLiquidation(uint128 indexed accountId, uint256 seizedMarginValue, uint256 liquidationReward)", "event PositionLiquidated(uint128 indexed accountId, uint128 indexed marketId, uint256 amountLiquidated, int128 currentPositionSize)", "function canLiquidate(uint128 accountId) view returns (bool isEligible)", + "function canLiquidateMarginOnly(uint128 accountId) view returns (bool isEligible)", "function flaggedAccounts() view returns (uint256[] accountIds)", "function liquidate(uint128 accountId) returns (uint256 liquidationReward)", "function liquidateFlagged(uint256 maxNumberOfAccounts) returns (uint256 liquidationReward)", "function liquidateFlaggedAccounts(uint128[] accountIds) returns (uint256 liquidationReward)", + "function liquidateMarginOnly(uint128 accountId) returns (uint256 liquidationReward)", "function liquidationCapacity(uint128 marketId) view returns (uint256 capacity, uint256 maxLiquidationInWindow, uint256 latestLiquidationTimestamp)", "error InvalidSettlementWindowDuration(uint256 duration)", "event FundingParametersSet(uint128 indexed marketId, uint256 skewScale, uint256 maxFundingVelocity)", @@ -9671,19 +11627,27 @@ "function setSettlementStrategy(uint128 marketId, uint256 strategyId, tuple(uint8 strategyType, uint256 settlementDelay, uint256 settlementWindowDuration, address priceVerificationContract, bytes32 feedId, uint256 settlementReward, bool disabled, uint256 commitmentPriceDelay) strategy)", "function setSettlementStrategyEnabled(uint128 marketId, uint256 strategyId, bool enabled)", "function updatePriceData(uint128 perpsMarketId, bytes32 feedId, uint256 strictStalenessTolerance)", + "error InvalidDistributorContract(address distributor)", + "event CollateralConfigurationSet(uint128 indexed collateralId, uint256 maxCollateralAmount, uint256 upperLimitDiscount, uint256 lowerLimitDiscount, uint256 discountScalar)", + "event CollateralLiquidateRewardRatioSet(uint128 collateralLiquidateRewardRatioD18)", + "event RewardDistributorRegistered(address distributor)", + "function getCollateralConfiguration(uint128 collateralId) view returns (uint256 maxCollateralAmount)", + "function getCollateralConfigurationFull(uint128 collateralId) view returns (uint256 maxCollateralAmount, uint256 upperLimitDiscount, uint256 lowerLimitDiscount, uint256 discountScalar)", + "function getCollateralLiquidateRewardRatio() view returns (uint128 collateralLiquidateRewardRatioD18)", + "function getRegisteredDistributor(uint128 collateralId) view returns (address distributor, address[] poolDelegatedCollateralTypes)", + "function isRegistered(address distributor) view returns (bool)", + "function registerDistributor(address token, address distributor, uint128 collateralId, address[] poolDelegatedCollateralTypes)", + "function setCollateralConfiguration(uint128 collateralId, uint256 maxCollateralAmount, uint256 upperLimitDiscount, uint256 lowerLimitDiscount, uint256 discountScalar)", + "function setCollateralLiquidateRewardRatio(uint128 collateralLiquidateRewardRatioD18)", "error InvalidFeeCollectorInterface(address invalidFeeCollector)", "error InvalidInterestRateParameters(uint128 lowUtilizationInterestRateGradient, uint128 highUtilizationInterestRateGradient)", "error InvalidReferrerShareRatio(uint256 shareRatioD18)", - "event CollateralConfigurationSet(uint128 indexed synthMarketId, uint256 maxCollateralAmount)", "event FeeCollectorSet(address feeCollector)", "event InterestRateParametersSet(uint256 lowUtilizationInterestRateGradient, uint256 interestRateGradientBreakpoint, uint256 highUtilizationInterestRateGradient)", - "event InterestRateUpdated(uint128 indexed superMarketId, uint128 interestRate)", "event KeeperCostNodeIdUpdated(bytes32 keeperCostNodeId)", "event KeeperRewardGuardsSet(uint256 minKeeperRewardUsd, uint256 minKeeperProfitRatioD18, uint256 maxKeeperRewardUsd, uint256 maxKeeperScalingRatioD18)", "event PerAccountCapsSet(uint128 maxPositionsPerAccount, uint128 maxCollateralsPerAccount)", "event ReferrerShareUpdated(address referrer, uint256 shareRatioD18)", - "event SynthDeductionPrioritySet(uint128[] newSynthDeductionPriority)", - "function getCollateralConfiguration(uint128 synthMarketId) view returns (uint256 maxCollateralAmount)", "function getFeeCollector() view returns (address feeCollector)", "function getInterestRateParameters() view returns (uint128 lowUtilizationInterestRateGradient, uint128 interestRateGradientBreakpoint, uint128 highUtilizationInterestRateGradient)", "function getKeeperCostNodeId() view returns (bytes32 keeperCostNodeId)", @@ -9692,14 +11656,11 @@ "function getPerAccountCaps() view returns (uint128 maxPositionsPerAccount, uint128 maxCollateralsPerAccount)", "function getReferrerShare(address referrer) view returns (uint256 shareRatioD18)", "function getSupportedCollaterals() view returns (uint256[] supportedCollaterals)", - "function getSynthDeductionPriority() view returns (uint128[])", "function globalCollateralValue(uint128 collateralId) view returns (uint256 collateralValue)", - "function setCollateralConfiguration(uint128 synthMarketId, uint256 maxCollateralAmount)", "function setFeeCollector(address feeCollector)", "function setInterestRateParameters(uint128 lowUtilizationInterestRateGradient, uint128 interestRateGradientBreakpoint, uint128 highUtilizationInterestRateGradient)", "function setKeeperRewardGuards(uint256 minKeeperRewardUsd, uint256 minKeeperProfitRatioD18, uint256 maxKeeperRewardUsd, uint256 maxKeeperScalingRatioD18)", "function setPerAccountCaps(uint128 maxPositionsPerAccount, uint128 maxCollateralsPerAccount)", - "function setSynthDeductionPriority(uint128[] newSynthDeductionPriority)", "function totalGlobalCollateralValue() view returns (uint256 totalCollateralValue)", "function updateInterestRate()", "function updateKeeperCostNodeId(bytes32 keeperCostNodeId)", @@ -9716,7 +11677,7 @@ "highlight": true }, "PerpsAccountProxy": { - "address": "0xEAb7b75508B4F06FB9c6a328bEC0F23cC64FFac2", + "address": "0xf3D4109EB4e7EC31f8Eee5D9ADDAD5F3C53a6C87", "abi": [ "error ImplementationIsSterile(address implementation)", "error NoChange()", @@ -9773,6 +11734,8 @@ "function transferFrom(address from, address to, uint256 tokenId)" ], "deployTxnHash": "", + "deployTxnBlockNumber": "", + "deployTimestamp": "", "sourceName": "", "contractName": "", "deployedOn": "invoke.init_account", @@ -9789,11 +11752,11 @@ "spotMarketPreset": "main", "synthetixPackage": "synthetix:latest", "synthetixPreset": "main", - "superMarketId": "3" + "superMarketId": "6" }, "imports": { "spotMarket": { - "url": "ipfs://QmabUcXBqc1yTTwbw8QkK7kj5YTd3xavxrkmQNy8qEHTHS", + "url": "ipfs://QmcwZbXNZoBVNtoLNaPHSjg1aT6eaGBoKVJc7gb1pwqJ8M", "contracts": { "AsyncOrderConfigurationModule": { "address": "0xF1aCD87E7EcFf92B7aC0793C6EF9812bc9e72a00", @@ -9818,7 +11781,7 @@ "gasCost": "711400000" }, "AsyncOrderModule": { - "address": "0x2B52baA05b1e261Abf0E8644E3cE2297285AC302", + "address": "0x8F09aDe8Ec994C3F977E5eA03026E1E2eFA314a7", "abi": [ "error IneligibleForCancellation(uint256 timestamp, uint256 expirationTime)", "error InsufficientSharesAmount(uint256 expected, uint256 actual)", @@ -9837,15 +11800,17 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0x9c43405054bb4e9927cdcb2516abf6d354d52528cf841b6ee7dd634d3a330f30", + "deployTxnHash": "0xb0b3a2b04eba0512e60ba7ce63fd30e39e9b8d018338ba2ed6cf2b51a8a80cc2", + "deployTxnBlockNumber": "68535256", + "deployTimestamp": "1722632220", "sourceName": "contracts/modules/AsyncOrderModule.sol", "contractName": "AsyncOrderModule", "deployedOn": "contract.AsyncOrderModule", - "gasUsed": 1434298, - "gasCost": "706260000" + "gasUsed": 1317254, + "gasCost": "100000000" }, "AsyncOrderSettlementModule": { - "address": "0x9AD676D1D35C087bd441Fe16CD5aDd61FBCA852D", + "address": "0x6344FB25202Ce5a0134A3dAb7496443c3f1A95a7", "abi": [ "error InvalidClaim(uint256 asyncOrderId)", "error InvalidSettlementStrategy(uint8 strategyType)", @@ -9862,15 +11827,17 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0xb30b082266acd557b9168e1b45d9ab135d2a816b1f1c17cd0dbb4849305be58f", + "deployTxnHash": "0x77b0560887b2817b986fa1ef799820b535fed15fce0c533c095834f76675a9ed", + "deployTxnBlockNumber": "68535263", + "deployTimestamp": "1722632222", "sourceName": "contracts/modules/AsyncOrderSettlementModule.sol", "contractName": "AsyncOrderSettlementModule", "deployedOn": "contract.AsyncOrderSettlementModule", - "gasUsed": 2124640, - "gasCost": "702020000" + "gasUsed": 1963714, + "gasCost": "100000000" }, "AtomicOrderModule": { - "address": "0xC04a9239DC38A6AED425f5FF0fEc6Ac6266A27A7", + "address": "0xe0be9AA35c46D4aF31b6183F1253B77EC6156ebb", "abi": [ "error ExceedsMaxSynthAmount(uint256 maxSynthAmount, uint256 synthAmountCharged)", "error ExceedsMaxUsdAmount(uint256 maxUsdAmount, uint256 usdAmountCharged)", @@ -9895,12 +11862,14 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0x32ec289041da52852aa3ee4c3cf06a79ce646b1e650ed5fa3879dfc181f237e4", + "deployTxnHash": "0x632559cf6876183fe218f97aecdeaf2427392564f06ace541981effe140db8a3", + "deployTxnBlockNumber": "68535270", + "deployTimestamp": "1722632224", "sourceName": "contracts/modules/AtomicOrderModule.sol", "contractName": "AtomicOrderModule", "deployedOn": "contract.AtomicOrderModule", - "gasUsed": 2259356, - "gasCost": "700620000" + "gasUsed": 2090754, + "gasCost": "100000000" }, "CoreModule": { "address": "0xEB8BA0e83C485e0e90115c7549e12D9813656C30", @@ -9965,7 +11934,7 @@ "gasCost": "703280000" }, "MarketConfigurationModule": { - "address": "0xC10cd6Cf0F7D12529433110DaF0fC3Dc14669961", + "address": "0x3358873fF691f58b3243B1c4F698350A6603C6b1", "abi": [ "error InvalidCollateralLeverage(uint256)", "error InvalidFeeCollectorInterface(address invalidFeeCollector)", @@ -9999,19 +11968,22 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0xbd8e98d544b6c81bc68b77f1de4365e598bad8c8591728f3759fe83488ebed2c", + "deployTxnHash": "0xa184cfd6c7ccfcdd18b302c08386ab9716edfe806950ae21e87e5eb026c80df4", + "deployTxnBlockNumber": "68535276", + "deployTimestamp": "1722632226", "sourceName": "contracts/modules/MarketConfigurationModule.sol", "contractName": "MarketConfigurationModule", "deployedOn": "contract.MarketConfigurationModule", - "gasUsed": 798044, - "gasCost": "703400000" + "gasUsed": 720683, + "gasCost": "100000000" }, "SpotMarketFactoryModule": { - "address": "0x4300a068B3826aCEFaE7062b411aF467a34Bf3A6", + "address": "0xB2E57aC75df91784d76f9Dc0C00AdEFf2eFAe317", "abi": [ "error FeatureUnavailable(bytes32 which)", "error InvalidMarketOwner()", "error InvalidSynthImplementation(uint256 synthImplementation)", + "error InvalidTransactionTypeIndex(uint128 txnType)", "error MismatchAssociatedSystemKind(bytes32 expected, bytes32 actual)", "error MissingAssociatedSystem(bytes32 id)", "error NotNominated(address addr)", @@ -10037,6 +12009,7 @@ "function getPriceData(uint128 synthMarketId) view returns (bytes32 buyFeedId, bytes32 sellFeedId, uint256 strictPriceStalenessTolerance)", "function getSynth(uint128 marketId) view returns (address synthAddress)", "function getSynthImpl(uint128 marketId) view returns (address implAddress)", + "function indexPrice(uint128 marketId, uint128 transactionType, uint8 priceTolerance) view returns (uint256 price)", "function initOrUpgradeNft(bytes32 id, string name, string symbol, string uri, address impl)", "function initOrUpgradeToken(bytes32 id, string name, string symbol, uint8 decimals, address impl)", "function minimumCredit(uint128 marketId) view returns (uint256 lockedAmount)", @@ -10055,12 +12028,14 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0x67ba3915d433b67601a3c36286c6f72b0ac2ecb79917b9fc97ff93c3e1a4c852", + "deployTxnHash": "0x3df25544cf5875c808981fddb4bf9657ccda933eb4c70b3ef87febde009a545f", + "deployTxnBlockNumber": "68535287", + "deployTimestamp": "1722632229", "sourceName": "contracts/modules/SpotMarketFactoryModule.sol", "contractName": "SpotMarketFactoryModule", "deployedOn": "contract.SpotMarketFactoryModule", - "gasUsed": 2465558, - "gasCost": "707740000" + "gasUsed": 2327414, + "gasCost": "100000000" }, "SynthTokenModule": { "address": "0xac0BE3b71d0bd224FCF83654e5aC2d2c9e2817BC", @@ -10104,7 +12079,7 @@ "gasCost": "701520000" }, "WrapperModule": { - "address": "0xaD2fE7cd224c58871f541DAE01202F93928FEF72", + "address": "0x0731973f1F301aFE098b8FC58af8F29792B30B0F", "abi": [ "error FailedTransfer(address from, address to, uint256 value)", "error InsufficientAmountReceived(uint256 expected, uint256 current)", @@ -10124,12 +12099,14 @@ ], "constructorArgs": [], "linkedLibraries": {}, - "deployTxnHash": "0x9592223de9f1264ea8f0916db5e193ca90e9d1c87ffce174fc91d03a7ea44fb1", + "deployTxnHash": "0x0319c17833c6a3cbef0438784f1772cf68f24c54d93cc6a59e2f62f1dfbe8ab9", + "deployTxnBlockNumber": "68535293", + "deployTimestamp": "1722632231", "sourceName": "contracts/modules/WrapperModule.sol", "contractName": "WrapperModule", "deployedOn": "contract.WrapperModule", - "gasUsed": 1827749, - "gasCost": "699410000" + "gasUsed": 1684906, + "gasCost": "100000000" }, "InitialSpotMarketProxy": { "address": "0x93d645c42A0CA3e08E9552367B8c454765fff041", @@ -10166,7 +12143,7 @@ "gasCost": "704870000" }, "SpotMarketRouter": { - "address": "0x3b1d0009899067d7db5e859c182410714caf8725", + "address": "0xa032eef7d27503bd44d3882487627001e77829b8", "abi": [ "error ImplementationIsSterile(address implementation)", "error NoChange()", @@ -10189,6 +12166,7 @@ "error FeatureUnavailable(bytes32 which)", "error InvalidMarketOwner()", "error InvalidSynthImplementation(uint256 synthImplementation)", + "error InvalidTransactionTypeIndex(uint128 txnType)", "error MismatchAssociatedSystemKind(bytes32 expected, bytes32 actual)", "error MissingAssociatedSystem(bytes32 id)", "error OnlyMarketOwner(address marketOwner, address sender)", @@ -10211,6 +12189,7 @@ "function getPriceData(uint128 synthMarketId) view returns (bytes32 buyFeedId, bytes32 sellFeedId, uint256 strictPriceStalenessTolerance)", "function getSynth(uint128 marketId) view returns (address synthAddress)", "function getSynthImpl(uint128 marketId) view returns (address implAddress)", + "function indexPrice(uint128 marketId, uint128 transactionType, uint8 priceTolerance) view returns (uint256 price)", "function initOrUpgradeNft(bytes32 id, string name, string symbol, string uri, address impl)", "function initOrUpgradeToken(bytes32 id, string name, string symbol, uint8 decimals, address impl)", "function minimumCredit(uint128 marketId) view returns (uint256 lockedAmount)", @@ -10329,11 +12308,13 @@ "function setFeatureFlagDenyAll(bytes32 feature, bool denyAll)" ], "deployedOn": "router.SpotMarketRouter", - "deployTxnHash": "0xd79c80f07d8140a3e0e73963716e0950ca6f884e267f26377cdd08e47ab194d5", + "deployTxnHash": "0xbe03ce664a9e4aca8e7d29308d8b56bcd76c6d3252c72d6dc6461daf67513ed7", + "deployTxnBlockNumber": "68535301", + "deployTimestamp": "1722632233", "contractName": "SpotMarketRouter", "sourceName": "SpotMarketRouter.sol", - "gasUsed": 931840, - "gasCost": "711400000" + "gasUsed": 880009, + "gasCost": "100000000" }, "SynthRouter": { "address": "0x87a1e05e307027aea84428aab504148f8f270d90", @@ -10415,6 +12396,7 @@ "error FeatureUnavailable(bytes32 which)", "error InvalidMarketOwner()", "error InvalidSynthImplementation(uint256 synthImplementation)", + "error InvalidTransactionTypeIndex(uint128 txnType)", "error MismatchAssociatedSystemKind(bytes32 expected, bytes32 actual)", "error MissingAssociatedSystem(bytes32 id)", "error OnlyMarketOwner(address marketOwner, address sender)", @@ -10437,6 +12419,7 @@ "function getPriceData(uint128 synthMarketId) view returns (bytes32 buyFeedId, bytes32 sellFeedId, uint256 strictPriceStalenessTolerance)", "function getSynth(uint128 marketId) view returns (address synthAddress)", "function getSynthImpl(uint128 marketId) view returns (address implAddress)", + "function indexPrice(uint128 marketId, uint128 transactionType, uint8 priceTolerance) view returns (uint256 price)", "function initOrUpgradeNft(bytes32 id, string name, string symbol, string uri, address impl)", "function initOrUpgradeToken(bytes32 id, string name, string symbol, uint8 decimals, address impl)", "function minimumCredit(uint128 marketId) view returns (uint256 lockedAmount)", @@ -10555,6 +12538,8 @@ "function setFeatureFlagDenyAll(bytes32 feature, bool denyAll)" ], "deployTxnHash": "", + "deployTxnBlockNumber": "", + "deployTimestamp": "", "sourceName": "", "contractName": "", "deployedOn": "invoke.upgradeSpotMarketProxy", @@ -10566,7 +12551,7 @@ "settings": { "owner": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", "salt": "snax", - "synthetixPackage": "synthetix:3.3.15", + "synthetixPackage": "synthetix", "synthetixPreset": "main" }, "imports": { @@ -12809,21 +14794,23 @@ }, "txns": { "upgradeSpotMarketProxy": { - "hash": "0x5cf6b3b3d30125d7507fb791444f91d1b93883fdc680b34c8290e344f03f46aa", + "hash": "0xc25c041f1548366480db0ef8117780c20003fe6b1a9c2d6be11bc1953633765e", + "blockNumber": "68535305", + "timestamp": "1722632235", "events": { "Upgraded": [ { "name": "Upgraded", "args": [ "0x93d645c42A0CA3e08E9552367B8c454765fff041", - "0x3b1D0009899067D7DB5e859c182410714caf8725" + "0xa032eEf7d27503Bd44D3882487627001E77829b8" ] } ] }, "deployedOn": "invoke.upgradeSpotMarketProxy", - "gasUsed": 57095, - "gasCost": "714810000", + "gasUsed": 55585, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" }, "addCreateSynthToFeatureFlag": { @@ -12902,7 +14889,7 @@ "extras": { "owner": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", "salt": "snax", - "synthetixPackage": "synthetix:3.3.15", + "synthetixPackage": "synthetix", "synthetixPreset": "main" } }, @@ -15128,1281 +17115,5117 @@ } ] }, - "deployedOn": "invoke.configure_usd_collateral", - "gasUsed": 250414, - "gasCost": "740420000", - "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" - } - }, - "extras": { - "bundleSalt": "main", - "oracle_manager_source": "oracle-manager", - "owner": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", - "salt": "main", - "const_one_oracle_id": "0x066ef68c9d9ca51eee861aeb5bce51a12e61f06f10bf62243c563671ae3a9733" + "deployedOn": "invoke.configure_usd_collateral", + "gasUsed": 250414, + "gasCost": "740420000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "extras": { + "bundleSalt": "main", + "oracle_manager_source": "oracle-manager", + "owner": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "salt": "main", + "const_one_oracle_id": "0x066ef68c9d9ca51eee861aeb5bce51a12e61f06f10bf62243c563671ae3a9733" + } + } + }, + "txns": { + "upgrade_proxy": { + "hash": "0x4f6477d980b335c1b738721f116a9414c7b877ee2e50179978af001cc86110f3", + "blockNumber": "68535388", + "timestamp": "1722632269", + "events": { + "Upgraded": [ + { + "name": "Upgraded", + "args": [ + "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460", + "0x484Ae29E4b68d7625D7CBeeCA5Be51e6BA47c7c3" + ] + } + ] + }, + "deployedOn": "invoke.upgrade_proxy", + "gasUsed": 52064, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + }, + "addCreateMarketToFeatureFlag": { + "hash": "0x6461396d429527c8cdea3b7df11eced7f2d14946d78df21cf428194c8becdbe4", + "blockNumber": "68535389", + "timestamp": "1722632271", + "events": { + "FeatureFlagAllowlistAdded": [ + { + "name": "FeatureFlagAllowlistAdded", + "args": [ + "0x6372656174654d61726b65740000000000000000000000000000000000000000", + "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + ] + } + ] + }, + "deployedOn": "invoke.addCreateMarketToFeatureFlag", + "gasUsed": 101807, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + }, + "addPerpsMarketToFeatureFlag": { + "hash": "0xb499ba3bc05d0b3da2f28391c466a706964909a1ee371cad173450a6786a0592", + "blockNumber": "68535393", + "timestamp": "1722632273", + "events": { + "FeatureFlagAllowlistAdded": [ + { + "name": "FeatureFlagAllowlistAdded", + "args": [ + "0x72656769737465724d61726b6574000000000000000000000000000000000000", + "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460" + ] + } + ] + }, + "deployedOn": "invoke.addPerpsMarketToFeatureFlag", + "gasUsed": 84543, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + }, + "enableFeatureCreateAccount": { + "hash": "0x8412eb674d8b5d6a767ef05fc0601a929665f83dfe2eae91d2c4334d3e40e2df", + "blockNumber": "68535399", + "timestamp": "1722632275", + "events": { + "FeatureFlagAllowAllSet": [ + { + "name": "FeatureFlagAllowAllSet", + "args": [ + "0x6372656174654163636f756e7400000000000000000000000000000000000000", + true + ] + } + ] + }, + "deployedOn": "invoke.enableFeatureCreateAccount", + "gasUsed": 57241, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + }, + "init_account": { + "hash": "0xb3d7f563b67fa749aefe55fc25fdac4579bd08134b4a1aa0ca637f50c7107202", + "blockNumber": "68535403", + "timestamp": "1722632277", + "events": { + "AssociatedSystemSet": [ + { + "name": "AssociatedSystemSet", + "args": [ + "0x6572633732310000000000000000000000000000000000000000000000000000", + "0x6163636f756e744e667400000000000000000000000000000000000000000000", + "0xf3D4109EB4e7EC31f8Eee5D9ADDAD5F3C53a6C87", + "0x2C87b00279De8b2e3a6Dad79521361B698916B6C" + ] + } + ] + }, + "deployedOn": "invoke.init_account", + "gasUsed": 334865, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + }, + "initializeFactory": { + "hash": "0x5d028016c4e979ed932f6a0080d2cef2dab8da84a49d0dbce166a8ba893519c6", + "blockNumber": "68535407", + "timestamp": "1722632279", + "events": { + "FactoryInitialized": [ + { + "name": "FactoryInitialized", + "args": [ + "6" + ] + } + ] + }, + "deployedOn": "invoke.initializeFactory", + "gasUsed": 275728, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "extras": { + "coreProxyOwner": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "owner": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", + "salt": "snax", + "spotMarketPackage": "synthetix-spot-market:latest", + "spotMarketPreset": "main", + "synthetixPackage": "synthetix:latest", + "synthetixPreset": "main", + "superMarketId": "6" + } + } + } + }, + "hash": null, + "version": 7 + }, + "invoke.CoreProxy_configureCollateral_dai": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_configureCollateral_dai": { + "hash": "0x38daf91d6b503a453d9cecd965c5d497ae0c986522f034f312023a317e0e8806", + "events": { + "CollateralConfigured": [ + { + "name": "CollateralConfigured", + "args": [ + "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", + { + "depositingEnabled": false, + "issuanceRatioD18": "1200000000000000000", + "liquidationRatioD18": "1050000000000000000", + "liquidationRewardD18": "1000000000000000000", + "oracleNodeId": "0xc346c4c4376c8b153e0dfd911a6771aa410da0466a56aa30c2f3294dce1785f8", + "tokenAddress": "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", + "minDelegationD18": "100000000000000000000" + } + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_configureCollateral_dai", + "gasUsed": 328627, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "8142eaaaf727f390f2ca99cd6f85f172", + "version": 7 + }, + "invoke.CoreProxy_configureCollateral_usdc": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_configureCollateral_usdc": { + "hash": "0xfe7803c6d32ed9ab0941a00c458a8ec58a66c06e59c09eca8b022ff2728cacde", + "events": { + "CollateralConfigured": [ + { + "name": "CollateralConfigured", + "args": [ + "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", + { + "depositingEnabled": true, + "issuanceRatioD18": "1200000000000000000", + "liquidationRatioD18": "1050000000000000000", + "liquidationRewardD18": "1000000000000000000", + "oracleNodeId": "0x999c46d1e0e994822e8b02def68984d9c9e124d58ee2b68f604c6a5144b0db14", + "tokenAddress": "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", + "minDelegationD18": "100000000000000000000" + } + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_configureCollateral_usdc", + "gasUsed": 61856, + "gasCost": "745990000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "44bdc85cb885c9fcb6bb9d7b1b1b82f1", + "version": 7 + }, + "invoke.CoreProxy_configureMaximumMarketCollateral_dai": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_configureMaximumMarketCollateral_dai": { + "hash": "0x2c1e8ea1ceaa530ed7cbe12138c35bcfc11b42491a4fa1e3dbb105629a32b18b", + "events": { + "MaximumMarketCollateralConfigured": [ + { + "name": "MaximumMarketCollateralConfigured", + "args": [ + "1", + "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", + "0", + "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_configureMaximumMarketCollateral_dai", + "gasUsed": 217042, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "4d6222cf269d2d0f984f6ec809d9e71f", + "version": 7 + }, + "invoke.CoreProxy_configureMaximumMarketCollateral_usdc": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_configureMaximumMarketCollateral_usdc": { + "hash": "0x4ef7d54b87128b9b7bd13ba73ef4016059e6710343d7ef2090730ec3e3ab18b8", + "events": { + "MaximumMarketCollateralConfigured": [ + { + "name": "MaximumMarketCollateralConfigured", + "args": [ + "2", + "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", + "10000000000000000000000000", + "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_configureMaximumMarketCollateral_usdc", + "gasUsed": 221938, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "7397b2c8cde302f29bd008501a3f7114", + "version": 7 + }, + "invoke.CoreProxy_setFeatureFlagAllowAll_perpsSystem": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_setFeatureFlagAllowAll_perpsSystem": { + "hash": "0x86837642b8327c360079c9854636796e30872f13f4f9e0654ec743422b11d972", + "events": { + "FeatureFlagAllowAllSet": [ + { + "name": "FeatureFlagAllowAllSet", + "args": [ + "0x706572707353797374656d000000000000000000000000000000000000000000", + false + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_setFeatureFlagAllowAll_perpsSystem", + "gasUsed": 42339, + "gasCost": "796010000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "15e192731d414d96dbff5d0ffacccf12", + "version": 7 + }, + "invoke.CoreProxy_setPoolConfiguration_SpartanCouncil": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_setPoolConfiguration_SpartanCouncil": { + "hash": "0xa9cf5ae064c349834592c13f3f25c426acb7350bacd1dcdfc3c59cc69e86fd17", + "blockNumber": "68535457", + "timestamp": "1722632297", + "events": { + "PoolConfigurationSet": [ + { + "name": "PoolConfigurationSet", + "args": [ + "1", + [ + { + "marketId": "1", + "weightD18": "1", + "maxDebtShareValueD18": "1000000000000000000" + }, + { + "marketId": "2", + "weightD18": "1", + "maxDebtShareValueD18": "1000000000000000000" + }, + { + "marketId": "4", + "weightD18": "1", + "maxDebtShareValueD18": "1000000000000000000" + }, + { + "marketId": "5", + "weightD18": "1", + "maxDebtShareValueD18": "1000000000000000000" + }, + { + "marketId": "6", + "weightD18": "98", + "maxDebtShareValueD18": "1000000000000000000" + } + ], + "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_setPoolConfiguration_SpartanCouncil", + "gasUsed": 1390760, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "f0b05fadc7c6dd6119b747c86d93b041", + "version": 7 + }, + "invoke.CoreProxy_setPoolName_SpartanCouncil": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_setPoolName_SpartanCouncil": { + "hash": "0xeb4057cbc24669ce5f910aa8dd4bb2fc22f700680a635ace48d68d5e95bef58d", + "events": { + "PoolNameUpdated": [ + { + "name": "PoolNameUpdated", + "args": [ + "1", + "Spartan Council Pool", + "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_setPoolName_SpartanCouncil", + "gasUsed": 68580, + "gasCost": "804690000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "865e58ccf82574cd9b7679d764446754", + "version": 7 + }, + "invoke.CoreProxy_setPreferredPool_SpartanCouncil": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_setPreferredPool_SpartanCouncil": { + "hash": "0x79273c08974e061a07a508447ac2668990e1dfcdb4727edfc14ce7d1d2d63bc6", + "events": { + "PreferredPoolSet": [ + { + "name": "PreferredPoolSet", + "args": [ + "1" + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_setPreferredPool_SpartanCouncil", + "gasUsed": 62930, + "gasCost": "808270000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "480e6beb1993cfe6612decbb89f15bd7", + "version": 7 + }, + "invoke.SpotMarketProxy_addSettlementStrategy_dai": { + "artifacts": { + "contracts": {}, + "txns": { + "SpotMarketProxy_addSettlementStrategy_dai": { + "hash": "0x0a34fd0b9635c0a1fc39dd03f43f8c368c70ce4d414acaa756873fb2f8549166", + "events": { + "SettlementStrategyAdded": [ + { + "name": "SettlementStrategyAdded", + "args": [ + "1", + "0" + ] + } + ] + }, + "deployedOn": "invoke.SpotMarketProxy_addSettlementStrategy_dai", + "gasUsed": 171325, + "gasCost": "817720000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "synth_dai_settlement_strategy_id": "0" + } + }, + "hash": "6d75a2c088cd38fd4460ce6fb1d4a628", + "version": 7 + }, + "invoke.SpotMarketProxy_addSettlementStrategy_usdc": { + "artifacts": { + "contracts": {}, + "txns": { + "SpotMarketProxy_addSettlementStrategy_usdc": { + "hash": "0x1240303c096aa6d73d82bea7eb6437f1557bf5f99352c8f51d70839cf1e23892", + "events": { + "SettlementStrategyAdded": [ + { + "name": "SettlementStrategyAdded", + "args": [ + "2", + "0" + ] + } + ] + }, + "deployedOn": "invoke.SpotMarketProxy_addSettlementStrategy_usdc", + "gasUsed": 171494, + "gasCost": "815550000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "synth_usdc_settlement_strategy_id": "0" + } + }, + "hash": "33b924412a4b5460f77472c83861ba43", + "version": 7 + }, + "invoke.SpotMarketProxy_setWrapper_dai": { + "artifacts": { + "contracts": {}, + "txns": { + "SpotMarketProxy_setWrapper_dai": { + "hash": "0x37eb17169aa43074a08da2f07089601cef1d0d88a29bd773f8de914eb9fec994", + "events": { + "WrapperSet": [ + { + "name": "WrapperSet", + "args": [ + "1", + "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", + "0" + ] + } + ] + }, + "deployedOn": "invoke.SpotMarketProxy_setWrapper_dai", + "gasUsed": 240232, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "829dc78753898a03890f49aa6c789afd", + "version": 7 + }, + "invoke.SpotMarketProxy_setWrapper_usdc": { + "artifacts": { + "contracts": {}, + "txns": { + "SpotMarketProxy_setWrapper_usdc": { + "hash": "0x14b4f7c6160e0d8ba2ed2b4d8050f0c9cd4b3a85c6efc6da8d2c1bae5e5baf8c", + "events": { + "WrapperSet": [ + { + "name": "WrapperSet", + "args": [ + "2", + "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", + "10000000000000000000000000" + ] + } + ] + }, + "deployedOn": "invoke.SpotMarketProxy_setWrapper_usdc", + "gasUsed": 240640, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "fd0e75ca97cc4e28fac3ad58b883e355", + "version": 7 + }, + "invoke.SpotMarketProxy_updatePriceData_dai": { + "artifacts": { + "contracts": {}, + "txns": { + "SpotMarketProxy_updatePriceData_dai": { + "hash": "0x000a3734e0d559a71ffc13c40b32fe1313a5a130cc22cab151309764b9b86196", + "events": { + "SynthPriceDataUpdated": [ + { + "name": "SynthPriceDataUpdated", + "args": [ + "1", + "0xc346c4c4376c8b153e0dfd911a6771aa410da0466a56aa30c2f3294dce1785f8", + "0xc346c4c4376c8b153e0dfd911a6771aa410da0466a56aa30c2f3294dce1785f8", + "3600" + ] + } + ] + }, + "deployedOn": "invoke.SpotMarketProxy_updatePriceData_dai", + "gasUsed": 110250, + "gasCost": "817640000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "c2ae6da45dea3c4859cdafd14fb73b5d", + "version": 7 + }, + "invoke.SpotMarketProxy_updatePriceData_usdc": { + "artifacts": { + "contracts": {}, + "txns": { + "SpotMarketProxy_updatePriceData_usdc": { + "hash": "0xadb9f2c98d7d870db7b9140d11f370ff89f2aef8e29ee00aa5b00ea3881996d7", + "events": { + "SynthPriceDataUpdated": [ + { + "name": "SynthPriceDataUpdated", + "args": [ + "2", + "0x999c46d1e0e994822e8b02def68984d9c9e124d58ee2b68f604c6a5144b0db14", + "0x999c46d1e0e994822e8b02def68984d9c9e124d58ee2b68f604c6a5144b0db14", + "3600" + ] + } + ] + }, + "deployedOn": "invoke.SpotMarketProxy_updatePriceData_usdc", + "gasUsed": 110258, + "gasCost": "816750000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "f9341bf61c9cf34c0fd0907508ccfff5", + "version": 7 + }, + "invoke.setPerpsMarketName": { + "artifacts": { + "contracts": {}, + "txns": { + "setPerpsMarketName": { + "hash": "0x9bfa169ba72d6134d7ba0fe2623aed63fc54d93bba0e074c5db0b6e22a049c18", + "blockNumber": "68535588", + "timestamp": "1722632344", + "events": {}, + "deployedOn": "invoke.setPerpsMarketName", + "gasUsed": 55999, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "1b508251999973c07ceb52a068526456", + "version": 7 + }, + "invoke.set_deniers_perps": { + "artifacts": { + "contracts": {}, + "txns": { + "set_deniers_perps": { + "hash": "0xbb1d129cdb0e2edaaef0b282f7d3b1c71737034e9f5a162d2a869f8801cebafd", + "events": { + "FeatureFlagDeniersReset": [ + { + "name": "FeatureFlagDeniersReset", + "args": [ + "0x706572707353797374656d000000000000000000000000000000000000000000", + [ + "0x28Ed18Bd77A061E0A886a2a8FFb91da95FF03E56", + "0xd9b891AB93C210eafa46c61fAeb53836F99aa35B", + "0x0B67bab43157e53D21965Af0d83f83BeD9553E0a", + "0x8909F73188C4fE68B283fCB1E724b2466e0BdfD0", + "0xe1Efa5C91cA533E4a51884d805879249E3FCB2BC", + "0x6985b94Db148eDd4df6BD1Ba3F4640da79B44947", + "0x599e835cbFC903eF09f3Dd5E08D1cF63c32AF8d8", + "0xa2fa6Ef1Fcf740b632a04B3FC56B5d3118Bbd211", + "0x347c3190bD015FBD0e47fb90AA4917138A8A32FE", + "0x2d8cF727d37e7277D5eeDbAb853a3e8320f767Cd", + "0x1dd532CF7603a60C3ec91360f273DA3Db38545aB", + "0x562948111d50BF039A39Eea48D127f2Ae51ddF02", + "0xEde8a407913A874Dd7e3d5B731AFcA135D30375E" + ] + ] + } + ] + }, + "deployedOn": "invoke.set_deniers_perps", + "gasUsed": 378678, + "gasCost": "809990000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "5fb4d9bd665ad2b30e552ed24d25108b", + "version": 7 + }, + "invoke.SpotMarketProxy_setSettlementStrategy_dai": { + "artifacts": { + "contracts": {}, + "txns": { + "SpotMarketProxy_setSettlementStrategy_dai": { + "hash": "0x08ab57513c152a537aac894edbc7a321ec4168c50ebb18176369c9a7271c69ad", + "events": { + "SettlementStrategySet": [ + { + "name": "SettlementStrategySet", + "args": [ + "1", + "0", + { + "strategyType": 1, + "settlementDelay": "2", + "settlementWindowDuration": "60", + "priceVerificationContract": "0x0eA49b2e23387cD99ceceBDa52041c604e40992E", + "feedId": "0xb0948a5e5313200c632b51bb5ca32f6de0d36e9950a942d19751e833f70dabfd", + "url": "https://api.synthetix.io/pyth-mainnet/api/get_vaa_ccip?data={data}", + "settlementReward": "500000000000000000", + "priceDeviationTolerance": "1000000000000000000", + "minimumUsdExchangeAmount": "1000000000000", + "maxRoundingLoss": "1000000000000", + "disabled": false + } + ] + } + ] + }, + "deployedOn": "invoke.SpotMarketProxy_setSettlementStrategy_dai", + "gasUsed": 81919, + "gasCost": "462150000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "9d86befda4137d41edbc4ade10b290fd", + "version": 7 + }, + "invoke.SpotMarketProxy_setSettlementStrategy_usdc": { + "artifacts": { + "contracts": {}, + "txns": { + "SpotMarketProxy_setSettlementStrategy_usdc": { + "hash": "0xa95c97ba4e72f4fe2875c8ff8707e897584e7ec8afa0f9853d538cfcbb13a489", + "events": { + "SettlementStrategySet": [ + { + "name": "SettlementStrategySet", + "args": [ + "2", + "0", + { + "strategyType": 1, + "settlementDelay": "2", + "settlementWindowDuration": "60", + "priceVerificationContract": "0x0eA49b2e23387cD99ceceBDa52041c604e40992E", + "feedId": "0xeaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a", + "url": "https://api.synthetix.io/pyth-mainnet/api/get_vaa_ccip?data={data}", + "settlementReward": "500000000000000000", + "priceDeviationTolerance": "1000000000000000000", + "minimumUsdExchangeAmount": "1000000000000", + "maxRoundingLoss": "1000000000000", + "disabled": false + } + ] + } + ] + }, + "deployedOn": "invoke.SpotMarketProxy_setSettlementStrategy_usdc", + "gasUsed": 81919, + "gasCost": "458380000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "0eab7d792803dbe382772fc6947a77de", + "version": 7 + }, + "setting.arb_issuance_ratio": { + "artifacts": { + "settings": { + "arb_issuance_ratio": "3000000000000000000" + } + }, + "hash": "f564eb7a12d7143eb45d4ae362f2f600", + "version": 7 + }, + "setting.arb_liquidation_ratio": { + "artifacts": { + "settings": { + "arb_liquidation_ratio": "1500000000000000000" + } + }, + "hash": "c1d908f79852cdcacfde4731b3912f6d", + "version": 7 + }, + "setting.arb_liquidation_reward": { + "artifacts": { + "settings": { + "arb_liquidation_reward": "500000000000000000" + } + }, + "hash": "432e3c15ccbe73e998f322de6cb6a0c3", + "version": 7 + }, + "setting.arb_min_delegation": { + "artifacts": { + "settings": { + "arb_min_delegation": "50000000000000000000" + } + }, + "hash": "189426cb43efa7e96fc7b458df592ef1", + "version": 7 + }, + "setting.weth_issuance_ratio": { + "artifacts": { + "settings": { + "weth_issuance_ratio": "2000000000000000000" + } + }, + "hash": "09553939422a81e0204384bf690274c4", + "version": 7 + }, + "setting.weth_liquidation_ratio": { + "artifacts": { + "settings": { + "weth_liquidation_ratio": "1250000000000000000" + } + }, + "hash": "290a2df513cdb87666df984b81069cc3", + "version": 7 + }, + "setting.weth_liquidation_reward": { + "artifacts": { + "settings": { + "weth_liquidation_reward": "5000000000000000" + } + }, + "hash": "7b54ff46e6768da73f16016d4be6f513", + "version": 7 + }, + "setting.weth_min_delegation": { + "artifacts": { + "settings": { + "weth_min_delegation": "10000000000000000" + } + }, + "hash": "54bfc1b896e4a36386a208521c14a98b", + "version": 7 + }, + "invoke.OracleManagerProxy_registerNode_pyth_arb": { + "artifacts": { + "contracts": {}, + "txns": { + "OracleManagerProxy_registerNode_pyth_arb": { + "hash": "0x9deafa80e996aac31fdcef79774fa16c0377e06fcd45c6fd016e3863083ab88d", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0x929d2d9105ebf7012feeb32b34364a9914300bcc1974492b324ff0e65621715b", + 5, + "0x0000000000000000000000004374e5a8b9c22271e9eb878a2aa31de97df15daf3fa4252848f9f0a1480be62745a4629d9eb1322aebab8a791e344b3b9c1adcf50000000000000000000000000000000000000000000000000000000000000000", + [] + ] + } + ] + }, + "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_arb", + "gasUsed": 146709, + "gasCost": "3071970000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "arb_pyth_oracle_id": "0x929d2d9105ebf7012feeb32b34364a9914300bcc1974492b324ff0e65621715b" + } + }, + "hash": "e18612aae638fe374a0249cf730e9d32", + "version": 7 + }, + "invoke.OracleManagerProxy_registerNode_pyth_eth": { + "artifacts": { + "contracts": {}, + "txns": { + "OracleManagerProxy_registerNode_pyth_eth": { + "hash": "0xee98566aa07d29e101323d15ea937649f636a3ddcfab5e99f9890bd760a64944", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0xf7c481e06a0c254a621900a32e9f38b6e929d650074057986a4966dccaef1125", + 5, + "0x0000000000000000000000004374e5a8b9c22271e9eb878a2aa31de97df15dafff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace0000000000000000000000000000000000000000000000000000000000000000", + [] + ] + } + ] + }, + "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_eth", + "gasUsed": 146721, + "gasCost": "3089970000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "eth_pyth_oracle_id": "0xf7c481e06a0c254a621900a32e9f38b6e929d650074057986a4966dccaef1125" + } + }, + "hash": "66e5c538a5b8ccd77027fa48fe9271c9", + "version": 7 + }, + "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_arb": { + "artifacts": { + "contracts": {}, + "txns": { + "OracleManagerProxy_registerNode_pyth_offchain_lookup_arb": { + "hash": "0x8b89ca4c3e704ba6135e331b6ba636d08863af52fa787efc144e524f68c12491", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0x9be3ad46045ca3e2944d6a98707d813965ac907f3a47eee9c8e2b73fa65a8896", + 9, + "0x0000000000000000000000000ea49b2e23387cd99cecebda52041c604e40992e3fa4252848f9f0a1480be62745a4629d9eb1322aebab8a791e344b3b9c1adcf50000000000000000000000000000000000000000000000000000000000000e10", + [] + ] + } + ] + }, + "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_arb", + "gasUsed": 155352, + "gasCost": "3090860000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "arb_lookup_oracle_id": "0x9be3ad46045ca3e2944d6a98707d813965ac907f3a47eee9c8e2b73fa65a8896" + } + }, + "hash": "2bcb0e0c2501fd64fc24f2261c9e5a23", + "version": 7 + }, + "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_eth": { + "artifacts": { + "contracts": {}, + "txns": { + "OracleManagerProxy_registerNode_pyth_offchain_lookup_eth": { + "hash": "0x1a81fea1af1fabaa5d621abef774a5115ad65fa4fb5d7115466dbab098c81aac", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0xd4b79090164adeed87caf50d977b67ed778198653cd802e0ff993e427c5a9fad", + 9, + "0x0000000000000000000000000ea49b2e23387cd99cecebda52041c604e40992eff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace0000000000000000000000000000000000000000000000000000000000000e10", + [] + ] + } + ] + }, + "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_eth", + "gasUsed": 155351, + "gasCost": "3098400000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "eth_lookup_oracle_id": "0xd4b79090164adeed87caf50d977b67ed778198653cd802e0ff993e427c5a9fad" + } + }, + "hash": "919efa4fd419b2606ba9a037981f0c69", + "version": 7 + }, + "invoke.OracleManagerProxy_registerNode_staleness_arb": { + "artifacts": { + "contracts": {}, + "txns": { + "OracleManagerProxy_registerNode_staleness_arb": { + "hash": "0x81a16111d35fdebe240471270e1983c137882dbe4a2b9b8e5fc7b8e60f4e613d", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0x3f2dcd001d07de15ef2712bc750f5ca8374a953d50c4e208fc871270f960eddb", + 7, + "0x0000000000000000000000000000000000000000000000000000000000000e10", + [ + "0x929d2d9105ebf7012feeb32b34364a9914300bcc1974492b324ff0e65621715b", + "0x9be3ad46045ca3e2944d6a98707d813965ac907f3a47eee9c8e2b73fa65a8896" + ] + ] + } + ] + }, + "deployedOn": "invoke.OracleManagerProxy_registerNode_staleness_arb", + "gasUsed": 221079, + "gasCost": "3071080000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "arb_oracle_id": "0x3f2dcd001d07de15ef2712bc750f5ca8374a953d50c4e208fc871270f960eddb" + } + }, + "hash": "87dfd48ef589d9bcd64c278caac18de1", + "version": 7 + }, + "invoke.OracleManagerProxy_registerNode_staleness_eth": { + "artifacts": { + "contracts": {}, + "txns": { + "OracleManagerProxy_registerNode_staleness_eth": { + "hash": "0x417fd9994d2e16dabad9725c52ebc028d8e79505961f4700be6b3d56b333599c", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0x93249440fb2535a0425e3134c597f4570fbae358ce9a039bff9957ccb1a74f37", + 7, + "0x0000000000000000000000000000000000000000000000000000000000000e10", + [ + "0xf7c481e06a0c254a621900a32e9f38b6e929d650074057986a4966dccaef1125", + "0xd4b79090164adeed87caf50d977b67ed778198653cd802e0ff993e427c5a9fad" + ] + ] + } + ] + }, + "deployedOn": "invoke.OracleManagerProxy_registerNode_staleness_eth", + "gasUsed": 221062, + "gasCost": "3072310000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "eth_oracle_id": "0x93249440fb2535a0425e3134c597f4570fbae358ce9a039bff9957ccb1a74f37" + } + }, + "hash": "1cb89e924ded043d5758f31c8c8a1d83", + "version": 7 + }, + "invoke.CoreProxy_configureCollateral_arb": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_configureCollateral_arb": { + "hash": "0xb889951ba1f43bdbd356e391fd709ab807e1d15a280e52f455a44c224ec15b97", + "events": { + "CollateralConfigured": [ + { + "name": "CollateralConfigured", + "args": [ + "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + { + "depositingEnabled": true, + "issuanceRatioD18": "3000000000000000000", + "liquidationRatioD18": "1500000000000000000", + "liquidationRewardD18": "500000000000000000", + "oracleNodeId": "0x3f2dcd001d07de15ef2712bc750f5ca8374a953d50c4e208fc871270f960eddb", + "tokenAddress": "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + "minDelegationD18": "50000000000000000000" + } + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_configureCollateral_arb", + "gasUsed": 243680, + "gasCost": "3069190000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "d94ee3e77bb5c2a2eb241e6e3866592f", + "version": 7 + }, + "invoke.CoreProxy_configureCollateral_weth": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_configureCollateral_weth": { + "hash": "0x221514d21a79d433850a795f99856e9a647a645738c90a1ea0e0a098de3289d7", + "events": { + "CollateralConfigured": [ + { + "name": "CollateralConfigured", + "args": [ + "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73", + { + "depositingEnabled": true, + "issuanceRatioD18": "2000000000000000000", + "liquidationRatioD18": "1250000000000000000", + "liquidationRewardD18": "5000000000000000", + "oracleNodeId": "0x93249440fb2535a0425e3134c597f4570fbae358ce9a039bff9957ccb1a74f37", + "tokenAddress": "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73", + "minDelegationD18": "10000000000000000" + } + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_configureCollateral_weth", + "gasUsed": 243661, + "gasCost": "3052280000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "a97345d6ad58cbe6a23cd70b630fdc6b", + "version": 7 + }, + "setting.max_collateral_limit_arb": { + "artifacts": { + "settings": { + "max_collateral_limit_arb": "10000000000000000000000000" + } + }, + "hash": "864c3d00b6ac650501aef463342c436d", + "version": 7 + }, + "setting.max_collateral_limit_dai": { + "artifacts": { + "settings": { + "max_collateral_limit_dai": "0" + } + }, + "hash": "4dcc24a97eaa6583aab6a5b0cb07d27e", + "version": 7 + }, + "setting.max_collateral_limit_usdc": { + "artifacts": { + "settings": { + "max_collateral_limit_usdc": "10000000000000000000000000" + } + }, + "hash": "864c3d00b6ac650501aef463342c436d", + "version": 7 + }, + "setting.max_collateral_limit_weth": { + "artifacts": { + "settings": { + "max_collateral_limit_weth": "5400000000000000000000" + } + }, + "hash": "0ed0892905460f12e97a8d9476fa7bdc", + "version": 7 + }, + "invoke.CoreProxy_setPoolCollateralConfiguration_arb": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_setPoolCollateralConfiguration_arb": { + "hash": "0x8aa61f0e317f41eb845f40bd390da039e65116f496b869485d990ccb7acc25be", + "events": { + "PoolCollateralConfigurationUpdated": [ + { + "name": "PoolCollateralConfigurationUpdated", + "args": [ + "1", + "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + { + "collateralLimitD18": "10000000000000000000000000", + "issuanceRatioD18": "0" + } + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_setPoolCollateralConfiguration_arb", + "gasUsed": 253449, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "e2955c260129b43126d79db920c56121", + "version": 7 + }, + "invoke.CoreProxy_setPoolCollateralConfiguration_dai": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_setPoolCollateralConfiguration_dai": { + "hash": "0xba22f9eb7917bad0ba70c349ceda65ec190c2f26fc8c1d9b8afe85687bec7acb", + "events": { + "PoolCollateralConfigurationUpdated": [ + { + "name": "PoolCollateralConfigurationUpdated", + "args": [ + "1", + "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", + { + "collateralLimitD18": "0", + "issuanceRatioD18": "0" + } + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_setPoolCollateralConfiguration_dai", + "gasUsed": 241840, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "0685c0abb6d456e4f98f4889bbb78446", + "version": 7 + }, + "invoke.CoreProxy_setPoolCollateralConfiguration_usdc": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_setPoolCollateralConfiguration_usdc": { + "hash": "0x05b88988ff1af6f42f131349454fcc3bd9d3a2cbd1bbde38033e5386a5202ceb", + "events": { + "PoolCollateralConfigurationUpdated": [ + { + "name": "PoolCollateralConfigurationUpdated", + "args": [ + "1", + "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", + { + "collateralLimitD18": "10000000000000000000000000", + "issuanceRatioD18": "0" + } + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_setPoolCollateralConfiguration_usdc", + "gasUsed": 253449, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "bda00a978481c054a3146583e20acd08", + "version": 7 + }, + "invoke.CoreProxy_setPoolCollateralConfiguration_weth": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_setPoolCollateralConfiguration_weth": { + "hash": "0x1da65212d8299535b81014f491e1f07efe2593db8d1c88bce7b0376452309251", + "blockNumber": "67705279", + "timestamp": "1722345252", + "events": { + "PoolCollateralConfigurationUpdated": [ + { + "name": "PoolCollateralConfigurationUpdated", + "args": [ + "1", + "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73", + { + "collateralLimitD18": "5400000000000000000000", + "issuanceRatioD18": "0" + } + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_setPoolCollateralConfiguration_weth", + "gasUsed": 308553, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "9fc154ec3f5c593a9b890ccbeaaf85ef", + "version": 7 + }, + "setting.usd_token_name": { + "artifacts": { + "settings": { + "usd_token_name": "0x555344546f6b656e000000000000000000000000000000000000000000000000" + } + }, + "hash": "58924184b47a952bef2b6094b1f9856c", + "version": 7 + }, + "invoke.CoreProxy_initOrUpgradeToken_USDToken": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_initOrUpgradeToken_USDToken": { + "hash": "0xd3f4351e2603b462c973c39c272a0a41777537dd8c97e5dfcdea832404114afc", + "events": {}, + "deployedOn": "invoke.CoreProxy_initOrUpgradeToken_USDToken", + "gasUsed": 308402, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "c259c5630137a392492cef4e107899cf", + "version": 7 + }, + "provision.RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_ARB_lp": { + "artifacts": { + "imports": { + "RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_ARB_lp": { + "url": "ipfs://QmRGxEwdo8xdk7w2hjmAFePtP35fH4JxWUe3r46Tjjih73", + "tags": [ + "latest" + ], + "target": "synthetix-rewards-distributor:0.0.2@main", + "preset": "main", + "settings": { + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + }, + "contracts": { + "RewardsDistributor": { + "address": "0x8Db7E7E3f00c2Fd011Bb715935d33BfA0570cDB6", + "abi": [ + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_)", + "function SYSTEM_PRECISION() view returns (uint256)", + "function collateralType() view returns (address)", + "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", + "function name() view returns (string)", + "function onPositionUpdated(uint128, uint128, address, uint256)", + "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", + "function payoutToken() view returns (address)", + "function poolId() view returns (uint128)", + "function precision() view returns (uint256)", + "function rewardManager() view returns (address)", + "function rewardsAmount() view returns (uint256)", + "function setShouldFailPayout(bool shouldFailPayout_)", + "function shouldFailPayout() view returns (bool)", + "function supportsInterface(bytes4 interfaceId) view returns (bool)", + "function token() view returns (address)", + "error FailedTransfer(address from, address to, uint256 value)", + "error InvalidParameter(string parameter, string reason)", + "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", + "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", + "error Unauthorized(address addr)" + ], + "constructorArgs": [ + "0x76490713314fCEC173f44e99346F54c6e92a8E42", + "1", + "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + "18", + "Spartan Council Pool ARB Rewards for ARB LP" + ], + "linkedLibraries": {}, + "deployTxnHash": "0x1a4e42a87c7bc7012599196aad0dec4aa79f527001ccc8260ab89c83476cff77", + "sourceName": "src/RewardsDistributor.sol", + "contractName": "RewardsDistributor", + "deployedOn": "contract.RewardsDistributor", + "gasUsed": 1057483, + "gasCost": "274790000" + } + }, + "extras": { + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + } + } + } + }, + "hash": null, + "version": 7 + }, + "provision.RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDC_lp": { + "artifacts": { + "imports": { + "RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDC_lp": { + "url": "ipfs://QmWDdFALv5ix7o1aRwJsARDyBJhJCEsRKnHzANreht95J4", + "tags": [ + "latest" + ], + "target": "synthetix-rewards-distributor:0.0.2@main", + "preset": "main", + "settings": { + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + }, + "contracts": { + "RewardsDistributor": { + "address": "0x26c9B83fA781e93Ec4cA5fBAC07AC82135872512", + "abi": [ + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_)", + "function SYSTEM_PRECISION() view returns (uint256)", + "function collateralType() view returns (address)", + "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", + "function name() view returns (string)", + "function onPositionUpdated(uint128, uint128, address, uint256)", + "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", + "function payoutToken() view returns (address)", + "function poolId() view returns (uint128)", + "function precision() view returns (uint256)", + "function rewardManager() view returns (address)", + "function rewardsAmount() view returns (uint256)", + "function setShouldFailPayout(bool shouldFailPayout_)", + "function shouldFailPayout() view returns (bool)", + "function supportsInterface(bytes4 interfaceId) view returns (bool)", + "function token() view returns (address)", + "error FailedTransfer(address from, address to, uint256 value)", + "error InvalidParameter(string parameter, string reason)", + "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", + "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", + "error Unauthorized(address addr)" + ], + "constructorArgs": [ + "0x76490713314fCEC173f44e99346F54c6e92a8E42", + "1", + "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", + "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + "18", + "Spartan Council Pool ARB Rewards for USDC LP" + ], + "linkedLibraries": {}, + "deployTxnHash": "0xd57c1fa944210b804bbcaea121b98dbc531ffc162b4e8e9c404a3429a7055d57", + "sourceName": "src/RewardsDistributor.sol", + "contractName": "RewardsDistributor", + "deployedOn": "contract.RewardsDistributor", + "gasUsed": 1059220, + "gasCost": "271430000" + } + }, + "extras": { + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + } + } + } + }, + "hash": null, + "version": 7 + }, + "provision.RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_WETH_lp": { + "artifacts": { + "imports": { + "RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_WETH_lp": { + "url": "ipfs://QmbP2LPfPRTHNitrTPVyUaKCJidTwoBRTLkHVdoZgww4Fq", + "tags": [ + "latest" + ], + "target": "synthetix-rewards-distributor:0.0.2@main", + "preset": "main", + "settings": { + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + }, + "contracts": { + "RewardsDistributor": { + "address": "0x3974935755a50295b727Ab40ae144BE29391d818", + "abi": [ + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_)", + "function SYSTEM_PRECISION() view returns (uint256)", + "function collateralType() view returns (address)", + "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", + "function name() view returns (string)", + "function onPositionUpdated(uint128, uint128, address, uint256)", + "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", + "function payoutToken() view returns (address)", + "function poolId() view returns (uint128)", + "function precision() view returns (uint256)", + "function rewardManager() view returns (address)", + "function rewardsAmount() view returns (uint256)", + "function setShouldFailPayout(bool shouldFailPayout_)", + "function shouldFailPayout() view returns (bool)", + "function supportsInterface(bytes4 interfaceId) view returns (bool)", + "function token() view returns (address)", + "error FailedTransfer(address from, address to, uint256 value)", + "error InvalidParameter(string parameter, string reason)", + "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", + "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", + "error Unauthorized(address addr)" + ], + "constructorArgs": [ + "0x76490713314fCEC173f44e99346F54c6e92a8E42", + "1", + "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73", + "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + "18", + "Spartan Council Pool ARB Rewards for WETH LP" + ], + "linkedLibraries": {}, + "deployTxnHash": "0xce1697c53aed6179c2b3a94c3e6673fcc0f2a10a17ee546e09bfeec8dee0dad4", + "sourceName": "src/RewardsDistributor.sol", + "contractName": "RewardsDistributor", + "deployedOn": "contract.RewardsDistributor", + "gasUsed": 1059074, + "gasCost": "271780000" + } + }, + "extras": { + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + } + } + } + }, + "hash": null, + "version": 7 + }, + "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_ARB_lp": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_ARB_lp": { + "hash": "0x3205abc95a14f209d72923f295ea77cbf166f93a83cea2c8318fcc1273197cd0", + "events": { + "RewardsDistributorRegistered": [ + { + "name": "RewardsDistributorRegistered", + "args": [ + "1", + "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + "0x8Db7E7E3f00c2Fd011Bb715935d33BfA0570cDB6" + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_ARB_lp", + "gasUsed": 135206, + "gasCost": "267410000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "69e1df0ea487ea2a77c5966c53a647be", + "version": 7 + }, + "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDC_lp": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDC_lp": { + "hash": "0x4a6b2f45b20d6f0a3aaf258503daebd75f71b4e653650ad8229879e8949246b5", + "events": { + "RewardsDistributorRegistered": [ + { + "name": "RewardsDistributorRegistered", + "args": [ + "1", + "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", + "0x26c9B83fA781e93Ec4cA5fBAC07AC82135872512" + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDC_lp", + "gasUsed": 135235, + "gasCost": "266190000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "89726d93b4c50604c1f0ac8baada0ad0", + "version": 7 + }, + "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_WETH_lp": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_WETH_lp": { + "hash": "0x4fa180ac8d1dc6d9c1eea583b1ffe345edf87717462558c8ceeb03a3f899f466", + "events": { + "RewardsDistributorRegistered": [ + { + "name": "RewardsDistributorRegistered", + "args": [ + "1", + "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73", + "0x3974935755a50295b727Ab40ae144BE29391d818" + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_WETH_lp", + "gasUsed": 135275, + "gasCost": "264490000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "32c7217cc1933525714a4c0bdc2ea804", + "version": 7 + }, + "setting.USDe_issuance_ratio": { + "artifacts": { + "settings": { + "USDe_issuance_ratio": "2000000000000000000" + } + }, + "hash": "09553939422a81e0204384bf690274c4", + "version": 7 + }, + "setting.USDe_liquidation_ratio": { + "artifacts": { + "settings": { + "USDe_liquidation_ratio": "1050000000000000000" + } + }, + "hash": "b8ef3cf0b2ae29972f2b898f8e1fa78f", + "version": 7 + }, + "setting.USDe_liquidation_reward": { + "artifacts": { + "settings": { + "USDe_liquidation_reward": "1000000000000000000" + } + }, + "hash": "845fb85d1e0ccaf6b0afd054626bbe97", + "version": 7 + }, + "setting.USDe_max_collateral_limit": { + "artifacts": { + "settings": { + "USDe_max_collateral_limit": "50000000000000000000000000" + } + }, + "hash": "3131f53d918c10094a2a15ecbb56c7d6", + "version": 7 + }, + "setting.USDe_min_delegation": { + "artifacts": { + "settings": { + "USDe_min_delegation": "100000000000000000000" + } + }, + "hash": "ad27ad0c2fad068c59a31bad017dda13", + "version": 7 + }, + "setting.pyth_feed_id_USDe": { + "artifacts": { + "settings": { + "pyth_feed_id_USDe": "0x6ec879b1e9963de5ee97e9c8710b742d6228252a5e2ca12d4ae81d7fe5ee8c5d" + } + }, + "hash": "bf5161159e0ac0e23d1cb94a563ce46f", + "version": 7 + }, + "setting.pyth_feed_id_sUSDe": { + "artifacts": { + "settings": { + "pyth_feed_id_sUSDe": "0xca3ba9a619a4b3755c10ac7d5e760275aa95e9823d38a84fedd416856cdba37c" + } + }, + "hash": "eaac43918bbda9e3fdbe83424054ed05", + "version": 7 + }, + "setting.sUSDe_issuance_ratio": { + "artifacts": { + "settings": { + "sUSDe_issuance_ratio": "2000000000000000000" + } + }, + "hash": "09553939422a81e0204384bf690274c4", + "version": 7 + }, + "setting.sUSDe_liquidation_ratio": { + "artifacts": { + "settings": { + "sUSDe_liquidation_ratio": "1050000000000000000" + } + }, + "hash": "b8ef3cf0b2ae29972f2b898f8e1fa78f", + "version": 7 + }, + "setting.sUSDe_liquidation_reward": { + "artifacts": { + "settings": { + "sUSDe_liquidation_reward": "1000000000000000000" + } + }, + "hash": "845fb85d1e0ccaf6b0afd054626bbe97", + "version": 7 + }, + "setting.sUSDe_max_collateral_limit": { + "artifacts": { + "settings": { + "sUSDe_max_collateral_limit": "0" + } + }, + "hash": "4dcc24a97eaa6583aab6a5b0cb07d27e", + "version": 7 + }, + "setting.sUSDe_min_delegation": { + "artifacts": { + "settings": { + "sUSDe_min_delegation": "100000000000000000000" + } + }, + "hash": "ad27ad0c2fad068c59a31bad017dda13", + "version": 7 + }, + "provision.USDe_mock_collateral": { + "artifacts": { + "imports": { + "USDe_mock_collateral": { + "url": "ipfs://Qmbvq6Ydf5yVgzetPpycfLkAin2nC3bBwYnLr8Ngt17Qmy", + "tags": [ + "latest" + ], + "target": "synthetix-mock-tokens:1.8@USDe", + "preset": "USDe", + "settings": { + "decimals": "18", + "initialSupply": "0", + "name": "Token", + "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", + "salt": "", + "symbol": "TKN" + }, + "contracts": { + "MintableToken": { + "address": "0xCf45784084Ca3fd91C215a87265014c3DC67182D", + "abi": [ + "constructor(address owner, string name, string symbol, uint8 tokenDecimals, uint256 initialSupply) payable", + "function allowance(address owner, address spender) view returns (uint256)", + "function approve(address spender, uint256 amount) returns (bool)", + "function balanceOf(address account) view returns (uint256)", + "function decimals() view returns (uint8)", + "function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)", + "function increaseAllowance(address spender, uint256 addedValue) returns (bool)", + "function mint(uint256 amount, address to)", + "function name() view returns (string)", + "function owner() view returns (address)", + "function renounceOwnership()", + "function symbol() view returns (string)", + "function totalSupply() view returns (uint256)", + "function transfer(address to, uint256 amount) returns (bool)", + "function transferFrom(address from, address to, uint256 amount) returns (bool)", + "function transferOwnership(address newOwner)", + "event Approval(address indexed owner, address indexed spender, uint256 value)", + "event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)", + "event Transfer(address indexed from, address indexed to, uint256 value)" + ], + "constructorArgs": [ + "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", + "Fake USDe Coin", + "fUSDe", + "18", + "0" + ], + "linkedLibraries": {}, + "deployTxnHash": "0xe37b082c3542a31df7b84ffce416d9ac7a156673d26ddcfae1492b3ec3714e0d", + "sourceName": "src/MintableToken.sol", + "contractName": "MintableToken", + "deployedOn": "contract.MintableToken", + "highlight": true, + "gasUsed": 774845, + "gasCost": "100000000" + } + }, + "extras": { + "decimals": "18", + "initialSupply": "0", + "name": "Token", + "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", + "salt": "", + "symbol": "TKN" + } + } + } + }, + "hash": null, + "version": 7 + }, + "provision.sUSDe_mock_collateral": { + "artifacts": { + "imports": { + "sUSDe_mock_collateral": { + "url": "ipfs://QmfLr5gbNJ1bB8YTLNY6xrhjdvnKACTxU6wxkU7Gtcn6QU", + "tags": [ + "latest" + ], + "target": "synthetix-mock-tokens:1.8@sUSDe", + "preset": "sUSDe", + "settings": { + "decimals": "18", + "initialSupply": "0", + "name": "Token", + "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", + "salt": "", + "symbol": "TKN" + }, + "contracts": { + "MintableToken": { + "address": "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", + "abi": [ + "constructor(address owner, string name, string symbol, uint8 tokenDecimals, uint256 initialSupply) payable", + "function allowance(address owner, address spender) view returns (uint256)", + "function approve(address spender, uint256 amount) returns (bool)", + "function balanceOf(address account) view returns (uint256)", + "function decimals() view returns (uint8)", + "function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)", + "function increaseAllowance(address spender, uint256 addedValue) returns (bool)", + "function mint(uint256 amount, address to)", + "function name() view returns (string)", + "function owner() view returns (address)", + "function renounceOwnership()", + "function symbol() view returns (string)", + "function totalSupply() view returns (uint256)", + "function transfer(address to, uint256 amount) returns (bool)", + "function transferFrom(address from, address to, uint256 amount) returns (bool)", + "function transferOwnership(address newOwner)", + "event Approval(address indexed owner, address indexed spender, uint256 value)", + "event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)", + "event Transfer(address indexed from, address indexed to, uint256 value)" + ], + "constructorArgs": [ + "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", + "Fake sUSDe Coin", + "fsUSDe", + "18", + "0" + ], + "linkedLibraries": {}, + "deployTxnHash": "0xb780b9e342797d57590c518d7805497e56fff4886a4ce7f85a224aeb1b6337c1", + "sourceName": "src/MintableToken.sol", + "contractName": "MintableToken", + "deployedOn": "contract.MintableToken", + "highlight": true, + "gasUsed": 774869, + "gasCost": "100000000" + } + }, + "extras": { + "decimals": "18", + "initialSupply": "0", + "name": "Token", + "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", + "salt": "", + "symbol": "TKN" + } + } + } + }, + "hash": null, + "version": 7 + }, + "invoke.CoreProxy_setDeniers_withdraw": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_setDeniers_withdraw": { + "hash": "0x07a9f7e615fa78d824afb225ce6b9f8153fcea47ea92f8de5204a306db88ab0b", + "events": { + "FeatureFlagDeniersReset": [ + { + "name": "FeatureFlagDeniersReset", + "args": [ + "0x7769746864726177000000000000000000000000000000000000000000000000", + [ + "0x28Ed18Bd77A061E0A886a2a8FFb91da95FF03E56", + "0xd9b891AB93C210eafa46c61fAeb53836F99aa35B", + "0x0B67bab43157e53D21965Af0d83f83BeD9553E0a", + "0x8909F73188C4fE68B283fCB1E724b2466e0BdfD0", + "0xe1Efa5C91cA533E4a51884d805879249E3FCB2BC", + "0x6985b94Db148eDd4df6BD1Ba3F4640da79B44947", + "0x599e835cbFC903eF09f3Dd5E08D1cF63c32AF8d8", + "0xa2fa6Ef1Fcf740b632a04B3FC56B5d3118Bbd211", + "0x347c3190bD015FBD0e47fb90AA4917138A8A32FE", + "0x2d8cF727d37e7277D5eeDbAb853a3e8320f767Cd", + "0x1dd532CF7603a60C3ec91360f273DA3Db38545aB", + "0x562948111d50BF039A39Eea48D127f2Ae51ddF02", + "0xEde8a407913A874Dd7e3d5B731AFcA135D30375E" + ] + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_setDeniers_withdraw", + "gasUsed": 83434, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "ddb76265a2b934b4b71bdec7f5e4185f", + "version": 7 + }, + "invoke.OracleManagerProxy_registerNode_pyth_USDe": { + "artifacts": { + "contracts": {}, + "txns": { + "OracleManagerProxy_registerNode_pyth_USDe": { + "hash": "0xd06ef1720c329c932510c360f1f65d3aba39fc2f1f3585ab38525e64eb20691a", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0x445de7743b17bf37342f033e8b081ba282a5359573ec172ec60a5a83a4c6fb5e", + 5, + "0x0000000000000000000000004374e5a8b9c22271e9eb878a2aa31de97df15daf6ec879b1e9963de5ee97e9c8710b742d6228252a5e2ca12d4ae81d7fe5ee8c5d0000000000000000000000000000000000000000000000000000000000000000", + [] + ] + } + ] + }, + "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_USDe", + "gasUsed": 146116, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "USDe_pyth_oracle_id": "0x445de7743b17bf37342f033e8b081ba282a5359573ec172ec60a5a83a4c6fb5e" + } + }, + "hash": "1e7edd88f93e37605b72ac18b1482e8e", + "version": 7 + }, + "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_USDe": { + "artifacts": { + "contracts": {}, + "txns": { + "OracleManagerProxy_registerNode_pyth_offchain_lookup_USDe": { + "hash": "0xf00476cd6d9a61a35599ab9d6d2fdd3da965688f2b2b6b7bb120b19ab47c28e0", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0x8fb90de026fe387a1297a399781c41e98b4da6078ce0a583033384845e85cefd", + 9, + "0x0000000000000000000000000ea49b2e23387cd99cecebda52041c604e40992e6ec879b1e9963de5ee97e9c8710b742d6228252a5e2ca12d4ae81d7fe5ee8c5d0000000000000000000000000000000000000000000000000000000000000e10", + [] + ] + } + ] + }, + "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_USDe", + "gasUsed": 154761, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "USDe_lookup_oracle_id": "0x8fb90de026fe387a1297a399781c41e98b4da6078ce0a583033384845e85cefd" + } + }, + "hash": "f6e310ea15296c13124c4995edfe6755", + "version": 7 + }, + "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_sUSDe": { + "artifacts": { + "contracts": {}, + "txns": { + "OracleManagerProxy_registerNode_pyth_offchain_lookup_sUSDe": { + "hash": "0x08d51515f9141d2ab716e00b590521a37a0710db2f3f9088742648db707837b6", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0x5d0cf3146323b6271c25781484e7965223eeef5f768e428565728b5b42696b8f", + 9, + "0x0000000000000000000000000ea49b2e23387cd99cecebda52041c604e40992eca3ba9a619a4b3755c10ac7d5e760275aa95e9823d38a84fedd416856cdba37c0000000000000000000000000000000000000000000000000000000000000e10", + [] + ] + } + ] + }, + "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_sUSDe", + "gasUsed": 154761, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "sUSDe_lookup_oracle_id": "0x5d0cf3146323b6271c25781484e7965223eeef5f768e428565728b5b42696b8f" + } + }, + "hash": "4daf099d208d14f79149d2ae65ecb193", + "version": 7 + }, + "invoke.OracleManagerProxy_registerNode_pyth_sUSDe": { + "artifacts": { + "contracts": {}, + "txns": { + "OracleManagerProxy_registerNode_pyth_sUSDe": { + "hash": "0x4b4f3c37bde9b4a9796e60c0c71461d966d5306549711a656d6b50ab89d4ec05", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0x19430f7dc2f04cd25f8b23954723a4c41da7292cc0a7010a7433f863d63b98b2", + 5, + "0x0000000000000000000000004374e5a8b9c22271e9eb878a2aa31de97df15dafca3ba9a619a4b3755c10ac7d5e760275aa95e9823d38a84fedd416856cdba37c0000000000000000000000000000000000000000000000000000000000000000", + [] + ] + } + ] + }, + "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_sUSDe", + "gasUsed": 146116, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "sUSDe_pyth_oracle_id": "0x19430f7dc2f04cd25f8b23954723a4c41da7292cc0a7010a7433f863d63b98b2" + } + }, + "hash": "ca72ed01689fdbd4a850634f1e9a77ac", + "version": 7 + }, + "setting.USDe_address": { + "artifacts": { + "settings": { + "USDe_address": "0xCf45784084Ca3fd91C215a87265014c3DC67182D" + } + }, + "hash": "83d9608ec04dafae2f4588b7c556f90b", + "version": 7 + }, + "setting.sUSDe_address": { + "artifacts": { + "settings": { + "sUSDe_address": "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699" + } + }, + "hash": "b6627ff115b716bc97f172c45cdb4e11", + "version": 7 + }, + "invoke.CoreProxy_addToFeatureFlagAllowlist_createSynth_deployer": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_addToFeatureFlagAllowlist_createSynth_deployer": { + "hash": "0x694ea3b87f449a7ae0c2288d5315d65c6963b559b39697aecd269f42942df7ab", + "events": {}, + "deployedOn": "invoke.CoreProxy_addToFeatureFlagAllowlist_createSynth_deployer", + "gasUsed": 35548, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "fdee690757ba8cf449fa809659ce0728", + "version": 7 + }, + "invoke.OracleManagerProxy_registerNode_staleness_USDe": { + "artifacts": { + "contracts": {}, + "txns": { + "OracleManagerProxy_registerNode_staleness_USDe": { + "hash": "0x0e666cd6adff1ac018a2e40fbb880c787760fe683a87b2cea83e90b224532c9f", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0x6cf98623fab05c98f4fcdba250ba350e6a16453be00148e17fbe4f164315111e", + 7, + "0x0000000000000000000000000000000000000000000000000000000000000e10", + [ + "0x445de7743b17bf37342f033e8b081ba282a5359573ec172ec60a5a83a4c6fb5e", + "0x8fb90de026fe387a1297a399781c41e98b4da6078ce0a583033384845e85cefd" + ] + ] + } + ] + }, + "deployedOn": "invoke.OracleManagerProxy_registerNode_staleness_USDe", + "gasUsed": 220629, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "USDe_oracle_id": "0x6cf98623fab05c98f4fcdba250ba350e6a16453be00148e17fbe4f164315111e" + } + }, + "hash": "5b573306e65ef1fc7c58effc6fe19640", + "version": 7 + }, + "invoke.OracleManagerProxy_registerNode_staleness_sUSDe": { + "artifacts": { + "contracts": {}, + "txns": { + "OracleManagerProxy_registerNode_staleness_sUSDe": { + "hash": "0xf36495f059cf8d63874b5514296324be7b9ac43694a5fe4fdc4cd86440a90685", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0x075491f920177d441f4f31049f525749a1467428d01ac26337b0e1b9af8cfe70", + 7, + "0x0000000000000000000000000000000000000000000000000000000000000e10", + [ + "0x19430f7dc2f04cd25f8b23954723a4c41da7292cc0a7010a7433f863d63b98b2", + "0x5d0cf3146323b6271c25781484e7965223eeef5f768e428565728b5b42696b8f" + ] + ] + } + ] + }, + "deployedOn": "invoke.OracleManagerProxy_registerNode_staleness_sUSDe", + "gasUsed": 220629, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "sUSDe_oracle_id": "0x075491f920177d441f4f31049f525749a1467428d01ac26337b0e1b9af8cfe70" + } + }, + "hash": "02710fc20aae0af1d29c7ff8503bbbde", + "version": 7 + }, + "invoke.CoreProxy_configureCollateral_USDe": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_configureCollateral_USDe": { + "hash": "0xf6f34b5632a645ac26565497277fcbc15714a83dbe6dddd634e50967eeb47e8d", + "events": { + "CollateralConfigured": [ + { + "name": "CollateralConfigured", + "args": [ + "0xCf45784084Ca3fd91C215a87265014c3DC67182D", + { + "depositingEnabled": true, + "issuanceRatioD18": "2000000000000000000", + "liquidationRatioD18": "1050000000000000000", + "liquidationRewardD18": "1000000000000000000", + "oracleNodeId": "0x6cf98623fab05c98f4fcdba250ba350e6a16453be00148e17fbe4f164315111e", + "tokenAddress": "0xCf45784084Ca3fd91C215a87265014c3DC67182D", + "minDelegationD18": "100000000000000000000" + } + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_configureCollateral_USDe", + "gasUsed": 243209, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "4e15cc47dba419529af8b2db7401c036", + "version": 7 + }, + "invoke.CoreProxy_configureCollateral_sUSDe": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_configureCollateral_sUSDe": { + "hash": "0xa56a6aa452f88953ea53a06a0892a38660395ae09b4011c4de087e6fa27b9cf8", + "events": { + "CollateralConfigured": [ + { + "name": "CollateralConfigured", + "args": [ + "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", + { + "depositingEnabled": false, + "issuanceRatioD18": "2000000000000000000", + "liquidationRatioD18": "1050000000000000000", + "liquidationRewardD18": "1000000000000000000", + "oracleNodeId": "0x075491f920177d441f4f31049f525749a1467428d01ac26337b0e1b9af8cfe70", + "tokenAddress": "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", + "minDelegationD18": "100000000000000000000" + } + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_configureCollateral_sUSDe", + "gasUsed": 54244, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "5e8ca573f597278a1d8bd63727113000", + "version": 7 + }, + "invoke.CoreProxy_setPoolCollateralConfiguration_USDe": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_setPoolCollateralConfiguration_USDe": { + "hash": "0x92932e6e36325238769c44821f5bbf3be44e2ed5a188ef0345a7d6e3640e1223", + "events": { + "PoolCollateralConfigurationUpdated": [ + { + "name": "PoolCollateralConfigurationUpdated", + "args": [ + "1", + "0xCf45784084Ca3fd91C215a87265014c3DC67182D", + { + "collateralLimitD18": "50000000000000000000000000", + "issuanceRatioD18": "0" + } + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_setPoolCollateralConfiguration_USDe", + "gasUsed": 62454, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "ba2045a83c416c3a08dcdb7bcda06b15", + "version": 7 + }, + "invoke.CoreProxy_setPoolCollateralConfiguration_sUSDe": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_setPoolCollateralConfiguration_sUSDe": { + "hash": "0x82d8a4ff8d89b24d710e5c740a61db9bbf2f0ef55057ea68f2daaee3f835612e", + "events": { + "PoolCollateralConfigurationUpdated": [ + { + "name": "PoolCollateralConfigurationUpdated", + "args": [ + "1", + "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", + { + "collateralLimitD18": "0", + "issuanceRatioD18": "0" + } + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_setPoolCollateralConfiguration_sUSDe", + "gasUsed": 40458, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "106967287ecab7bec6647ad638882e82", + "version": 7 + }, + "provision.RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDe_lp": { + "artifacts": { + "imports": { + "RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDe_lp": { + "url": "ipfs://QmabSsmSWMwaZrYRimxcKwpZswYPRTksZoKkjAcCFfM1CG", + "tags": [ + "latest" + ], + "target": "synthetix-rewards-distributor:0.0.2@ARB_rewards_for_USDe_lp", + "preset": "ARB_rewards_for_USDe_lp", + "settings": { + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + }, + "contracts": { + "RewardsDistributor": { + "address": "0x4aFF595044Ac6844151481B031D9A2E291aE37fD", + "abi": [ + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_)", + "function SYSTEM_PRECISION() view returns (uint256)", + "function collateralType() view returns (address)", + "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", + "function name() view returns (string)", + "function onPositionUpdated(uint128, uint128, address, uint256)", + "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", + "function payoutToken() view returns (address)", + "function poolId() view returns (uint128)", + "function precision() view returns (uint256)", + "function rewardManager() view returns (address)", + "function rewardsAmount() view returns (uint256)", + "function setShouldFailPayout(bool shouldFailPayout_)", + "function shouldFailPayout() view returns (bool)", + "function supportsInterface(bytes4 interfaceId) view returns (bool)", + "function token() view returns (address)", + "error FailedTransfer(address from, address to, uint256 value)", + "error InvalidParameter(string parameter, string reason)", + "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", + "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", + "error Unauthorized(address addr)" + ], + "constructorArgs": [ + "0x76490713314fCEC173f44e99346F54c6e92a8E42", + "1", + "0xCf45784084Ca3fd91C215a87265014c3DC67182D", + "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + "18", + "Spartan Council Pool ARB Rewards for USDe LP" + ], + "linkedLibraries": {}, + "deployTxnHash": "0xc4b89cdb535911473db5892bd23f511f2b25aa4b823f6193b7667f719b40da6d", + "sourceName": "src/RewardsDistributor.sol", + "contractName": "RewardsDistributor", + "deployedOn": "contract.RewardsDistributor", + "gasUsed": 968352, + "gasCost": "100000000" + } + }, + "extras": { + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + } + } + } + }, + "hash": null, + "version": 7 + }, + "provision.RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_sUSDe_lp": { + "artifacts": { + "imports": { + "RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_sUSDe_lp": { + "url": "ipfs://QmQUtayMsUa3yBLj45fNXXZvpBH2hM3zD9syy7Pz2Tq3re", + "tags": [ + "latest" + ], + "target": "synthetix-rewards-distributor:0.0.2@ARB_rewards_for_sUSDe_lp", + "preset": "ARB_rewards_for_sUSDe_lp", + "settings": { + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + }, + "contracts": { + "RewardsDistributor": { + "address": "0xc555AfdCa6FbeF64fbE9feD62E27Bd98F8a686D3", + "abi": [ + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_)", + "function SYSTEM_PRECISION() view returns (uint256)", + "function collateralType() view returns (address)", + "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", + "function name() view returns (string)", + "function onPositionUpdated(uint128, uint128, address, uint256)", + "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", + "function payoutToken() view returns (address)", + "function poolId() view returns (uint128)", + "function precision() view returns (uint256)", + "function rewardManager() view returns (address)", + "function rewardsAmount() view returns (uint256)", + "function setShouldFailPayout(bool shouldFailPayout_)", + "function shouldFailPayout() view returns (bool)", + "function supportsInterface(bytes4 interfaceId) view returns (bool)", + "function token() view returns (address)", + "error FailedTransfer(address from, address to, uint256 value)", + "error InvalidParameter(string parameter, string reason)", + "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", + "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", + "error Unauthorized(address addr)" + ], + "constructorArgs": [ + "0x76490713314fCEC173f44e99346F54c6e92a8E42", + "1", + "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", + "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + "18", + "Spartan Council Pool ARB Rewards for sUSDe LP" + ], + "linkedLibraries": {}, + "deployTxnHash": "0x40aabd49157f57f993cc033b79f15a62873b5b41998930e45537aaac4fed6735", + "sourceName": "src/RewardsDistributor.sol", + "contractName": "RewardsDistributor", + "deployedOn": "contract.RewardsDistributor", + "gasUsed": 968364, + "gasCost": "100000000" + } + }, + "extras": { + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + } + } + } + }, + "hash": null, + "version": 7 + }, + "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDe_lp": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDe_lp": { + "hash": "0x175e9300e6491d3a1a8553af06a67882986679c03fef396503e4018274404fbf", + "events": { + "RewardsDistributorRegistered": [ + { + "name": "RewardsDistributorRegistered", + "args": [ + "1", + "0xCf45784084Ca3fd91C215a87265014c3DC67182D", + "0x4aFF595044Ac6844151481B031D9A2E291aE37fD" + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDe_lp", + "gasUsed": 129016, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "5805e1b608d58762882a0f6c3a9b5f98", + "version": 7 + }, + "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_sUSDe_lp": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_sUSDe_lp": { + "hash": "0x04999b84e245935fea854d4df7015ac019bc45b98fbbe111999dbe9fbca38242", + "events": { + "RewardsDistributorRegistered": [ + { + "name": "RewardsDistributorRegistered", + "args": [ + "1", + "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", + "0xc555AfdCa6FbeF64fbE9feD62E27Bd98F8a686D3" + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_sUSDe_lp", + "gasUsed": 129016, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "ff0613eade6607857ca8329e74207792", + "version": 7 + }, + "setting.big_cap_strict_staleness_tolerance": { + "artifacts": { + "settings": { + "big_cap_strict_staleness_tolerance": "60" + } + }, + "hash": "c85e06d9961059219500923347f33fea", + "version": 7 + }, + "setting.commitment_price_delay": { + "artifacts": { + "settings": { + "commitment_price_delay": "2" + } + }, + "hash": "dc88d99e217842b1532ccb97f443b6c1", + "version": 7 + }, + "var.perpsEthSettings": { + "artifacts": { + "settings": { + "perpsEthMarketId": "100", + "pythEthFeedId": "0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace", + "perpsEthSkewScale": "350000000000000000000000", + "perpsEthMaxFundingVelocity": "9000000000000000000", + "perpsEthMakerFeeRatio": "1000000000000", + "perpsEthTakerFeeRatio": "500000000000000", + "perpsEthMaxMarketSize": "10000000000000000000000", + "perpsEthMaxMarketValue": "15000000000000000000000000", + "perpsEthInitialMarginRatio": "1160000000000000000", + "perpsEthMinimumInitialMarginRatio": "20000000000000000", + "perpsEthMaintenanceMarginScalar": "280000000000000000", + "perpsEthFlagRewardRatioD18": "300000000000000", + "perpsEthMinimumPositionMargin": "50000000000000000000", + "perpsEthMaxLiquidationLimitAccumulationMultiplier": "1500000000000000000", + "perpsEthMaxSecondsInLiquidationWindow": "30", + "perpsEthLockedOiRatio": "250000000000000000", + "perpsEthMaxLiquidationPd": "500000000000000", + "perpsEthEndorsedLiquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306" + } + }, + "hash": "ce6b0e75fec365c55296b0fd5a3a962a", + "version": 7 + }, + "invoke.PerpsMarketProxy_addToFeatureFlagAllowlist_createMarket_deployer": { + "artifacts": { + "contracts": {}, + "txns": { + "PerpsMarketProxy_addToFeatureFlagAllowlist_createMarket_deployer": { + "hash": "0xdf8420d9746ca5b83de8087318ee324d1aa830c13e4a8556cb9df30961bccd53", + "blockNumber": "68535465", + "timestamp": "1722632300", + "events": {}, + "deployedOn": "invoke.PerpsMarketProxy_addToFeatureFlagAllowlist_createMarket_deployer", + "gasUsed": 35604, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "271ff6331a577519b86191295a300ddd", + "version": 7 + }, + "invoke.PerpsMarketProxy_setFeatureFlagAllowAll_perpsSystem": { + "artifacts": { + "contracts": {}, + "txns": { + "PerpsMarketProxy_setFeatureFlagAllowAll_perpsSystem": { + "hash": "0x4f69ec0201d740fa852f52a9017b553427984df2e1b092fd3bbc5442025b6a2e", + "blockNumber": "68535487", + "timestamp": "1722632308", + "events": { + "FeatureFlagAllowAllSet": [ + { + "name": "FeatureFlagAllowAllSet", + "args": [ + "0x706572707353797374656d000000000000000000000000000000000000000000", + true + ] + } + ] + }, + "deployedOn": "invoke.PerpsMarketProxy_setFeatureFlagAllowAll_perpsSystem", + "gasUsed": 57217, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "a2dd827c743d7f30235e3b75da9f9eea", + "version": 7 + }, + "invoke.createEthPerpsMarket": { + "artifacts": { + "contracts": {}, + "txns": { + "createEthPerpsMarket": { + "hash": "0x9818565f7690d2d2ff5a2bffec6bdfaecdf8fdfc85490da7d8d146ea65964e23", + "blockNumber": "68535744", + "timestamp": "1722632395", + "events": { + "MarketCreated": [ + { + "name": "MarketCreated", + "args": [ + "100", + "Ethereum", + "ETH" + ] + } + ] + }, + "deployedOn": "invoke.createEthPerpsMarket", + "gasUsed": 165915, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "a36de7490f6782bfb4df43f2af83f7f0", + "version": 7 + }, + "invoke.addPerpsEthSettlementStrategy": { + "artifacts": { + "contracts": {}, + "txns": { + "addPerpsEthSettlementStrategy": { + "hash": "0xf3bd05ae5f379510f6e19af98390f1f36f98e42def744a524bbb012f5d272003", + "blockNumber": "68535910", + "timestamp": "1722632440", + "events": { + "SettlementStrategyAdded": [ + { + "name": "SettlementStrategyAdded", + "args": [ + "100", + { + "strategyType": 0, + "settlementDelay": "1", + "settlementWindowDuration": "1", + "priceVerificationContract": "0x0000000000000000000000000000000000000000", + "feedId": "0x0000000000000000000000000000000000000000000000000000000000000000", + "settlementReward": "0", + "disabled": false, + "commitmentPriceDelay": "0" + }, + "0" + ] + } + ] + }, + "deployedOn": "invoke.addPerpsEthSettlementStrategy", + "gasUsed": 118418, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "eth_pyth_settlement_strategy": "0" + } + }, + "hash": "ce45bf59fc20577856283509fe38f50e", + "version": 7 + }, + "invoke.setPerpsEthFundingParameters": { + "artifacts": { + "contracts": {}, + "txns": { + "setPerpsEthFundingParameters": { + "hash": "0x089d9ad28b2417efce9bd636b96b604abd4c8923707a6a6cb08183016615501c", + "blockNumber": "68535924", + "timestamp": "1722632444", + "events": { + "FundingParametersSet": [ + { + "name": "FundingParametersSet", + "args": [ + "100", + "350000000000000000000000", + "9000000000000000000" + ] + } + ] + }, + "deployedOn": "invoke.setPerpsEthFundingParameters", + "gasUsed": 79236, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "e19415246af0fdc068f73a9425224520", + "version": 7 + }, + "invoke.setPerpsEthLiquidationParameters": { + "artifacts": { + "contracts": {}, + "txns": { + "setPerpsEthLiquidationParameters": { + "hash": "0x508225ab9d797820d22b47df247a65cd75c762f9da828e0826c3076beaa87c4b", + "blockNumber": "68535932", + "timestamp": "1722632446", + "events": { + "LiquidationParametersSet": [ + { + "name": "LiquidationParametersSet", + "args": [ + "100", + "744000000000000000", + "333000000000000000", + "20000000000000000", + "300000000000000", + "50000000000000000000" + ] + } + ] + }, + "deployedOn": "invoke.setPerpsEthLiquidationParameters", + "gasUsed": 147155, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "6bf7438d5fcab91f87619892992f1580", + "version": 7 + }, + "invoke.setPerpsEthLockedOiRatio": { + "artifacts": { + "contracts": {}, + "txns": { + "setPerpsEthLockedOiRatio": { + "hash": "0x6605167b6e26ad10574e6b6338768a2a36240fc1e23dd705b102a0d0c44fdf21", + "blockNumber": "68535938", + "timestamp": "1722632448", + "events": { + "LockedOiRatioSet": [ + { + "name": "LockedOiRatioSet", + "args": [ + "100", + "250000000000000000" + ] + } + ] + }, + "deployedOn": "invoke.setPerpsEthLockedOiRatio", + "gasUsed": 56544, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "0d33510d80f5408d1c4f2a8d69d3758a", + "version": 7 + }, + "invoke.setPerpsEthMaxLiquidationParameters": { + "artifacts": { + "contracts": {}, + "txns": { + "setPerpsEthMaxLiquidationParameters": { + "hash": "0x31e93c7e3198f791d98917d355142dc4cdba5dccca26e8f409cd9f46ef1ff1d7", + "blockNumber": "68535941", + "timestamp": "1722632450", + "events": { + "MaxLiquidationParametersSet": [ + { + "name": "MaxLiquidationParametersSet", + "args": [ + "100", + "1500000000000000000", + "30", + "500000000000000", + "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306" + ] + } + ] + }, + "deployedOn": "invoke.setPerpsEthMaxLiquidationParameters", + "gasUsed": 124736, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "c3f572046f09178ec3b2c405144c8a26", + "version": 7 + }, + "invoke.setPerpsEthMaxMarketSize": { + "artifacts": { + "contracts": {}, + "txns": { + "setPerpsEthMaxMarketSize": { + "hash": "0xbc3ccf857045cd650a7e0c0151ab78107a193cf75b3b73272a09392b612e1475", + "blockNumber": "68535946", + "timestamp": "1722632452", + "events": { + "MaxMarketSizeSet": [ + { + "name": "MaxMarketSizeSet", + "args": [ + "100", + "15000000000000000000000" + ] + } + ] + }, + "deployedOn": "invoke.setPerpsEthMaxMarketSize", + "gasUsed": 56601, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "81f5d63d13af23b0d25ed7885c61f8a2", + "version": 7 + }, + "invoke.setPerpsEthMaxMarketValue": { + "artifacts": { + "contracts": {}, + "txns": { + "setPerpsEthMaxMarketValue": { + "hash": "0xaeec48f459b15e58d5ab31c0a44732a694c0ea93bc8a23bb257427b66c25f6b6", + "blockNumber": "68535950", + "timestamp": "1722632454", + "events": { + "MaxMarketValueSet": [ + { + "name": "MaxMarketValueSet", + "args": [ + "100", + "40000000000000000000000000" + ] + } + ] + }, + "deployedOn": "invoke.setPerpsEthMaxMarketValue", + "gasUsed": 56690, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "c97cd5178d02f18b8bedbe10a8ff1685", + "version": 7 + }, + "invoke.setPerpsEthOrderFees": { + "artifacts": { + "contracts": {}, + "txns": { + "setPerpsEthOrderFees": { + "hash": "0x9942c0e3f2d1f598f9b3600d1fb3b430ee813874deda4978e1119efea29746f6", + "blockNumber": "68535955", + "timestamp": "1722632456", + "events": { + "OrderFeesSet": [ + { + "name": "OrderFeesSet", + "args": [ + "100", + "0", + "500000000000000" + ] + } + ] + }, + "deployedOn": "invoke.setPerpsEthOrderFees", + "gasUsed": 59254, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "2ed4845f0b1c32107fcc8a017b5dff77", + "version": 7 + }, + "invoke.setPerpsPriceEth": { + "artifacts": { + "contracts": {}, + "txns": { + "setPerpsPriceEth": { + "hash": "0x759e45d21095c4372ddc8e2d4abeb52f8afc6da3aba0c7f806aa71483efd63e8", + "blockNumber": "68535963", + "timestamp": "1722632458", + "events": { + "MarketPriceDataUpdated": [ + { + "name": "MarketPriceDataUpdated", + "args": [ + "100", + "0x93249440fb2535a0425e3134c597f4570fbae358ce9a039bff9957ccb1a74f37", + "0" + ] + } + ] + }, + "deployedOn": "invoke.setPerpsPriceEth", + "gasUsed": 59647, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "c98bc3b4160f8484fcbdb213972851fd", + "version": 7 + }, + "invoke.setPerpsEthSettlementStrategy": { + "artifacts": { + "contracts": {}, + "txns": { + "setPerpsEthSettlementStrategy": { + "hash": "0xd64c988373a942cbf4bf92c8bf91ce547090d580ce264e9d148f8a182827f2d3", + "blockNumber": "68535986", + "timestamp": "1722632463", + "events": { + "SettlementStrategySet": [ + { + "name": "SettlementStrategySet", + "args": [ + "100", + "0", + { + "strategyType": 0, + "settlementDelay": "2", + "settlementWindowDuration": "60", + "priceVerificationContract": "0x0eA49b2e23387cD99ceceBDa52041c604e40992E", + "feedId": "0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace", + "settlementReward": "500000000000000000000000000000000000", + "disabled": false, + "commitmentPriceDelay": "2" + } + ] } + ] + }, + "deployedOn": "invoke.setPerpsEthSettlementStrategy", + "gasUsed": 145078, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "4f946645d956f571c770b1857c0dd72c", + "version": 7 + }, + "setting.pyth_feed_id_btc": { + "artifacts": { + "settings": { + "pyth_feed_id_btc": "0xe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43" + } + }, + "hash": "4529d69d68dc04b08994308d20a27a7f", + "version": 7 + }, + "setting.pyth_feed_id_sol": { + "artifacts": { + "settings": { + "pyth_feed_id_sol": "0xef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d" + } + }, + "hash": "13dd105d581a0ca60aadc2d2e79f0978", + "version": 7 + }, + "setting.pyth_feed_id_wif": { + "artifacts": { + "settings": { + "pyth_feed_id_wif": "0x4ca4beeca86f0d164160323817a4e42b10010a724c2217c6ee41b54cd4cc61fc" + } + }, + "hash": "0ad0da3219254462a4aa4c5fd9416bf4", + "version": 7 + }, + "setting.referrer_fee": { + "artifacts": { + "settings": { + "referrer_fee": "200000000000000000" + } + }, + "hash": "f296f686e58711260897d9596d6363a5", + "version": 7 + }, + "var.btc_spot_settings": { + "artifacts": { + "settings": { + "synth_btc_max_collateral_amount": "75", + "synth_btc_skew_scale": "3500" + } + }, + "hash": "77ad8a0221841bce188ed880dc234369", + "version": 7 + }, + "var.eth_spot_settings": { + "artifacts": { + "settings": { + "synth_eth_max_market_collateral": "1000", + "synth_eth_skew_scale": "350000" + } + }, + "hash": "bb1a61545fd845af5d97e92c81a9b7ca", + "version": 7 + }, + "var.perps_btc_market_settings": { + "artifacts": { + "settings": { + "btc_perps_market_id": "200", + "btc_perps_market_skew_scale": "35000", + "btc_perps_market_max_funding_velocity": "9", + "btc_perps_maker_fee_ratio": "0", + "btc_perps_taker_fee_ratio": "0.0005", + "btc_perps_max_market_size": "1200", + "btc_perps_max_market_value": "50000000", + "btc_perps_initial_margin_ratio": "0.744", + "btc_perps_maintenance_margin_scalar": "0.333", + "btc_perps_minimum_initial_margin_ratio": "0.02", + "btc_perps_flag_reward_ratio_d18": "0.0003", + "btc_perps_max_liquidation_limit_accumulation_multiplier": "1.5", + "btc_perps_max_seconds_in_liquidation_window": "30", + "btc_perps_minimum_position_margin": "50", + "btc_perps_locked_oi_ratio": "0.25", + "btc_perps_max_liquidation_pd": "0.0005", + "btc_perps_endorsed_liquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306" + } + }, + "hash": "6021ca51b3eeca206243c0109be9bfe9", + "version": 7 + }, + "var.perps_collateral_sBTC_settings": { + "artifacts": { + "settings": { + "btc_upper_limit_discount": "75000000000000000", + "btc_lower_limit_discount": "10000000000000000", + "btc_discount_scalar": "1000000000000000000" + } + }, + "hash": "fd582c1313b6dd01d74674e87c6468e0", + "version": 7 + }, + "var.perps_collateral_sETH_settings": { + "artifacts": { + "settings": { + "eth_upper_limit_discount": "100000000000000000", + "eth_lower_limit_discount": "10000000000000000", + "eth_discount_scalar": "1000000000000000000" + } + }, + "hash": "a2902b36b18fa3b3d2ca70043c304ef5", + "version": 7 + }, + "var.perps_eth_market_settings": { + "artifacts": { + "settings": { + "eth_perps_market_id": "100", + "eth_perps_market_skew_scale": "350000", + "eth_perps_market_max_funding_velocity": "9", + "eth_perps_maker_fee_ratio": "0", + "eth_perps_taker_fee_ratio": "0.0005", + "eth_perps_max_market_size": "15000", + "eth_perps_max_market_value": "40000000", + "eth_perps_initial_margin_ratio": "0.744", + "eth_perps_minimum_initial_margin_ratio": "0.02", + "eth_perps_maintenance_margin_scalar": "0.333", + "eth_perps_flag_reward_ratio": "0.0003", + "eth_perps_minimum_position_margin": "50", + "eth_perps_locked_oi_ratio": "0.25", + "eth_perps_max_liquidation_limit_accumulation_multiplier": "1.5", + "eth_perps_max_seconds_in_liquidation_window": "30", + "eth_perps_max_liquidation_pd": "0.0005", + "eth_perps_endorsed_liquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306" + } + }, + "hash": "8522d78ad42fd7ab57dfad752c25dd26", + "version": 7 + }, + "var.perps_global_settings": { + "artifacts": { + "settings": { + "perps_liquidation_min_keeper_reward_usd": "1", + "perps_liquidation_min_keeper_profit_ratio_d18": "0.30", + "perps_liquidation_max_keeper_reward_usd": "30", + "perps_liquidation_max_keeper_scaling_ratio_d18": "0.0003", + "perps_low_util_gradient": "0", + "perps_gradient_breakpoint": "0", + "perps_high_util_gradient": "0", + "perps_collateral_liquidation_ratio": "0.0003", + "perps_max_positions_per_account": "10", + "perps_max_collaterals_per_account": "3" + } + }, + "hash": "abd1785c0a4b3a6e2ce34385a5c0cd11", + "version": 7 + }, + "var.perps_sol_market_settings": { + "artifacts": { + "settings": { + "sol_perps_market_id": "300", + "sol_perps_market_skew_scale": "1406250", + "sol_perps_market_max_funding_velocity": "9", + "sol_perps_maker_fee_ratio": "0", + "sol_perps_taker_fee_ratio": "0.0008", + "sol_perps_max_market_size": "270000", + "sol_perps_max_market_value": "40000000", + "sol_perps_initial_margin_ratio": "5.503", + "sol_perps_maintenance_margin_scalar": "0.333", + "sol_perps_minimum_initial_margin_ratio": "0.002", + "sol_perps_flag_reward_ratio_d18": "0.0003", + "sol_perps_max_liquidation_limit_accumulation_multiplier": "1.5", + "sol_perps_max_seconds_in_liquidation_window": "30", + "sol_perps_minimum_position_margin": "50", + "sol_perps_locked_oi_ratio": "0.50", + "sol_perps_max_liquidation_pd": "0.0005", + "sol_perps_endorsed_liquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306" + } + }, + "hash": "b4f1aac1fa2ee6701ae13c39a1bd2dc7", + "version": 7 + }, + "var.perps_wif_market_settings": { + "artifacts": { + "settings": { + "wif_perps_market_id": "400", + "wif_perps_market_skew_scale": "15000000", + "wif_perps_market_max_funding_velocity": "36", + "wif_perps_maker_fee_ratio": "0", + "wif_perps_taker_fee_ratio": "0.0010", + "wif_perps_max_market_size": "2500000", + "wif_perps_max_market_value": "3000000", + "wif_perps_initial_margin_ratio": "1", + "wif_perps_maintenance_margin_scalar": "0.5", + "wif_perps_minimum_initial_margin_ratio": "0.04", + "wif_perps_flag_reward_ratio_d18": "0.0003", + "wif_perps_max_liquidation_limit_accumulation_multiplier": "1.5", + "wif_perps_max_seconds_in_liquidation_window": "30", + "wif_perps_minimum_position_margin": "50", + "wif_perps_locked_oi_ratio": "0.50", + "wif_perps_max_liquidation_pd": "0.0005", + "wif_perps_endorsed_liquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306" + } + }, + "hash": "1cf19ebccc997a924f75c2c4912594f3", + "version": 7 + }, + "provision.btc_mock_collateral": { + "artifacts": { + "imports": { + "btc_mock_collateral": { + "url": "ipfs://QmfXCrUCXHp8dBoNpv4Y4y2zKktzEK5JSzz7ZvZHELGr4h", + "tags": [ + "latest" + ], + "target": "synthetix-mock-tokens:1.8@btc", + "preset": "btc", + "settings": { + "decimals": "18", + "initialSupply": "0", + "name": "Token", + "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", + "salt": "", + "symbol": "TKN" + }, + "contracts": { + "MintableToken": { + "address": "0xd45eACF062F6C7c780EF7953c23E112041f0bd1B", + "abi": [ + "constructor(address owner, string name, string symbol, uint8 tokenDecimals, uint256 initialSupply) payable", + "function allowance(address owner, address spender) view returns (uint256)", + "function approve(address spender, uint256 amount) returns (bool)", + "function balanceOf(address account) view returns (uint256)", + "function decimals() view returns (uint8)", + "function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)", + "function increaseAllowance(address spender, uint256 addedValue) returns (bool)", + "function mint(uint256 amount, address to)", + "function name() view returns (string)", + "function owner() view returns (address)", + "function renounceOwnership()", + "function symbol() view returns (string)", + "function totalSupply() view returns (uint256)", + "function transfer(address to, uint256 amount) returns (bool)", + "function transferFrom(address from, address to, uint256 amount) returns (bool)", + "function transferOwnership(address newOwner)", + "event Approval(address indexed owner, address indexed spender, uint256 value)", + "event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)", + "event Transfer(address indexed from, address indexed to, uint256 value)" + ], + "constructorArgs": [ + "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", + "Fake BTC Coin", + "fBTC", + "18", + "0" + ], + "linkedLibraries": {}, + "deployTxnHash": "", + "deployTxnBlockNumber": "", + "deployTimestamp": "1722632204", + "sourceName": "src/MintableToken.sol", + "contractName": "MintableToken", + "deployedOn": "contract.MintableToken", + "highlight": true, + "gasUsed": 0, + "gasCost": "0" } }, - "txns": { - "upgrade_proxy": { - "hash": "0xefda7fcecef604f6cdb302648d9223d13bf8bd5a9a263b568bbed44d7b2c9664", - "blockNumber": "67334732", - "timestamp": "1722223895", - "events": { - "Upgraded": [ - { - "name": "Upgraded", - "args": [ - "0x111BAbcdd66b1B60A20152a2D3D06d36F8B5703c", - "0xe5BBE61dC29670Fa52E3a3bCdb7278d926Db1A2A" - ] - } + "extras": { + "decimals": "18", + "initialSupply": "0", + "name": "Token", + "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", + "salt": "", + "symbol": "TKN" + } + } + } + }, + "hash": null, + "version": 7 + }, + "invoke.registerLookupBtcOracleNode": { + "artifacts": { + "contracts": {}, + "txns": { + "registerLookupBtcOracleNode": { + "hash": "0xb2a7c7b3c13e4995afeab4fd3e8bd6cc94a02f443ea2437b7b3080d18bd02419", + "blockNumber": "68535233", + "timestamp": "1722632208", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0x1ba7d96e40c462df52a92ba5587728b13749829f6066ded505c482d34cbeca44", + 9, + "0x0000000000000000000000000ea49b2e23387cd99cecebda52041c604e40992ee62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b430000000000000000000000000000000000000000000000000000000000000e10", + [] ] - }, - "deployedOn": "invoke.upgrade_proxy", - "gasUsed": 127901, - "gasCost": "100000000", - "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" - }, - "addCreateMarketToFeatureFlag": { - "hash": "0x85cbdf1c58c50adedd4390a0d16609e62f2c2de919842bf438e06ff6a69bd9c0", - "events": { - "FeatureFlagAllowlistAdded": [ - { - "name": "FeatureFlagAllowlistAdded", - "args": [ - "0x6372656174654d61726b65740000000000000000000000000000000000000000", - "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" - ] - } + } + ] + }, + "deployedOn": "invoke.registerLookupBtcOracleNode", + "gasUsed": 154761, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "btc_lookup_oracle_id": "0x1ba7d96e40c462df52a92ba5587728b13749829f6066ded505c482d34cbeca44" + } + }, + "hash": "b1714251fbfd7a60738798f4e327a321", + "version": 7 + }, + "invoke.registerLookupSolOracleNode": { + "artifacts": { + "contracts": {}, + "txns": { + "registerLookupSolOracleNode": { + "hash": "0x3959a423d6f61cd5c0343e4889c655d0b0dd55f1cf9f07ac766aad233bccd035", + "blockNumber": "68535239", + "timestamp": "1722632210", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0xe73f2594aabd0f5bfc5709160ab492ac3f0686fbf4193b34ef108ef0a45fc135", + 9, + "0x0000000000000000000000000ea49b2e23387cd99cecebda52041c604e40992eef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d0000000000000000000000000000000000000000000000000000000000000e10", + [] ] - }, - "deployedOn": "invoke.addCreateMarketToFeatureFlag", - "gasUsed": 107712, - "gasCost": "756390000", - "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" - }, - "addPerpsMarketToFeatureFlag": { - "hash": "0xf857c6f0311b6c5a70fa823cddcf3e1e9dfd4c9feb31fb8852f2c85663662c23", - "events": { - "FeatureFlagAllowlistAdded": [ - { - "name": "FeatureFlagAllowlistAdded", - "args": [ - "0x72656769737465724d61726b6574000000000000000000000000000000000000", - "0x111BAbcdd66b1B60A20152a2D3D06d36F8B5703c" - ] - } + } + ] + }, + "deployedOn": "invoke.registerLookupSolOracleNode", + "gasUsed": 154761, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "sol_lookup_oracle_id": "0xe73f2594aabd0f5bfc5709160ab492ac3f0686fbf4193b34ef108ef0a45fc135" + } + }, + "hash": "44260a7ee78af30bf7eef05d550930c6", + "version": 7 + }, + "invoke.registerLookupWifOracleNode": { + "artifacts": { + "contracts": {}, + "txns": { + "registerLookupWifOracleNode": { + "hash": "0xbdc46fc944617de9966f4c3e411bdb309fc37afaed9e3a2897cc7421cafbaf72", + "blockNumber": "68535242", + "timestamp": "1722632212", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0xbc0f6532a43751b1dc29b5da0785e7ba8ff98b220b32cc7113fe1d0932b9f494", + 9, + "0x0000000000000000000000000ea49b2e23387cd99cecebda52041c604e40992e4ca4beeca86f0d164160323817a4e42b10010a724c2217c6ee41b54cd4cc61fc0000000000000000000000000000000000000000000000000000000000000e10", + [] ] - }, - "deployedOn": "invoke.addPerpsMarketToFeatureFlag", - "gasUsed": 90498, - "gasCost": "755570000", - "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" - }, - "enableFeatureCreateAccount": { - "hash": "0xadf51f373263743494cb7a7a7d41d5f27165b9329baa841a348a60d857f202cf", - "events": { - "FeatureFlagAllowAllSet": [ - { - "name": "FeatureFlagAllowAllSet", - "args": [ - "0x6372656174654163636f756e7400000000000000000000000000000000000000", - true - ] - } + } + ] + }, + "deployedOn": "invoke.registerLookupWifOracleNode", + "gasUsed": 154761, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "wif_lookup_oracle_id": "0xbc0f6532a43751b1dc29b5da0785e7ba8ff98b220b32cc7113fe1d0932b9f494" + } + }, + "hash": "db73f9c903932b2489be8ae1ab4b2c5a", + "version": 7 + }, + "invoke.registerPythBtcOracleNode": { + "artifacts": { + "contracts": {}, + "txns": { + "registerPythBtcOracleNode": { + "hash": "0x798ab57d727cb7d252d86396157e5cd8d63826e6665a6682ddd98ce4ebdaccfe", + "blockNumber": "68535247", + "timestamp": "1722632214", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0xedcd439d4626930331f4ed0ddf7279115c3f3cf56f57ac5414d576a84bac6f53", + 5, + "0x0000000000000000000000004374e5a8b9c22271e9eb878a2aa31de97df15dafe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b430000000000000000000000000000000000000000000000000000000000000000", + [] ] - }, - "deployedOn": "invoke.enableFeatureCreateAccount", - "gasUsed": 63135, - "gasCost": "757750000", - "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" - }, - "init_account": { - "hash": "0xf23acf974dbe1dcf09d9b8fe805790bd423cf6a87109f9429115c1175034b3af", - "events": { - "AssociatedSystemSet": [ - { - "name": "AssociatedSystemSet", - "args": [ - "0x6572633732310000000000000000000000000000000000000000000000000000", - "0x6163636f756e744e667400000000000000000000000000000000000000000000", - "0xEAb7b75508B4F06FB9c6a328bEC0F23cC64FFac2", - "0x2C87b00279De8b2e3a6Dad79521361B698916B6C" - ] - } + } + ] + }, + "deployedOn": "invoke.registerPythBtcOracleNode", + "gasUsed": 146116, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "btc_pyth_oracle_id": "0xedcd439d4626930331f4ed0ddf7279115c3f3cf56f57ac5414d576a84bac6f53" + } + }, + "hash": "e11cf56bf9ff32f2d2a0f97ed4969e5f", + "version": 7 + }, + "invoke.registerPythSolOracleNode": { + "artifacts": { + "contracts": {}, + "txns": { + "registerPythSolOracleNode": { + "hash": "0x3cfbe39ea64e3dfe87ee6afd27ebb68229f86aeea9a7a692d2de7062cb1e5a94", + "blockNumber": "68535252", + "timestamp": "1722632216", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0xb80bc98d8da860f3c096ca3d15bec6a2134a175a5547cea57a680c1d799d1f2f", + 5, + "0x0000000000000000000000004374e5a8b9c22271e9eb878a2aa31de97df15dafef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d0000000000000000000000000000000000000000000000000000000000000000", + [] + ] + } + ] + }, + "deployedOn": "invoke.registerPythSolOracleNode", + "gasUsed": 146116, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "sol_pyth_oracle_id": "0xb80bc98d8da860f3c096ca3d15bec6a2134a175a5547cea57a680c1d799d1f2f" + } + }, + "hash": "a4f805997c0ab42b381faba2a562ffe1", + "version": 7 + }, + "invoke.registerPythWifOracleNode": { + "artifacts": { + "contracts": {}, + "txns": { + "registerPythWifOracleNode": { + "hash": "0x578f7f9fbc5e9749e62ac7f48c4a453392bf5e10d69a0d65f636bff6d0e73d06", + "blockNumber": "68535254", + "timestamp": "1722632218", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0x7130ed5159ad7a6b94a0a90ef6cd6f30e03c5a40f1a8fe3ff5beb5ba48e86361", + 5, + "0x0000000000000000000000004374e5a8b9c22271e9eb878a2aa31de97df15daf4ca4beeca86f0d164160323817a4e42b10010a724c2217c6ee41b54cd4cc61fc0000000000000000000000000000000000000000000000000000000000000000", + [] + ] + } + ] + }, + "deployedOn": "invoke.registerPythWifOracleNode", + "gasUsed": 146116, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "wif_pyth_oracle_id": "0x7130ed5159ad7a6b94a0a90ef6cd6f30e03c5a40f1a8fe3ff5beb5ba48e86361" + } + }, + "hash": "863b3495a3396828920541498e8f4053", + "version": 7 + }, + "setting.btc_address": { + "artifacts": { + "settings": { + "btc_address": "0xd45eACF062F6C7c780EF7953c23E112041f0bd1B" + } + }, + "hash": "6ee28edc8707535934d4567c66edfa16", + "version": 7 + }, + "invoke.SpotMarketProxy_createSynth_btc": { + "artifacts": { + "contracts": {}, + "txns": { + "SpotMarketProxy_createSynth_btc": { + "hash": "0xa94d9ec93d57512c909a54a7979df44e47ec350d77d0f3246c7175b3da48a741", + "blockNumber": "68535312", + "timestamp": "1722632238", + "events": { + "AssociatedSystemSet": [ + { + "name": "AssociatedSystemSet", + "args": [ + "0x6572633230000000000000000000000000000000000000000000000000000000", + "0x2ec0db1eb4d7fde2d2ecfde5060d5de4d2f5b1f7ea6319c97be9a39eb01ae852", + "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + "0x87A1e05E307027Aea84428AaB504148F8f270D90" ] - }, - "deployedOn": "invoke.init_account", - "gasUsed": 344898, - "gasCost": "759030000", - "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" - }, - "initializeFactory": { - "hash": "0x13736276e007885e032d047dbe5bb6e26fcef87f5bdce9a5cd412014e33ad496", - "events": { - "FactoryInitialized": [ - { - "name": "FactoryInitialized", - "args": [ - "3" - ] - } + } + ], + "SynthRegistered": [ + { + "name": "SynthRegistered", + "args": [ + "4", + "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b" ] - }, - "deployedOn": "invoke.initializeFactory", - "gasUsed": 281566, - "gasCost": "767830000", - "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" - } + } + ] }, - "extras": { - "coreProxyOwner": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", - "owner": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266", - "salt": "snax", - "spotMarketPackage": "synthetix-spot-market:latest", - "spotMarketPreset": "main", - "synthetixPackage": "synthetix:latest", - "synthetixPreset": "main", - "superMarketId": "3" - } + "deployedOn": "invoke.SpotMarketProxy_createSynth_btc", + "gasUsed": 506412, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } + }, + "settings": { + "synth_btc_market_id": "4", + "synth_btc_token_address": "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b" } }, - "hash": null, + "hash": "9552396339c720eb060dcf80a018427c", "version": 7 }, - "invoke.CoreProxy_configureCollateral_dai": { + "invoke.SpotMarketProxy_createSynth_eth": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_configureCollateral_dai": { - "hash": "0x38daf91d6b503a453d9cecd965c5d497ae0c986522f034f312023a317e0e8806", + "SpotMarketProxy_createSynth_eth": { + "hash": "0xb85813ed4b95b9cbc932270ae2a29a7cbd92bc5a835bac2b4da50b28ea1dacdd", + "blockNumber": "68535318", + "timestamp": "1722632240", "events": { - "CollateralConfigured": [ + "AssociatedSystemSet": [ { - "name": "CollateralConfigured", + "name": "AssociatedSystemSet", "args": [ - "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", - { - "depositingEnabled": false, - "issuanceRatioD18": "1200000000000000000", - "liquidationRatioD18": "1050000000000000000", - "liquidationRewardD18": "1000000000000000000", - "oracleNodeId": "0xc346c4c4376c8b153e0dfd911a6771aa410da0466a56aa30c2f3294dce1785f8", - "tokenAddress": "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", - "minDelegationD18": "100000000000000000000" - } + "0x6572633230000000000000000000000000000000000000000000000000000000", + "0x35689a4c61e8f5c36e7730a28db3ad4b37e63fe92a35ea534e5a5ba040963aa4", + "0x711d4F22CC39223a7273E45537c9d371E66A8a40", + "0x87A1e05E307027Aea84428AaB504148F8f270D90" + ] + } + ], + "SynthRegistered": [ + { + "name": "SynthRegistered", + "args": [ + "5", + "0x711d4F22CC39223a7273E45537c9d371E66A8a40" ] } ] }, - "deployedOn": "invoke.CoreProxy_configureCollateral_dai", - "gasUsed": 328627, + "deployedOn": "invoke.SpotMarketProxy_createSynth_eth", + "gasUsed": 489338, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": {} + "settings": { + "synth_eth_market_id": "5", + "synth_eth_token_address": "0x711d4F22CC39223a7273E45537c9d371E66A8a40" + } }, - "hash": "8142eaaaf727f390f2ca99cd6f85f172", + "hash": "d54e7729e71ed7579d268caeb97370bb", "version": 7 }, - "invoke.CoreProxy_configureCollateral_usdc": { + "invoke.registerBtcOracleNode": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_configureCollateral_usdc": { - "hash": "0xfe7803c6d32ed9ab0941a00c458a8ec58a66c06e59c09eca8b022ff2728cacde", + "registerBtcOracleNode": { + "hash": "0x4e75d1fda429fe2682e97c9cef6df5c3dbecf6f81660c6c73a2aa80af932727d", + "blockNumber": "68535321", + "timestamp": "1722632242", "events": { - "CollateralConfigured": [ + "NodeRegistered": [ { - "name": "CollateralConfigured", + "name": "NodeRegistered", "args": [ - "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", - { - "depositingEnabled": true, - "issuanceRatioD18": "1200000000000000000", - "liquidationRatioD18": "1050000000000000000", - "liquidationRewardD18": "1000000000000000000", - "oracleNodeId": "0x999c46d1e0e994822e8b02def68984d9c9e124d58ee2b68f604c6a5144b0db14", - "tokenAddress": "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", - "minDelegationD18": "100000000000000000000" - } + "0x83577cf4a839275e030f38dd91c61800fb82368e459720aea7e08de44919a4a4", + 7, + "0x0000000000000000000000000000000000000000000000000000000000000e10", + [ + "0xedcd439d4626930331f4ed0ddf7279115c3f3cf56f57ac5414d576a84bac6f53", + "0x1ba7d96e40c462df52a92ba5587728b13749829f6066ded505c482d34cbeca44" + ] ] } ] }, - "deployedOn": "invoke.CoreProxy_configureCollateral_usdc", - "gasUsed": 61856, - "gasCost": "745990000", + "deployedOn": "invoke.registerBtcOracleNode", + "gasUsed": 220629, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": {} + "settings": { + "btc_oracle_id": "0x83577cf4a839275e030f38dd91c61800fb82368e459720aea7e08de44919a4a4" + } }, - "hash": "44bdc85cb885c9fcb6bb9d7b1b1b82f1", + "hash": "f974fad8d7d89494d47d4d11325f612a", "version": 7 }, - "invoke.CoreProxy_configureMaximumMarketCollateral_dai": { + "invoke.registerSolOracleNode": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_configureMaximumMarketCollateral_dai": { - "hash": "0x2c1e8ea1ceaa530ed7cbe12138c35bcfc11b42491a4fa1e3dbb105629a32b18b", + "registerSolOracleNode": { + "hash": "0x804a769e2009708e3c03c727eb79a091cd31930f02ce9268d0374468a0878a3f", + "blockNumber": "68535327", + "timestamp": "1722632244", "events": { - "MaximumMarketCollateralConfigured": [ + "NodeRegistered": [ { - "name": "MaximumMarketCollateralConfigured", + "name": "NodeRegistered", "args": [ - "1", - "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", - "0", - "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + "0x2619627cc0998264a20643f6f13dc38a69bd198f11c668e6162d329aa99c5c4a", + 7, + "0x0000000000000000000000000000000000000000000000000000000000000e10", + [ + "0xb80bc98d8da860f3c096ca3d15bec6a2134a175a5547cea57a680c1d799d1f2f", + "0xe73f2594aabd0f5bfc5709160ab492ac3f0686fbf4193b34ef108ef0a45fc135" + ] ] } ] }, - "deployedOn": "invoke.CoreProxy_configureMaximumMarketCollateral_dai", - "gasUsed": 217042, + "deployedOn": "invoke.registerSolOracleNode", + "gasUsed": 220629, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": {} + "settings": { + "sol_oracle_id": "0x2619627cc0998264a20643f6f13dc38a69bd198f11c668e6162d329aa99c5c4a" + } }, - "hash": "4d6222cf269d2d0f984f6ec809d9e71f", + "hash": "43c0c0f80b2fcdbdb16c9c4021e41ddf", "version": 7 }, - "invoke.CoreProxy_configureMaximumMarketCollateral_usdc": { + "invoke.registerWifOracleNode": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_configureMaximumMarketCollateral_usdc": { - "hash": "0x4ef7d54b87128b9b7bd13ba73ef4016059e6710343d7ef2090730ec3e3ab18b8", + "registerWifOracleNode": { + "hash": "0xfba6223c7c337b83e4d56fab7623abf1d5669c771fec77dd4ac4c744a3235d13", + "blockNumber": "68535335", + "timestamp": "1722632246", "events": { - "MaximumMarketCollateralConfigured": [ + "NodeRegistered": [ { - "name": "MaximumMarketCollateralConfigured", + "name": "NodeRegistered", "args": [ - "2", - "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", - "10000000000000000000000000", - "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + "0xbcf8052c9cedf0577bd02b12aad0070cc36e049a5e7f9a48748bee9211295e53", + 7, + "0x0000000000000000000000000000000000000000000000000000000000000e10", + [ + "0x7130ed5159ad7a6b94a0a90ef6cd6f30e03c5a40f1a8fe3ff5beb5ba48e86361", + "0xbc0f6532a43751b1dc29b5da0785e7ba8ff98b220b32cc7113fe1d0932b9f494" + ] ] } ] }, - "deployedOn": "invoke.CoreProxy_configureMaximumMarketCollateral_usdc", - "gasUsed": 221938, + "deployedOn": "invoke.registerWifOracleNode", + "gasUsed": 220629, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "wif_oracle_id": "0xbcf8052c9cedf0577bd02b12aad0070cc36e049a5e7f9a48748bee9211295e53" + } + }, + "hash": "66ec233b95bfba9451104c93a5675326", + "version": 7 + }, + "invoke.CoreProxy_configureCollateral_sBTC": { + "artifacts": { + "contracts": {}, + "txns": { + "CoreProxy_configureCollateral_sBTC": { + "hash": "0xdc27008840a0ca52d1572abff6034b4e0b716eb8cdcedf187a58d0d3010fea1c", + "blockNumber": "68535412", + "timestamp": "1722632282", + "events": { + "CollateralConfigured": [ + { + "name": "CollateralConfigured", + "args": [ + "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + { + "depositingEnabled": false, + "issuanceRatioD18": "2000000000000000000", + "liquidationRatioD18": "1100000000000000000", + "liquidationRewardD18": "500000000000000000", + "oracleNodeId": "0x83577cf4a839275e030f38dd91c61800fb82368e459720aea7e08de44919a4a4", + "tokenAddress": "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + "minDelegationD18": "500000000000000000" + } + ] + } + ] + }, + "deployedOn": "invoke.CoreProxy_configureCollateral_sBTC", + "gasUsed": 223273, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "7397b2c8cde302f29bd008501a3f7114", + "hash": "c697a6e4f2e2d49eb63603c8e18e639a", "version": 7 }, - "invoke.CoreProxy_setFeatureFlagAllowAll_perpsSystem": { + "invoke.CoreProxy_configureCollateral_sETH": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_setFeatureFlagAllowAll_perpsSystem": { - "hash": "0x86837642b8327c360079c9854636796e30872f13f4f9e0654ec743422b11d972", + "CoreProxy_configureCollateral_sETH": { + "hash": "0x69f8d77aba9189fbd9d9fc1b780ab4d6b13afa7f530bbe2d95bace26a9565de9", + "blockNumber": "68535417", + "timestamp": "1722632284", "events": { - "FeatureFlagAllowAllSet": [ + "CollateralConfigured": [ { - "name": "FeatureFlagAllowAllSet", + "name": "CollateralConfigured", "args": [ - "0x706572707353797374656d000000000000000000000000000000000000000000", - false + "0x711d4F22CC39223a7273E45537c9d371E66A8a40", + { + "depositingEnabled": false, + "issuanceRatioD18": "2000000000000000000", + "liquidationRatioD18": "1100000000000000000", + "liquidationRewardD18": "1000000000000000000", + "oracleNodeId": "0x93249440fb2535a0425e3134c597f4570fbae358ce9a039bff9957ccb1a74f37", + "tokenAddress": "0x711d4F22CC39223a7273E45537c9d371E66A8a40", + "minDelegationD18": "1000000000000000000" + } ] } ] }, - "deployedOn": "invoke.CoreProxy_setFeatureFlagAllowAll_perpsSystem", - "gasUsed": 42339, - "gasCost": "796010000", + "deployedOn": "invoke.CoreProxy_configureCollateral_sETH", + "gasUsed": 223285, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "15e192731d414d96dbff5d0ffacccf12", + "hash": "92157ad3c6afeeb34aa872f66b5093a3", "version": 7 }, - "invoke.CoreProxy_setPoolConfiguration_SpartanCouncil": { + "invoke.CoreProxy_configureCollateral_wBTC": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_setPoolConfiguration_SpartanCouncil": { - "hash": "0x1aa340c399a667590a3d3d304742b09aecb806969d33d5429e05bc880233173e", - "blockNumber": "67334748", - "timestamp": "1722223901", + "CoreProxy_configureCollateral_wBTC": { + "hash": "0x6513cfa98543815bf35f3adfdec251d251bdd13835178d4bcc845af11cc55f4a", + "blockNumber": "68535424", + "timestamp": "1722632286", "events": { - "PoolConfigurationSet": [ + "CollateralConfigured": [ { - "name": "PoolConfigurationSet", + "name": "CollateralConfigured", "args": [ - "1", - [ - { - "marketId": "1", - "weightD18": "1", - "maxDebtShareValueD18": "1000000000000000000" - }, - { - "marketId": "2", - "weightD18": "1", - "maxDebtShareValueD18": "1000000000000000000" - }, - { - "marketId": "3", - "weightD18": "98", - "maxDebtShareValueD18": "1000000000000000000" - } - ], - "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + "0xd45eACF062F6C7c780EF7953c23E112041f0bd1B", + { + "depositingEnabled": false, + "issuanceRatioD18": "2000000000000000000", + "liquidationRatioD18": "1100000000000000000", + "liquidationRewardD18": "500000000000000000", + "oracleNodeId": "0x83577cf4a839275e030f38dd91c61800fb82368e459720aea7e08de44919a4a4", + "tokenAddress": "0xd45eACF062F6C7c780EF7953c23E112041f0bd1B", + "minDelegationD18": "500000000000000000" + } ] } ] }, - "deployedOn": "invoke.CoreProxy_setPoolConfiguration_SpartanCouncil", - "gasUsed": 838565, + "deployedOn": "invoke.CoreProxy_configureCollateral_wBTC", + "gasUsed": 223273, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "a694f5e491189e6970db787b71eafa82", + "hash": "a466d9eb64c04315c5e936c8c02aed55", "version": 7 }, - "invoke.CoreProxy_setPoolName_SpartanCouncil": { + "invoke.CoreProxy_configureMaximumMarketCollateral_WETH": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_setPoolName_SpartanCouncil": { - "hash": "0xeb4057cbc24669ce5f910aa8dd4bb2fc22f700680a635ace48d68d5e95bef58d", + "CoreProxy_configureMaximumMarketCollateral_WETH": { + "hash": "0x607c724de51d905bf9c367f32721bda99e2c3ad2661d806f7ff63a65d2c936b4", + "blockNumber": "68535432", + "timestamp": "1722632288", "events": { - "PoolNameUpdated": [ + "MaximumMarketCollateralConfigured": [ { - "name": "PoolNameUpdated", + "name": "MaximumMarketCollateralConfigured", "args": [ - "1", - "Spartan Council Pool", + "5", + "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73", + "1000000000000000000000", "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" ] } ] }, - "deployedOn": "invoke.CoreProxy_setPoolName_SpartanCouncil", - "gasUsed": 68580, - "gasCost": "804690000", + "deployedOn": "invoke.CoreProxy_configureMaximumMarketCollateral_WETH", + "gasUsed": 57782, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "865e58ccf82574cd9b7679d764446754", + "hash": "fe379f6499408cc14a055044c4d4ed7b", "version": 7 }, - "invoke.CoreProxy_setPreferredPool_SpartanCouncil": { + "invoke.CoreProxy_configureMaximumMarketCollateral_eth": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_setPreferredPool_SpartanCouncil": { - "hash": "0x79273c08974e061a07a508447ac2668990e1dfcdb4727edfc14ce7d1d2d63bc6", + "CoreProxy_configureMaximumMarketCollateral_eth": { + "hash": "0x03fe4b783c90aab0187ab4c77651d8b13a0e173bc386922b01582f3b6dfa3742", + "blockNumber": "68535439", + "timestamp": "1722632290", "events": { - "PreferredPoolSet": [ + "MaximumMarketCollateralConfigured": [ { - "name": "PreferredPoolSet", + "name": "MaximumMarketCollateralConfigured", "args": [ - "1" + "6", + "0x711d4F22CC39223a7273E45537c9d371E66A8a40", + "1000000000000000000000", + "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" ] } ] }, - "deployedOn": "invoke.CoreProxy_setPreferredPool_SpartanCouncil", - "gasUsed": 62930, - "gasCost": "808270000", + "deployedOn": "invoke.CoreProxy_configureMaximumMarketCollateral_eth", + "gasUsed": 57782, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "480e6beb1993cfe6612decbb89f15bd7", + "hash": "289aa217154cc84f3ce599a12db7678f", "version": 7 }, - "invoke.SpotMarketProxy_addSettlementStrategy_dai": { + "invoke.CoreProxy_configureMaximumMarketCollateral_sBTC": { "artifacts": { "contracts": {}, "txns": { - "SpotMarketProxy_addSettlementStrategy_dai": { - "hash": "0x0a34fd0b9635c0a1fc39dd03f43f8c368c70ce4d414acaa756873fb2f8549166", + "CoreProxy_configureMaximumMarketCollateral_sBTC": { + "hash": "0xd3432aeeedb6873d6fa1f2230683ea70102be4d8dce711e954d9a40ba78edeed", + "blockNumber": "68535444", + "timestamp": "1722632292", "events": { - "SettlementStrategyAdded": [ + "MaximumMarketCollateralConfigured": [ { - "name": "SettlementStrategyAdded", + "name": "MaximumMarketCollateralConfigured", "args": [ - "1", - "0" + "6", + "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + "75000000000000000000", + "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" ] } ] }, - "deployedOn": "invoke.SpotMarketProxy_addSettlementStrategy_dai", - "gasUsed": 171325, - "gasCost": "817720000", + "deployedOn": "invoke.CoreProxy_configureMaximumMarketCollateral_sBTC", + "gasUsed": 57782, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": { - "synth_dai_settlement_strategy_id": "0" - } + "settings": {} }, - "hash": "6d75a2c088cd38fd4460ce6fb1d4a628", + "hash": "2be0ee86df7a8b2d287528418c497cb1", "version": 7 }, - "invoke.SpotMarketProxy_addSettlementStrategy_usdc": { + "invoke.CoreProxy_configureMaximumMarketCollateral_wBTC": { "artifacts": { "contracts": {}, "txns": { - "SpotMarketProxy_addSettlementStrategy_usdc": { - "hash": "0x1240303c096aa6d73d82bea7eb6437f1557bf5f99352c8f51d70839cf1e23892", + "CoreProxy_configureMaximumMarketCollateral_wBTC": { + "hash": "0xb3c90186509ee01c2a92ba9356a81f71a5e9ae58dade22e2a71d82b60e256901", + "blockNumber": "68535451", + "timestamp": "1722632295", "events": { - "SettlementStrategyAdded": [ + "MaximumMarketCollateralConfigured": [ { - "name": "SettlementStrategyAdded", + "name": "MaximumMarketCollateralConfigured", "args": [ - "2", - "0" + "4", + "0xd45eACF062F6C7c780EF7953c23E112041f0bd1B", + "75000000000000000000", + "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" ] } ] }, - "deployedOn": "invoke.SpotMarketProxy_addSettlementStrategy_usdc", - "gasUsed": 171494, - "gasCost": "815550000", + "deployedOn": "invoke.CoreProxy_configureMaximumMarketCollateral_wBTC", + "gasUsed": 57782, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": { - "synth_usdc_settlement_strategy_id": "0" - } + "settings": {} }, - "hash": "33b924412a4b5460f77472c83861ba43", + "hash": "569638e20266c2e435301066b888dbbc", "version": 7 }, - "invoke.SpotMarketProxy_setWrapper_dai": { + "invoke.PerpsMarketProxy_setCollateralConfiguration_btc": { "artifacts": { "contracts": {}, "txns": { - "SpotMarketProxy_setWrapper_dai": { - "hash": "0x37eb17169aa43074a08da2f07089601cef1d0d88a29bd773f8de914eb9fec994", + "PerpsMarketProxy_setCollateralConfiguration_btc": { + "hash": "0x4b812448699585920f8eb6357b63a99f7cd16c3ce8484adb50f81d5d9c1c7e8a", + "blockNumber": "68535470", + "timestamp": "1722632302", "events": { - "WrapperSet": [ + "CollateralConfigurationSet": [ { - "name": "WrapperSet", + "name": "CollateralConfigurationSet", "args": [ - "1", - "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", - "0" + "4", + "75000000000000000000", + "75000000000000000", + "10000000000000000", + "1000000000000000000" ] } ] }, - "deployedOn": "invoke.SpotMarketProxy_setWrapper_dai", - "gasUsed": 240232, + "deployedOn": "invoke.PerpsMarketProxy_setCollateralConfiguration_btc", + "gasUsed": 214185, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "829dc78753898a03890f49aa6c789afd", + "hash": "88a9bc34cfb45fdbb67e02a6ec790f6a", "version": 7 }, - "invoke.SpotMarketProxy_setWrapper_usdc": { + "invoke.PerpsMarketProxy_setCollateralConfiguration_eth": { "artifacts": { "contracts": {}, "txns": { - "SpotMarketProxy_setWrapper_usdc": { - "hash": "0x14b4f7c6160e0d8ba2ed2b4d8050f0c9cd4b3a85c6efc6da8d2c1bae5e5baf8c", + "PerpsMarketProxy_setCollateralConfiguration_eth": { + "hash": "0x1757eba6a25bb010b4aaab4919e935f1e9f952dadf05b47d70c51ac36f94c69e", + "blockNumber": "68535475", + "timestamp": "1722632304", "events": { - "WrapperSet": [ + "CollateralConfigurationSet": [ { - "name": "WrapperSet", + "name": "CollateralConfigurationSet", "args": [ - "2", - "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", - "10000000000000000000000000" + "5", + "1000000000000000000000", + "100000000000000000", + "10000000000000000", + "1000000000000000000" ] } ] }, - "deployedOn": "invoke.SpotMarketProxy_setWrapper_usdc", - "gasUsed": 240640, + "deployedOn": "invoke.PerpsMarketProxy_setCollateralConfiguration_eth", + "gasUsed": 197073, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "fd0e75ca97cc4e28fac3ad58b883e355", + "hash": "3027300c6e63dbea8d0084f9bce30d0a", "version": 7 }, - "invoke.SpotMarketProxy_updatePriceData_dai": { + "invoke.PerpsMarketProxy_setCollateralLiquidationRatio_btc": { "artifacts": { "contracts": {}, "txns": { - "SpotMarketProxy_updatePriceData_dai": { - "hash": "0x000a3734e0d559a71ffc13c40b32fe1313a5a130cc22cab151309764b9b86196", + "PerpsMarketProxy_setCollateralLiquidationRatio_btc": { + "hash": "0x2d22c07378f9659ab5ad8ebee04763c762f2320eb60d94fab03c9d84523445bf", + "blockNumber": "68535481", + "timestamp": "1722632306", "events": { - "SynthPriceDataUpdated": [ + "CollateralLiquidateRewardRatioSet": [ { - "name": "SynthPriceDataUpdated", + "name": "CollateralLiquidateRewardRatioSet", "args": [ - "1", - "0xc346c4c4376c8b153e0dfd911a6771aa410da0466a56aa30c2f3294dce1785f8", - "0xc346c4c4376c8b153e0dfd911a6771aa410da0466a56aa30c2f3294dce1785f8", - "3600" + "300000000000000" ] } ] }, - "deployedOn": "invoke.SpotMarketProxy_updatePriceData_dai", - "gasUsed": 110250, - "gasCost": "817640000", + "deployedOn": "invoke.PerpsMarketProxy_setCollateralLiquidationRatio_btc", + "gasUsed": 55926, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "c2ae6da45dea3c4859cdafd14fb73b5d", + "hash": "ec9c864de936883e24cc03e4168b4b61", "version": 7 }, - "invoke.SpotMarketProxy_updatePriceData_usdc": { + "invoke.SpotMarketProxy_addSettlementStrategy_btc": { "artifacts": { "contracts": {}, "txns": { - "SpotMarketProxy_updatePriceData_usdc": { - "hash": "0xadb9f2c98d7d870db7b9140d11f370ff89f2aef8e29ee00aa5b00ea3881996d7", + "SpotMarketProxy_addSettlementStrategy_btc": { + "hash": "0x76b721ac259260a1d7ba827aa9018a284fc25395a5f434669fa2fa414f381a16", + "blockNumber": "68535493", + "timestamp": "1722632311", "events": { - "SynthPriceDataUpdated": [ + "SettlementStrategyAdded": [ { - "name": "SynthPriceDataUpdated", + "name": "SettlementStrategyAdded", "args": [ - "2", - "0x999c46d1e0e994822e8b02def68984d9c9e124d58ee2b68f604c6a5144b0db14", - "0x999c46d1e0e994822e8b02def68984d9c9e124d58ee2b68f604c6a5144b0db14", - "3600" + "4", + "0" ] } ] }, - "deployedOn": "invoke.SpotMarketProxy_updatePriceData_usdc", - "gasUsed": 110258, - "gasCost": "816750000", + "deployedOn": "invoke.SpotMarketProxy_addSettlementStrategy_btc", + "gasUsed": 164275, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": {} + "settings": { + "synth_btc_settlement_strategy_id": "0" + } }, - "hash": "f9341bf61c9cf34c0fd0907508ccfff5", + "hash": "0e54a1c09e267bed76674a184278a70b", "version": 7 }, - "invoke.setPerpsMarketName": { + "invoke.SpotMarketProxy_addSettlementStrategy_eth": { "artifacts": { "contracts": {}, "txns": { - "setPerpsMarketName": { - "hash": "0x7744b741288cf3b322aa18e5b62234cc2342f9680f424492be15332ca5b9169a", - "events": {}, - "deployedOn": "invoke.setPerpsMarketName", - "gasUsed": 62370, - "gasCost": "809270000", + "SpotMarketProxy_addSettlementStrategy_eth": { + "hash": "0xc3f08a350edbb0cf14da27f0607f9d0789aa4b9e00e9e3c753031ddd919a60df", + "blockNumber": "68535498", + "timestamp": "1722632313", + "events": { + "SettlementStrategyAdded": [ + { + "name": "SettlementStrategyAdded", + "args": [ + "5", + "0" + ] + } + ] + }, + "deployedOn": "invoke.SpotMarketProxy_addSettlementStrategy_eth", + "gasUsed": 164275, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": {} + "settings": { + "synth_eth_settlement_strategy_id": "0" + } }, - "hash": "964f2b938c5293d3f698074ffa57f175", + "hash": "30a2f82673ad8063dba4ad21f9e0de7b", "version": 7 }, - "invoke.set_deniers_perps": { + "invoke.SpotMarketProxy_setMarketSkewScale_btc": { "artifacts": { "contracts": {}, "txns": { - "set_deniers_perps": { - "hash": "0xbb1d129cdb0e2edaaef0b282f7d3b1c71737034e9f5a162d2a869f8801cebafd", + "SpotMarketProxy_setMarketSkewScale_btc": { + "hash": "0x42e823b2110a9773a79b6353df3ee27335ce7536d68edc25bd483ca4ae13c41f", + "blockNumber": "68535505", + "timestamp": "1722632315", "events": { - "FeatureFlagDeniersReset": [ + "MarketSkewScaleSet": [ { - "name": "FeatureFlagDeniersReset", + "name": "MarketSkewScaleSet", "args": [ - "0x706572707353797374656d000000000000000000000000000000000000000000", - [ - "0x28Ed18Bd77A061E0A886a2a8FFb91da95FF03E56", - "0xd9b891AB93C210eafa46c61fAeb53836F99aa35B", - "0x0B67bab43157e53D21965Af0d83f83BeD9553E0a", - "0x8909F73188C4fE68B283fCB1E724b2466e0BdfD0", - "0xe1Efa5C91cA533E4a51884d805879249E3FCB2BC", - "0x6985b94Db148eDd4df6BD1Ba3F4640da79B44947", - "0x599e835cbFC903eF09f3Dd5E08D1cF63c32AF8d8", - "0xa2fa6Ef1Fcf740b632a04B3FC56B5d3118Bbd211", - "0x347c3190bD015FBD0e47fb90AA4917138A8A32FE", - "0x2d8cF727d37e7277D5eeDbAb853a3e8320f767Cd", - "0x1dd532CF7603a60C3ec91360f273DA3Db38545aB", - "0x562948111d50BF039A39Eea48D127f2Ae51ddF02", - "0xEde8a407913A874Dd7e3d5B731AFcA135D30375E" - ] + "4", + "3500000000000000000000" ] } ] }, - "deployedOn": "invoke.set_deniers_perps", - "gasUsed": 378678, - "gasCost": "809990000", + "deployedOn": "invoke.SpotMarketProxy_setMarketSkewScale_btc", + "gasUsed": 56693, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "5fb4d9bd665ad2b30e552ed24d25108b", + "hash": "e7691061bd1d09bdd6fb3e4af6054b6d", "version": 7 }, - "invoke.SpotMarketProxy_setSettlementStrategy_dai": { + "invoke.SpotMarketProxy_setMarketSkewScale_eth": { "artifacts": { "contracts": {}, "txns": { - "SpotMarketProxy_setSettlementStrategy_dai": { - "hash": "0x08ab57513c152a537aac894edbc7a321ec4168c50ebb18176369c9a7271c69ad", + "SpotMarketProxy_setMarketSkewScale_eth": { + "hash": "0xaeab592db184dccc80c8a36435ad8a4a8fb696e91f0f6eb852b792d4977693cc", + "blockNumber": "68535513", + "timestamp": "1722632317", "events": { - "SettlementStrategySet": [ + "MarketSkewScaleSet": [ { - "name": "SettlementStrategySet", + "name": "MarketSkewScaleSet", "args": [ - "1", - "0", - { - "strategyType": 1, - "settlementDelay": "2", - "settlementWindowDuration": "60", - "priceVerificationContract": "0x0eA49b2e23387cD99ceceBDa52041c604e40992E", - "feedId": "0xb0948a5e5313200c632b51bb5ca32f6de0d36e9950a942d19751e833f70dabfd", - "url": "https://api.synthetix.io/pyth-mainnet/api/get_vaa_ccip?data={data}", - "settlementReward": "500000000000000000", - "priceDeviationTolerance": "1000000000000000000", - "minimumUsdExchangeAmount": "1000000000000", - "maxRoundingLoss": "1000000000000", - "disabled": false - } + "5", + "350000000000000000000000" ] } ] }, - "deployedOn": "invoke.SpotMarketProxy_setSettlementStrategy_dai", - "gasUsed": 81919, - "gasCost": "462150000", + "deployedOn": "invoke.SpotMarketProxy_setMarketSkewScale_eth", + "gasUsed": 56705, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "9d86befda4137d41edbc4ade10b290fd", + "hash": "912b3586fa66aff9064ce118bf505f1d", "version": 7 }, - "invoke.SpotMarketProxy_setSettlementStrategy_usdc": { + "invoke.SpotMarketProxy_setWrapper_btc": { "artifacts": { "contracts": {}, "txns": { - "SpotMarketProxy_setSettlementStrategy_usdc": { - "hash": "0xa95c97ba4e72f4fe2875c8ff8707e897584e7ec8afa0f9853d538cfcbb13a489", + "SpotMarketProxy_setWrapper_btc": { + "hash": "0x27b742e6de883162fd508e81e51ddb4b0904bd26b2882d79e0e20e380b631fc2", + "blockNumber": "68535517", + "timestamp": "1722632319", "events": { - "SettlementStrategySet": [ + "WrapperSet": [ { - "name": "SettlementStrategySet", + "name": "WrapperSet", "args": [ - "2", - "0", - { - "strategyType": 1, - "settlementDelay": "2", - "settlementWindowDuration": "60", - "priceVerificationContract": "0x0eA49b2e23387cD99ceceBDa52041c604e40992E", - "feedId": "0xeaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a", - "url": "https://api.synthetix.io/pyth-mainnet/api/get_vaa_ccip?data={data}", - "settlementReward": "500000000000000000", - "priceDeviationTolerance": "1000000000000000000", - "minimumUsdExchangeAmount": "1000000000000", - "maxRoundingLoss": "1000000000000", - "disabled": false - } + "4", + "0xd45eACF062F6C7c780EF7953c23E112041f0bd1B", + "75000000000000000000" ] } ] }, - "deployedOn": "invoke.SpotMarketProxy_setSettlementStrategy_usdc", - "gasUsed": 81919, - "gasCost": "458380000", + "deployedOn": "invoke.SpotMarketProxy_setWrapper_btc", + "gasUsed": 96472, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "0eab7d792803dbe382772fc6947a77de", - "version": 7 - }, - "setting.arb_issuance_ratio": { - "artifacts": { - "settings": { - "arb_issuance_ratio": "3000000000000000000" - } - }, - "hash": "f564eb7a12d7143eb45d4ae362f2f600", - "version": 7 - }, - "setting.arb_liquidation_ratio": { - "artifacts": { - "settings": { - "arb_liquidation_ratio": "1500000000000000000" - } - }, - "hash": "c1d908f79852cdcacfde4731b3912f6d", - "version": 7 - }, - "setting.arb_liquidation_reward": { - "artifacts": { - "settings": { - "arb_liquidation_reward": "500000000000000000" - } - }, - "hash": "432e3c15ccbe73e998f322de6cb6a0c3", - "version": 7 - }, - "setting.arb_min_delegation": { - "artifacts": { - "settings": { - "arb_min_delegation": "50000000000000000000" - } - }, - "hash": "189426cb43efa7e96fc7b458df592ef1", - "version": 7 - }, - "setting.weth_issuance_ratio": { - "artifacts": { - "settings": { - "weth_issuance_ratio": "2000000000000000000" - } - }, - "hash": "09553939422a81e0204384bf690274c4", - "version": 7 - }, - "setting.weth_liquidation_ratio": { - "artifacts": { - "settings": { - "weth_liquidation_ratio": "1250000000000000000" - } - }, - "hash": "290a2df513cdb87666df984b81069cc3", - "version": 7 - }, - "setting.weth_liquidation_reward": { - "artifacts": { - "settings": { - "weth_liquidation_reward": "5000000000000000" - } - }, - "hash": "7b54ff46e6768da73f16016d4be6f513", - "version": 7 - }, - "setting.weth_min_delegation": { - "artifacts": { - "settings": { - "weth_min_delegation": "10000000000000000" - } - }, - "hash": "54bfc1b896e4a36386a208521c14a98b", + "hash": "e3b8b246518ce20c1f20679788bfc3d7", "version": 7 }, - "invoke.OracleManagerProxy_registerNode_pyth_arb": { + "invoke.SpotMarketProxy_setWrapper_eth": { "artifacts": { "contracts": {}, "txns": { - "OracleManagerProxy_registerNode_pyth_arb": { - "hash": "0x9deafa80e996aac31fdcef79774fa16c0377e06fcd45c6fd016e3863083ab88d", + "SpotMarketProxy_setWrapper_eth": { + "hash": "0xcee597a8cbffab6d765a38a1e271f2b814389cedb1b76c6155e5a11800e49fad", + "blockNumber": "68535522", + "timestamp": "1722632321", "events": { - "NodeRegistered": [ + "WrapperSet": [ { - "name": "NodeRegistered", + "name": "WrapperSet", "args": [ - "0x929d2d9105ebf7012feeb32b34364a9914300bcc1974492b324ff0e65621715b", - 5, - "0x0000000000000000000000004374e5a8b9c22271e9eb878a2aa31de97df15daf3fa4252848f9f0a1480be62745a4629d9eb1322aebab8a791e344b3b9c1adcf50000000000000000000000000000000000000000000000000000000000000000", - [] + "5", + "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73", + "1000000000000000000000" ] } ] }, - "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_arb", - "gasUsed": 146709, - "gasCost": "3071970000", + "deployedOn": "invoke.SpotMarketProxy_setWrapper_eth", + "gasUsed": 96472, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": { - "arb_pyth_oracle_id": "0x929d2d9105ebf7012feeb32b34364a9914300bcc1974492b324ff0e65621715b" - } + "settings": {} }, - "hash": "e18612aae638fe374a0249cf730e9d32", + "hash": "f127fec28f39764fcf5a70849efc359f", "version": 7 }, - "invoke.OracleManagerProxy_registerNode_pyth_eth": { + "invoke.SpotMarketProxy_updatePriceData_btc": { "artifacts": { "contracts": {}, "txns": { - "OracleManagerProxy_registerNode_pyth_eth": { - "hash": "0xee98566aa07d29e101323d15ea937649f636a3ddcfab5e99f9890bd760a64944", + "SpotMarketProxy_updatePriceData_btc": { + "hash": "0xc5e3eb7d548788195d4cd54bf435a4d28d58b06512e2abc3254cb1c6a1645467", + "blockNumber": "68535529", + "timestamp": "1722632323", "events": { - "NodeRegistered": [ + "SynthPriceDataUpdated": [ { - "name": "NodeRegistered", + "name": "SynthPriceDataUpdated", "args": [ - "0xf7c481e06a0c254a621900a32e9f38b6e929d650074057986a4966dccaef1125", - 5, - "0x0000000000000000000000004374e5a8b9c22271e9eb878a2aa31de97df15dafff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace0000000000000000000000000000000000000000000000000000000000000000", - [] + "4", + "0x83577cf4a839275e030f38dd91c61800fb82368e459720aea7e08de44919a4a4", + "0x83577cf4a839275e030f38dd91c61800fb82368e459720aea7e08de44919a4a4", + "0" ] } ] }, - "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_eth", - "gasUsed": 146721, - "gasCost": "3089970000", + "deployedOn": "invoke.SpotMarketProxy_updatePriceData_btc", + "gasUsed": 82851, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": { - "eth_pyth_oracle_id": "0xf7c481e06a0c254a621900a32e9f38b6e929d650074057986a4966dccaef1125" - } + "settings": {} }, - "hash": "66e5c538a5b8ccd77027fa48fe9271c9", + "hash": "44736ab9d5f5f04ac542f1b5d651af80", "version": 7 }, - "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_arb": { + "invoke.SpotMarketProxy_updatePriceData_eth": { "artifacts": { "contracts": {}, "txns": { - "OracleManagerProxy_registerNode_pyth_offchain_lookup_arb": { - "hash": "0x8b89ca4c3e704ba6135e331b6ba636d08863af52fa787efc144e524f68c12491", + "SpotMarketProxy_updatePriceData_eth": { + "hash": "0x2a06ffda313365c1d35961dba3dd5dc14082a2ac542caeef39fc9ac6d01200f7", + "blockNumber": "68535534", + "timestamp": "1722632325", "events": { - "NodeRegistered": [ + "SynthPriceDataUpdated": [ { - "name": "NodeRegistered", + "name": "SynthPriceDataUpdated", "args": [ - "0x9be3ad46045ca3e2944d6a98707d813965ac907f3a47eee9c8e2b73fa65a8896", - 9, - "0x0000000000000000000000000ea49b2e23387cd99cecebda52041c604e40992e3fa4252848f9f0a1480be62745a4629d9eb1322aebab8a791e344b3b9c1adcf50000000000000000000000000000000000000000000000000000000000000e10", - [] + "5", + "0x93249440fb2535a0425e3134c597f4570fbae358ce9a039bff9957ccb1a74f37", + "0x93249440fb2535a0425e3134c597f4570fbae358ce9a039bff9957ccb1a74f37", + "0" ] } ] }, - "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_arb", - "gasUsed": 155352, - "gasCost": "3090860000", + "deployedOn": "invoke.SpotMarketProxy_updatePriceData_eth", + "gasUsed": 82875, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": { - "arb_lookup_oracle_id": "0x9be3ad46045ca3e2944d6a98707d813965ac907f3a47eee9c8e2b73fa65a8896" - } + "settings": {} }, - "hash": "2bcb0e0c2501fd64fc24f2261c9e5a23", + "hash": "5e75a3821782b9cc2c357b4d8076a440", "version": 7 }, - "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_eth": { + "invoke.createBtcPerpsMarket": { "artifacts": { "contracts": {}, "txns": { - "OracleManagerProxy_registerNode_pyth_offchain_lookup_eth": { - "hash": "0x1a81fea1af1fabaa5d621abef774a5115ad65fa4fb5d7115466dbab098c81aac", + "createBtcPerpsMarket": { + "hash": "0x0cd1fbf44081b0d1510366065b5b96aacd663ec34b8d90e107a9066946a029ff", + "blockNumber": "68535543", + "timestamp": "1722632327", "events": { - "NodeRegistered": [ + "MarketCreated": [ { - "name": "NodeRegistered", + "name": "MarketCreated", "args": [ - "0xd4b79090164adeed87caf50d977b67ed778198653cd802e0ff993e427c5a9fad", - 9, - "0x0000000000000000000000000ea49b2e23387cd99cecebda52041c604e40992eff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace0000000000000000000000000000000000000000000000000000000000000e10", - [] + "200", + "Bitcoin", + "BTC" ] } ] }, - "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_eth", - "gasUsed": 155351, - "gasCost": "3098400000", + "deployedOn": "invoke.createBtcPerpsMarket", + "gasUsed": 183003, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": { - "eth_lookup_oracle_id": "0xd4b79090164adeed87caf50d977b67ed778198653cd802e0ff993e427c5a9fad" - } + "settings": {} }, - "hash": "919efa4fd419b2606ba9a037981f0c69", + "hash": "f2b252da31863f540c57d73d1500e279", "version": 7 }, - "invoke.OracleManagerProxy_registerNode_staleness_arb": { + "invoke.createSolPerpsMarket": { "artifacts": { "contracts": {}, "txns": { - "OracleManagerProxy_registerNode_staleness_arb": { - "hash": "0x81a16111d35fdebe240471270e1983c137882dbe4a2b9b8e5fc7b8e60f4e613d", + "createSolPerpsMarket": { + "hash": "0xe9d9dacd2ae086816fd3a3607a944b6636cb1d6eee010c9a636bbcf81408e5c3", + "blockNumber": "68535548", + "timestamp": "1722632329", "events": { - "NodeRegistered": [ + "MarketCreated": [ { - "name": "NodeRegistered", + "name": "MarketCreated", "args": [ - "0x3f2dcd001d07de15ef2712bc750f5ca8374a953d50c4e208fc871270f960eddb", - 7, - "0x0000000000000000000000000000000000000000000000000000000000000e10", - [ - "0x929d2d9105ebf7012feeb32b34364a9914300bcc1974492b324ff0e65621715b", - "0x9be3ad46045ca3e2944d6a98707d813965ac907f3a47eee9c8e2b73fa65a8896" - ] + "300", + "Solana", + "SOL" ] } ] }, - "deployedOn": "invoke.OracleManagerProxy_registerNode_staleness_arb", - "gasUsed": 221079, - "gasCost": "3071080000", + "deployedOn": "invoke.createSolPerpsMarket", + "gasUsed": 165903, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": { - "arb_oracle_id": "0x3f2dcd001d07de15ef2712bc750f5ca8374a953d50c4e208fc871270f960eddb" - } + "settings": {} }, - "hash": "87dfd48ef589d9bcd64c278caac18de1", + "hash": "d839c3be021e7f2f82f81d5a7342ed27", "version": 7 }, - "invoke.OracleManagerProxy_registerNode_staleness_eth": { + "invoke.createWifPerpsMarket": { "artifacts": { "contracts": {}, "txns": { - "OracleManagerProxy_registerNode_staleness_eth": { - "hash": "0x417fd9994d2e16dabad9725c52ebc028d8e79505961f4700be6b3d56b333599c", + "createWifPerpsMarket": { + "hash": "0x4d4ef7a60aba840e1a0622507243b09c1e741d12f7226e7880136e40eb9527a0", + "blockNumber": "68535553", + "timestamp": "1722632331", "events": { - "NodeRegistered": [ + "MarketCreated": [ { - "name": "NodeRegistered", + "name": "MarketCreated", "args": [ - "0x93249440fb2535a0425e3134c597f4570fbae358ce9a039bff9957ccb1a74f37", - 7, - "0x0000000000000000000000000000000000000000000000000000000000000e10", - [ - "0xf7c481e06a0c254a621900a32e9f38b6e929d650074057986a4966dccaef1125", - "0xd4b79090164adeed87caf50d977b67ed778198653cd802e0ff993e427c5a9fad" - ] + "400", + "dogwifhat", + "Wif" ] } ] }, - "deployedOn": "invoke.OracleManagerProxy_registerNode_staleness_eth", - "gasUsed": 221062, - "gasCost": "3072310000", + "deployedOn": "invoke.createWifPerpsMarket", + "gasUsed": 165939, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": { - "eth_oracle_id": "0x93249440fb2535a0425e3134c597f4570fbae358ce9a039bff9957ccb1a74f37" - } + "settings": {} }, - "hash": "1cb89e924ded043d5758f31c8c8a1d83", + "hash": "0e46b6bf9b6191c78cea0a41486f1fb2", "version": 7 }, - "invoke.CoreProxy_configureCollateral_arb": { + "invoke.setInfinexAsReferrerOnPerpsMarket": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_configureCollateral_arb": { - "hash": "0xb889951ba1f43bdbd356e391fd709ab807e1d15a280e52f455a44c224ec15b97", + "setInfinexAsReferrerOnPerpsMarket": { + "hash": "0x4f233f9d76b21aa755438a6102c46b202bd50e15894b989dab7bad7bc387ae3a", + "blockNumber": "68535558", + "timestamp": "1722632334", "events": { - "CollateralConfigured": [ + "ReferrerShareUpdated": [ { - "name": "CollateralConfigured", + "name": "ReferrerShareUpdated", "args": [ - "0x7b356eEdABc1035834cd1f714658627fcb4820E3", - { - "depositingEnabled": true, - "issuanceRatioD18": "3000000000000000000", - "liquidationRatioD18": "1500000000000000000", - "liquidationRewardD18": "500000000000000000", - "oracleNodeId": "0x3f2dcd001d07de15ef2712bc750f5ca8374a953d50c4e208fc871270f960eddb", - "tokenAddress": "0x7b356eEdABc1035834cd1f714658627fcb4820E3", - "minDelegationD18": "50000000000000000000" - } + "0xa7DB9b0a95D253022068d43BD1d64756f92eF83C", + "200000000000000000" ] } ] }, - "deployedOn": "invoke.CoreProxy_configureCollateral_arb", - "gasUsed": 243680, - "gasCost": "3069190000", + "deployedOn": "invoke.setInfinexAsReferrerOnPerpsMarket", + "gasUsed": 56763, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "d94ee3e77bb5c2a2eb241e6e3866592f", + "hash": "743278ea55be621de1998be91e37b260", "version": 7 }, - "invoke.CoreProxy_configureCollateral_weth": { + "invoke.setInterestRateParams": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_configureCollateral_weth": { - "hash": "0x221514d21a79d433850a795f99856e9a647a645738c90a1ea0e0a098de3289d7", + "setInterestRateParams": { + "hash": "0x2170e50d7e4e60c786df4933aab19e3dd7fe05ff6c44ec81ee8ef7904fb66651", + "blockNumber": "68535563", + "timestamp": "1722632336", "events": { - "CollateralConfigured": [ + "InterestRateParametersSet": [ { - "name": "CollateralConfigured", + "name": "InterestRateParametersSet", "args": [ - "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73", - { - "depositingEnabled": true, - "issuanceRatioD18": "2000000000000000000", - "liquidationRatioD18": "1250000000000000000", - "liquidationRewardD18": "5000000000000000", - "oracleNodeId": "0x93249440fb2535a0425e3134c597f4570fbae358ce9a039bff9957ccb1a74f37", - "tokenAddress": "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73", - "minDelegationD18": "10000000000000000" - } + "0", + "0", + "0" ] } ] }, - "deployedOn": "invoke.CoreProxy_configureCollateral_weth", - "gasUsed": 243661, - "gasCost": "3052280000", + "deployedOn": "invoke.setInterestRateParams", + "gasUsed": 39471, + "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "a97345d6ad58cbe6a23cd70b630fdc6b", - "version": 7 - }, - "setting.max_collateral_limit_arb": { - "artifacts": { - "settings": { - "max_collateral_limit_arb": "10000000000000000000000000" - } - }, - "hash": "864c3d00b6ac650501aef463342c436d", - "version": 7 - }, - "setting.max_collateral_limit_dai": { - "artifacts": { - "settings": { - "max_collateral_limit_dai": "0" - } - }, - "hash": "4dcc24a97eaa6583aab6a5b0cb07d27e", + "hash": "0fd7009990cf34d058cfc1134f1463f3", "version": 7 }, - "setting.max_collateral_limit_usdc": { + "invoke.setKwentaAsReferrerOnPerpsMarket": { "artifacts": { - "settings": { - "max_collateral_limit_usdc": "10000000000000000000000000" - } + "contracts": {}, + "txns": { + "setKwentaAsReferrerOnPerpsMarket": { + "hash": "0x96a285587a775bb7b3c5d3da57813e9497c0680c90e03ab1c75c72c36a7e6d0b", + "blockNumber": "68535567", + "timestamp": "1722632338", + "events": { + "ReferrerShareUpdated": [ + { + "name": "ReferrerShareUpdated", + "args": [ + "0xFffe627790EF1B28E3b48000b8Ba964b55766fF8", + "200000000000000000" + ] + } + ] + }, + "deployedOn": "invoke.setKwentaAsReferrerOnPerpsMarket", + "gasUsed": 56751, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} }, - "hash": "864c3d00b6ac650501aef463342c436d", + "hash": "1693cd9e96bb76f00ed793d2a5997c5e", "version": 7 }, - "setting.max_collateral_limit_weth": { + "invoke.setPerAccountCapsPerps": { "artifacts": { - "settings": { - "max_collateral_limit_weth": "5400000000000000000000" - } + "contracts": {}, + "txns": { + "setPerAccountCapsPerps": { + "hash": "0xe995481ea6f3b1dca7d4fc8ee49c9b9681c148e4de25a9290217d20622aa405a", + "blockNumber": "68535575", + "timestamp": "1722632340", + "events": { + "PerAccountCapsSet": [ + { + "name": "PerAccountCapsSet", + "args": [ + "10", + "3" + ] + } + ] + }, + "deployedOn": "invoke.setPerAccountCapsPerps", + "gasUsed": 56578, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} }, - "hash": "0ed0892905460f12e97a8d9476fa7bdc", + "hash": "2185ffd6c23de55ed70a6bfd742de814", "version": 7 }, - "invoke.CoreProxy_setPoolCollateralConfiguration_arb": { + "invoke.setPerpsLiquidationRewardGuards": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_setPoolCollateralConfiguration_arb": { - "hash": "0x8aa61f0e317f41eb845f40bd390da039e65116f496b869485d990ccb7acc25be", + "setPerpsLiquidationRewardGuards": { + "hash": "0x613474e1a97d0a99041e475e90f42088e107dc46221cac6e96ab1e991f5394dd", + "blockNumber": "68535581", + "timestamp": "1722632342", "events": { - "PoolCollateralConfigurationUpdated": [ + "KeeperRewardGuardsSet": [ { - "name": "PoolCollateralConfigurationUpdated", + "name": "KeeperRewardGuardsSet", "args": [ - "1", - "0x7b356eEdABc1035834cd1f714658627fcb4820E3", - { - "collateralLimitD18": "10000000000000000000000000", - "issuanceRatioD18": "0" - } + "1000000000000000000", + "300000000000000000", + "30000000000000000000", + "300000000000000" ] } ] }, - "deployedOn": "invoke.CoreProxy_setPoolCollateralConfiguration_arb", - "gasUsed": 253449, + "deployedOn": "invoke.setPerpsLiquidationRewardGuards", + "gasUsed": 123868, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "e2955c260129b43126d79db920c56121", + "hash": "e17e5cfdd35fb09150da272d3eafadd3", "version": 7 }, - "invoke.CoreProxy_setPoolCollateralConfiguration_dai": { + "invoke.setPerpsMaxCollateralForSnxUsd": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_setPoolCollateralConfiguration_dai": { - "hash": "0xba22f9eb7917bad0ba70c349ceda65ec190c2f26fc8c1d9b8afe85687bec7acb", + "setPerpsMaxCollateralForSnxUsd": { + "hash": "0x0c01d6f95573f7b94ba217733f3e3897b2f507f6cf98ae796f214414fe6ef9cc", + "blockNumber": "68535594", + "timestamp": "1722632347", "events": { - "PoolCollateralConfigurationUpdated": [ + "CollateralConfigurationSet": [ { - "name": "PoolCollateralConfigurationUpdated", + "name": "CollateralConfigurationSet", "args": [ - "1", - "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", - { - "collateralLimitD18": "0", - "issuanceRatioD18": "0" - } + "0", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "0", + "0", + "0" ] } ] }, - "deployedOn": "invoke.CoreProxy_setPoolCollateralConfiguration_dai", - "gasUsed": 241840, + "deployedOn": "invoke.setPerpsMaxCollateralForSnxUsd", + "gasUsed": 97657, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "0685c0abb6d456e4f98f4889bbb78446", + "hash": "b3fbd0ca1c4c342482eecb0f9672232f", "version": 7 }, - "invoke.CoreProxy_setPoolCollateralConfiguration_usdc": { + "invoke.setPolynomialAsReferrerOnPerpsMarket": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_setPoolCollateralConfiguration_usdc": { - "hash": "0x05b88988ff1af6f42f131349454fcc3bd9d3a2cbd1bbde38033e5386a5202ceb", + "setPolynomialAsReferrerOnPerpsMarket": { + "hash": "0x8c63255d66e6d26124f394e09c6c35f29f58749417fd45890bc78835c146512d", + "blockNumber": "68535601", + "timestamp": "1722632349", "events": { - "PoolCollateralConfigurationUpdated": [ + "ReferrerShareUpdated": [ { - "name": "PoolCollateralConfigurationUpdated", + "name": "ReferrerShareUpdated", "args": [ - "1", - "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", - { - "collateralLimitD18": "10000000000000000000000000", - "issuanceRatioD18": "0" - } + "0x159c143eF9Be79d5672726150462C9EfA679b27c", + "200000000000000000" ] } ] }, - "deployedOn": "invoke.CoreProxy_setPoolCollateralConfiguration_usdc", - "gasUsed": 253449, + "deployedOn": "invoke.setPolynomialAsReferrerOnPerpsMarket", + "gasUsed": 56763, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } - }, - "settings": {} + }, + "settings": {} + }, + "hash": "2a4e677e05c90db25715f2a9ef40e036", + "version": 7 + }, + "provision.RewardsDistributor_PerpsCollateral_sBTC_ARB_liquidation_rewards": { + "artifacts": { + "imports": { + "RewardsDistributor_PerpsCollateral_sBTC_ARB_liquidation_rewards": { + "url": "ipfs://QmPWohysGyr8f2n5gC2dVxzfR5HyHkgyt4MM9Kehj6z5xR", + "tags": [ + "latest" + ], + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "preset": "ETH_Perps_rewards", + "settings": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + }, + "contracts": { + "RewardsDistributorExternal": { + "address": "0xA1bda9CA49cE373102A9Ef1a9Db0798eeF87AdCa", + "abi": [ + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_, address authorizedExternalDistributor_)", + "function SYSTEM_PRECISION() view returns (uint256)", + "function authorizedExternalDistributor() view returns (address)", + "function collateralType() view returns (address)", + "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", + "function name() view returns (string)", + "function onPositionUpdated(uint128, uint128, address, uint256)", + "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", + "function payoutToken() view returns (address)", + "function poolId() view returns (uint128)", + "function precision() view returns (uint256)", + "function rewardManager() view returns (address)", + "function rewardsAmount() view returns (uint256)", + "function setShouldFailPayout(bool shouldFailPayout_)", + "function shouldFailPayout() view returns (bool)", + "function supportsInterface(bytes4 interfaceId) view returns (bool)", + "function token() view returns (address)", + "error FailedTransfer(address from, address to, uint256 value)", + "error InvalidParameter(string parameter, string reason)", + "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", + "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", + "error Unauthorized(address addr)" + ], + "constructorArgs": [ + "0x76490713314fCEC173f44e99346F54c6e92a8E42", + "1", + "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + "18", + "Perps Collateral Liquidation Rewards for ARB (as sBTC)", + "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460" + ], + "linkedLibraries": {}, + "deployTxnHash": "0x90faab890e6be4720a6fa2dda6704c7ed3fd9f4e98ae499e8aa3de58194c7b5d", + "deployTxnBlockNumber": "68535609", + "deployTimestamp": "1722632351", + "sourceName": "src/RewardsDistributorExternal.sol", + "contractName": "RewardsDistributorExternal", + "deployedOn": "contract.RewardsDistributorExternal", + "gasUsed": 985988, + "gasCost": "100000000" + } + }, + "extras": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + } + } + } + }, + "hash": null, + "version": 7 + }, + "provision.RewardsDistributor_PerpsCollateral_sBTC_DAI_liquidation_rewards": { + "artifacts": { + "imports": { + "RewardsDistributor_PerpsCollateral_sBTC_DAI_liquidation_rewards": { + "url": "ipfs://QmZcEmvFxUztjN5NVoVeE8owMgfGsdy29oPauzna7r4hR1", + "tags": [ + "latest" + ], + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "preset": "ETH_Perps_rewards", + "settings": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + }, + "contracts": { + "RewardsDistributorExternal": { + "address": "0xFd6F52438a8E5ac9aD9ace656ff36c0893e3BB49", + "abi": [ + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_, address authorizedExternalDistributor_)", + "function SYSTEM_PRECISION() view returns (uint256)", + "function authorizedExternalDistributor() view returns (address)", + "function collateralType() view returns (address)", + "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", + "function name() view returns (string)", + "function onPositionUpdated(uint128, uint128, address, uint256)", + "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", + "function payoutToken() view returns (address)", + "function poolId() view returns (uint128)", + "function precision() view returns (uint256)", + "function rewardManager() view returns (address)", + "function rewardsAmount() view returns (uint256)", + "function setShouldFailPayout(bool shouldFailPayout_)", + "function shouldFailPayout() view returns (bool)", + "function supportsInterface(bytes4 interfaceId) view returns (bool)", + "function token() view returns (address)", + "error FailedTransfer(address from, address to, uint256 value)", + "error InvalidParameter(string parameter, string reason)", + "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", + "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", + "error Unauthorized(address addr)" + ], + "constructorArgs": [ + "0x76490713314fCEC173f44e99346F54c6e92a8E42", + "1", + "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", + "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + "18", + "Perps Collateral Liquidation Rewards for DAI (as sBTC)", + "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460" + ], + "linkedLibraries": {}, + "deployTxnHash": "0x2e7db6338fac31aee5f6e6158834a7e367542a0a3d7fc2e53955365983f4f679", + "deployTxnBlockNumber": "68535619", + "deployTimestamp": "1722632354", + "sourceName": "src/RewardsDistributorExternal.sol", + "contractName": "RewardsDistributorExternal", + "deployedOn": "contract.RewardsDistributorExternal", + "gasUsed": 985988, + "gasCost": "100000000" + } + }, + "extras": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + } + } + } + }, + "hash": null, + "version": 7 + }, + "provision.RewardsDistributor_PerpsCollateral_sBTC_USDC_liquidation_rewards": { + "artifacts": { + "imports": { + "RewardsDistributor_PerpsCollateral_sBTC_USDC_liquidation_rewards": { + "url": "ipfs://Qmb6QBTSc7ERrXjRbBH3HC7LCLVGhVvKPWHZFyqb9ZRDex", + "tags": [ + "latest" + ], + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "preset": "ETH_Perps_rewards", + "settings": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + }, + "contracts": { + "RewardsDistributorExternal": { + "address": "0xe204Ac2eEd6D49047645e395331E1b1AfB371a6E", + "abi": [ + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_, address authorizedExternalDistributor_)", + "function SYSTEM_PRECISION() view returns (uint256)", + "function authorizedExternalDistributor() view returns (address)", + "function collateralType() view returns (address)", + "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", + "function name() view returns (string)", + "function onPositionUpdated(uint128, uint128, address, uint256)", + "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", + "function payoutToken() view returns (address)", + "function poolId() view returns (uint128)", + "function precision() view returns (uint256)", + "function rewardManager() view returns (address)", + "function rewardsAmount() view returns (uint256)", + "function setShouldFailPayout(bool shouldFailPayout_)", + "function shouldFailPayout() view returns (bool)", + "function supportsInterface(bytes4 interfaceId) view returns (bool)", + "function token() view returns (address)", + "error FailedTransfer(address from, address to, uint256 value)", + "error InvalidParameter(string parameter, string reason)", + "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", + "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", + "error Unauthorized(address addr)" + ], + "constructorArgs": [ + "0x76490713314fCEC173f44e99346F54c6e92a8E42", + "1", + "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", + "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + "18", + "Perps Collateral Liquidation Rewards for USDC (as sBTC)", + "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460" + ], + "linkedLibraries": {}, + "deployTxnHash": "0x8fe253a9cb70d1b57af3ed77689b766013827f794b27bd51992aad4d6609c179", + "deployTxnBlockNumber": "68535627", + "deployTimestamp": "1722632356", + "sourceName": "src/RewardsDistributorExternal.sol", + "contractName": "RewardsDistributorExternal", + "deployedOn": "contract.RewardsDistributorExternal", + "gasUsed": 986000, + "gasCost": "100000000" + } + }, + "extras": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + } + } + } + }, + "hash": null, + "version": 7 + }, + "provision.RewardsDistributor_PerpsCollateral_sBTC_USDe_liquidation_rewards": { + "artifacts": { + "imports": { + "RewardsDistributor_PerpsCollateral_sBTC_USDe_liquidation_rewards": { + "url": "ipfs://QmP9bwHq4MrKVr8Ma1qSdT6KLQ89VUxfBQTt6UiaZvxidG", + "tags": [ + "latest" + ], + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "preset": "ETH_Perps_rewards", + "settings": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + }, + "contracts": { + "RewardsDistributorExternal": { + "address": "0xDb706ca67A1313e1bff898ABa4601451C9E09dc2", + "abi": [ + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_, address authorizedExternalDistributor_)", + "function SYSTEM_PRECISION() view returns (uint256)", + "function authorizedExternalDistributor() view returns (address)", + "function collateralType() view returns (address)", + "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", + "function name() view returns (string)", + "function onPositionUpdated(uint128, uint128, address, uint256)", + "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", + "function payoutToken() view returns (address)", + "function poolId() view returns (uint128)", + "function precision() view returns (uint256)", + "function rewardManager() view returns (address)", + "function rewardsAmount() view returns (uint256)", + "function setShouldFailPayout(bool shouldFailPayout_)", + "function shouldFailPayout() view returns (bool)", + "function supportsInterface(bytes4 interfaceId) view returns (bool)", + "function token() view returns (address)", + "error FailedTransfer(address from, address to, uint256 value)", + "error InvalidParameter(string parameter, string reason)", + "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", + "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", + "error Unauthorized(address addr)" + ], + "constructorArgs": [ + "0x76490713314fCEC173f44e99346F54c6e92a8E42", + "1", + "0xCf45784084Ca3fd91C215a87265014c3DC67182D", + "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + "18", + "Perps Collateral Liquidation Rewards for USDe (as sBTC)", + "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460" + ], + "linkedLibraries": {}, + "deployTxnHash": "0xe120c0010140981cc5f99c8ac3c2f2d34db205b4df917a2bed603a7d2f56e872", + "deployTxnBlockNumber": "68535633", + "deployTimestamp": "1722632359", + "sourceName": "src/RewardsDistributorExternal.sol", + "contractName": "RewardsDistributorExternal", + "deployedOn": "contract.RewardsDistributorExternal", + "gasUsed": 986000, + "gasCost": "100000000" + } + }, + "extras": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + } + } + } }, - "hash": "bda00a978481c054a3146583e20acd08", + "hash": null, "version": 7 }, - "invoke.CoreProxy_setPoolCollateralConfiguration_weth": { + "provision.RewardsDistributor_PerpsCollateral_sBTC_sUSDE_liquidation_rewards": { "artifacts": { - "contracts": {}, - "txns": { - "CoreProxy_setPoolCollateralConfiguration_weth": { - "hash": "0x1da65212d8299535b81014f491e1f07efe2593db8d1c88bce7b0376452309251", - "blockNumber": "67705279", - "timestamp": "1722345252", - "events": { - "PoolCollateralConfigurationUpdated": [ - { - "name": "PoolCollateralConfigurationUpdated", - "args": [ - "1", - "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73", - { - "collateralLimitD18": "5400000000000000000000", - "issuanceRatioD18": "0" - } - ] - } - ] + "imports": { + "RewardsDistributor_PerpsCollateral_sBTC_sUSDE_liquidation_rewards": { + "url": "ipfs://QmVyhnYmH4Fhkv4SxZ4VPZCW3kDebVZzGVUX7WtDNJnaVB", + "tags": [ + "latest" + ], + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "preset": "ETH_Perps_rewards", + "settings": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" }, - "deployedOn": "invoke.CoreProxy_setPoolCollateralConfiguration_weth", - "gasUsed": 308553, - "gasCost": "100000000", - "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + "contracts": { + "RewardsDistributorExternal": { + "address": "0x76ac18078973A3C252c7cdcb4869dF0bA458c5A1", + "abi": [ + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_, address authorizedExternalDistributor_)", + "function SYSTEM_PRECISION() view returns (uint256)", + "function authorizedExternalDistributor() view returns (address)", + "function collateralType() view returns (address)", + "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", + "function name() view returns (string)", + "function onPositionUpdated(uint128, uint128, address, uint256)", + "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", + "function payoutToken() view returns (address)", + "function poolId() view returns (uint128)", + "function precision() view returns (uint256)", + "function rewardManager() view returns (address)", + "function rewardsAmount() view returns (uint256)", + "function setShouldFailPayout(bool shouldFailPayout_)", + "function shouldFailPayout() view returns (bool)", + "function supportsInterface(bytes4 interfaceId) view returns (bool)", + "function token() view returns (address)", + "error FailedTransfer(address from, address to, uint256 value)", + "error InvalidParameter(string parameter, string reason)", + "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", + "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", + "error Unauthorized(address addr)" + ], + "constructorArgs": [ + "0x76490713314fCEC173f44e99346F54c6e92a8E42", + "1", + "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", + "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + "18", + "Perps Collateral Liquidation Rewards for sUSDE (as sBTC)", + "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460" + ], + "linkedLibraries": {}, + "deployTxnHash": "0x7bda3a86f45bc70ab21c48e0741b8b670d717240c0b20ca509333092e8278bc8", + "deployTxnBlockNumber": "68535640", + "deployTimestamp": "1722632361", + "sourceName": "src/RewardsDistributorExternal.sol", + "contractName": "RewardsDistributorExternal", + "deployedOn": "contract.RewardsDistributorExternal", + "gasUsed": 986012, + "gasCost": "100000000" + } + }, + "extras": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + } } - }, - "settings": {} + } }, - "hash": "9fc154ec3f5c593a9b890ccbeaaf85ef", + "hash": null, "version": 7 }, - "setting.usd_token_name": { + "provision.RewardsDistributor_PerpsCollateral_sBTC_wETH_liquidation_rewards": { "artifacts": { - "settings": { - "usd_token_name": "0x555344546f6b656e000000000000000000000000000000000000000000000000" + "imports": { + "RewardsDistributor_PerpsCollateral_sBTC_wETH_liquidation_rewards": { + "url": "ipfs://QmYFeQXANYa91aCAvgq3XB4ui3Kiz9hWJH4w1T6kDn415q", + "tags": [ + "latest" + ], + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "preset": "ETH_Perps_rewards", + "settings": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + }, + "contracts": { + "RewardsDistributorExternal": { + "address": "0xD8F64A0Fc982C0d83E0A8e3c4d565D0a19C9D884", + "abi": [ + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_, address authorizedExternalDistributor_)", + "function SYSTEM_PRECISION() view returns (uint256)", + "function authorizedExternalDistributor() view returns (address)", + "function collateralType() view returns (address)", + "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", + "function name() view returns (string)", + "function onPositionUpdated(uint128, uint128, address, uint256)", + "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", + "function payoutToken() view returns (address)", + "function poolId() view returns (uint128)", + "function precision() view returns (uint256)", + "function rewardManager() view returns (address)", + "function rewardsAmount() view returns (uint256)", + "function setShouldFailPayout(bool shouldFailPayout_)", + "function shouldFailPayout() view returns (bool)", + "function supportsInterface(bytes4 interfaceId) view returns (bool)", + "function token() view returns (address)", + "error FailedTransfer(address from, address to, uint256 value)", + "error InvalidParameter(string parameter, string reason)", + "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", + "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", + "error Unauthorized(address addr)" + ], + "constructorArgs": [ + "0x76490713314fCEC173f44e99346F54c6e92a8E42", + "1", + "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73", + "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + "18", + "Perps Collateral Liquidation Rewards for wETH (as sBTC)", + "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460" + ], + "linkedLibraries": {}, + "deployTxnHash": "0xebf7abfb311fc273150743331511e4dfdfeb9be98c4c37ed3ac4a53211a7d286", + "deployTxnBlockNumber": "68535652", + "deployTimestamp": "1722632364", + "sourceName": "src/RewardsDistributorExternal.sol", + "contractName": "RewardsDistributorExternal", + "deployedOn": "contract.RewardsDistributorExternal", + "gasUsed": 986000, + "gasCost": "100000000" + } + }, + "extras": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + } + } } }, - "hash": "58924184b47a952bef2b6094b1f9856c", + "hash": null, "version": 7 }, - "invoke.CoreProxy_initOrUpgradeToken_USDToken": { + "provision.RewardsDistributor_PerpsCollateral_sETH_ARB_liquidation_rewards": { "artifacts": { - "contracts": {}, - "txns": { - "CoreProxy_initOrUpgradeToken_USDToken": { - "hash": "0xd3f4351e2603b462c973c39c272a0a41777537dd8c97e5dfcdea832404114afc", - "events": {}, - "deployedOn": "invoke.CoreProxy_initOrUpgradeToken_USDToken", - "gasUsed": 308402, - "gasCost": "100000000", - "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + "imports": { + "RewardsDistributor_PerpsCollateral_sETH_ARB_liquidation_rewards": { + "url": "ipfs://Qmbw5wa2jt3Ur7wzJ3bT6KJC3MA8JDP5nxN8WTUT2BDwnA", + "tags": [ + "latest" + ], + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "preset": "ETH_Perps_rewards", + "settings": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + }, + "contracts": { + "RewardsDistributorExternal": { + "address": "0x2E417a17ac20c63aafCbfa271B0c8C3ddBcD9bca", + "abi": [ + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_, address authorizedExternalDistributor_)", + "function SYSTEM_PRECISION() view returns (uint256)", + "function authorizedExternalDistributor() view returns (address)", + "function collateralType() view returns (address)", + "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", + "function name() view returns (string)", + "function onPositionUpdated(uint128, uint128, address, uint256)", + "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", + "function payoutToken() view returns (address)", + "function poolId() view returns (uint128)", + "function precision() view returns (uint256)", + "function rewardManager() view returns (address)", + "function rewardsAmount() view returns (uint256)", + "function setShouldFailPayout(bool shouldFailPayout_)", + "function shouldFailPayout() view returns (bool)", + "function supportsInterface(bytes4 interfaceId) view returns (bool)", + "function token() view returns (address)", + "error FailedTransfer(address from, address to, uint256 value)", + "error InvalidParameter(string parameter, string reason)", + "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", + "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", + "error Unauthorized(address addr)" + ], + "constructorArgs": [ + "0x76490713314fCEC173f44e99346F54c6e92a8E42", + "1", + "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + "0x711d4F22CC39223a7273E45537c9d371E66A8a40", + "18", + "Perps Collateral Liquidation Rewards for ARB (as sETH)", + "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460" + ], + "linkedLibraries": {}, + "deployTxnHash": "0x963ea18ea206478a89978ed8deccd12cd4f6062941275c56c2615154034813db", + "deployTxnBlockNumber": "68535661", + "deployTimestamp": "1722632367", + "sourceName": "src/RewardsDistributorExternal.sol", + "contractName": "RewardsDistributorExternal", + "deployedOn": "contract.RewardsDistributorExternal", + "gasUsed": 985988, + "gasCost": "100000000" + } + }, + "extras": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + } } - }, - "settings": {} + } }, - "hash": "c259c5630137a392492cef4e107899cf", + "hash": null, "version": 7 }, - "provision.RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_ARB_lp": { + "provision.RewardsDistributor_PerpsCollateral_sETH_DAI_liquidation_rewards": { "artifacts": { "imports": { - "RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_ARB_lp": { - "url": "ipfs://QmRGxEwdo8xdk7w2hjmAFePtP35fH4JxWUe3r46Tjjih73", + "RewardsDistributor_PerpsCollateral_sETH_DAI_liquidation_rewards": { + "url": "ipfs://QmNYQbcwa6u11nnBQULQT6QTCpEUHjfZtLtNNJBMmNLiZK", "tags": [ "latest" ], - "target": "synthetix-rewards-distributor:0.0.2@main", - "preset": "main", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "preset": "ETH_Perps_rewards", "settings": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", - "name": "Rewards Distributor V3", + "name": "Rewards Distributor (External) V3", "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", "payoutTokenDecimals": "18", "poolId": "1", @@ -16410,11 +22233,12 @@ "salt": "rewards" }, "contracts": { - "RewardsDistributor": { - "address": "0x8Db7E7E3f00c2Fd011Bb715935d33BfA0570cDB6", + "RewardsDistributorExternal": { + "address": "0x203d79e75532Da8701ffb43cec3a40828Ebfc4a9", "abi": [ - "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_)", + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_, address authorizedExternalDistributor_)", "function SYSTEM_PRECISION() view returns (uint256)", + "function authorizedExternalDistributor() view returns (address)", "function collateralType() view returns (address)", "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", "function name() view returns (string)", @@ -16438,23 +22262,27 @@ "constructorArgs": [ "0x76490713314fCEC173f44e99346F54c6e92a8E42", "1", - "0x7b356eEdABc1035834cd1f714658627fcb4820E3", - "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", + "0x711d4F22CC39223a7273E45537c9d371E66A8a40", "18", - "Spartan Council Pool ARB Rewards for ARB LP" + "Perps Collateral Liquidation Rewards for DAI (as sETH)", + "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460" ], "linkedLibraries": {}, - "deployTxnHash": "0x1a4e42a87c7bc7012599196aad0dec4aa79f527001ccc8260ab89c83476cff77", - "sourceName": "src/RewardsDistributor.sol", - "contractName": "RewardsDistributor", - "deployedOn": "contract.RewardsDistributor", - "gasUsed": 1057483, - "gasCost": "274790000" + "deployTxnHash": "0xfe3150bda89ae139442285ec26d0df7a3f476544c37755fb3bca254e0c6fc8c2", + "deployTxnBlockNumber": "68535667", + "deployTimestamp": "1722632369", + "sourceName": "src/RewardsDistributorExternal.sol", + "contractName": "RewardsDistributorExternal", + "deployedOn": "contract.RewardsDistributorExternal", + "gasUsed": 985988, + "gasCost": "100000000" } }, "extras": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", - "name": "Rewards Distributor V3", + "name": "Rewards Distributor (External) V3", "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", "payoutTokenDecimals": "18", "poolId": "1", @@ -16467,19 +22295,20 @@ "hash": null, "version": 7 }, - "provision.RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDC_lp": { + "provision.RewardsDistributor_PerpsCollateral_sETH_USDC_liquidation_rewards": { "artifacts": { "imports": { - "RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDC_lp": { - "url": "ipfs://QmWDdFALv5ix7o1aRwJsARDyBJhJCEsRKnHzANreht95J4", + "RewardsDistributor_PerpsCollateral_sETH_USDC_liquidation_rewards": { + "url": "ipfs://QmPR9dpJRLiY7eeZRHsFD4vdqX8LLuBgw9bUGj3THEBvWk", "tags": [ "latest" ], - "target": "synthetix-rewards-distributor:0.0.2@main", - "preset": "main", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "preset": "ETH_Perps_rewards", "settings": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", - "name": "Rewards Distributor V3", + "name": "Rewards Distributor (External) V3", "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", "payoutTokenDecimals": "18", "poolId": "1", @@ -16487,11 +22316,12 @@ "salt": "rewards" }, "contracts": { - "RewardsDistributor": { - "address": "0x26c9B83fA781e93Ec4cA5fBAC07AC82135872512", + "RewardsDistributorExternal": { + "address": "0x8b0a6870A04B051992654523A17781ac81A7B1d8", "abi": [ - "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_)", + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_, address authorizedExternalDistributor_)", "function SYSTEM_PRECISION() view returns (uint256)", + "function authorizedExternalDistributor() view returns (address)", "function collateralType() view returns (address)", "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", "function name() view returns (string)", @@ -16516,22 +22346,26 @@ "0x76490713314fCEC173f44e99346F54c6e92a8E42", "1", "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", - "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + "0x711d4F22CC39223a7273E45537c9d371E66A8a40", "18", - "Spartan Council Pool ARB Rewards for USDC LP" + "Perps Collateral Liquidation Rewards for USDC (as sETH)", + "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460" ], "linkedLibraries": {}, - "deployTxnHash": "0xd57c1fa944210b804bbcaea121b98dbc531ffc162b4e8e9c404a3429a7055d57", - "sourceName": "src/RewardsDistributor.sol", - "contractName": "RewardsDistributor", - "deployedOn": "contract.RewardsDistributor", - "gasUsed": 1059220, - "gasCost": "271430000" + "deployTxnHash": "0x5a65af253fba3fadbb1cf1ae1ed02853e2b2d848cdebad9a1f9c3f38ef4b8b48", + "deployTxnBlockNumber": "68535672", + "deployTimestamp": "1722632371", + "sourceName": "src/RewardsDistributorExternal.sol", + "contractName": "RewardsDistributorExternal", + "deployedOn": "contract.RewardsDistributorExternal", + "gasUsed": 986000, + "gasCost": "100000000" } }, "extras": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", - "name": "Rewards Distributor V3", + "name": "Rewards Distributor (External) V3", "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", "payoutTokenDecimals": "18", "poolId": "1", @@ -16544,19 +22378,20 @@ "hash": null, "version": 7 }, - "provision.RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_WETH_lp": { + "provision.RewardsDistributor_PerpsCollateral_sETH_USDe_liquidation_rewards": { "artifacts": { "imports": { - "RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_WETH_lp": { - "url": "ipfs://QmbP2LPfPRTHNitrTPVyUaKCJidTwoBRTLkHVdoZgww4Fq", + "RewardsDistributor_PerpsCollateral_sETH_USDe_liquidation_rewards": { + "url": "ipfs://QmfSeZo33rUcjAEKDtHAuQfVvxyne58cfFstfcBgPAu2MT", "tags": [ "latest" ], - "target": "synthetix-rewards-distributor:0.0.2@main", - "preset": "main", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "preset": "ETH_Perps_rewards", "settings": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", - "name": "Rewards Distributor V3", + "name": "Rewards Distributor (External) V3", "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", "payoutTokenDecimals": "18", "poolId": "1", @@ -16564,11 +22399,12 @@ "salt": "rewards" }, "contracts": { - "RewardsDistributor": { - "address": "0x3974935755a50295b727Ab40ae144BE29391d818", + "RewardsDistributorExternal": { + "address": "0x3fb35803aEDD44B125AA3a263fB6297C5d47f249", "abi": [ - "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_)", + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_, address authorizedExternalDistributor_)", "function SYSTEM_PRECISION() view returns (uint256)", + "function authorizedExternalDistributor() view returns (address)", "function collateralType() view returns (address)", "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", "function name() view returns (string)", @@ -16592,23 +22428,27 @@ "constructorArgs": [ "0x76490713314fCEC173f44e99346F54c6e92a8E42", "1", - "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73", - "0x7b356eEdABc1035834cd1f714658627fcb4820E3", + "0xCf45784084Ca3fd91C215a87265014c3DC67182D", + "0x711d4F22CC39223a7273E45537c9d371E66A8a40", "18", - "Spartan Council Pool ARB Rewards for WETH LP" + "Perps Collateral Liquidation Rewards for USDe (as sETH)", + "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460" ], "linkedLibraries": {}, - "deployTxnHash": "0xce1697c53aed6179c2b3a94c3e6673fcc0f2a10a17ee546e09bfeec8dee0dad4", - "sourceName": "src/RewardsDistributor.sol", - "contractName": "RewardsDistributor", - "deployedOn": "contract.RewardsDistributor", - "gasUsed": 1059074, - "gasCost": "271780000" + "deployTxnHash": "0xb60f81dc708ba02c6016afcd2c383ec12c9adfb8c638f474f376089f53a65a7d", + "deployTxnBlockNumber": "68535679", + "deployTimestamp": "1722632373", + "sourceName": "src/RewardsDistributorExternal.sol", + "contractName": "RewardsDistributorExternal", + "deployedOn": "contract.RewardsDistributorExternal", + "gasUsed": 986000, + "gasCost": "100000000" } }, "extras": { + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", - "name": "Rewards Distributor V3", + "name": "Rewards Distributor (External) V3", "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", "payoutTokenDecimals": "18", "poolId": "1", @@ -16621,267 +22461,82 @@ "hash": null, "version": 7 }, - "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_ARB_lp": { - "artifacts": { - "contracts": {}, - "txns": { - "CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_ARB_lp": { - "hash": "0x3205abc95a14f209d72923f295ea77cbf166f93a83cea2c8318fcc1273197cd0", - "events": { - "RewardsDistributorRegistered": [ - { - "name": "RewardsDistributorRegistered", - "args": [ - "1", - "0x7b356eEdABc1035834cd1f714658627fcb4820E3", - "0x8Db7E7E3f00c2Fd011Bb715935d33BfA0570cDB6" - ] - } - ] - }, - "deployedOn": "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_ARB_lp", - "gasUsed": 135206, - "gasCost": "267410000", - "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" - } - }, - "settings": {} - }, - "hash": "69e1df0ea487ea2a77c5966c53a647be", - "version": 7 - }, - "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDC_lp": { - "artifacts": { - "contracts": {}, - "txns": { - "CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDC_lp": { - "hash": "0x4a6b2f45b20d6f0a3aaf258503daebd75f71b4e653650ad8229879e8949246b5", - "events": { - "RewardsDistributorRegistered": [ - { - "name": "RewardsDistributorRegistered", - "args": [ - "1", - "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", - "0x26c9B83fA781e93Ec4cA5fBAC07AC82135872512" - ] - } - ] - }, - "deployedOn": "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDC_lp", - "gasUsed": 135235, - "gasCost": "266190000", - "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" - } - }, - "settings": {} - }, - "hash": "89726d93b4c50604c1f0ac8baada0ad0", - "version": 7 - }, - "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_WETH_lp": { - "artifacts": { - "contracts": {}, - "txns": { - "CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_WETH_lp": { - "hash": "0x4fa180ac8d1dc6d9c1eea583b1ffe345edf87717462558c8ceeb03a3f899f466", - "events": { - "RewardsDistributorRegistered": [ - { - "name": "RewardsDistributorRegistered", - "args": [ - "1", - "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73", - "0x3974935755a50295b727Ab40ae144BE29391d818" - ] - } - ] - }, - "deployedOn": "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_WETH_lp", - "gasUsed": 135275, - "gasCost": "264490000", - "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" - } - }, - "settings": {} - }, - "hash": "32c7217cc1933525714a4c0bdc2ea804", - "version": 7 - }, - "setting.USDe_issuance_ratio": { - "artifacts": { - "settings": { - "USDe_issuance_ratio": "2000000000000000000" - } - }, - "hash": "09553939422a81e0204384bf690274c4", - "version": 7 - }, - "setting.USDe_liquidation_ratio": { - "artifacts": { - "settings": { - "USDe_liquidation_ratio": "1050000000000000000" - } - }, - "hash": "b8ef3cf0b2ae29972f2b898f8e1fa78f", - "version": 7 - }, - "setting.USDe_liquidation_reward": { - "artifacts": { - "settings": { - "USDe_liquidation_reward": "1000000000000000000" - } - }, - "hash": "845fb85d1e0ccaf6b0afd054626bbe97", - "version": 7 - }, - "setting.USDe_max_collateral_limit": { - "artifacts": { - "settings": { - "USDe_max_collateral_limit": "50000000000000000000000000" - } - }, - "hash": "3131f53d918c10094a2a15ecbb56c7d6", - "version": 7 - }, - "setting.USDe_min_delegation": { - "artifacts": { - "settings": { - "USDe_min_delegation": "100000000000000000000" - } - }, - "hash": "ad27ad0c2fad068c59a31bad017dda13", - "version": 7 - }, - "setting.pyth_feed_id_USDe": { - "artifacts": { - "settings": { - "pyth_feed_id_USDe": "0x6ec879b1e9963de5ee97e9c8710b742d6228252a5e2ca12d4ae81d7fe5ee8c5d" - } - }, - "hash": "bf5161159e0ac0e23d1cb94a563ce46f", - "version": 7 - }, - "setting.pyth_feed_id_sUSDe": { - "artifacts": { - "settings": { - "pyth_feed_id_sUSDe": "0xca3ba9a619a4b3755c10ac7d5e760275aa95e9823d38a84fedd416856cdba37c" - } - }, - "hash": "eaac43918bbda9e3fdbe83424054ed05", - "version": 7 - }, - "setting.sUSDe_issuance_ratio": { - "artifacts": { - "settings": { - "sUSDe_issuance_ratio": "2000000000000000000" - } - }, - "hash": "09553939422a81e0204384bf690274c4", - "version": 7 - }, - "setting.sUSDe_liquidation_ratio": { - "artifacts": { - "settings": { - "sUSDe_liquidation_ratio": "1050000000000000000" - } - }, - "hash": "b8ef3cf0b2ae29972f2b898f8e1fa78f", - "version": 7 - }, - "setting.sUSDe_liquidation_reward": { - "artifacts": { - "settings": { - "sUSDe_liquidation_reward": "1000000000000000000" - } - }, - "hash": "845fb85d1e0ccaf6b0afd054626bbe97", - "version": 7 - }, - "setting.sUSDe_max_collateral_limit": { - "artifacts": { - "settings": { - "sUSDe_max_collateral_limit": "0" - } - }, - "hash": "4dcc24a97eaa6583aab6a5b0cb07d27e", - "version": 7 - }, - "setting.sUSDe_min_delegation": { - "artifacts": { - "settings": { - "sUSDe_min_delegation": "100000000000000000000" - } - }, - "hash": "ad27ad0c2fad068c59a31bad017dda13", - "version": 7 - }, - "provision.USDe_mock_collateral": { + "provision.RewardsDistributor_PerpsCollateral_sETH_sUSDE_liquidation_rewards": { "artifacts": { "imports": { - "USDe_mock_collateral": { - "url": "ipfs://Qmbvq6Ydf5yVgzetPpycfLkAin2nC3bBwYnLr8Ngt17Qmy", + "RewardsDistributor_PerpsCollateral_sETH_sUSDE_liquidation_rewards": { + "url": "ipfs://QmdVKabREDVpCCa1YnhePmy549RcZkcmCQXW79GAfvBTX4", "tags": [ "latest" ], - "target": "synthetix-mock-tokens:1.8@USDe", - "preset": "USDe", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "preset": "ETH_Perps_rewards", "settings": { - "decimals": "18", - "initialSupply": "0", - "name": "Token", - "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", - "salt": "", - "symbol": "TKN" - }, - "contracts": { - "MintableToken": { - "address": "0xCf45784084Ca3fd91C215a87265014c3DC67182D", - "abi": [ - "constructor(address owner, string name, string symbol, uint8 tokenDecimals, uint256 initialSupply) payable", - "function allowance(address owner, address spender) view returns (uint256)", - "function approve(address spender, uint256 amount) returns (bool)", - "function balanceOf(address account) view returns (uint256)", - "function decimals() view returns (uint8)", - "function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)", - "function increaseAllowance(address spender, uint256 addedValue) returns (bool)", - "function mint(uint256 amount, address to)", - "function name() view returns (string)", - "function owner() view returns (address)", - "function renounceOwnership()", - "function symbol() view returns (string)", - "function totalSupply() view returns (uint256)", - "function transfer(address to, uint256 amount) returns (bool)", - "function transferFrom(address from, address to, uint256 amount) returns (bool)", - "function transferOwnership(address newOwner)", - "event Approval(address indexed owner, address indexed spender, uint256 value)", - "event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)", - "event Transfer(address indexed from, address indexed to, uint256 value)" + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" + }, + "contracts": { + "RewardsDistributorExternal": { + "address": "0x1887C862fCf44a307009c8C14D647091f2940A14", + "abi": [ + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_, address authorizedExternalDistributor_)", + "function SYSTEM_PRECISION() view returns (uint256)", + "function authorizedExternalDistributor() view returns (address)", + "function collateralType() view returns (address)", + "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", + "function name() view returns (string)", + "function onPositionUpdated(uint128, uint128, address, uint256)", + "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", + "function payoutToken() view returns (address)", + "function poolId() view returns (uint128)", + "function precision() view returns (uint256)", + "function rewardManager() view returns (address)", + "function rewardsAmount() view returns (uint256)", + "function setShouldFailPayout(bool shouldFailPayout_)", + "function shouldFailPayout() view returns (bool)", + "function supportsInterface(bytes4 interfaceId) view returns (bool)", + "function token() view returns (address)", + "error FailedTransfer(address from, address to, uint256 value)", + "error InvalidParameter(string parameter, string reason)", + "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", + "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", + "error Unauthorized(address addr)" ], "constructorArgs": [ - "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", - "Fake USDe Coin", - "fUSDe", + "0x76490713314fCEC173f44e99346F54c6e92a8E42", + "1", + "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", + "0x711d4F22CC39223a7273E45537c9d371E66A8a40", "18", - "0" + "Perps Collateral Liquidation Rewards for sUSDE (as sETH)", + "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460" ], "linkedLibraries": {}, - "deployTxnHash": "0xe37b082c3542a31df7b84ffce416d9ac7a156673d26ddcfae1492b3ec3714e0d", - "sourceName": "src/MintableToken.sol", - "contractName": "MintableToken", - "deployedOn": "contract.MintableToken", - "highlight": true, - "gasUsed": 774845, + "deployTxnHash": "0xe34c398dc8d51019ffce5d2c0295de21186a5dfa340cc43e3f48f4c22d846862", + "deployTxnBlockNumber": "68535685", + "deployTimestamp": "1722632376", + "sourceName": "src/RewardsDistributorExternal.sol", + "contractName": "RewardsDistributorExternal", + "deployedOn": "contract.RewardsDistributorExternal", + "gasUsed": 986012, "gasCost": "100000000" } }, "extras": { - "decimals": "18", - "initialSupply": "0", - "name": "Token", - "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", - "salt": "", - "symbol": "TKN" + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" } } } @@ -16889,72 +22544,82 @@ "hash": null, "version": 7 }, - "provision.sUSDe_mock_collateral": { + "provision.RewardsDistributor_PerpsCollateral_sETH_wETH_liquidation_rewards": { "artifacts": { "imports": { - "sUSDe_mock_collateral": { - "url": "ipfs://QmfLr5gbNJ1bB8YTLNY6xrhjdvnKACTxU6wxkU7Gtcn6QU", + "RewardsDistributor_PerpsCollateral_sETH_wETH_liquidation_rewards": { + "url": "ipfs://QmUBe3o5bojMVnFhrpWazSvA5PUz8nYbXuVbMVeNqaPW7S", "tags": [ "latest" ], - "target": "synthetix-mock-tokens:1.8@sUSDe", - "preset": "sUSDe", + "target": "synthetix-rewards-dist-ext:3.3.21-dev.fd4c5628@ETH_Perps_rewards", + "preset": "ETH_Perps_rewards", "settings": { - "decimals": "18", - "initialSupply": "0", - "name": "Token", - "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", - "salt": "", - "symbol": "TKN" + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" }, "contracts": { - "MintableToken": { - "address": "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", + "RewardsDistributorExternal": { + "address": "0x7918C32F223A56c62719Fae762eac615DB2Fc0e6", "abi": [ - "constructor(address owner, string name, string symbol, uint8 tokenDecimals, uint256 initialSupply) payable", - "function allowance(address owner, address spender) view returns (uint256)", - "function approve(address spender, uint256 amount) returns (bool)", - "function balanceOf(address account) view returns (uint256)", - "function decimals() view returns (uint8)", - "function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)", - "function increaseAllowance(address spender, uint256 addedValue) returns (bool)", - "function mint(uint256 amount, address to)", + "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_, address authorizedExternalDistributor_)", + "function SYSTEM_PRECISION() view returns (uint256)", + "function authorizedExternalDistributor() view returns (address)", + "function collateralType() view returns (address)", + "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", "function name() view returns (string)", - "function owner() view returns (address)", - "function renounceOwnership()", - "function symbol() view returns (string)", - "function totalSupply() view returns (uint256)", - "function transfer(address to, uint256 amount) returns (bool)", - "function transferFrom(address from, address to, uint256 amount) returns (bool)", - "function transferOwnership(address newOwner)", - "event Approval(address indexed owner, address indexed spender, uint256 value)", - "event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)", - "event Transfer(address indexed from, address indexed to, uint256 value)" + "function onPositionUpdated(uint128, uint128, address, uint256)", + "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", + "function payoutToken() view returns (address)", + "function poolId() view returns (uint128)", + "function precision() view returns (uint256)", + "function rewardManager() view returns (address)", + "function rewardsAmount() view returns (uint256)", + "function setShouldFailPayout(bool shouldFailPayout_)", + "function shouldFailPayout() view returns (bool)", + "function supportsInterface(bytes4 interfaceId) view returns (bool)", + "function token() view returns (address)", + "error FailedTransfer(address from, address to, uint256 value)", + "error InvalidParameter(string parameter, string reason)", + "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", + "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", + "error Unauthorized(address addr)" ], "constructorArgs": [ - "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", - "Fake sUSDe Coin", - "fsUSDe", + "0x76490713314fCEC173f44e99346F54c6e92a8E42", + "1", + "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73", + "0x711d4F22CC39223a7273E45537c9d371E66A8a40", "18", - "0" + "Perps Collateral Liquidation Rewards for wETH (as sETH)", + "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460" ], "linkedLibraries": {}, - "deployTxnHash": "0xb780b9e342797d57590c518d7805497e56fff4886a4ce7f85a224aeb1b6337c1", - "sourceName": "src/MintableToken.sol", - "contractName": "MintableToken", - "deployedOn": "contract.MintableToken", - "highlight": true, - "gasUsed": 774869, + "deployTxnHash": "0x1ec5fba4bc19642c8c0d00e09cd836d1ce5ca2f574d21d60959af9f4570c037b", + "deployTxnBlockNumber": "68535692", + "deployTimestamp": "1722632378", + "sourceName": "src/RewardsDistributorExternal.sol", + "contractName": "RewardsDistributorExternal", + "deployedOn": "contract.RewardsDistributorExternal", + "gasUsed": 986000, "gasCost": "100000000" } }, "extras": { - "decimals": "18", - "initialSupply": "0", - "name": "Token", - "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", - "salt": "", - "symbol": "TKN" + "authorizedDistributor": "0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce", + "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "name": "Rewards Distributor (External) V3", + "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", + "payoutTokenDecimals": "18", + "poolId": "1", + "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", + "salt": "rewards" } } } @@ -16962,908 +22627,916 @@ "hash": null, "version": 7 }, - "invoke.CoreProxy_setDeniers_withdraw": { + "invoke.PerpsMarketProxy_registerDistributor_btc_usdc": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_setDeniers_withdraw": { - "hash": "0x07a9f7e615fa78d824afb225ce6b9f8153fcea47ea92f8de5204a306db88ab0b", + "PerpsMarketProxy_registerDistributor_btc_usdc": { + "hash": "0xf215fc6f3a86428507511ece4efa5183a3919c1f3e31ed3b384aeb83d2aefb78", + "blockNumber": "68535700", + "timestamp": "1722632381", "events": { - "FeatureFlagDeniersReset": [ + "RewardDistributorRegistered": [ { - "name": "FeatureFlagDeniersReset", + "name": "RewardDistributorRegistered", "args": [ - "0x7769746864726177000000000000000000000000000000000000000000000000", - [ - "0x28Ed18Bd77A061E0A886a2a8FFb91da95FF03E56", - "0xd9b891AB93C210eafa46c61fAeb53836F99aa35B", - "0x0B67bab43157e53D21965Af0d83f83BeD9553E0a", - "0x8909F73188C4fE68B283fCB1E724b2466e0BdfD0", - "0xe1Efa5C91cA533E4a51884d805879249E3FCB2BC", - "0x6985b94Db148eDd4df6BD1Ba3F4640da79B44947", - "0x599e835cbFC903eF09f3Dd5E08D1cF63c32AF8d8", - "0xa2fa6Ef1Fcf740b632a04B3FC56B5d3118Bbd211", - "0x347c3190bD015FBD0e47fb90AA4917138A8A32FE", - "0x2d8cF727d37e7277D5eeDbAb853a3e8320f767Cd", - "0x1dd532CF7603a60C3ec91360f273DA3Db38545aB", - "0x562948111d50BF039A39Eea48D127f2Ae51ddF02", - "0xEde8a407913A874Dd7e3d5B731AFcA135D30375E" - ] + "0xe204Ac2eEd6D49047645e395331E1b1AfB371a6E" + ] + } + ] + }, + "deployedOn": "invoke.PerpsMarketProxy_registerDistributor_btc_usdc", + "gasUsed": 134136, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "488efa9976d11776925bcfab593748ef", + "version": 7 + }, + "invoke.PerpsMarketProxy_registerDistributor_eth_usdc": { + "artifacts": { + "contracts": {}, + "txns": { + "PerpsMarketProxy_registerDistributor_eth_usdc": { + "hash": "0xd409289dd204634cb933ae77f97a0f882b207924fb54297beeada6cc8a570f1c", + "blockNumber": "68535705", + "timestamp": "1722632383", + "events": { + "RewardDistributorRegistered": [ + { + "name": "RewardDistributorRegistered", + "args": [ + "0x8b0a6870A04B051992654523A17781ac81A7B1d8" + ] + } + ] + }, + "deployedOn": "invoke.PerpsMarketProxy_registerDistributor_eth_usdc", + "gasUsed": 134136, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "d9b3ecb633a45ec1c10cab1b4223b61a", + "version": 7 + }, + "invoke.SpotMarketProxy_setSettlementStrategy_eth": { + "artifacts": { + "contracts": {}, + "txns": { + "SpotMarketProxy_setSettlementStrategy_eth": { + "hash": "0xc63ab44df9e0e39234f26f43cc0cd6ee44bfe25c9ea349f6de323ee7e8114c05", + "blockNumber": "68535712", + "timestamp": "1722632385", + "events": { + "SettlementStrategySet": [ + { + "name": "SettlementStrategySet", + "args": [ + "5", + "0", + { + "strategyType": 1, + "settlementDelay": "2", + "settlementWindowDuration": "60", + "priceVerificationContract": "0x0eA49b2e23387cD99ceceBDa52041c604e40992E", + "feedId": "0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace", + "url": "https://api.synthetix.io/pyth-mainnet/api/get_vaa_ccip?data={data}", + "settlementReward": "500000000000000000", + "priceDeviationTolerance": "1000000000000000000", + "minimumUsdExchangeAmount": "1000000000000", + "maxRoundingLoss": "1000000000000", + "disabled": false + } + ] + } + ] + }, + "deployedOn": "invoke.SpotMarketProxy_setSettlementStrategy_eth", + "gasUsed": 266463, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "bef758fabe2f6d0bcbed82f8b280155a", + "version": 7 + }, + "invoke.SpotMarketProxy_setSettlementStrategy_sBTC": { + "artifacts": { + "contracts": {}, + "txns": { + "SpotMarketProxy_setSettlementStrategy_sBTC": { + "hash": "0xb341b3e11f8c00ae56c104391388f5187c210d907a80d41191a0a9d1182795e0", + "blockNumber": "68535719", + "timestamp": "1722632387", + "events": { + "SettlementStrategySet": [ + { + "name": "SettlementStrategySet", + "args": [ + "4", + "0", + { + "strategyType": 1, + "settlementDelay": "2", + "settlementWindowDuration": "60", + "priceVerificationContract": "0x0eA49b2e23387cD99ceceBDa52041c604e40992E", + "feedId": "0xe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43", + "url": "https://api.synthetix.io/pyth-mainnet/api/get_vaa_ccip?data={data}", + "settlementReward": "500000000000000000", + "priceDeviationTolerance": "1000000000000000000", + "minimumUsdExchangeAmount": "1000000000000", + "maxRoundingLoss": "1000000000000", + "disabled": false + } + ] + } + ] + }, + "deployedOn": "invoke.SpotMarketProxy_setSettlementStrategy_sBTC", + "gasUsed": 266463, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "556bbc79fc926e68e6049a3eb3ae2956", + "version": 7 + }, + "invoke.addPerpsBtcSettlementStrategy": { + "artifacts": { + "contracts": {}, + "txns": { + "addPerpsBtcSettlementStrategy": { + "hash": "0x8f00126f596636bec1ead04fdaffc8d4855852a6668c6c14c3c7189dc9fbd4bc", + "blockNumber": "68535726", + "timestamp": "1722632389", + "events": { + "SettlementStrategyAdded": [ + { + "name": "SettlementStrategyAdded", + "args": [ + "200", + { + "strategyType": 0, + "settlementDelay": "1", + "settlementWindowDuration": "1", + "priceVerificationContract": "0x0000000000000000000000000000000000000000", + "feedId": "0x0000000000000000000000000000000000000000000000000000000000000000", + "settlementReward": "0", + "disabled": false, + "commitmentPriceDelay": "0" + }, + "0" ] } ] }, - "deployedOn": "invoke.CoreProxy_setDeniers_withdraw", - "gasUsed": 83434, + "deployedOn": "invoke.addPerpsBtcSettlementStrategy", + "gasUsed": 118418, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": {} + "settings": { + "btc_pyth_settlement_strategy": "0" + } }, - "hash": "ddb76265a2b934b4b71bdec7f5e4185f", + "hash": "63f76ffec56d11878907f16b5b4cf0f1", "version": 7 }, - "invoke.OracleManagerProxy_registerNode_pyth_USDe": { + "invoke.addPerpsSolSettlementStrategy": { "artifacts": { "contracts": {}, "txns": { - "OracleManagerProxy_registerNode_pyth_USDe": { - "hash": "0xd06ef1720c329c932510c360f1f65d3aba39fc2f1f3585ab38525e64eb20691a", + "addPerpsSolSettlementStrategy": { + "hash": "0x5972ec70794f1eb97b15b3c3f3e24209327a7bc6d81fa0b3c89158ce7ff8cc54", + "blockNumber": "68535731", + "timestamp": "1722632391", "events": { - "NodeRegistered": [ + "SettlementStrategyAdded": [ { - "name": "NodeRegistered", + "name": "SettlementStrategyAdded", "args": [ - "0x445de7743b17bf37342f033e8b081ba282a5359573ec172ec60a5a83a4c6fb5e", - 5, - "0x0000000000000000000000004374e5a8b9c22271e9eb878a2aa31de97df15daf6ec879b1e9963de5ee97e9c8710b742d6228252a5e2ca12d4ae81d7fe5ee8c5d0000000000000000000000000000000000000000000000000000000000000000", - [] + "300", + { + "strategyType": 0, + "settlementDelay": "2", + "settlementWindowDuration": "60", + "priceVerificationContract": "0x0eA49b2e23387cD99ceceBDa52041c604e40992E", + "feedId": "0xef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d", + "settlementReward": "500000000000000000000000000000000000", + "disabled": false, + "commitmentPriceDelay": "2" + }, + "0" ] } ] }, - "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_USDe", - "gasUsed": 146116, + "deployedOn": "invoke.addPerpsSolSettlementStrategy", + "gasUsed": 198829, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": { - "USDe_pyth_oracle_id": "0x445de7743b17bf37342f033e8b081ba282a5359573ec172ec60a5a83a4c6fb5e" + "sol_pyth_settlement_strategy": "0" } }, - "hash": "1e7edd88f93e37605b72ac18b1482e8e", + "hash": "81e11248c715a8f8fe6fc0aa4b4696a5", "version": 7 }, - "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_USDe": { + "invoke.addPerpsWifSettlementStrategy": { "artifacts": { "contracts": {}, "txns": { - "OracleManagerProxy_registerNode_pyth_offchain_lookup_USDe": { - "hash": "0xf00476cd6d9a61a35599ab9d6d2fdd3da965688f2b2b6b7bb120b19ab47c28e0", + "addPerpsWifSettlementStrategy": { + "hash": "0xad068ab486a147fb65085b9ca31b1508a5843205cf7ee396f165185f6073b273", + "blockNumber": "68535738", + "timestamp": "1722632393", "events": { - "NodeRegistered": [ + "SettlementStrategyAdded": [ { - "name": "NodeRegistered", + "name": "SettlementStrategyAdded", "args": [ - "0x8fb90de026fe387a1297a399781c41e98b4da6078ce0a583033384845e85cefd", - 9, - "0x0000000000000000000000000ea49b2e23387cd99cecebda52041c604e40992e6ec879b1e9963de5ee97e9c8710b742d6228252a5e2ca12d4ae81d7fe5ee8c5d0000000000000000000000000000000000000000000000000000000000000e10", - [] + "400", + { + "strategyType": 0, + "settlementDelay": "1", + "settlementWindowDuration": "1", + "priceVerificationContract": "0x0000000000000000000000000000000000000000", + "feedId": "0x0000000000000000000000000000000000000000000000000000000000000000", + "settlementReward": "0", + "disabled": false, + "commitmentPriceDelay": "0" + }, + "0" ] } ] }, - "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_USDe", - "gasUsed": 154761, + "deployedOn": "invoke.addPerpsWifSettlementStrategy", + "gasUsed": 118430, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": { - "USDe_lookup_oracle_id": "0x8fb90de026fe387a1297a399781c41e98b4da6078ce0a583033384845e85cefd" + "wif_pyth_settlement_strategy": "0" } }, - "hash": "f6e310ea15296c13124c4995edfe6755", + "hash": "84b2bf3adb79db59914010798c0aca62", "version": 7 }, - "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_sUSDe": { + "invoke.setPerpsBtcFundingParameters": { "artifacts": { "contracts": {}, "txns": { - "OracleManagerProxy_registerNode_pyth_offchain_lookup_sUSDe": { - "hash": "0x08d51515f9141d2ab716e00b590521a37a0710db2f3f9088742648db707837b6", + "setPerpsBtcFundingParameters": { + "hash": "0x3c529791e8d056c3434c782f90ca507688f31b01bd5a34b909476effa2f4fc04", + "blockNumber": "68535749", + "timestamp": "1722632396", "events": { - "NodeRegistered": [ + "FundingParametersSet": [ { - "name": "NodeRegistered", + "name": "FundingParametersSet", "args": [ - "0x5d0cf3146323b6271c25781484e7965223eeef5f768e428565728b5b42696b8f", - 9, - "0x0000000000000000000000000ea49b2e23387cd99cecebda52041c604e40992eca3ba9a619a4b3755c10ac7d5e760275aa95e9823d38a84fedd416856cdba37c0000000000000000000000000000000000000000000000000000000000000e10", - [] + "200", + "35000000000000000000000", + "9000000000000000000" ] } ] }, - "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_offchain_lookup_sUSDe", - "gasUsed": 154761, + "deployedOn": "invoke.setPerpsBtcFundingParameters", + "gasUsed": 79236, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": { - "sUSDe_lookup_oracle_id": "0x5d0cf3146323b6271c25781484e7965223eeef5f768e428565728b5b42696b8f" - } + "settings": {} }, - "hash": "4daf099d208d14f79149d2ae65ecb193", + "hash": "8746ad81204512e2ee627bb28d027e3c", "version": 7 }, - "invoke.OracleManagerProxy_registerNode_pyth_sUSDe": { + "invoke.setPerpsBtcLiquidationParameters": { "artifacts": { "contracts": {}, "txns": { - "OracleManagerProxy_registerNode_pyth_sUSDe": { - "hash": "0x4b4f3c37bde9b4a9796e60c0c71461d966d5306549711a656d6b50ab89d4ec05", + "setPerpsBtcLiquidationParameters": { + "hash": "0x7394a789dac27a4651d5ffa2ea16bf7740c0d78ce06b48ab8ab55df573ab82a8", + "blockNumber": "68535753", + "timestamp": "1722632398", "events": { - "NodeRegistered": [ + "LiquidationParametersSet": [ { - "name": "NodeRegistered", + "name": "LiquidationParametersSet", "args": [ - "0x19430f7dc2f04cd25f8b23954723a4c41da7292cc0a7010a7433f863d63b98b2", - 5, - "0x0000000000000000000000004374e5a8b9c22271e9eb878a2aa31de97df15dafca3ba9a619a4b3755c10ac7d5e760275aa95e9823d38a84fedd416856cdba37c0000000000000000000000000000000000000000000000000000000000000000", - [] + "200", + "744000000000000000", + "333000000000000000", + "20000000000000000", + "300000000000000", + "50000000000000000000" ] } ] }, - "deployedOn": "invoke.OracleManagerProxy_registerNode_pyth_sUSDe", - "gasUsed": 146116, + "deployedOn": "invoke.setPerpsBtcLiquidationParameters", + "gasUsed": 147155, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": { - "sUSDe_pyth_oracle_id": "0x19430f7dc2f04cd25f8b23954723a4c41da7292cc0a7010a7433f863d63b98b2" - } - }, - "hash": "ca72ed01689fdbd4a850634f1e9a77ac", - "version": 7 - }, - "setting.USDe_address": { - "artifacts": { - "settings": { - "USDe_address": "0xCf45784084Ca3fd91C215a87265014c3DC67182D" - } + "settings": {} }, - "hash": "83d9608ec04dafae2f4588b7c556f90b", + "hash": "895d4c9855c23deb0343b33e4e9912d4", "version": 7 }, - "setting.sUSDe_address": { + "invoke.setPerpsBtcLockedOiRatio": { "artifacts": { - "settings": { - "sUSDe_address": "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699" - } + "contracts": {}, + "txns": { + "setPerpsBtcLockedOiRatio": { + "hash": "0xdef54d9f1c9ac1ee46b94acb3f2bb231d7398a497f30024524a22ffb7729566d", + "blockNumber": "68535756", + "timestamp": "1722632400", + "events": { + "LockedOiRatioSet": [ + { + "name": "LockedOiRatioSet", + "args": [ + "200", + "250000000000000000" + ] + } + ] + }, + "deployedOn": "invoke.setPerpsBtcLockedOiRatio", + "gasUsed": 56544, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} }, - "hash": "b6627ff115b716bc97f172c45cdb4e11", + "hash": "7b885ce3e66251e03f12380bc6224521", "version": 7 }, - "invoke.CoreProxy_addToFeatureFlagAllowlist_createSynth_deployer": { + "invoke.setPerpsBtcMaxLiquidationParameters": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_addToFeatureFlagAllowlist_createSynth_deployer": { - "hash": "0x694ea3b87f449a7ae0c2288d5315d65c6963b559b39697aecd269f42942df7ab", - "events": {}, - "deployedOn": "invoke.CoreProxy_addToFeatureFlagAllowlist_createSynth_deployer", - "gasUsed": 35548, + "setPerpsBtcMaxLiquidationParameters": { + "hash": "0xd8b925f7458a95ef9cb911e6de989754229f9bb891676a99f925cd6193aec4cd", + "blockNumber": "68535764", + "timestamp": "1722632402", + "events": { + "MaxLiquidationParametersSet": [ + { + "name": "MaxLiquidationParametersSet", + "args": [ + "200", + "1500000000000000000", + "30", + "500000000000000", + "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306" + ] + } + ] + }, + "deployedOn": "invoke.setPerpsBtcMaxLiquidationParameters", + "gasUsed": 124736, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "fdee690757ba8cf449fa809659ce0728", + "hash": "f6938a472f1d2a1d92c70b2f34df9ab8", "version": 7 }, - "invoke.OracleManagerProxy_registerNode_staleness_USDe": { + "invoke.setPerpsBtcMaxMarketSize": { "artifacts": { "contracts": {}, "txns": { - "OracleManagerProxy_registerNode_staleness_USDe": { - "hash": "0x0e666cd6adff1ac018a2e40fbb880c787760fe683a87b2cea83e90b224532c9f", + "setPerpsBtcMaxMarketSize": { + "hash": "0x12fc577308772794cbfceb20fb06f98bebbb3942f94d15e4e4bda3c6f666863d", + "blockNumber": "68535773", + "timestamp": "1722632404", "events": { - "NodeRegistered": [ + "MaxMarketSizeSet": [ { - "name": "NodeRegistered", + "name": "MaxMarketSizeSet", "args": [ - "0x6cf98623fab05c98f4fcdba250ba350e6a16453be00148e17fbe4f164315111e", - 7, - "0x0000000000000000000000000000000000000000000000000000000000000e10", - [ - "0x445de7743b17bf37342f033e8b081ba282a5359573ec172ec60a5a83a4c6fb5e", - "0x8fb90de026fe387a1297a399781c41e98b4da6078ce0a583033384845e85cefd" - ] + "200", + "1200000000000000000000" ] } ] }, - "deployedOn": "invoke.OracleManagerProxy_registerNode_staleness_USDe", - "gasUsed": 220629, + "deployedOn": "invoke.setPerpsBtcMaxMarketSize", + "gasUsed": 56589, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": { - "USDe_oracle_id": "0x6cf98623fab05c98f4fcdba250ba350e6a16453be00148e17fbe4f164315111e" - } + "settings": {} }, - "hash": "5b573306e65ef1fc7c58effc6fe19640", + "hash": "3012433a5392e788fbbdaf0324a1cdb0", "version": 7 }, - "invoke.OracleManagerProxy_registerNode_staleness_sUSDe": { + "invoke.setPerpsBtcMaxMarketValue": { "artifacts": { "contracts": {}, "txns": { - "OracleManagerProxy_registerNode_staleness_sUSDe": { - "hash": "0xf36495f059cf8d63874b5514296324be7b9ac43694a5fe4fdc4cd86440a90685", + "setPerpsBtcMaxMarketValue": { + "hash": "0x1d8b82b951ecc93c8998f4cb709a9b3bc7a4a23476350575e9dd99625597fa28", + "blockNumber": "68535781", + "timestamp": "1722632406", "events": { - "NodeRegistered": [ + "MaxMarketValueSet": [ { - "name": "NodeRegistered", + "name": "MaxMarketValueSet", "args": [ - "0x075491f920177d441f4f31049f525749a1467428d01ac26337b0e1b9af8cfe70", - 7, - "0x0000000000000000000000000000000000000000000000000000000000000e10", - [ - "0x19430f7dc2f04cd25f8b23954723a4c41da7292cc0a7010a7433f863d63b98b2", - "0x5d0cf3146323b6271c25781484e7965223eeef5f768e428565728b5b42696b8f" - ] + "200", + "50000000000000000000000000" ] } ] }, - "deployedOn": "invoke.OracleManagerProxy_registerNode_staleness_sUSDe", - "gasUsed": 220629, + "deployedOn": "invoke.setPerpsBtcMaxMarketValue", + "gasUsed": 56690, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": { - "sUSDe_oracle_id": "0x075491f920177d441f4f31049f525749a1467428d01ac26337b0e1b9af8cfe70" - } + "settings": {} }, - "hash": "02710fc20aae0af1d29c7ff8503bbbde", + "hash": "fa3c411e7353c8b171659d8077ef4a50", "version": 7 }, - "invoke.CoreProxy_configureCollateral_USDe": { + "invoke.setPerpsBtcOrderFees": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_configureCollateral_USDe": { - "hash": "0xf6f34b5632a645ac26565497277fcbc15714a83dbe6dddd634e50967eeb47e8d", + "setPerpsBtcOrderFees": { + "hash": "0xd0d057fb7fa5918d44c9c444b6d73578f9ca61798212131dbc2ac4dfa3e8091f", + "blockNumber": "68535789", + "timestamp": "1722632408", "events": { - "CollateralConfigured": [ + "OrderFeesSet": [ { - "name": "CollateralConfigured", + "name": "OrderFeesSet", "args": [ - "0xCf45784084Ca3fd91C215a87265014c3DC67182D", - { - "depositingEnabled": true, - "issuanceRatioD18": "2000000000000000000", - "liquidationRatioD18": "1050000000000000000", - "liquidationRewardD18": "1000000000000000000", - "oracleNodeId": "0x6cf98623fab05c98f4fcdba250ba350e6a16453be00148e17fbe4f164315111e", - "tokenAddress": "0xCf45784084Ca3fd91C215a87265014c3DC67182D", - "minDelegationD18": "100000000000000000000" - } + "200", + "0", + "500000000000000" ] } ] }, - "deployedOn": "invoke.CoreProxy_configureCollateral_USDe", - "gasUsed": 243209, + "deployedOn": "invoke.setPerpsBtcOrderFees", + "gasUsed": 59254, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "4e15cc47dba419529af8b2db7401c036", + "hash": "00661feeea595f757f72001399eaf54f", "version": 7 }, - "invoke.CoreProxy_configureCollateral_sUSDe": { + "invoke.setPerpsPriceBtc": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_configureCollateral_sUSDe": { - "hash": "0xa56a6aa452f88953ea53a06a0892a38660395ae09b4011c4de087e6fa27b9cf8", + "setPerpsPriceBtc": { + "hash": "0x8dd8ce916d778194286195445cfe429dbeb5dd3c42336eeb55906b7f453c4ee1", + "blockNumber": "68535797", + "timestamp": "1722632410", "events": { - "CollateralConfigured": [ + "MarketPriceDataUpdated": [ { - "name": "CollateralConfigured", + "name": "MarketPriceDataUpdated", "args": [ - "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", - { - "depositingEnabled": false, - "issuanceRatioD18": "2000000000000000000", - "liquidationRatioD18": "1050000000000000000", - "liquidationRewardD18": "1000000000000000000", - "oracleNodeId": "0x075491f920177d441f4f31049f525749a1467428d01ac26337b0e1b9af8cfe70", - "tokenAddress": "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", - "minDelegationD18": "100000000000000000000" - } + "200", + "0x83577cf4a839275e030f38dd91c61800fb82368e459720aea7e08de44919a4a4", + "0" ] } ] }, - "deployedOn": "invoke.CoreProxy_configureCollateral_sUSDe", - "gasUsed": 54244, + "deployedOn": "invoke.setPerpsPriceBtc", + "gasUsed": 59635, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "5e8ca573f597278a1d8bd63727113000", + "hash": "24c97e07780e4921d8ff9fcd27fa2308", "version": 7 }, - "invoke.CoreProxy_setPoolCollateralConfiguration_USDe": { + "invoke.setPerpsPriceSol": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_setPoolCollateralConfiguration_USDe": { - "hash": "0x92932e6e36325238769c44821f5bbf3be44e2ed5a188ef0345a7d6e3640e1223", + "setPerpsPriceSol": { + "hash": "0x921a1308e1795ecc02c3b63e0b05d668388e0a49e797996a8aa436eebe2d457e", + "blockNumber": "68535805", + "timestamp": "1722632412", "events": { - "PoolCollateralConfigurationUpdated": [ - { - "name": "PoolCollateralConfigurationUpdated", - "args": [ - "1", - "0xCf45784084Ca3fd91C215a87265014c3DC67182D", - { - "collateralLimitD18": "50000000000000000000000000", - "issuanceRatioD18": "0" - } + "MarketPriceDataUpdated": [ + { + "name": "MarketPriceDataUpdated", + "args": [ + "300", + "0x2619627cc0998264a20643f6f13dc38a69bd198f11c668e6162d329aa99c5c4a", + "0" ] } ] }, - "deployedOn": "invoke.CoreProxy_setPoolCollateralConfiguration_USDe", - "gasUsed": 62454, + "deployedOn": "invoke.setPerpsPriceSol", + "gasUsed": 59659, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "ba2045a83c416c3a08dcdb7bcda06b15", + "hash": "0f61e89f9d3209cf5586417ded902716", "version": 7 }, - "invoke.CoreProxy_setPoolCollateralConfiguration_sUSDe": { + "invoke.setPerpsPriceWif": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_setPoolCollateralConfiguration_sUSDe": { - "hash": "0x82d8a4ff8d89b24d710e5c740a61db9bbf2f0ef55057ea68f2daaee3f835612e", + "setPerpsPriceWif": { + "hash": "0xaf686acae008b4dd684f6e4bacecc2c0068586d9f8d11a93d1d4811b03942e2c", + "blockNumber": "68535811", + "timestamp": "1722632414", "events": { - "PoolCollateralConfigurationUpdated": [ + "MarketPriceDataUpdated": [ { - "name": "PoolCollateralConfigurationUpdated", + "name": "MarketPriceDataUpdated", "args": [ - "1", - "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", - { - "collateralLimitD18": "0", - "issuanceRatioD18": "0" - } + "400", + "0xbcf8052c9cedf0577bd02b12aad0070cc36e049a5e7f9a48748bee9211295e53", + "0" ] } ] }, - "deployedOn": "invoke.CoreProxy_setPoolCollateralConfiguration_sUSDe", - "gasUsed": 40458, + "deployedOn": "invoke.setPerpsPriceWif", + "gasUsed": 59659, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "106967287ecab7bec6647ad638882e82", - "version": 7 - }, - "provision.RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDe_lp": { - "artifacts": { - "imports": { - "RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDe_lp": { - "url": "ipfs://QmabSsmSWMwaZrYRimxcKwpZswYPRTksZoKkjAcCFfM1CG", - "tags": [ - "latest" - ], - "target": "synthetix-rewards-distributor:0.0.2@ARB_rewards_for_USDe_lp", - "preset": "ARB_rewards_for_USDe_lp", - "settings": { - "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", - "name": "Rewards Distributor V3", - "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", - "payoutTokenDecimals": "18", - "poolId": "1", - "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", - "salt": "rewards" - }, - "contracts": { - "RewardsDistributor": { - "address": "0x4aFF595044Ac6844151481B031D9A2E291aE37fD", - "abi": [ - "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_)", - "function SYSTEM_PRECISION() view returns (uint256)", - "function collateralType() view returns (address)", - "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", - "function name() view returns (string)", - "function onPositionUpdated(uint128, uint128, address, uint256)", - "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", - "function payoutToken() view returns (address)", - "function poolId() view returns (uint128)", - "function precision() view returns (uint256)", - "function rewardManager() view returns (address)", - "function rewardsAmount() view returns (uint256)", - "function setShouldFailPayout(bool shouldFailPayout_)", - "function shouldFailPayout() view returns (bool)", - "function supportsInterface(bytes4 interfaceId) view returns (bool)", - "function token() view returns (address)", - "error FailedTransfer(address from, address to, uint256 value)", - "error InvalidParameter(string parameter, string reason)", - "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", - "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", - "error Unauthorized(address addr)" - ], - "constructorArgs": [ - "0x76490713314fCEC173f44e99346F54c6e92a8E42", - "1", - "0xCf45784084Ca3fd91C215a87265014c3DC67182D", - "0x7b356eEdABc1035834cd1f714658627fcb4820E3", - "18", - "Spartan Council Pool ARB Rewards for USDe LP" - ], - "linkedLibraries": {}, - "deployTxnHash": "0xc4b89cdb535911473db5892bd23f511f2b25aa4b823f6193b7667f719b40da6d", - "sourceName": "src/RewardsDistributor.sol", - "contractName": "RewardsDistributor", - "deployedOn": "contract.RewardsDistributor", - "gasUsed": 968352, - "gasCost": "100000000" - } - }, - "extras": { - "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", - "name": "Rewards Distributor V3", - "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", - "payoutTokenDecimals": "18", - "poolId": "1", - "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", - "salt": "rewards" - } - } - } - }, - "hash": null, - "version": 7 - }, - "provision.RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_sUSDe_lp": { - "artifacts": { - "imports": { - "RewardsDistributor_SpartanCouncilPool_ARB_rewards_for_sUSDe_lp": { - "url": "ipfs://QmQUtayMsUa3yBLj45fNXXZvpBH2hM3zD9syy7Pz2Tq3re", - "tags": [ - "latest" - ], - "target": "synthetix-rewards-distributor:0.0.2@ARB_rewards_for_sUSDe_lp", - "preset": "ARB_rewards_for_sUSDe_lp", - "settings": { - "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", - "name": "Rewards Distributor V3", - "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", - "payoutTokenDecimals": "18", - "poolId": "1", - "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", - "salt": "rewards" - }, - "contracts": { - "RewardsDistributor": { - "address": "0xc555AfdCa6FbeF64fbE9feD62E27Bd98F8a686D3", - "abi": [ - "constructor(address rewardManager_, uint128 poolId_, address collateralType_, address payoutToken_, uint8 payoutTokenDecimals_, string name_)", - "function SYSTEM_PRECISION() view returns (uint256)", - "function collateralType() view returns (address)", - "function distributeRewards(uint128 poolId_, address collateralType_, uint256 amount_, uint64 start_, uint32 duration_)", - "function name() view returns (string)", - "function onPositionUpdated(uint128, uint128, address, uint256)", - "function payout(uint128, uint128 poolId_, address collateralType_, address payoutTarget_, uint256 payoutAmount_) returns (bool)", - "function payoutToken() view returns (address)", - "function poolId() view returns (uint128)", - "function precision() view returns (uint256)", - "function rewardManager() view returns (address)", - "function rewardsAmount() view returns (uint256)", - "function setShouldFailPayout(bool shouldFailPayout_)", - "function shouldFailPayout() view returns (bool)", - "function supportsInterface(bytes4 interfaceId) view returns (bool)", - "function token() view returns (address)", - "error FailedTransfer(address from, address to, uint256 value)", - "error InvalidParameter(string parameter, string reason)", - "error NotEnoughBalance(uint256 amountRequested, uint256 currentBalance)", - "error NotEnoughRewardsLeft(uint256 amountRequested, uint256 amountLeft)", - "error Unauthorized(address addr)" - ], - "constructorArgs": [ - "0x76490713314fCEC173f44e99346F54c6e92a8E42", - "1", - "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", - "0x7b356eEdABc1035834cd1f714658627fcb4820E3", - "18", - "Spartan Council Pool ARB Rewards for sUSDe LP" - ], - "linkedLibraries": {}, - "deployTxnHash": "0x40aabd49157f57f993cc033b79f15a62873b5b41998930e45537aaac4fed6735", - "sourceName": "src/RewardsDistributor.sol", - "contractName": "RewardsDistributor", - "deployedOn": "contract.RewardsDistributor", - "gasUsed": 968364, - "gasCost": "100000000" - } - }, - "extras": { - "collateralType": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", - "name": "Rewards Distributor V3", - "payoutToken": "0x22e6966B799c4D5B13BE962E1D117b56327FDa66", - "payoutTokenDecimals": "18", - "poolId": "1", - "rewardManager": "0x32C222A9A159782aFD7529c87FA34b96CA72C696", - "salt": "rewards" - } - } - } - }, - "hash": null, + "hash": "db4fbcf7c475f19177ad9dbe52f3564e", "version": 7 }, - "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDe_lp": { + "invoke.setPerpsSolFundingParameters": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDe_lp": { - "hash": "0x175e9300e6491d3a1a8553af06a67882986679c03fef396503e4018274404fbf", + "setPerpsSolFundingParameters": { + "hash": "0x80b38cdf8be5e15e0412b245a36094bd193010e452438868b1f562f69fcaf854", + "blockNumber": "68535817", + "timestamp": "1722632415", "events": { - "RewardsDistributorRegistered": [ + "FundingParametersSet": [ { - "name": "RewardsDistributorRegistered", + "name": "FundingParametersSet", "args": [ - "1", - "0xCf45784084Ca3fd91C215a87265014c3DC67182D", - "0x4aFF595044Ac6844151481B031D9A2E291aE37fD" + "300", + "1406250000000000000000000", + "9000000000000000000" ] } ] }, - "deployedOn": "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_USDe_lp", - "gasUsed": 129016, + "deployedOn": "invoke.setPerpsSolFundingParameters", + "gasUsed": 79260, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "5805e1b608d58762882a0f6c3a9b5f98", + "hash": "246c80879df26f553d7589f81a988063", "version": 7 }, - "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_sUSDe_lp": { + "invoke.setPerpsSolLiquidationParameters": { "artifacts": { "contracts": {}, "txns": { - "CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_sUSDe_lp": { - "hash": "0x04999b84e245935fea854d4df7015ac019bc45b98fbbe111999dbe9fbca38242", + "setPerpsSolLiquidationParameters": { + "hash": "0xe45bfa51b291dc5a07c80ae78af9eb1b919a26a3434f67f8e4929ca1a6ad5baf", + "blockNumber": "68535823", + "timestamp": "1722632417", "events": { - "RewardsDistributorRegistered": [ + "LiquidationParametersSet": [ { - "name": "RewardsDistributorRegistered", + "name": "LiquidationParametersSet", "args": [ - "1", - "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", - "0xc555AfdCa6FbeF64fbE9feD62E27Bd98F8a686D3" + "300", + "5503000000000000000", + "333000000000000000", + "2000000000000000", + "300000000000000", + "50000000000000000000" ] } ] }, - "deployedOn": "invoke.CoreProxy_registerRewardsDistributor_SpartanCouncilPool_ARB_rewards_for_sUSDe_lp", - "gasUsed": 129016, + "deployedOn": "invoke.setPerpsSolLiquidationParameters", + "gasUsed": 147179, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "ff0613eade6607857ca8329e74207792", - "version": 7 - }, - "setting.big_cap_strict_staleness_tolerance": { - "artifacts": { - "settings": { - "big_cap_strict_staleness_tolerance": "60" - } - }, - "hash": "c85e06d9961059219500923347f33fea", - "version": 7 - }, - "setting.commitment_price_delay": { - "artifacts": { - "settings": { - "commitment_price_delay": "2" - } - }, - "hash": "dc88d99e217842b1532ccb97f443b6c1", + "hash": "98ff2a7cc067423284d8a14973fec82e", "version": 7 }, - "var.perpsEthSettings": { + "invoke.setPerpsSolLockedOiRatio": { "artifacts": { - "settings": { - "perpsEthMarketId": "100", - "pythEthFeedId": "0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace", - "perpsEthSkewScale": "350000000000000000000000", - "perpsEthMaxFundingVelocity": "9000000000000000000", - "perpsEthMakerFeeRatio": "1000000000000", - "perpsEthTakerFeeRatio": "500000000000000", - "perpsEthMaxMarketSize": "10000000000000000000000", - "perpsEthMaxMarketValue": "15000000000000000000000000", - "perpsEthInitialMarginRatio": "1160000000000000000", - "perpsEthMinimumInitialMarginRatio": "20000000000000000", - "perpsEthMaintenanceMarginScalar": "280000000000000000", - "perpsEthFlagRewardRatioD18": "300000000000000", - "perpsEthMinimumPositionMargin": "50000000000000000000", - "perpsEthMaxLiquidationLimitAccumulationMultiplier": "1500000000000000000", - "perpsEthMaxSecondsInLiquidationWindow": "30", - "perpsEthLockedOiRatio": "250000000000000000", - "perpsEthMaxLiquidationPd": "500000000000000", - "perpsEthEndorsedLiquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306" - } + "contracts": {}, + "txns": { + "setPerpsSolLockedOiRatio": { + "hash": "0x543a234d45f607a9eebb975481e3c59be83d7f820d8601bb33ea3de116510f3a", + "blockNumber": "68535829", + "timestamp": "1722632418", + "events": { + "LockedOiRatioSet": [ + { + "name": "LockedOiRatioSet", + "args": [ + "300", + "500000000000000000" + ] + } + ] + }, + "deployedOn": "invoke.setPerpsSolLockedOiRatio", + "gasUsed": 56556, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} }, - "hash": "ce6b0e75fec365c55296b0fd5a3a962a", + "hash": "15d9f9ce55fa53438d2134973067bb56", "version": 7 }, - "invoke.PerpsMarketProxy_addToFeatureFlagAllowlist_createMarket_deployer": { + "invoke.setPerpsSolMaxLiquidationParameters": { "artifacts": { "contracts": {}, "txns": { - "PerpsMarketProxy_addToFeatureFlagAllowlist_createMarket_deployer": { - "hash": "0x6235f8b7ca3eef7fe6a0e9f15babfea27db9ee2c87764d958727068be2c00fce", - "blockNumber": "67334800", - "timestamp": "1722223906", - "events": {}, - "deployedOn": "invoke.PerpsMarketProxy_addToFeatureFlagAllowlist_createMarket_deployer", - "gasUsed": 111811, + "setPerpsSolMaxLiquidationParameters": { + "hash": "0x104fd8a34f793d8695dcfd35a98bb01caf78541400da8ed49c17e4cf92e18037", + "blockNumber": "68535835", + "timestamp": "1722632420", + "events": { + "MaxLiquidationParametersSet": [ + { + "name": "MaxLiquidationParametersSet", + "args": [ + "300", + "1500000000000000000", + "30", + "500000000000000", + "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306" + ] + } + ] + }, + "deployedOn": "invoke.setPerpsSolMaxLiquidationParameters", + "gasUsed": 124748, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "9fb8b82cfb6ccd5bbed92e245492981d", + "hash": "962d4fe91f31557385b867430e0a0b57", "version": 7 }, - "invoke.PerpsMarketProxy_setFeatureFlagAllowAll_perpsSystem": { + "invoke.setPerpsSolMaxMarketSize": { "artifacts": { "contracts": {}, "txns": { - "PerpsMarketProxy_setFeatureFlagAllowAll_perpsSystem": { - "hash": "0x3ce5727b1e90848580949ba52df414d3e6ff23b00e8a632cf5012d883913d8aa", - "blockNumber": "67334816", - "timestamp": "1722223910", + "setPerpsSolMaxMarketSize": { + "hash": "0x3b9d733dcb86420e2b2b4fcc18979943baa1834973793b538a1a1e8a1d62ca80", + "blockNumber": "68535841", + "timestamp": "1722632421", "events": { - "FeatureFlagAllowAllSet": [ + "MaxMarketSizeSet": [ { - "name": "FeatureFlagAllowAllSet", + "name": "MaxMarketSizeSet", "args": [ - "0x706572707353797374656d000000000000000000000000000000000000000000", - true + "300", + "270000000000000000000000" ] } ] }, - "deployedOn": "invoke.PerpsMarketProxy_setFeatureFlagAllowAll_perpsSystem", - "gasUsed": 133424, + "deployedOn": "invoke.setPerpsSolMaxMarketSize", + "gasUsed": 56613, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "0ca9c7694eb8dd050c5751401c39018e", + "hash": "4ff1a0c0a80b6cdf3984d2c73ecf2bd0", "version": 7 }, - "invoke.createEthPerpsMarket": { + "invoke.setPerpsSolMaxMarketValue": { "artifacts": { "contracts": {}, "txns": { - "createEthPerpsMarket": { - "hash": "0x49fc251210e30cf3c3e446dc9abbe57949abf131e46c948455fec6883a78b4b9", - "blockNumber": "67334860", - "timestamp": "1722223924", + "setPerpsSolMaxMarketValue": { + "hash": "0x4c11fc3e9671da61aaa6d8a34733d00ddc42d143d59d6bb3005004d4dea41e93", + "blockNumber": "68535847", + "timestamp": "1722632423", "events": { - "MarketCreated": [ + "MaxMarketValueSet": [ { - "name": "MarketCreated", + "name": "MaxMarketValueSet", "args": [ - "100", - "Ethereum", - "ETH" + "300", + "40000000000000000000000000" ] } ] }, - "deployedOn": "invoke.createEthPerpsMarket", - "gasUsed": 283690, + "deployedOn": "invoke.setPerpsSolMaxMarketValue", + "gasUsed": 56702, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": { - "eth_perps_market_id": "100" - } + "settings": {} }, - "hash": "2dbce13f51e308f4a1f7c57a61c6360a", + "hash": "a89768fa8c5399d128a1c2ab365967d3", "version": 7 }, - "invoke.addPerpsEthSettlementStrategy": { + "invoke.setPerpsSolOrderFees": { "artifacts": { "contracts": {}, "txns": { - "addPerpsEthSettlementStrategy": { - "hash": "0xbe7b18980319723c6332c0044f58d1b7043736cde12c04591c23a5fd6805e365", - "blockNumber": "67334871", - "timestamp": "1722223928", + "setPerpsSolOrderFees": { + "hash": "0x66f663856295b477051b908b56b200189157ce8c5bb3e08b3f44f385c0aa782a", + "blockNumber": "68535853", + "timestamp": "1722632424", "events": { - "SettlementStrategyAdded": [ + "OrderFeesSet": [ { - "name": "SettlementStrategyAdded", + "name": "OrderFeesSet", "args": [ - "100", - { - "strategyType": 0, - "settlementDelay": "1", - "settlementWindowDuration": "1", - "priceVerificationContract": "0x0000000000000000000000000000000000000000", - "feedId": "0x0000000000000000000000000000000000000000000000000000000000000000", - "settlementReward": "0", - "disabled": false, - "commitmentPriceDelay": "0" - }, - "0" + "300", + "0", + "800000000000000" ] } ] }, - "deployedOn": "invoke.addPerpsEthSettlementStrategy", - "gasUsed": 213476, + "deployedOn": "invoke.setPerpsSolOrderFees", + "gasUsed": 59254, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, - "settings": { - "eth_pyth_settlement_strategy": "0" - } + "settings": {} }, - "hash": "4e63b7c7b88075d150dfe6f4362b7f04", + "hash": "fc30d2cf15c062b54073a7168e8d0abe", "version": 7 }, - "invoke.setPerpsEthFundingParameters": { + "invoke.setPerpsWifFundingParameters": { "artifacts": { "contracts": {}, "txns": { - "setPerpsEthFundingParameters": { - "hash": "0xa1241194cdccb7df621301f0cfcff577bcee0aa14c5d370d8a9ced362b8707de", - "blockNumber": "67334883", - "timestamp": "1722223933", + "setPerpsWifFundingParameters": { + "hash": "0x09eabbf11bf8dabc0033cd30a187f9eeb40b3f9981e81b3e3bba54de8c7d304c", + "blockNumber": "68535858", + "timestamp": "1722632426", "events": { "FundingParametersSet": [ { "name": "FundingParametersSet", "args": [ - "100", - "350000000000000000000000", - "9000000000000000000" + "400", + "15000000000000000000000000", + "36000000000000000000" ] } ] }, - "deployedOn": "invoke.setPerpsEthFundingParameters", - "gasUsed": 168896, + "deployedOn": "invoke.setPerpsWifFundingParameters", + "gasUsed": 79260, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "d8bb3bf1e7b788a0d01a9b4257840af5", + "hash": "8d6742ad04b286ad81635f0cc8d54c6c", "version": 7 }, - "invoke.setPerpsEthLiquidationParameters": { + "invoke.setPerpsWifLiquidationParameters": { "artifacts": { "contracts": {}, "txns": { - "setPerpsEthLiquidationParameters": { - "hash": "0xae05373fba880a5af15f45428cb7c60c922157881b8602122c20187e1bae86d7", - "blockNumber": "67334894", - "timestamp": "1722223937", + "setPerpsWifLiquidationParameters": { + "hash": "0x3f01d1c59923f49ec3570e16cdd1cfe1a9de378b78d3bb8bc1bcb83363942288", + "blockNumber": "68535866", + "timestamp": "1722632428", "events": { "LiquidationParametersSet": [ { "name": "LiquidationParametersSet", "args": [ - "100", - "1160000000000000000", - "280000000000000000", - "20000000000000000", + "400", + "1000000000000000000", + "500000000000000000", + "40000000000000000", "300000000000000", "50000000000000000000" ] } ] }, - "deployedOn": "invoke.setPerpsEthLiquidationParameters", - "gasUsed": 253655, + "deployedOn": "invoke.setPerpsWifLiquidationParameters", + "gasUsed": 147155, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "461d3097e753ddec8a5734bf4ae2998d", + "hash": "19850ada2cd92df348b2c1c923d562dc", "version": 7 }, - "invoke.setPerpsEthLockedOiRatio": { + "invoke.setPerpsWifLockedOiRatio": { "artifacts": { "contracts": {}, "txns": { - "setPerpsEthLockedOiRatio": { - "hash": "0x633e4f741fd705d8e0e213ecbd79c67023b6daac913681d8c62e858a2e1a1aba", - "blockNumber": "67334904", - "timestamp": "1722223941", + "setPerpsWifLockedOiRatio": { + "hash": "0xb869ee1048d37609bf0388ac813f24160455e0be446e814bd3d3da6629813134", + "blockNumber": "68535876", + "timestamp": "1722632430", "events": { "LockedOiRatioSet": [ { "name": "LockedOiRatioSet", "args": [ - "100", - "250000000000000000" + "400", + "500000000000000000" ] } ] }, - "deployedOn": "invoke.setPerpsEthLockedOiRatio", - "gasUsed": 132817, + "deployedOn": "invoke.setPerpsWifLockedOiRatio", + "gasUsed": 56556, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "d40e673dd4765ccba70f9cf246c39104", + "hash": "50f570c9b4001209fc493331064b23c3", "version": 7 }, - "invoke.setPerpsEthMaxLiquidationParameters": { + "invoke.setPerpsWifMaxLiquidationParameters": { "artifacts": { "contracts": {}, "txns": { - "setPerpsEthMaxLiquidationParameters": { - "hash": "0xbb536a34be4ef6f8cb9ffd32f624bfc3528eca00e5aabf71bc34dcf8b6b3b5da", - "blockNumber": "67334915", - "timestamp": "1722223946", + "setPerpsWifMaxLiquidationParameters": { + "hash": "0x29ea042298602f560c73fd4bc04686482ea01afdc9a58f4ded03926763138ea1", + "blockNumber": "68535882", + "timestamp": "1722632432", "events": { "MaxLiquidationParametersSet": [ { "name": "MaxLiquidationParametersSet", "args": [ - "100", + "400", "1500000000000000000", "30", "500000000000000", @@ -17872,161 +23545,170 @@ } ] }, - "deployedOn": "invoke.setPerpsEthMaxLiquidationParameters", - "gasUsed": 233299, + "deployedOn": "invoke.setPerpsWifMaxLiquidationParameters", + "gasUsed": 124748, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "cc87528f94ab8e9407424f49ed6252fc", + "hash": "0ade63209ba074217a91c2965c0f6a55", "version": 7 }, - "invoke.setPerpsEthMaxMarketSize": { + "invoke.setPerpsWifMaxMarketSize": { "artifacts": { "contracts": {}, "txns": { - "setPerpsEthMaxMarketSize": { - "hash": "0x45dbdb7fb266330bcb3fe76e7738617b5ac3d4798d63b62e5bfb83577eb6eb84", - "blockNumber": "67334930", - "timestamp": "1722223950", + "setPerpsWifMaxMarketSize": { + "hash": "0x9bf3000e633b90650ea43b26180d912657b67bac1e42d746156c6a70c4677791", + "blockNumber": "68535887", + "timestamp": "1722632434", "events": { "MaxMarketSizeSet": [ { "name": "MaxMarketSizeSet", "args": [ - "100", - "10000000000000000000000" + "400", + "2500000000000000000000000" ] } ] }, - "deployedOn": "invoke.setPerpsEthMaxMarketSize", - "gasUsed": 132874, + "deployedOn": "invoke.setPerpsWifMaxMarketSize", + "gasUsed": 56613, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "de31efbab4b1c742bc14065be4865629", + "hash": "6e4bce712b635bbaaf8c5b4e4854beb1", "version": 7 }, - "invoke.setPerpsEthMaxMarketValue": { + "invoke.setPerpsWifMaxMarketValue": { "artifacts": { "contracts": {}, "txns": { - "setPerpsEthMaxMarketValue": { - "hash": "0x63977f6b0d6241c90e16f281bdb967f8bde96e1eb0ea17b32b5d68f6e8a0fd18", - "blockNumber": "67334947", - "timestamp": "1722223955", + "setPerpsWifMaxMarketValue": { + "hash": "0x144be08a20a740cfe7f627cad00358c5eb739b28771462d28211f6e73d9395e0", + "blockNumber": "68535895", + "timestamp": "1722632436", "events": { "MaxMarketValueSet": [ { "name": "MaxMarketValueSet", "args": [ - "100", - "15000000000000000000000000" + "400", + "3000000000000000000000000" ] } ] }, - "deployedOn": "invoke.setPerpsEthMaxMarketValue", - "gasUsed": 132897, + "deployedOn": "invoke.setPerpsWifMaxMarketValue", + "gasUsed": 56702, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "075df4c06e573e427667f1cbc53dba0c", + "hash": "e9856a93304cba241f7b8c51ddcc4345", "version": 7 }, - "invoke.setPerpsEthOrderFees": { + "invoke.setPerpsWifOrderFees": { "artifacts": { "contracts": {}, "txns": { - "setPerpsEthOrderFees": { - "hash": "0x27cfa7b40d45084efd0ccb51ceccc62a19a6a584445ac425f1f70306283e1b70", - "blockNumber": "67334964", - "timestamp": "1722223960", + "setPerpsWifOrderFees": { + "hash": "0xc64c2027b21281a4e0ebf7828452a4733560d8cf070736adef097851da0008ed", + "blockNumber": "68535902", + "timestamp": "1722632438", "events": { "OrderFeesSet": [ { "name": "OrderFeesSet", "args": [ - "100", - "1000000000000", - "500000000000000" + "400", + "0", + "1000000000000000" ] } ] }, - "deployedOn": "invoke.setPerpsEthOrderFees", - "gasUsed": 168718, + "deployedOn": "invoke.setPerpsWifOrderFees", + "gasUsed": 59266, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "5660c25749ebf854ec6cbb3cc4a03841", + "hash": "eadb1958bc602ec83031b5ff626bca99", "version": 7 }, - "invoke.setPerpsPriceEth": { + "invoke.setPerpsBtcSettlementStrategy": { "artifacts": { "contracts": {}, "txns": { - "setPerpsPriceEth": { - "hash": "0xa6ee3727ea166e36d4953e8e7c7432b8f2db48aa68403a5408e671773db571a2", - "blockNumber": "67334978", - "timestamp": "1722223964", + "setPerpsBtcSettlementStrategy": { + "hash": "0xa3500cecdec1f6bd485deff08c0414c5efe7e73a4e9e3c9549a173572ad3818b", + "blockNumber": "68535917", + "timestamp": "1722632442", "events": { - "MarketPriceDataUpdated": [ + "SettlementStrategySet": [ { - "name": "MarketPriceDataUpdated", + "name": "SettlementStrategySet", "args": [ - "100", - "0x93249440fb2535a0425e3134c597f4570fbae358ce9a039bff9957ccb1a74f37", - "60" + "200", + "0", + { + "strategyType": 0, + "settlementDelay": "2", + "settlementWindowDuration": "60", + "priceVerificationContract": "0x0eA49b2e23387cD99ceceBDa52041c604e40992E", + "feedId": "0xe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43", + "settlementReward": "500000000000000000000000000000000000", + "disabled": false, + "commitmentPriceDelay": "2" + } ] } ] }, - "deployedOn": "invoke.setPerpsPriceEth", - "gasUsed": 169064, + "deployedOn": "invoke.setPerpsBtcSettlementStrategy", + "gasUsed": 145078, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "f1ad2d44ffc25f0da3ec2553ee716437", + "hash": "1063762239bde8dd1abe31d050670f5b", "version": 7 }, - "invoke.setPerpsEthSettlementStrategy": { + "invoke.setPerpsSolSettlementStrategy": { "artifacts": { "contracts": {}, "txns": { - "setPerpsEthSettlementStrategy": { - "hash": "0xda608af7887475da32b2db46e79fb5336e5a12fe196378eec5657243a86c78c6", - "blockNumber": "67334986", - "timestamp": "1722223969", + "setPerpsSolSettlementStrategy": { + "hash": "0x194d3368110e678f9d90b9666382a3710ab87127fd32c1dbe8ee8127ecdeba92", + "blockNumber": "68535975", + "timestamp": "1722632460", "events": { "SettlementStrategySet": [ { "name": "SettlementStrategySet", "args": [ - "100", + "300", "0", { "strategyType": 0, "settlementDelay": "2", "settlementWindowDuration": "60", "priceVerificationContract": "0x0eA49b2e23387cD99ceceBDa52041c604e40992E", - "feedId": "0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace", - "settlementReward": "500000000000000000", + "feedId": "0xef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d", + "settlementReward": "500000000000000000000000000000000000", "disabled": false, "commitmentPriceDelay": "2" } @@ -18034,15 +23716,220 @@ } ] }, - "deployedOn": "invoke.setPerpsEthSettlementStrategy", - "gasUsed": 269355, + "deployedOn": "invoke.setPerpsSolSettlementStrategy", + "gasUsed": 59890, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "4c561e80be7cb3dc82fe6a8f8a93c0dc", + "version": 7 + }, + "invoke.setPerpsWifSettlementStrategy": { + "artifacts": { + "contracts": {}, + "txns": { + "setPerpsWifSettlementStrategy": { + "hash": "0x2145938c9df055e3eb90119390f44cbc50b5ff6080caeeb8acd26d26c9ab6617", + "blockNumber": "68535980", + "timestamp": "1722632461", + "events": { + "SettlementStrategySet": [ + { + "name": "SettlementStrategySet", + "args": [ + "400", + "0", + { + "strategyType": 0, + "settlementDelay": "2", + "settlementWindowDuration": "60", + "priceVerificationContract": "0x0eA49b2e23387cD99ceceBDa52041c604e40992E", + "feedId": "0x4ca4beeca86f0d164160323817a4e42b10010a724c2217c6ee41b54cd4cc61fc", + "settlementReward": "500000000000000000000000000000000000", + "disabled": false, + "commitmentPriceDelay": "2" + } + ] + } + ] + }, + "deployedOn": "invoke.setPerpsWifSettlementStrategy", + "gasUsed": 145090, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": {} + }, + "hash": "3a00e68f20b7fb634683280191fb1132", + "version": 7 + }, + "var.perps_keeper_settings": { + "artifacts": { + "settings": { + "perps_keeper_l1_cost_settle_gas_units": "30000", + "perps_keeper_l2_cost_settle_gas_units": "2450000", + "perps_keeper_l1_cost_flag_gas_units": "31000", + "perps_keeper_l2_cost_flag_gas_units": "1160000", + "perps_keeper_l1_cost_liquidate_gas_units": "5500", + "perps_keeper_l2_cost_liquidate_gas_units": "600000" + } + }, + "hash": "1becb7774ddfab2fcf367db48044101a", + "version": 7 + }, + "provision.perps_gas_oracle_node": { + "artifacts": { + "imports": { + "perps_gas_oracle_node": { + "url": "ipfs://QmQaUGLJD8A5mR43PMdRiM3kPiMP4FAv97RPEBFifEpe3v", + "tags": [ + "latest" + ], + "target": "arbitrum-gas-price-oracle:3.3.16@main", + "preset": "main", + "settings": { + "arbGasPriceOracleAddress": "0x000000000000000000000000000000000000006C" + }, + "contracts": { + "ArbGasPriceOracle": { + "address": "0x1FBbaFB9232247D37aF889210c75BbF29303b833", + "abi": [ + "constructor(address _arbGasInfoPrecompileAddress)", + "error ArbGasPriceOracleInvalidExecutionKind()", + "error OverflowUint256ToInt256()", + "function KIND_FLAG() view returns (uint256)", + "function KIND_LIQUIDATE() view returns (uint256)", + "function KIND_SETTLEMENT() view returns (uint256)", + "function isValid(tuple(uint8 nodeType, bytes parameters, bytes32[] parents) nodeDefinition) view returns (bool valid)", + "function precompile() view returns (address)", + "function process(tuple(int256 price, uint256 timestamp, uint256 __slotAvailableForFutureUse1, uint256 __slotAvailableForFutureUse2)[], bytes parameters, bytes32[] runtimeKeys, bytes32[] runtimeValues) view returns (tuple(int256 price, uint256 timestamp, uint256 __slotAvailableForFutureUse1, uint256 __slotAvailableForFutureUse2) nodeOutput)", + "function supportsInterface(bytes4 interfaceId) pure returns (bool)" + ], + "constructorArgs": [ + "0x000000000000000000000000000000000000006C" + ], + "linkedLibraries": {}, + "deployTxnHash": "", + "deployTxnBlockNumber": "", + "deployTimestamp": "1722632531", + "sourceName": "contracts/ArbGasPriceOracle.sol", + "contractName": "ArbGasPriceOracle", + "deployedOn": "contract.ArbGasPriceOracle", + "gasUsed": 0, + "gasCost": "0" + } + }, + "extras": { + "arbGasPriceOracleAddress": "0x000000000000000000000000000000000000006C" + } + } + } + }, + "hash": null, + "version": 7 + }, + "invoke.registerPerps_KeeperCostEthOracleNode": { + "artifacts": { + "contracts": {}, + "txns": { + "registerPerps_KeeperCostEthOracleNode": { + "hash": "0x820a0c5e571914819308328bc1d8e9de1dcb98af96a2d0f2171f01d35b03efd6", + "blockNumber": "68536189", + "timestamp": "1722632534", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0x7bd8a44d9f86e1c54d667c921d9588ec14138509ffafaf91c702e8ccd2303341", + 2, + "0x0000000000000000000000001fbbafb9232247d37af889210c75bbf29303b833000000000000000000000000000000000000000000000000000000000000753000000000000000000000000000000000000000000000000000000000002562500000000000000000000000000000000000000000000000000000000000007918000000000000000000000000000000000000000000000000000000000011b340000000000000000000000000000000000000000000000000000000000000157c00000000000000000000000000000000000000000000000000000000000927c0", + [] + ] + } + ] + }, + "deployedOn": "invoke.registerPerps_KeeperCostEthOracleNode", + "gasUsed": 257582, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "perps_keeper_cost_eth_oracle_id": "0x7bd8a44d9f86e1c54d667c921d9588ec14138509ffafaf91c702e8ccd2303341" + } + }, + "hash": "2114f06cb602f31f0e476171a9c3d50c", + "version": 7 + }, + "invoke.registerPerps_KeeperCostUsdOracleNode": { + "artifacts": { + "contracts": {}, + "txns": { + "registerPerps_KeeperCostUsdOracleNode": { + "hash": "0xf8f4c00b342befee3726576fe538f799e15a4fe2637405034ca194da8bc34ef1", + "blockNumber": "68536199", + "timestamp": "1722632537", + "events": { + "NodeRegistered": [ + { + "name": "NodeRegistered", + "args": [ + "0x4c1d6a5d88e1c04377d0eebe99b7ca2429986f9b9928300bba5203d2765c871c", + 1, + "0x0000000000000000000000000000000000000000000000000000000000000007", + [ + "0x7bd8a44d9f86e1c54d667c921d9588ec14138509ffafaf91c702e8ccd2303341", + "0x93249440fb2535a0425e3134c597f4570fbae358ce9a039bff9957ccb1a74f37" + ] + ] + } + ] + }, + "deployedOn": "invoke.registerPerps_KeeperCostUsdOracleNode", + "gasUsed": 271423, + "gasCost": "100000000", + "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" + } + }, + "settings": { + "perps_keeper_cost_usd_oracle_id": "0x4c1d6a5d88e1c04377d0eebe99b7ca2429986f9b9928300bba5203d2765c871c" + } + }, + "hash": "6ae195c3b6babf904ed310be8af1fbb0", + "version": 7 + }, + "invoke.setPerpsMarketKeeperCostNodeId": { + "artifacts": { + "contracts": {}, + "txns": { + "setPerpsMarketKeeperCostNodeId": { + "hash": "0xd313513fcb08de972279da8e1da5003aabfb3e7ca926c08a0b383ae2b1361c42", + "blockNumber": "68536383", + "timestamp": "1722632614", + "events": { + "KeeperCostNodeIdUpdated": [ + { + "name": "KeeperCostNodeIdUpdated", + "args": [ + "0x4c1d6a5d88e1c04377d0eebe99b7ca2429986f9b9928300bba5203d2765c871c" + ] + } + ] + }, + "deployedOn": "invoke.setPerpsMarketKeeperCostNodeId", + "gasUsed": 56159, "gasCost": "100000000", "signer": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9" } }, "settings": {} }, - "hash": "3ee52f58b0cda7da931861d62ab711f6", + "hash": "d28c7b84084b6910616a4ec4ff723b5e", "version": 7 } }, @@ -18050,7 +23937,7 @@ "status": "complete", "meta": { "gitUrl": "https://github.com/Synthetixio/synthetix-deployments", - "commitHash": "d4a5878878656e5af6f874a27fbc50c7c8bbcec7", + "commitHash": "73731b68a04d161dcd055f9f4897773b9e5740bb", "readme": "https://github.com/Synthetixio/synthetix-deployments/blob/main/README.md" }, "miscUrl": "ipfs://QmeSt2mnJKE8qmRhLyYbHQQxDKpsFbcWnw5e7JF4xVbN6k", diff --git a/421614-main/collateralTokens.json b/421614-main/collateralTokens.json index b223839d3..3c7000c0a 100644 --- a/421614-main/collateralTokens.json +++ b/421614-main/collateralTokens.json @@ -76,5 +76,44 @@ "oracleNodeId": "0x075491f920177d441f4f31049f525749a1467428d01ac26337b0e1b9af8cfe70", "tokenAddress": "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", "minDelegationD18": "100000000000000000000" + }, + { + "address": "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + "symbol": "sBTC", + "name": "Synthetic Bitcoin", + "decimals": 18, + "depositingEnabled": false, + "issuanceRatioD18": "2000000000000000000", + "liquidationRatioD18": "1100000000000000000", + "liquidationRewardD18": "500000000000000000", + "oracleNodeId": "0x83577cf4a839275e030f38dd91c61800fb82368e459720aea7e08de44919a4a4", + "tokenAddress": "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + "minDelegationD18": "500000000000000000" + }, + { + "address": "0x711d4F22CC39223a7273E45537c9d371E66A8a40", + "symbol": "sETH", + "name": "Synthetic Ether", + "decimals": 18, + "depositingEnabled": false, + "issuanceRatioD18": "2000000000000000000", + "liquidationRatioD18": "1100000000000000000", + "liquidationRewardD18": "1000000000000000000", + "oracleNodeId": "0x93249440fb2535a0425e3134c597f4570fbae358ce9a039bff9957ccb1a74f37", + "tokenAddress": "0x711d4F22CC39223a7273E45537c9d371E66A8a40", + "minDelegationD18": "1000000000000000000" + }, + { + "address": "0xd45eACF062F6C7c780EF7953c23E112041f0bd1B", + "symbol": "fBTC", + "name": "Fake BTC Coin", + "decimals": 18, + "depositingEnabled": false, + "issuanceRatioD18": "2000000000000000000", + "liquidationRatioD18": "1100000000000000000", + "liquidationRewardD18": "500000000000000000", + "oracleNodeId": "0x83577cf4a839275e030f38dd91c61800fb82368e459720aea7e08de44919a4a4", + "tokenAddress": "0xd45eACF062F6C7c780EF7953c23E112041f0bd1B", + "minDelegationD18": "500000000000000000" } ] \ No newline at end of file diff --git a/421614-main/extras.json b/421614-main/extras.json index 047c2ab29..b4ff091fd 100644 --- a/421614-main/extras.json +++ b/421614-main/extras.json @@ -16,8 +16,8 @@ "minimum_liquidity_ratio": "2000000000000000000", "owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", "perps_keeper_cost_package": "arbitrum-gas-price-oracle:3.3.16", - "perps_market_package": "synthetix-perps-market:3.3.19", - "perps_super_market_name": "High MCap", + "perps_market_package": "synthetix-perps-market:3.4.1", + "perps_super_market_name": "Multi Collateral Perps", "pool_owner": "0x48914229deDd5A9922f44441ffCCfC2Cb7856Ee9", "price_deviation_tolerance": "1000000000000000000", "pyth_feed_id_arb": "0x3fa4252848f9f0a1480be62745a4629d9eb1322aebab8a791e344b3b9c1adcf5", @@ -32,7 +32,7 @@ "settlement_reward": "500000000000000000", "snx_package": "synthetix:3.3.18", "spartan_council_pool_id_setting": "1", - "spot_market_package": "synthetix-spot-market:3.3.15", + "spot_market_package": "synthetix-spot-market:3.3.21-dev.fd4c5628", "synth_dai_max_market_collateral": "0", "synth_usdc_max_market_collateral": "10000000000000000000000000", "target_preset": "main", @@ -115,6 +115,124 @@ "perpsEthLockedOiRatio": "250000000000000000", "perpsEthMaxLiquidationPd": "500000000000000", "perpsEthEndorsedLiquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306", + "eth_pyth_settlement_strategy": "0", + "pyth_feed_id_btc": "0xe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43", + "pyth_feed_id_sol": "0xef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d", + "pyth_feed_id_wif": "0x4ca4beeca86f0d164160323817a4e42b10010a724c2217c6ee41b54cd4cc61fc", + "referrer_fee": "200000000000000000", + "synth_btc_max_collateral_amount": "75", + "synth_btc_skew_scale": "3500", + "synth_eth_max_market_collateral": "1000", + "synth_eth_skew_scale": "350000", + "btc_perps_market_id": "200", + "btc_perps_market_skew_scale": "35000", + "btc_perps_market_max_funding_velocity": "9", + "btc_perps_maker_fee_ratio": "0", + "btc_perps_taker_fee_ratio": "0.0005", + "btc_perps_max_market_size": "1200", + "btc_perps_max_market_value": "50000000", + "btc_perps_initial_margin_ratio": "0.744", + "btc_perps_maintenance_margin_scalar": "0.333", + "btc_perps_minimum_initial_margin_ratio": "0.02", + "btc_perps_flag_reward_ratio_d18": "0.0003", + "btc_perps_max_liquidation_limit_accumulation_multiplier": "1.5", + "btc_perps_max_seconds_in_liquidation_window": "30", + "btc_perps_minimum_position_margin": "50", + "btc_perps_locked_oi_ratio": "0.25", + "btc_perps_max_liquidation_pd": "0.0005", + "btc_perps_endorsed_liquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306", + "btc_upper_limit_discount": "75000000000000000", + "btc_lower_limit_discount": "10000000000000000", + "btc_discount_scalar": "1000000000000000000", + "eth_upper_limit_discount": "100000000000000000", + "eth_lower_limit_discount": "10000000000000000", + "eth_discount_scalar": "1000000000000000000", "eth_perps_market_id": "100", - "eth_pyth_settlement_strategy": "0" + "eth_perps_market_skew_scale": "350000", + "eth_perps_market_max_funding_velocity": "9", + "eth_perps_maker_fee_ratio": "0", + "eth_perps_taker_fee_ratio": "0.0005", + "eth_perps_max_market_size": "15000", + "eth_perps_max_market_value": "40000000", + "eth_perps_initial_margin_ratio": "0.744", + "eth_perps_minimum_initial_margin_ratio": "0.02", + "eth_perps_maintenance_margin_scalar": "0.333", + "eth_perps_flag_reward_ratio": "0.0003", + "eth_perps_minimum_position_margin": "50", + "eth_perps_locked_oi_ratio": "0.25", + "eth_perps_max_liquidation_limit_accumulation_multiplier": "1.5", + "eth_perps_max_seconds_in_liquidation_window": "30", + "eth_perps_max_liquidation_pd": "0.0005", + "eth_perps_endorsed_liquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306", + "perps_liquidation_min_keeper_reward_usd": "1", + "perps_liquidation_min_keeper_profit_ratio_d18": "0.30", + "perps_liquidation_max_keeper_reward_usd": "30", + "perps_liquidation_max_keeper_scaling_ratio_d18": "0.0003", + "perps_low_util_gradient": "0", + "perps_gradient_breakpoint": "0", + "perps_high_util_gradient": "0", + "perps_collateral_liquidation_ratio": "0.0003", + "perps_max_positions_per_account": "10", + "perps_max_collaterals_per_account": "3", + "sol_perps_market_id": "300", + "sol_perps_market_skew_scale": "1406250", + "sol_perps_market_max_funding_velocity": "9", + "sol_perps_maker_fee_ratio": "0", + "sol_perps_taker_fee_ratio": "0.0008", + "sol_perps_max_market_size": "270000", + "sol_perps_max_market_value": "40000000", + "sol_perps_initial_margin_ratio": "5.503", + "sol_perps_maintenance_margin_scalar": "0.333", + "sol_perps_minimum_initial_margin_ratio": "0.002", + "sol_perps_flag_reward_ratio_d18": "0.0003", + "sol_perps_max_liquidation_limit_accumulation_multiplier": "1.5", + "sol_perps_max_seconds_in_liquidation_window": "30", + "sol_perps_minimum_position_margin": "50", + "sol_perps_locked_oi_ratio": "0.50", + "sol_perps_max_liquidation_pd": "0.0005", + "sol_perps_endorsed_liquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306", + "wif_perps_market_id": "400", + "wif_perps_market_skew_scale": "15000000", + "wif_perps_market_max_funding_velocity": "36", + "wif_perps_maker_fee_ratio": "0", + "wif_perps_taker_fee_ratio": "0.0010", + "wif_perps_max_market_size": "2500000", + "wif_perps_max_market_value": "3000000", + "wif_perps_initial_margin_ratio": "1", + "wif_perps_maintenance_margin_scalar": "0.5", + "wif_perps_minimum_initial_margin_ratio": "0.04", + "wif_perps_flag_reward_ratio_d18": "0.0003", + "wif_perps_max_liquidation_limit_accumulation_multiplier": "1.5", + "wif_perps_max_seconds_in_liquidation_window": "30", + "wif_perps_minimum_position_margin": "50", + "wif_perps_locked_oi_ratio": "0.50", + "wif_perps_max_liquidation_pd": "0.0005", + "wif_perps_endorsed_liquidator": "0x95A61Fa7454CA5f6A3CE01724e306Cd14a22D306", + "btc_lookup_oracle_id": "0x1ba7d96e40c462df52a92ba5587728b13749829f6066ded505c482d34cbeca44", + "sol_lookup_oracle_id": "0xe73f2594aabd0f5bfc5709160ab492ac3f0686fbf4193b34ef108ef0a45fc135", + "wif_lookup_oracle_id": "0xbc0f6532a43751b1dc29b5da0785e7ba8ff98b220b32cc7113fe1d0932b9f494", + "btc_pyth_oracle_id": "0xedcd439d4626930331f4ed0ddf7279115c3f3cf56f57ac5414d576a84bac6f53", + "sol_pyth_oracle_id": "0xb80bc98d8da860f3c096ca3d15bec6a2134a175a5547cea57a680c1d799d1f2f", + "wif_pyth_oracle_id": "0x7130ed5159ad7a6b94a0a90ef6cd6f30e03c5a40f1a8fe3ff5beb5ba48e86361", + "btc_address": "0xd45eACF062F6C7c780EF7953c23E112041f0bd1B", + "synth_btc_market_id": "4", + "synth_btc_token_address": "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + "synth_eth_market_id": "5", + "synth_eth_token_address": "0x711d4F22CC39223a7273E45537c9d371E66A8a40", + "btc_oracle_id": "0x83577cf4a839275e030f38dd91c61800fb82368e459720aea7e08de44919a4a4", + "sol_oracle_id": "0x2619627cc0998264a20643f6f13dc38a69bd198f11c668e6162d329aa99c5c4a", + "wif_oracle_id": "0xbcf8052c9cedf0577bd02b12aad0070cc36e049a5e7f9a48748bee9211295e53", + "synth_btc_settlement_strategy_id": "0", + "synth_eth_settlement_strategy_id": "0", + "btc_pyth_settlement_strategy": "0", + "sol_pyth_settlement_strategy": "0", + "wif_pyth_settlement_strategy": "0", + "perps_keeper_l1_cost_settle_gas_units": "30000", + "perps_keeper_l2_cost_settle_gas_units": "2450000", + "perps_keeper_l1_cost_flag_gas_units": "31000", + "perps_keeper_l2_cost_flag_gas_units": "1160000", + "perps_keeper_l1_cost_liquidate_gas_units": "5500", + "perps_keeper_l2_cost_liquidate_gas_units": "600000", + "perps_keeper_cost_eth_oracle_id": "0x7bd8a44d9f86e1c54d667c921d9588ec14138509ffafaf91c702e8ccd2303341", + "perps_keeper_cost_usd_oracle_id": "0x4c1d6a5d88e1c04377d0eebe99b7ca2429986f9b9928300bba5203d2765c871c" } \ No newline at end of file diff --git a/421614-main/meta.json b/421614-main/meta.json index 2c08e4df4..2980a4a80 100644 --- a/421614-main/meta.json +++ b/421614-main/meta.json @@ -2,9 +2,9 @@ "chainId": 421614, "name": "synthetix-omnibus", "preset": "main", - "version": "14", + "version": "15", "generator": "cannon cli 2.15.8", - "timestamp": 1722345255, + "timestamp": 1722632616, "miscUrl": "ipfs://QmeSt2mnJKE8qmRhLyYbHQQxDKpsFbcWnw5e7JF4xVbN6k", "contracts": { "CoreProxy": "0x76490713314fCEC173f44e99346F54c6e92a8E42", @@ -13,21 +13,27 @@ "OracleManagerProxy": "0x12aE0D5CD26f212bFE242DA78139d463019f7a73", "TrustedMulticallForwarder": "0xE2C5658cC5C448B48141168f3e475dF8f65A1e3e", "SpotMarketProxy": "0x93d645c42A0CA3e08E9552367B8c454765fff041", - "PerpsMarketProxy": "0x111BAbcdd66b1B60A20152a2D3D06d36F8B5703c", - "PerpsAccountProxy": "0xEAb7b75508B4F06FB9c6a328bEC0F23cC64FFac2", + "PerpsMarketProxy": "0xA73A7B754Ec870b3738D0654cA75b7d0eEbdb460", + "PerpsAccountProxy": "0xf3D4109EB4e7EC31f8Eee5D9ADDAD5F3C53a6C87", "PythERC7412Wrapper": "0x0eA49b2e23387cD99ceceBDa52041c604e40992E", "MintableToken_fARB": "0x7b356eEdABc1035834cd1f714658627fcb4820E3", "MintableToken_fDAI": "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", "MintableToken_fUSDe": "0xCf45784084Ca3fd91C215a87265014c3DC67182D", "MintableToken_fsUSDe": "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", + "MintableToken_fBTC": "0xd45eACF062F6C7c780EF7953c23E112041f0bd1B", "CollateralToken_fDAI": "0xda7b438d762110083602AbC497b1Ec8Bc6605eC9", "CollateralToken_USDC": "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d", "CollateralToken_fARB": "0x7b356eEdABc1035834cd1f714658627fcb4820E3", "CollateralToken_WETH": "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73", "CollateralToken_fUSDe": "0xCf45784084Ca3fd91C215a87265014c3DC67182D", "CollateralToken_fsUSDe": "0x7FcAD85b378D9a13733dD5c715ef318F45cd7699", + "CollateralToken_sBTC": "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + "CollateralToken_sETH": "0x711d4F22CC39223a7273E45537c9d371E66A8a40", + "CollateralToken_fBTC": "0xd45eACF062F6C7c780EF7953c23E112041f0bd1B", "SynthToken_sDAI": "0x88DCcaae7872377f80c59cf3c04865741fDbaffF", "SynthToken_sUSDC": "0xB3A0E9e0699b82b1F33A03fFf38e72513c2Dc933", + "SynthToken_sBTC": "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + "SynthToken_sETH": "0x711d4F22CC39223a7273E45537c9d371E66A8a40", "RewardsDistributor_1_fARB_fARB": "0x8Db7E7E3f00c2Fd011Bb715935d33BfA0570cDB6", "RewardsDistributor_1_USDC_fARB": "0x26c9B83fA781e93Ec4cA5fBAC07AC82135872512", "RewardsDistributor_1_WETH_fARB": "0x3974935755a50295b727Ab40ae144BE29391d818", diff --git a/421614-main/mintableTokens.json b/421614-main/mintableTokens.json index 767acb52c..9d6271395 100644 --- a/421614-main/mintableTokens.json +++ b/421614-main/mintableTokens.json @@ -22,5 +22,11 @@ "symbol": "fsUSDe", "name": "Fake sUSDe Coin", "decimals": 18 + }, + { + "address": "0xd45eACF062F6C7c780EF7953c23E112041f0bd1B", + "symbol": "fBTC", + "name": "Fake BTC Coin", + "decimals": 18 } ] \ No newline at end of file diff --git a/421614-main/synthTokens.json b/421614-main/synthTokens.json index 35c22cabc..8481405bb 100644 --- a/421614-main/synthTokens.json +++ b/421614-main/synthTokens.json @@ -12,5 +12,19 @@ "symbol": "sUSDC", "name": "Synthetic USD Coin", "decimals": 18 + }, + { + "synthMarketId": "4", + "address": "0x726cFb7f07231D8dBfE993c3A8b09D933CaeE78b", + "symbol": "sBTC", + "name": "Synthetic Bitcoin", + "decimals": 18 + }, + { + "synthMarketId": "5", + "address": "0x711d4F22CC39223a7273E45537c9d371E66A8a40", + "symbol": "sETH", + "name": "Synthetic Ether", + "decimals": 18 } ] \ No newline at end of file