{"abi":[{"type":"function","name":"addWhitelistedBenefactor","inputs":[{"name":"benefactor","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"globalConfig","inputs":[],"outputs":[{"name":"","type":"tuple","internalType":"struct IEthenaMinting.GlobalConfig","components":[{"name":"globalMaxMintPerBlock","type":"uint128","internalType":"uint128"},{"name":"globalMaxRedeemPerBlock","type":"uint128","internalType":"uint128"}]}],"stateMutability":"view"},{"type":"function","name":"hashOrder","inputs":[{"name":"order","type":"tuple","internalType":"struct IEthenaMinting.Order","components":[{"name":"order_id","type":"string","internalType":"string"},{"name":"order_type","type":"uint8","internalType":"enum IEthenaMinting.OrderType"},{"name":"expiry","type":"uint120","internalType":"uint120"},{"name":"nonce","type":"uint128","internalType":"uint128"},{"name":"benefactor","type":"address","internalType":"address"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"collateral_asset","type":"address","internalType":"address"},{"name":"collateral_amount","type":"uint128","internalType":"uint128"},{"name":"usde_amount","type":"uint128","internalType":"uint128"}]}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"redeem","inputs":[{"name":"order","type":"tuple","internalType":"struct IEthenaMinting.Order","components":[{"name":"order_id","type":"string","internalType":"string"},{"name":"order_type","type":"uint8","internalType":"enum IEthenaMinting.OrderType"},{"name":"expiry","type":"uint120","internalType":"uint120"},{"name":"nonce","type":"uint128","internalType":"uint128"},{"name":"benefactor","type":"address","internalType":"address"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"collateral_asset","type":"address","internalType":"address"},{"name":"collateral_amount","type":"uint128","internalType":"uint128"},{"name":"usde_amount","type":"uint128","internalType":"uint128"}]},{"name":"signature","type":"tuple","internalType":"struct IEthenaMinting.Signature","components":[{"name":"signature_type","type":"uint8","internalType":"enum IEthenaMinting.SignatureType"},{"name":"signature_bytes","type":"bytes","internalType":"bytes"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"tokenConfig","inputs":[{"name":"asset","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IEthenaMinting.TokenConfig","components":[{"name":"tokenType","type":"uint8","internalType":"enum IEthenaMinting.TokenType"},{"name":"isActive","type":"bool","internalType":"bool"},{"name":"maxMintPerBlock","type":"uint128","internalType":"uint128"},{"name":"maxRedeemPerBlock","type":"uint128","internalType":"uint128"}]}],"stateMutability":"view"},{"type":"function","name":"totalPerBlock","inputs":[{"name":"blockNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IEthenaMinting.BlockTotals","components":[{"name":"mintedPerBlock","type":"uint128","internalType":"uint128"},{"name":"redeemedPerBlock","type":"uint128","internalType":"uint128"}]}],"stateMutability":"view"},{"type":"function","name":"totalPerBlockPerAsset","inputs":[{"name":"blockNumber","type":"uint256","internalType":"uint256"},{"name":"asset","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IEthenaMinting.BlockTotals","components":[{"name":"mintedPerBlock","type":"uint128","internalType":"uint128"},{"name":"redeemedPerBlock","type":"uint128","internalType":"uint128"}]}],"stateMutability":"view"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"addWhitelistedBenefactor(address)":"16255c43","globalConfig()":"a7c1abe0","hashOrder((string,uint8,uint120,uint128,address,address,address,uint128,uint128))":"7cef7e91","redeem((string,uint8,uint120,uint128,address,address,address,uint128,uint128),(uint8,bytes))":"75c890dc","tokenConfig(address)":"fe136c4e","totalPerBlock(uint256)":"92408dc7","totalPerBlockPerAsset(uint256,address)":"a693635e"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"benefactor\",\"type\":\"address\"}],\"name\":\"addWhitelistedBenefactor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"globalConfig\",\"outputs\":[{\"components\":[{\"internalType\":\"uint128\",\"name\":\"globalMaxMintPerBlock\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"globalMaxRedeemPerBlock\",\"type\":\"uint128\"}],\"internalType\":\"struct IEthenaMinting.GlobalConfig\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"order_id\",\"type\":\"string\"},{\"internalType\":\"enum IEthenaMinting.OrderType\",\"name\":\"order_type\",\"type\":\"uint8\"},{\"internalType\":\"uint120\",\"name\":\"expiry\",\"type\":\"uint120\"},{\"internalType\":\"uint128\",\"name\":\"nonce\",\"type\":\"uint128\"},{\"internalType\":\"address\",\"name\":\"benefactor\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"collateral_asset\",\"type\":\"address\"},{\"internalType\":\"uint128\",\"name\":\"collateral_amount\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"usde_amount\",\"type\":\"uint128\"}],\"internalType\":\"struct IEthenaMinting.Order\",\"name\":\"order\",\"type\":\"tuple\"}],\"name\":\"hashOrder\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"order_id\",\"type\":\"string\"},{\"internalType\":\"enum IEthenaMinting.OrderType\",\"name\":\"order_type\",\"type\":\"uint8\"},{\"internalType\":\"uint120\",\"name\":\"expiry\",\"type\":\"uint120\"},{\"internalType\":\"uint128\",\"name\":\"nonce\",\"type\":\"uint128\"},{\"internalType\":\"address\",\"name\":\"benefactor\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"collateral_asset\",\"type\":\"address\"},{\"internalType\":\"uint128\",\"name\":\"collateral_amount\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"usde_amount\",\"type\":\"uint128\"}],\"internalType\":\"struct IEthenaMinting.Order\",\"name\":\"order\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"enum IEthenaMinting.SignatureType\",\"name\":\"signature_type\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"signature_bytes\",\"type\":\"bytes\"}],\"internalType\":\"struct IEthenaMinting.Signature\",\"name\":\"signature\",\"type\":\"tuple\"}],\"name\":\"redeem\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"asset\",\"type\":\"address\"}],\"name\":\"tokenConfig\",\"outputs\":[{\"components\":[{\"internalType\":\"enum IEthenaMinting.TokenType\",\"name\":\"tokenType\",\"type\":\"uint8\"},{\"internalType\":\"bool\",\"name\":\"isActive\",\"type\":\"bool\"},{\"internalType\":\"uint128\",\"name\":\"maxMintPerBlock\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"maxRedeemPerBlock\",\"type\":\"uint128\"}],\"internalType\":\"struct IEthenaMinting.TokenConfig\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"}],\"name\":\"totalPerBlock\",\"outputs\":[{\"components\":[{\"internalType\":\"uint128\",\"name\":\"mintedPerBlock\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"redeemedPerBlock\",\"type\":\"uint128\"}],\"internalType\":\"struct IEthenaMinting.BlockTotals\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"asset\",\"type\":\"address\"}],\"name\":\"totalPerBlockPerAsset\",\"outputs\":[{\"components\":[{\"internalType\":\"uint128\",\"name\":\"mintedPerBlock\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"redeemedPerBlock\",\"type\":\"uint128\"}],\"internalType\":\"struct IEthenaMinting.BlockTotals\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"redeem((string,uint8,uint120,uint128,address,address,address,uint128,uint128),(uint8,bytes))\":{\"params\":{\"order\":\"struct containing order details and confirmation from server\",\"signature\":\"signature of the taker\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"addWhitelistedBenefactor(address)\":{\"notice\":\"Adds a benefactor address to the benefactor whitelist\"},\"globalConfig()\":{\"notice\":\"global single block totals\"},\"hashOrder((string,uint8,uint120,uint128,address,address,address,uint128,uint128))\":{\"notice\":\"hash an Order struct\"},\"redeem((string,uint8,uint120,uint128,address,address,address,uint128,uint128),(uint8,bytes))\":{\"notice\":\"Redeem stablecoins for assets\"},\"totalPerBlockPerAsset(uint256,address)\":{\"notice\":\"total USDe that can be minted/redeemed across all assets per single block.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/burners/sUSDe/IEthenaMinting.sol\":\"IEthenaMinting\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@symbioticfi/core/=lib/core/\",\":core/=lib/core/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\"],\"viaIR\":true},\"sources\":{\"src/interfaces/burners/sUSDe/IEthenaMinting.sol\":{\"keccak256\":\"0xe517470ac394316d54a4511a704881cd2b00bfebd3266a5d913bcc07db1882de\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6843afc11075fa1842f3d3980fd44f7cbba5d0d4c7c3bcb61ca57a3752041076\",\"dweb:/ipfs/QmV8ALEGGcZAZCDWg1DwKqVdBtkdV9cY4R6vKKBNC6cWed\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.25+commit.b61c2a91"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"benefactor","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addWhitelistedBenefactor"},{"inputs":[],"stateMutability":"view","type":"function","name":"globalConfig","outputs":[{"internalType":"struct IEthenaMinting.GlobalConfig","name":"","type":"tuple","components":[{"internalType":"uint128","name":"globalMaxMintPerBlock","type":"uint128"},{"internalType":"uint128","name":"globalMaxRedeemPerBlock","type":"uint128"}]}]},{"inputs":[{"internalType":"struct IEthenaMinting.Order","name":"order","type":"tuple","components":[{"internalType":"string","name":"order_id","type":"string"},{"internalType":"enum IEthenaMinting.OrderType","name":"order_type","type":"uint8"},{"internalType":"uint120","name":"expiry","type":"uint120"},{"internalType":"uint128","name":"nonce","type":"uint128"},{"internalType":"address","name":"benefactor","type":"address"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"collateral_asset","type":"address"},{"internalType":"uint128","name":"collateral_amount","type":"uint128"},{"internalType":"uint128","name":"usde_amount","type":"uint128"}]}],"stateMutability":"view","type":"function","name":"hashOrder","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"struct IEthenaMinting.Order","name":"order","type":"tuple","components":[{"internalType":"string","name":"order_id","type":"string"},{"internalType":"enum IEthenaMinting.OrderType","name":"order_type","type":"uint8"},{"internalType":"uint120","name":"expiry","type":"uint120"},{"internalType":"uint128","name":"nonce","type":"uint128"},{"internalType":"address","name":"benefactor","type":"address"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"collateral_asset","type":"address"},{"internalType":"uint128","name":"collateral_amount","type":"uint128"},{"internalType":"uint128","name":"usde_amount","type":"uint128"}]},{"internalType":"struct IEthenaMinting.Signature","name":"signature","type":"tuple","components":[{"internalType":"enum IEthenaMinting.SignatureType","name":"signature_type","type":"uint8"},{"internalType":"bytes","name":"signature_bytes","type":"bytes"}]}],"stateMutability":"nonpayable","type":"function","name":"redeem"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"stateMutability":"view","type":"function","name":"tokenConfig","outputs":[{"internalType":"struct IEthenaMinting.TokenConfig","name":"","type":"tuple","components":[{"internalType":"enum IEthenaMinting.TokenType","name":"tokenType","type":"uint8"},{"internalType":"bool","name":"isActive","type":"bool"},{"internalType":"uint128","name":"maxMintPerBlock","type":"uint128"},{"internalType":"uint128","name":"maxRedeemPerBlock","type":"uint128"}]}]},{"inputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"stateMutability":"view","type":"function","name":"totalPerBlock","outputs":[{"internalType":"struct IEthenaMinting.BlockTotals","name":"","type":"tuple","components":[{"internalType":"uint128","name":"mintedPerBlock","type":"uint128"},{"internalType":"uint128","name":"redeemedPerBlock","type":"uint128"}]}]},{"inputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"address","name":"asset","type":"address"}],"stateMutability":"view","type":"function","name":"totalPerBlockPerAsset","outputs":[{"internalType":"struct IEthenaMinting.BlockTotals","name":"","type":"tuple","components":[{"internalType":"uint128","name":"mintedPerBlock","type":"uint128"},{"internalType":"uint128","name":"redeemedPerBlock","type":"uint128"}]}]}],"devdoc":{"kind":"dev","methods":{"redeem((string,uint8,uint120,uint128,address,address,address,uint128,uint128),(uint8,bytes))":{"params":{"order":"struct containing order details and confirmation from server","signature":"signature of the taker"}}},"version":1},"userdoc":{"kind":"user","methods":{"addWhitelistedBenefactor(address)":{"notice":"Adds a benefactor address to the benefactor whitelist"},"globalConfig()":{"notice":"global single block totals"},"hashOrder((string,uint8,uint120,uint128,address,address,address,uint128,uint128))":{"notice":"hash an Order struct"},"redeem((string,uint8,uint120,uint128,address,address,address,uint128,uint128),(uint8,bytes))":{"notice":"Redeem stablecoins for assets"},"totalPerBlockPerAsset(uint256,address)":{"notice":"total USDe that can be minted/redeemed across all assets per single block."}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@symbioticfi/core/=lib/core/","core/=lib/core/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/interfaces/burners/sUSDe/IEthenaMinting.sol":"IEthenaMinting"},"evmVersion":"cancun","libraries":{},"viaIR":true},"sources":{"src/interfaces/burners/sUSDe/IEthenaMinting.sol":{"keccak256":"0xe517470ac394316d54a4511a704881cd2b00bfebd3266a5d913bcc07db1882de","urls":["bzz-raw://6843afc11075fa1842f3d3980fd44f7cbba5d0d4c7c3bcb61ca57a3752041076","dweb:/ipfs/QmV8ALEGGcZAZCDWg1DwKqVdBtkdV9cY4R6vKKBNC6cWed"],"license":"MIT"}},"version":1},"id":152}