Files
assetxContracts/out/YTToken.sol/YTToken.json
2025-12-18 13:07:35 +08:00

1 line
66 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{"abi":[{"type":"constructor","inputs":[{"name":"name","type":"string","internalType":"string"},{"name":"symbol","type":"string","internalType":"string"},{"name":"_priceUpdater","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"PRICE_PRECISION","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"accumulatedYield","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"allowance","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"approve","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"assetPrice","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"balanceOf","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"decimals","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"deposit","inputs":[{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getPriceInfo","inputs":[],"outputs":[{"name":"price","type":"uint256","internalType":"uint256"},{"name":"lastUpdate","type":"uint256","internalType":"uint256"},{"name":"timeSinceUpdate","type":"uint256","internalType":"uint256"},{"name":"totalVal","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"lastPriceUpdate","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"minUpdateInterval","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"name","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"priceUpdater","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setMinUpdateInterval","inputs":[{"name":"_interval","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPriceUpdater","inputs":[{"name":"_updater","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"symbol","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"totalAssets","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalSupply","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transfer","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"transferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updatePrice","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateYield","inputs":[{"name":"_newYield","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"withdraw","inputs":[{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"Approval","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"spender","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MinUpdateIntervalSet","inputs":[{"name":"interval","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PriceUpdated","inputs":[{"name":"oldPrice","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"newPrice","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"timestamp","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PriceUpdaterSet","inputs":[{"name":"updater","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"YieldAccumulated","inputs":[{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"timestamp","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"error","name":"ERC20InsufficientAllowance","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"allowance","type":"uint256","internalType":"uint256"},{"name":"needed","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ERC20InsufficientBalance","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"balance","type":"uint256","internalType":"uint256"},{"name":"needed","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ERC20InvalidApprover","inputs":[{"name":"approver","type":"address","internalType":"address"}]},{"type":"error","name":"ERC20InvalidReceiver","inputs":[{"name":"receiver","type":"address","internalType":"address"}]},{"type":"error","name":"ERC20InvalidSender","inputs":[{"name":"sender","type":"address","internalType":"address"}]},{"type":"error","name":"ERC20InvalidSpender","inputs":[{"name":"spender","type":"address","internalType":"address"}]},{"type":"error","name":"InsufficientAssets","inputs":[]},{"type":"error","name":"IntervalTooLong","inputs":[]},{"type":"error","name":"InvalidAmount","inputs":[]},{"type":"error","name":"InvalidUpdater","inputs":[]},{"type":"error","name":"InvalidYield","inputs":[]},{"type":"error","name":"NotUpdater","inputs":[]},{"type":"error","name":"OwnableInvalidOwner","inputs":[{"name":"owner","type":"address","internalType":"address"}]},{"type":"error","name":"OwnableUnauthorizedAccount","inputs":[{"name":"account","type":"address","internalType":"address"}]},{"type":"error","name":"UpdateTooFrequent","inputs":[]}],"bytecode":{"object":"0x6080604052346103b9576112b080380380610019816103bd565b9283398101906060818303126103b95780516001600160401b0381116103b957826100459183016103e2565b60208201519092906001600160401b0381116103b9576040916100699184016103e2565b9101516001600160a01b038116908190036103b95782516001600160401b0381116102ca57600354600181811c911680156103af575b60208210146102ac57601f811161034c575b506020601f82116001146102e957819293945f926102de575b50508160011b915f199060031b1c1916176003555b81516001600160401b0381116102ca57600454600181811c911680156102c0575b60208210146102ac57601f8111610249575b50602092601f82116001146101e857928192935f926101dd575b50508160011b915f199060031b1c1916176004555b33156101ca5760058054336001600160a01b0319821681179092556040519291906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a361012c600b556c0c9f2c9cd04674edea4000000060085542600955600a80546001600160a01b031916919091179055610e7c90816104348239f35b631e4fbdf760e01b5f525f60045260245ffd5b015190505f8061012c565b601f1982169360045f52805f20915f5b8681106102315750836001959610610219575b505050811b01600455610141565b01515f1960f88460031b161c191690555f808061020b565b919260206001819286850151815501940192016101f8565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c810191602084106102a2575b601f0160051c01905b8181106102975750610112565b5f815560010161028a565b9091508190610281565b634e487b7160e01b5f52602260045260245ffd5b90607f1690610100565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100ca565b601f1982169060035f52805f20915f5b8181106103345750958360019596971061031c575b505050811b016003556100df565b01515f1960f88460031b161c191690555f808061030e565b9192602060018192868b0151815501940192016102f9565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c810191602084106103a5575b601f0160051c01905b81811061039a57506100b1565b5f815560010161038d565b9091508190610384565b90607f169061009f565b5f80fd5b6040519190601f01601f191682016001600160401b038111838210176102ca57604052565b81601f820112156103b9578051906001600160401b0382116102ca57610411601f8301601f19166020016103bd565b92828452602083830101116103b957815f9260208093018386015e830101529056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301e1d11414610cc05750806306fdde0314610bee578063095ea7b314610b6c5780630964ff2614610b4f57806318160ddd14610b3257806323b872dd14610a535780632e1a7d4d1461097f5780632e9a1de114610807578063313ce567146107ec578063330227bf146107a35780634e14a5831461073e578063673a7e28146105df5780636949faeb146105c257806370a082311461058b578063715018a6146105305780638da5cb5b1461050857806395082d25146104e157806395d89b41146103c657806397c4a5f31461034f578063a9059cbb1461031e578063b6b55f2514610276578063d24378eb14610259578063dd62ed3e14610209578063f2fde38b14610183578063fc612a8d1461015b5763fcdfd5c51461013a575f80fd5b34610157575f366003190112610157576020600754604051908152f35b5f80fd5b34610157575f36600319011261015757600a546040516001600160a01b039091168152602090f35b346101575760203660031901126101575761019c610d04565b6101a4610dff565b6001600160a01b031680156101f657600580546001600160a01b0319811683179091556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b631e4fbdf760e01b5f525f60045260245ffd5b3461015757604036600319011261015757610222610d04565b61022a610d1a565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b34610157575f366003190112610157576020600854604051908152f35b3461015757602036600319011261015757600435610292610dff565b801561030f576102a481600654610d3d565b60065533156102fc576102b981600254610d3d565b600255335f525f60205260405f208181540190556040519081525f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203393a3005b63ec442f0560e01b5f525f60045260245ffd5b63162908e360e11b5f5260045ffd5b346101575760403660031901126101575761034461033a610d04565b6024359033610d68565b602060405160018152f35b3461015757602036600319011261015757610368610d04565b610370610dff565b6001600160a01b031680156103b757600a80546001600160a01b031916821790557f34a02290b7920078c19f58e94b78c77eb9cc10195b20676e19bd3b82085893b85f80a2005b6399b34d2d60e01b5f5260045ffd5b34610157575f366003190112610157576040515f6004548060011c906001811680156104d7575b6020831081146104c3578285529081156104a75750600114610452575b50819003601f01601f191681019067ffffffffffffffff82118183101761043e5761043a82918260405282610cda565b0390f35b634e487b7160e01b5f52604160045260245ffd5b905060045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5f905b8282106104915750602091508201018261040a565b600181602092548385880101520191019061047c565b90506020925060ff191682840152151560051b8201018261040a565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103ed565b34610157575f3660031901126101575760206040516c0c9f2c9cd04674edea400000008152f35b34610157575f366003190112610157576005546040516001600160a01b039091168152602090f35b34610157575f36600319011261015757610548610dff565b600580546001600160a01b031981169091555f906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b34610157576020366003190112610157576001600160a01b036105ac610d04565b165f525f602052602060405f2054604051908152f35b34610157575f366003190112610157576020600954604051908152f35b34610157575f36600319011261015757600a546001600160a01b031633141580610729575b61071a57610617600954600b5490610d3d565b421061070b576008546002548061067057505f516020610e275f395f51905f52906c0c9f2c9cd04674edea400000006008555b42600981905560085460408051938452602084019190915282015280606081015b0390a1005b61067f60065460075490610d3d565b90670de0b6b3a7640000820291808304670de0b6b3a764000014901517156106f7576106aa91610d4a565b906c0c9f2c9cd04674edea400000008202918083046c0c9f2c9cd04674edea4000000014901517156106f757670de0b6b3a76400005f516020610e275f395f51905f52920460085561064a565b634e487b7160e01b5f52601160045260245ffd5b6329fbd37760e11b5f5260045ffd5b639a280f3960e01b5f5260045ffd5b506005546001600160a01b0316331415610604565b346101575760203660031901126101575760043561075a610dff565b610e108111610794576020817f743ba06e960ffa4b2c4278d5336bb72503e5b5db471152765791293bc9c637f892600b55604051908152a1005b6309cea93b60e21b5f5260045ffd5b34610157575f3660031901126101575760806008546009546107c58142610d30565b6107d460065460075490610d3d565b91604051938452602084015260408301526060820152f35b34610157575f36600319011261015757602060405160128152f35b346101575760203660031901126101575760043560018060a01b03600a54163314158061096a575b61071a57801561095b577ffcdfbd17478a7a3586ec01961f4ffaad1453178eee6ae29dd135167624edced9604061086883600754610d3d565b92836007558151908152426020820152a1610888600954600b5490610d3d565b42101561089157005b6008549060025490816108d5575b50504260098190556008546040805193845260208401919091528201525f516020610e275f395f51905f5290806060810161066b565b6108e190600654610d3d565b90670de0b6b3a7640000820291808304670de0b6b3a764000014901517156106f75761090c91610d4a565b906c0c9f2c9cd04674edea400000008202918083046c0c9f2c9cd04674edea4000000014901517156106f757670de0b6b3a76400005f516020610e275f395f51905f529204600855908261089f565b637baace4d60e11b5f5260045ffd5b506005546001600160a01b031633141561082f565b346101575760203660031901126101575760043561099b610dff565b801561030f57600654818110610a4457816109b591610d30565b6006553315610a3157335f525f60205260405f2054818110610a185790805f923384528360205203604083205580600254036002556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3005b63391434e360e21b5f523360045260245260445260645ffd5b634b637e8f60e11b5f525f60045260245ffd5b6396d8043360e01b5f5260045ffd5b3461015757606036600319011261015757610a6c610d04565b610a74610d1a565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f198110610ab2575b506103449350610d68565b838110610b17578415610b04573315610af157610344945f52600160205260405f2060018060a01b0333165f526020528360405f209103905584610aa7565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b34610157575f366003190112610157576020600254604051908152f35b34610157575f366003190112610157576020600b54604051908152f35b3461015757604036600319011261015757610b85610d04565b602435903315610b04576001600160a01b0316908115610af157335f52600160205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b34610157575f366003190112610157576040515f6003548060011c90600181168015610cb6575b6020831081146104c3578285529081156104a75750600114610c615750819003601f01601f191681019067ffffffffffffffff82118183101761043e5761043a82918260405282610cda565b905060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5f905b828210610ca05750602091508201018261040a565b6001816020925483858801015201910190610c8b565b91607f1691610c15565b34610157575f366003190112610157576020906006548152f35b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361015757565b602435906001600160a01b038216820361015757565b919082039182116106f757565b919082018092116106f757565b8115610d54570490565b634e487b7160e01b5f52601260045260245ffd5b6001600160a01b0316908115610a31576001600160a01b03169182156102fc57815f525f60205260405f2054818110610de657817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b6005546001600160a01b03163303610e1357565b63118cdaa760e01b5f523360045260245ffdfe15819dd2fd9f6418b142e798d08a18d0bf06ea368f4480b7b0d3f75bd966bc48a26469706673582212202deb6422dfedee73882b3b873da64cefaebe9ff6baa0b5c66b8cd9a497a5ad6964736f6c634300081e0033","sourceMap":"301:4817:24:-:0;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;301:4817:24;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;301:4817:24;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;301:4817:24;;;;;;;;;;-1:-1:-1;;;;;301:4817:24;;;;1648:13:62;301:4817:24;;;;;;;;;;;-1:-1:-1;301:4817:24;;;;;;;;;;;-1:-1:-1;301:4817:24;;;;;;;;;;;;;-1:-1:-1;301:4817:24;;;;;;;;;;;;;1648:13:62;301:4817:24;;;;;1648:13:62;301:4817:24;;;;-1:-1:-1;;;;;301:4817:24;;;;1671:17:62;301:4817:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;301:4817:24;;;;;;;;;;;;;1648:13:62;301:4817:24;;;;;1671:17:62;301:4817:24;;1434:10;1273:26:51;1269:95;;3004:6;301:4817:24;;1434:10;-1:-1:-1;;;;;;587:8:24;;;;;;;301:4817;;;;1434:10;-1:-1:-1;;;;;301:4817:24;3052:40:51;-1:-1:-1;;3052:40:51;866:9:24;;301:4817;587:8;1456:28;301:4817;1532:15;1514:33;301:4817;1557:28;587:8;;-1:-1:-1;;;;;;587:8:24;;;;;;;301:4817;;;;;;;1269:95:51;1322:31;;;-1:-1:-1;1322:31:51;-1:-1:-1;1671:17:62;301:4817:24;;-1:-1:-1;1322:31:51;301:4817:24;;;;-1:-1:-1;301:4817:24;;;;;;;;;;1671:17:62;-1:-1:-1;301:4817:24;;-1:-1:-1;301:4817:24;;-1:-1:-1;301:4817:24;;;;;;;;;;;;;;;;;;;;;1671:17:62;301:4817:24;;;;;;;;;;1648:13:62;301:4817:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1671:17:62;-1:-1:-1;301:4817:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;301:4817:24;;;;;;;;;-1:-1:-1;301:4817:24;;;;;;;;-1:-1:-1;301:4817:24;;1671:17:62;301:4817:24;;-1:-1:-1;301:4817:24;;;;;;;;;;;;-1:-1:-1;301:4817:24;;1671:17:62;301:4817:24;;-1:-1:-1;301:4817:24;;;;;-1:-1:-1;301:4817:24;;;;;;;;;;1648:13:62;-1:-1:-1;301:4817:24;;-1:-1:-1;301:4817:24;;-1:-1:-1;301:4817:24;;;;;;;;;;;;;;;;;;;;;;;1648:13:62;301:4817:24;;;;;;;;;;1648:13:62;301:4817:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1648:13:62;-1:-1:-1;301:4817:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;301:4817:24;;;;;;;;;-1:-1:-1;301:4817:24;;;;;;;;;;;;-1:-1:-1;301:4817:24;;;;;;;;;-1:-1:-1;;301:4817:24;;;-1:-1:-1;;;;;301:4817:24;;;;;;;;;;:::o;:::-;;;;;;;;;;;;-1:-1:-1;;;;;301:4817:24;;;;;;;;-1:-1:-1;;301:4817:24;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;301:4817:24;;;;;;;;;;;;;;:::o","linkReferences":{}},"deployedBytecode":{"object":"0x6080806040526004361015610012575f80fd5b5f3560e01c90816301e1d11414610cc05750806306fdde0314610bee578063095ea7b314610b6c5780630964ff2614610b4f57806318160ddd14610b3257806323b872dd14610a535780632e1a7d4d1461097f5780632e9a1de114610807578063313ce567146107ec578063330227bf146107a35780634e14a5831461073e578063673a7e28146105df5780636949faeb146105c257806370a082311461058b578063715018a6146105305780638da5cb5b1461050857806395082d25146104e157806395d89b41146103c657806397c4a5f31461034f578063a9059cbb1461031e578063b6b55f2514610276578063d24378eb14610259578063dd62ed3e14610209578063f2fde38b14610183578063fc612a8d1461015b5763fcdfd5c51461013a575f80fd5b34610157575f366003190112610157576020600754604051908152f35b5f80fd5b34610157575f36600319011261015757600a546040516001600160a01b039091168152602090f35b346101575760203660031901126101575761019c610d04565b6101a4610dff565b6001600160a01b031680156101f657600580546001600160a01b0319811683179091556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b631e4fbdf760e01b5f525f60045260245ffd5b3461015757604036600319011261015757610222610d04565b61022a610d1a565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b34610157575f366003190112610157576020600854604051908152f35b3461015757602036600319011261015757600435610292610dff565b801561030f576102a481600654610d3d565b60065533156102fc576102b981600254610d3d565b600255335f525f60205260405f208181540190556040519081525f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203393a3005b63ec442f0560e01b5f525f60045260245ffd5b63162908e360e11b5f5260045ffd5b346101575760403660031901126101575761034461033a610d04565b6024359033610d68565b602060405160018152f35b3461015757602036600319011261015757610368610d04565b610370610dff565b6001600160a01b031680156103b757600a80546001600160a01b031916821790557f34a02290b7920078c19f58e94b78c77eb9cc10195b20676e19bd3b82085893b85f80a2005b6399b34d2d60e01b5f5260045ffd5b34610157575f366003190112610157576040515f6004548060011c906001811680156104d7575b6020831081146104c3578285529081156104a75750600114610452575b50819003601f01601f191681019067ffffffffffffffff82118183101761043e5761043a82918260405282610cda565b0390f35b634e487b7160e01b5f52604160045260245ffd5b905060045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5f905b8282106104915750602091508201018261040a565b600181602092548385880101520191019061047c565b90506020925060ff191682840152151560051b8201018261040a565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103ed565b34610157575f3660031901126101575760206040516c0c9f2c9cd04674edea400000008152f35b34610157575f366003190112610157576005546040516001600160a01b039091168152602090f35b34610157575f36600319011261015757610548610dff565b600580546001600160a01b031981169091555f906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b34610157576020366003190112610157576001600160a01b036105ac610d04565b165f525f602052602060405f2054604051908152f35b34610157575f366003190112610157576020600954604051908152f35b34610157575f36600319011261015757600a546001600160a01b031633141580610729575b61071a57610617600954600b5490610d3d565b421061070b576008546002548061067057505f516020610e275f395f51905f52906c0c9f2c9cd04674edea400000006008555b42600981905560085460408051938452602084019190915282015280606081015b0390a1005b61067f60065460075490610d3d565b90670de0b6b3a7640000820291808304670de0b6b3a764000014901517156106f7576106aa91610d4a565b906c0c9f2c9cd04674edea400000008202918083046c0c9f2c9cd04674edea4000000014901517156106f757670de0b6b3a76400005f516020610e275f395f51905f52920460085561064a565b634e487b7160e01b5f52601160045260245ffd5b6329fbd37760e11b5f5260045ffd5b639a280f3960e01b5f5260045ffd5b506005546001600160a01b0316331415610604565b346101575760203660031901126101575760043561075a610dff565b610e108111610794576020817f743ba06e960ffa4b2c4278d5336bb72503e5b5db471152765791293bc9c637f892600b55604051908152a1005b6309cea93b60e21b5f5260045ffd5b34610157575f3660031901126101575760806008546009546107c58142610d30565b6107d460065460075490610d3d565b91604051938452602084015260408301526060820152f35b34610157575f36600319011261015757602060405160128152f35b346101575760203660031901126101575760043560018060a01b03600a54163314158061096a575b61071a57801561095b577ffcdfbd17478a7a3586ec01961f4ffaad1453178eee6ae29dd135167624edced9604061086883600754610d3d565b92836007558151908152426020820152a1610888600954600b5490610d3d565b42101561089157005b6008549060025490816108d5575b50504260098190556008546040805193845260208401919091528201525f516020610e275f395f51905f5290806060810161066b565b6108e190600654610d3d565b90670de0b6b3a7640000820291808304670de0b6b3a764000014901517156106f75761090c91610d4a565b906c0c9f2c9cd04674edea400000008202918083046c0c9f2c9cd04674edea4000000014901517156106f757670de0b6b3a76400005f516020610e275f395f51905f529204600855908261089f565b637baace4d60e11b5f5260045ffd5b506005546001600160a01b031633141561082f565b346101575760203660031901126101575760043561099b610dff565b801561030f57600654818110610a4457816109b591610d30565b6006553315610a3157335f525f60205260405f2054818110610a185790805f923384528360205203604083205580600254036002556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3005b63391434e360e21b5f523360045260245260445260645ffd5b634b637e8f60e11b5f525f60045260245ffd5b6396d8043360e01b5f5260045ffd5b3461015757606036600319011261015757610a6c610d04565b610a74610d1a565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f198110610ab2575b506103449350610d68565b838110610b17578415610b04573315610af157610344945f52600160205260405f2060018060a01b0333165f526020528360405f209103905584610aa7565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b34610157575f366003190112610157576020600254604051908152f35b34610157575f366003190112610157576020600b54604051908152f35b3461015757604036600319011261015757610b85610d04565b602435903315610b04576001600160a01b0316908115610af157335f52600160205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b34610157575f366003190112610157576040515f6003548060011c90600181168015610cb6575b6020831081146104c3578285529081156104a75750600114610c615750819003601f01601f191681019067ffffffffffffffff82118183101761043e5761043a82918260405282610cda565b905060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5f905b828210610ca05750602091508201018261040a565b6001816020925483858801015201910190610c8b565b91607f1691610c15565b34610157575f366003190112610157576020906006548152f35b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361015757565b602435906001600160a01b038216820361015757565b919082039182116106f757565b919082018092116106f757565b8115610d54570490565b634e487b7160e01b5f52601260045260245ffd5b6001600160a01b0316908115610a31576001600160a01b03169182156102fc57815f525f60205260405f2054818110610de657817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b6005546001600160a01b03163303610e1357565b63118cdaa760e01b5f523360045260245ffdfe15819dd2fd9f6418b142e798d08a18d0bf06ea368f4480b7b0d3f75bd966bc48a26469706673582212202deb6422dfedee73882b3b873da64cefaebe9ff6baa0b5c66b8cd9a497a5ad6964736f6c634300081e0033","sourceMap":"301:4817:24:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;;638:31;301:4817;;;;;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;798:27;301:4817;;;-1:-1:-1;;;;;301:4817:24;;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;;;:::i;:::-;1500:62:51;;:::i;:::-;-1:-1:-1;;;;;301:4817:24;2627:22:51;;2623:91;;3004:6;301:4817:24;;-1:-1:-1;;;;;;301:4817:24;;;;;;;-1:-1:-1;;;;;301:4817:24;3052:40:51;-1:-1:-1;;3052:40:51;301:4817:24;2623:91:51;2672:31;;;301:4817:24;2672:31:51;301:4817:24;;;;;2672:31:51;301:4817:24;;;;;;-1:-1:-1;;301:4817:24;;;;;;:::i;:::-;;;:::i;:::-;-1:-1:-1;;;;;301:4817:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;;700:25;301:4817;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;;;1500:62:51;;:::i;:::-;4223:12:24;;4219:40;;4269:22;301:4817;4269:22;301:4817;4269:22;:::i;:::-;;301:4817;4307:10;7432:21:62;7428:91;;6137:21;301:4817:24;6137:21:62;301:4817:24;6137:21:62;:::i;:::-;;301:4817:24;4307:10;301:4817;;;;;;;;;;;;;;;;;;;;6987:25:62;301:4817:24;4307:10;6987:25:62;;301:4817:24;7428:91:62;7476:32;;;301:4817:24;7476:32:62;301:4817:24;;;;;7476:32:62;4219:40:24;4548:15;;;301:4817;4244:15;301:4817;;4244:15;301:4817;;;;;;-1:-1:-1;;301:4817:24;;;;3388:5:62;301:4817:24;;:::i;:::-;;;735:10:67;;3388:5:62;:::i;:::-;301:4817:24;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;;;:::i;:::-;1500:62:51;;:::i;:::-;-1:-1:-1;;;;;301:4817:24;1731:22;;1727:51;;1788:23;301:4817;;-1:-1:-1;;;;;;301:4817:24;;;;;1826:25;-1:-1:-1;;1826:25:24;301:4817;1727:51;1762:16;;;301:4817;1762:16;301:4817;;1762:16;301:4817;;;;;;-1:-1:-1;;301:4817:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;301:4817:24;;;;;-1:-1:-1;;301:4817:24;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;;;;587:8;301:4817;;;;;;;;;-1:-1:-1;;301:4817:24;;;;1710:6:51;301:4817:24;;;-1:-1:-1;;;;;301:4817:24;;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;1500:62:51;;:::i;:::-;3004:6;301:4817:24;;-1:-1:-1;;;;;;301:4817:24;;;;;;;-1:-1:-1;;;;;301:4817:24;3052:40:51;301:4817:24;;3052:40:51;301:4817:24;;;;;;;-1:-1:-1;;301:4817:24;;;;-1:-1:-1;;;;;301:4817:24;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;;731:30;301:4817;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;1213:12;301:4817;-1:-1:-1;;;;;301:4817:24;1199:10;:26;;;:51;;301:4817;1195:76;;2356:35;:15;301:4817;2374:17;301:4817;2356:35;;:::i;:::-;2338:15;:53;2334:85;;2457:10;301:4817;2881:12:62;301:4817:24;2530:11;;;301:4817;-1:-1:-1;;;;;;;;;;;301:4817:24;587:8;2457:10;301:4817;2526:393;2338:15;2356;301:4817;;;2457:10;301:4817;;;;;;;;;;;;;;;;;;;;;2994:51;;;;301:4817;2526:393;2637:30;:11;301:4817;2651:16;301:4817;2637:30;;:::i;:::-;301:4817;2786:4;301:4817;;;;;;2786:4;301:4817;;;;;;;2773:26;;;:::i;:::-;301:4817;587:8;301:4817;;;;;;587:8;301:4817;;;;;;;2786:4;-1:-1:-1;;;;;;;;;;;301:4817:24;;2457:10;301:4817;2526:393;;301:4817;;;;;;;;;;;;2334:85;2400:19;;;301:4817;2400:19;301:4817;;2400:19;1195:76;1259:12;;;301:4817;1259:12;301:4817;;1259:12;1199:51;-1:-1:-1;1710:6:51;301:4817:24;-1:-1:-1;;;;;301:4817:24;1199:10;1229:21;;1199:51;;301:4817;;;;;;-1:-1:-1;;301:4817:24;;;;;;1500:62:51;;:::i;:::-;2018:7:24;2006:19;;2002:49;;301:4817;;2105:31;301:4817;2061:29;301:4817;;;;;;2105:31;301:4817;2002:49;2034:17;;;301:4817;2034:17;301:4817;;2034:17;301:4817;;;;;;-1:-1:-1;;301:4817:24;;;;;4949:10;301:4817;4982:15;301:4817;5025:33;:15;;:33;:::i;:::-;5079:30;:11;301:4817;5093:16;301:4817;5079:30;;:::i;:::-;301:4817;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;;;;2761:2:62;301:4817:24;;;;;;;;;-1:-1:-1;;301:4817:24;;;;;;;;;;;1213:12;301:4817;;1199:10;:26;;:51;;;301:4817;1195:76;;3259:14;;3255:41;;3368:44;301:4817;3315:29;301:4817;3315:29;301:4817;3315:29;:::i;:::-;301:4817;;3315:29;301:4817;;;;;;3396:15;301:4817;;;;3368:44;3499:35;:15;301:4817;3517:17;301:4817;3499:35;;:::i;:::-;3396:15;3480:54;;3476:549;;301:4817;3476:549;3569:10;301:4817;;2881:12:62;301:4817:24;3654:10;;3650:235;;3476:549;-1:-1:-1;;3396:15:24;3499;301:4817;;;3569:10;301:4817;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;3963:51:24;301:4817;;;;3963:51;301:4817;3650:235;3705:30;301:4817;3705:11;301:4817;3705:30;:::i;:::-;301:4817;3789:4;301:4817;;;;;;3789:4;301:4817;;;;;;;3776:26;;;:::i;:::-;301:4817;587:8;301:4817;;;;;;587:8;301:4817;;;;;;;3789:4;-1:-1:-1;;;;;;;;;;;301:4817:24;;3569:10;301:4817;3650:235;;;;3255:41;3282:14;;;301:4817;3282:14;301:4817;;3282:14;1199:51;-1:-1:-1;1710:6:51;301:4817:24;-1:-1:-1;;;;;301:4817:24;1199:10;1229:21;;1199:51;;301:4817;;;;;;-1:-1:-1;;301:4817:24;;;;;;1500:62:51;;:::i;:::-;4527:12:24;;4523:40;;4577:11;301:4817;4577:21;;;4573:54;;4637:22;;;;:::i;:::-;4577:11;301:4817;4675:10;7958:21:62;7954:89;;4675:10:24;301:4817;;;;;;;;;6244:19:62;;;6240:115;;4675:10:24;;301:4817;4675:10;;301:4817;;;;;;;;;;;6714:21:62;301:4817:24;;6714:21:62;301:4817:24;;;;;;6987:25:62;301:4817:24;4675:10;6987:25:62;;301:4817:24;6240:115:62;6290:50;;;301:4817:24;6290:50:62;4675:10:24;301:4817;;;;;;;;6290:50:62;7954:89;8002:30;;;301:4817:24;8002:30:62;301:4817:24;;;;;8002:30:62;4573:54:24;4607:20;;;301:4817;4607:20;301:4817;;4607:20;301:4817;;;;;;-1:-1:-1;;301:4817:24;;;;;;:::i;:::-;;;:::i;:::-;-1:-1:-1;;;;;301:4817:24;;;;;;;;;;;;;;;735:10:67;301:4817:24;;;;;;;;;;;;;;-1:-1:-1;;10484:36:62;;10480:309;;301:4817:24;4890:5:62;;;;;:::i;10480:309::-;10540:24;;;10536:130;;9717:19;;9713:89;;735:10:67;9815:21:62;9811:90;;4890:5;301:4817:24;;;;;;;;;;;;;;735:10:67;301:4817:24;-1:-1:-1;301:4817:24;;;;;-1:-1:-1;301:4817:24;;;;;10480:309:62;;;9811:90;9859:31;;;301:4817:24;9859:31:62;301:4817:24;;;;;9859:31:62;9713:89;9759:32;;;301:4817:24;9759:32:62;301:4817:24;;;;;9759:32:62;10536:130;10591:60;;;;;301:4817:24;10591:60:62;735:10:67;301:4817:24;;;;;;;;10591:60:62;301:4817:24;;;;;;-1:-1:-1;;301:4817:24;;;;;2881:12:62;301:4817:24;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;;831:44;301:4817;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;;;:::i;:::-;;;735:10:67;;9717:19:62;9713:89;;-1:-1:-1;;;;;301:4817:24;;9815:21:62;;9811:90;;735:10:67;301:4817:24;;;;;;;;;-1:-1:-1;301:4817:24;;;;;-1:-1:-1;301:4817:24;;;;;;;9989:31:62;301:4817:24;735:10:67;9989:31:62;;301:4817:24;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;;;;1837:5:62;301:4817:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;301:4817:24;;;;;-1:-1:-1;;301:4817:24;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;1837:5:62;301:4817:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;;;606:26;301:4817;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;301:4817:24;;;;:::o;:::-;;;;-1:-1:-1;;;;;301:4817:24;;;;;;:::o;:::-;;;;-1:-1:-1;;;;;301:4817:24;;;;;;:::o;:::-;;;;;;;;;;:::o;:::-;;;;;;;;;;:::o;:::-;;;;;;;:::o;:::-;;;;;;;;;;;;5297:300:62;-1:-1:-1;;;;;301:4817:24;;5380:18:62;;5376:86;;-1:-1:-1;;;;;301:4817:24;;5475:16:62;;5471:86;;301:4817:24;5396:1:62;301:4817:24;5396:1:62;301:4817:24;;;5396:1:62;301:4817:24;;6244:19:62;;;6240:115;;301:4817:24;6987:25:62;301:4817:24;;;;5396:1:62;301:4817:24;5396:1:62;301:4817:24;;;;5396:1:62;301:4817:24;;;5396:1:62;301:4817:24;5396:1:62;301:4817:24;;;5396:1:62;301:4817:24;;;;;;;;;;;;6987:25:62;5297:300::o;6240:115::-;6290:50;;;;5396:1;6290:50;;301:4817:24;;;;;;5396:1:62;6290:50;1796:162:51;1710:6;301:4817:24;-1:-1:-1;;;;;301:4817:24;735:10:67;1855:23:51;1851:101;;1796:162::o;1851:101::-;1901:40;;;-1:-1:-1;1901:40:51;735:10:67;1901:40:51;301:4817:24;;-1:-1:-1;1901:40:51","linkReferences":{}},"methodIdentifiers":{"PRICE_PRECISION()":"95082d25","accumulatedYield()":"fcdfd5c5","allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","assetPrice()":"d24378eb","balanceOf(address)":"70a08231","decimals()":"313ce567","deposit(uint256)":"b6b55f25","getPriceInfo()":"330227bf","lastPriceUpdate()":"6949faeb","minUpdateInterval()":"0964ff26","name()":"06fdde03","owner()":"8da5cb5b","priceUpdater()":"fc612a8d","renounceOwnership()":"715018a6","setMinUpdateInterval(uint256)":"4e14a583","setPriceUpdater(address)":"97c4a5f3","symbol()":"95d89b41","totalAssets()":"01e1d114","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd","transferOwnership(address)":"f2fde38b","updatePrice()":"673a7e28","updateYield(uint256)":"2e9a1de1","withdraw(uint256)":"2e1a7d4d"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"_priceUpdater\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"allowance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"needed\",\"type\":\"uint256\"}],\"name\":\"ERC20InsufficientAllowance\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"balance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"needed\",\"type\":\"uint256\"}],\"name\":\"ERC20InsufficientBalance\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"approver\",\"type\":\"address\"}],\"name\":\"ERC20InvalidApprover\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"ERC20InvalidReceiver\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"ERC20InvalidSender\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"ERC20InvalidSpender\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InsufficientAssets\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IntervalTooLong\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidAmount\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidUpdater\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidYield\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotUpdater\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"OwnableInvalidOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"OwnableUnauthorizedAccount\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UpdateTooFrequent\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"interval\",\"type\":\"uint256\"}],\"name\":\"MinUpdateIntervalSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldPrice\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newPrice\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"PriceUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"updater\",\"type\":\"address\"}],\"name\":\"PriceUpdaterSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"YieldAccumulated\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"PRICE_PRECISION\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"accumulatedYield\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"assetPrice\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPriceInfo\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"price\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"lastUpdate\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"timeSinceUpdate\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"totalVal\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastPriceUpdate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"minUpdateInterval\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"priceUpdater\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_interval\",\"type\":\"uint256\"}],\"name\":\"setMinUpdateInterval\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_updater\",\"type\":\"address\"}],\"name\":\"setPriceUpdater\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalAssets\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"updatePrice\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newYield\",\"type\":\"uint256\"}],\"name\":\"updateYield\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"\\u5c55\\u793a\\u5982\\u4f55\\u5b9e\\u73b0\\u4ef7\\u683c\\u63a5\\u53e3\\u4f9bYTPriceFeed\\u8bfb\\u53d6\",\"errors\":{\"ERC20InsufficientAllowance(address,uint256,uint256)\":[{\"details\":\"Indicates a failure with the `spender`\\u2019s `allowance`. Used in transfers.\",\"params\":{\"allowance\":\"Amount of tokens a `spender` is allowed to operate with.\",\"needed\":\"Minimum amount required to perform a transfer.\",\"spender\":\"Address that may be allowed to operate on tokens without being their owner.\"}}],\"ERC20InsufficientBalance(address,uint256,uint256)\":[{\"details\":\"Indicates an error related to the current `balance` of a `sender`. Used in transfers.\",\"params\":{\"balance\":\"Current balance for the interacting account.\",\"needed\":\"Minimum amount required to perform a transfer.\",\"sender\":\"Address whose tokens are being transferred.\"}}],\"ERC20InvalidApprover(address)\":[{\"details\":\"Indicates a failure with the `approver` of a token to be approved. Used in approvals.\",\"params\":{\"approver\":\"Address initiating an approval operation.\"}}],\"ERC20InvalidReceiver(address)\":[{\"details\":\"Indicates a failure with the token `receiver`. Used in transfers.\",\"params\":{\"receiver\":\"Address to which tokens are being transferred.\"}}],\"ERC20InvalidSender(address)\":[{\"details\":\"Indicates a failure with the token `sender`. Used in transfers.\",\"params\":{\"sender\":\"Address whose tokens are being transferred.\"}}],\"ERC20InvalidSpender(address)\":[{\"details\":\"Indicates a failure with the `spender` to be approved. Used in approvals.\",\"params\":{\"spender\":\"Address that may be allowed to operate on tokens without being their owner.\"}}],\"OwnableInvalidOwner(address)\":[{\"details\":\"The owner is not a valid owner account. (eg. `address(0)`)\"}],\"OwnableUnauthorizedAccount(address)\":[{\"details\":\"The caller account is not authorized to perform an operation.\"}]},\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `value` may be zero.\"}},\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.\"},\"approve(address,uint256)\":{\"details\":\"See {IERC20-approve}. NOTE: If `value` is the maximum `uint256`, the allowance is not updated on `transferFrom`. This is semantically equivalent to an infinite approval. Requirements: - `spender` cannot be the zero address.\"},\"balanceOf(address)\":{\"details\":\"Returns the value of tokens owned by `account`.\"},\"decimals()\":{\"details\":\"Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5.05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the default value returned by this function, unless it's overridden. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}.\"},\"deposit(uint256)\":{\"details\":\"\\u5b9e\\u9645\\u5b9e\\u73b0\\u4e2d\\u5e94\\u8be5\\u5904\\u7406\\u771f\\u5b9e\\u7684USDC\\u5b58\\u6b3e\"},\"name()\":{\"details\":\"Returns the name of the token.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"symbol()\":{\"details\":\"Returns the symbol of the token, usually a shorter version of the name.\"},\"totalSupply()\":{\"details\":\"Returns the value of tokens in existence.\"},\"transfer(address,uint256)\":{\"details\":\"See {IERC20-transfer}. Requirements: - `to` cannot be the zero address. - the caller must have a balance of at least `value`.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"See {IERC20-transferFrom}. Skips emitting an {Approval} event indicating an allowance update. This is not required by the ERC. See {xref-ERC20-_approve-address-address-uint256-bool-}[_approve]. NOTE: Does not update the allowance if the current allowance is the maximum `uint256`. Requirements: - `from` and `to` cannot be the zero address. - `from` must have a balance of at least `value`. - the caller must have allowance for ``from``'s tokens of at least `value`.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"updatePrice()\":{\"details\":\"\\u53ea\\u80fd\\u7531\\u6388\\u6743\\u7684updater\\u8c03\\u7528\\uff0c\\u6709\\u6700\\u5c0f\\u65f6\\u95f4\\u95f4\\u9694\\u9650\\u5236\"},\"updateYield(uint256)\":{\"details\":\"\\u5f53\\u4ece\\u6536\\u76ca\\u7b56\\u7565\\u4e2d\\u6536\\u5230\\u65b0\\u6536\\u76ca\\u65f6\\u8c03\\u7528\"},\"withdraw(uint256)\":{\"details\":\"\\u5b9e\\u9645\\u5b9e\\u73b0\\u4e2d\\u5e94\\u8be5\\u5904\\u7406\\u771f\\u5b9e\\u7684USDC\\u63d0\\u6b3e\"}},\"title\":\"YTToken\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"deposit(uint256)\":{\"notice\":\"\\u5b58\\u5165\\u8d44\\u4ea7\\uff08\\u6a21\\u62df\\uff09\"},\"getPriceInfo()\":{\"notice\":\"\\u83b7\\u53d6\\u5f53\\u524d\\u4ef7\\u683c\\u4fe1\\u606f\"},\"setMinUpdateInterval(uint256)\":{\"notice\":\"\\u8bbe\\u7f6e\\u6700\\u5c0f\\u66f4\\u65b0\\u95f4\\u9694\"},\"setPriceUpdater(address)\":{\"notice\":\"\\u8bbe\\u7f6e\\u4ef7\\u683c\\u66f4\\u65b0\\u8005\"},\"updatePrice()\":{\"notice\":\"\\u66f4\\u65b0\\u4ee3\\u5e01\\u4ef7\\u683c\"},\"updateYield(uint256)\":{\"notice\":\"\\u7d2f\\u79ef\\u6536\\u76ca\\u5e76\\u66f4\\u65b0\\u4ef7\\u683c\"},\"withdraw(uint256)\":{\"notice\":\"\\u63d0\\u53d6\\u8d44\\u4ea7\\uff08\\u6a21\\u62df\\uff09\"}},\"notice\":\"YT\\u4ee3\\u5e01\\u793a\\u4f8b\\u5b9e\\u73b0\\uff08Yield Token\\uff09\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/ytLp/tokens/YTToken.sol\":\"YTToken\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@ensdomains/=node_modules/@ensdomains/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":forge-std/=lib/forge-std/src/\",\":hardhat/=node_modules/hardhat/\"],\"viaIR\":true},\"sources\":{\"contracts/ytLp/tokens/YTToken.sol\":{\"keccak256\":\"0x9775da0c25857b8f37a89b879016a32ec1cc68fff9432cf445a16a247d1c4ac4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5c1ee9644b47861720836b88f955319de5d0bf5f199c70f4be31bfb4e67dbaaf\",\"dweb:/ipfs/QmcmEEGL8CoVgFsNDFwDWbkYsj9booxYZGnztpTohCHh1H\"]},\"node_modules/@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6\",\"dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a\"]},\"node_modules/@openzeppelin/contracts/interfaces/draft-IERC6093.sol\":{\"keccak256\":\"0x19fdfb0f3b89a230e7dbd1cf416f1a6b531a3ee5db4da483f946320fc74afc0e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3490d794728f5bfecb46820431adaff71ba374141545ec20b650bb60353fac23\",\"dweb:/ipfs/QmPsfxjVpMcZbpE7BH93DzTpEaktESigEw4SmDzkXuJ4WR\"]},\"node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0x86b7b71a6aedefdad89b607378eeab1dcc5389b9ea7d17346d08af01d7190994\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1dc2db8d94a21eac8efe03adf574c419b08536409b416057a2b5b95cb772c43c\",\"dweb:/ipfs/QmZfqJCKVU1ScuX2A7s8WZdQEaikwJbDH5JBrBdKTUT4Gu\"]},\"node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x74ed01eb66b923d0d0cfe3be84604ac04b76482a55f9dd655e1ef4d367f95bc2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5282825a626cfe924e504274b864a652b0023591fa66f06a067b25b51ba9b303\",\"dweb:/ipfs/QmeCfPykghhMc81VJTrHTC7sF6CRvaA1FXVq2pJhwYp1dV\"]},\"node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0xd6fa4088198f04eef10c5bce8a2f4d60554b7ec4b987f684393c01bf79b94d9f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f95ee0bbd4dd3ac730d066ba3e785ded4565e890dbec2fa7d3b9fe3bad9d0d6e\",\"dweb:/ipfs/QmSLr6bHkPFWT7ntj34jmwfyskpwo97T9jZUrk5sz3sdtR\"]},\"node_modules/@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12\",\"dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.30+commit.73712a01"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"address","name":"_priceUpdater","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"allowance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"type":"error","name":"ERC20InsufficientAllowance"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"type":"error","name":"ERC20InsufficientBalance"},{"inputs":[{"internalType":"address","name":"approver","type":"address"}],"type":"error","name":"ERC20InvalidApprover"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"type":"error","name":"ERC20InvalidReceiver"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"type":"error","name":"ERC20InvalidSender"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"type":"error","name":"ERC20InvalidSpender"},{"inputs":[],"type":"error","name":"InsufficientAssets"},{"inputs":[],"type":"error","name":"IntervalTooLong"},{"inputs":[],"type":"error","name":"InvalidAmount"},{"inputs":[],"type":"error","name":"InvalidUpdater"},{"inputs":[],"type":"error","name":"InvalidYield"},{"inputs":[],"type":"error","name":"NotUpdater"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"type":"error","name":"OwnableInvalidOwner"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"type":"error","name":"OwnableUnauthorizedAccount"},{"inputs":[],"type":"error","name":"UpdateTooFrequent"},{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"spender","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Approval","anonymous":false},{"inputs":[{"internalType":"uint256","name":"interval","type":"uint256","indexed":false}],"type":"event","name":"MinUpdateIntervalSet","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"uint256","name":"oldPrice","type":"uint256","indexed":false},{"internalType":"uint256","name":"newPrice","type":"uint256","indexed":false},{"internalType":"uint256","name":"timestamp","type":"uint256","indexed":false}],"type":"event","name":"PriceUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"updater","type":"address","indexed":true}],"type":"event","name":"PriceUpdaterSet","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Transfer","anonymous":false},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"uint256","name":"timestamp","type":"uint256","indexed":false}],"type":"event","name":"YieldAccumulated","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"PRICE_PRECISION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"accumulatedYield","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"stateMutability":"view","type":"function","name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"assetPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}]},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"deposit"},{"inputs":[],"stateMutability":"view","type":"function","name":"getPriceInfo","outputs":[{"internalType":"uint256","name":"price","type":"uint256"},{"internalType":"uint256","name":"lastUpdate","type":"uint256"},{"internalType":"uint256","name":"timeSinceUpdate","type":"uint256"},{"internalType":"uint256","name":"totalVal","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"lastPriceUpdate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"minUpdateInterval","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"name","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"priceUpdater","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"uint256","name":"_interval","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setMinUpdateInterval"},{"inputs":[{"internalType":"address","name":"_updater","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setPriceUpdater"},{"inputs":[],"stateMutability":"view","type":"function","name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalAssets","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"updatePrice"},{"inputs":[{"internalType":"uint256","name":"_newYield","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"updateYield"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"withdraw"}],"devdoc":{"kind":"dev","methods":{"allowance(address,address)":{"details":"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called."},"approve(address,uint256)":{"details":"See {IERC20-approve}. NOTE: If `value` is the maximum `uint256`, the allowance is not updated on `transferFrom`. This is semantically equivalent to an infinite approval. Requirements: - `spender` cannot be the zero address."},"balanceOf(address)":{"details":"Returns the value of tokens owned by `account`."},"decimals()":{"details":"Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5.05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the default value returned by this function, unless it's overridden. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}."},"deposit(uint256)":{"details":"实际实现中应该处理真实的USDC存款"},"name()":{"details":"Returns the name of the token."},"owner()":{"details":"Returns the address of the current owner."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"symbol()":{"details":"Returns the symbol of the token, usually a shorter version of the name."},"totalSupply()":{"details":"Returns the value of tokens in existence."},"transfer(address,uint256)":{"details":"See {IERC20-transfer}. Requirements: - `to` cannot be the zero address. - the caller must have a balance of at least `value`."},"transferFrom(address,address,uint256)":{"details":"See {IERC20-transferFrom}. Skips emitting an {Approval} event indicating an allowance update. This is not required by the ERC. See {xref-ERC20-_approve-address-address-uint256-bool-}[_approve]. NOTE: Does not update the allowance if the current allowance is the maximum `uint256`. Requirements: - `from` and `to` cannot be the zero address. - `from` must have a balance of at least `value`. - the caller must have allowance for ``from``'s tokens of at least `value`."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"updatePrice()":{"details":"只能由授权的updater调用有最小时间间隔限制"},"updateYield(uint256)":{"details":"当从收益策略中收到新收益时调用"},"withdraw(uint256)":{"details":"实际实现中应该处理真实的USDC提款"}},"version":1},"userdoc":{"kind":"user","methods":{"deposit(uint256)":{"notice":"存入资产(模拟)"},"getPriceInfo()":{"notice":"获取当前价格信息"},"setMinUpdateInterval(uint256)":{"notice":"设置最小更新间隔"},"setPriceUpdater(address)":{"notice":"设置价格更新者"},"updatePrice()":{"notice":"更新代币价格"},"updateYield(uint256)":{"notice":"累积收益并更新价格"},"withdraw(uint256)":{"notice":"提取资产(模拟)"}},"version":1}},"settings":{"remappings":["@ensdomains/=node_modules/@ensdomains/","@openzeppelin/=node_modules/@openzeppelin/","forge-std/=lib/forge-std/src/","hardhat/=node_modules/hardhat/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"contracts/ytLp/tokens/YTToken.sol":"YTToken"},"evmVersion":"prague","libraries":{},"viaIR":true},"sources":{"contracts/ytLp/tokens/YTToken.sol":{"keccak256":"0x9775da0c25857b8f37a89b879016a32ec1cc68fff9432cf445a16a247d1c4ac4","urls":["bzz-raw://5c1ee9644b47861720836b88f955319de5d0bf5f199c70f4be31bfb4e67dbaaf","dweb:/ipfs/QmcmEEGL8CoVgFsNDFwDWbkYsj9booxYZGnztpTohCHh1H"],"license":"MIT"},"node_modules/@openzeppelin/contracts/access/Ownable.sol":{"keccak256":"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb","urls":["bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6","dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a"],"license":"MIT"},"node_modules/@openzeppelin/contracts/interfaces/draft-IERC6093.sol":{"keccak256":"0x19fdfb0f3b89a230e7dbd1cf416f1a6b531a3ee5db4da483f946320fc74afc0e","urls":["bzz-raw://3490d794728f5bfecb46820431adaff71ba374141545ec20b650bb60353fac23","dweb:/ipfs/QmPsfxjVpMcZbpE7BH93DzTpEaktESigEw4SmDzkXuJ4WR"],"license":"MIT"},"node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol":{"keccak256":"0x86b7b71a6aedefdad89b607378eeab1dcc5389b9ea7d17346d08af01d7190994","urls":["bzz-raw://1dc2db8d94a21eac8efe03adf574c419b08536409b416057a2b5b95cb772c43c","dweb:/ipfs/QmZfqJCKVU1ScuX2A7s8WZdQEaikwJbDH5JBrBdKTUT4Gu"],"license":"MIT"},"node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x74ed01eb66b923d0d0cfe3be84604ac04b76482a55f9dd655e1ef4d367f95bc2","urls":["bzz-raw://5282825a626cfe924e504274b864a652b0023591fa66f06a067b25b51ba9b303","dweb:/ipfs/QmeCfPykghhMc81VJTrHTC7sF6CRvaA1FXVq2pJhwYp1dV"],"license":"MIT"},"node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0xd6fa4088198f04eef10c5bce8a2f4d60554b7ec4b987f684393c01bf79b94d9f","urls":["bzz-raw://f95ee0bbd4dd3ac730d066ba3e785ded4565e890dbec2fa7d3b9fe3bad9d0d6e","dweb:/ipfs/QmSLr6bHkPFWT7ntj34jmwfyskpwo97T9jZUrk5sz3sdtR"],"license":"MIT"},"node_modules/@openzeppelin/contracts/utils/Context.sol":{"keccak256":"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2","urls":["bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12","dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF"],"license":"MIT"}},"version":1},"id":24}