{"abi":[{"type":"constructor","inputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"BASIS_POINTS_DIVISOR","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"MAX_SPREAD_BASIS_POINTS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"PRICE_PRECISION","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"UPGRADE_INTERFACE_VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"forceUpdatePrice","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_price","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getMaxPrice","inputs":[{"name":"_token","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMinPrice","inputs":[{"name":"_token","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPrice","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_maximise","type":"bool","internalType":"bool"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPriceInfo","inputs":[{"name":"_token","type":"address","internalType":"address"}],"outputs":[{"name":"currentPrice","type":"uint256","internalType":"uint256"},{"name":"cachedPrice","type":"uint256","internalType":"uint256"},{"name":"maxPrice","type":"uint256","internalType":"uint256"},{"name":"minPrice","type":"uint256","internalType":"uint256"},{"name":"spread","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"gov","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_usdcAddress","type":"address","internalType":"address"},{"name":"_usdcPriceFeed","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isKeeper","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"lastPrice","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"maxPriceChangeBps","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"setKeeper","inputs":[{"name":"_keeper","type":"address","internalType":"address"},{"name":"_isActive","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setMaxPriceChangeBps","inputs":[{"name":"_maxPriceChangeBps","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSpreadBasisPoints","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_spreadBasisPoints","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSpreadBasisPointsForMultiple","inputs":[{"name":"_tokens","type":"address[]","internalType":"address[]"},{"name":"_spreadBasisPoints","type":"uint256[]","internalType":"uint256[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setUSDCAddress","inputs":[{"name":"_usdcAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setUSDCPriceFeed","inputs":[{"name":"_usdcPriceFeed","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"spreadBasisPoints","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"updatePrice","inputs":[{"name":"_token","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"usdcAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint64","indexed":false,"internalType":"uint64"}],"anonymous":false},{"type":"event","name":"KeeperSet","inputs":[{"name":"keeper","type":"address","indexed":true,"internalType":"address"},{"name":"isActive","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"PriceUpdate","inputs":[{"name":"token","type":"address","indexed":true,"internalType":"address"},{"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":"SpreadUpdate","inputs":[{"name":"token","type":"address","indexed":true,"internalType":"address"},{"name":"spreadBps","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressEmptyCode","inputs":[{"name":"target","type":"address","internalType":"address"}]},{"type":"error","name":"ERC1967InvalidImplementation","inputs":[{"name":"implementation","type":"address","internalType":"address"}]},{"type":"error","name":"ERC1967NonPayable","inputs":[]},{"type":"error","name":"FailedCall","inputs":[]},{"type":"error","name":"Forbidden","inputs":[]},{"type":"error","name":"InvalidAddress","inputs":[]},{"type":"error","name":"InvalidChainlinkPrice","inputs":[]},{"type":"error","name":"InvalidInitialization","inputs":[]},{"type":"error","name":"MaxChangeTooHigh","inputs":[]},{"type":"error","name":"NotInitializing","inputs":[]},{"type":"error","name":"PriceChangeTooLarge","inputs":[]},{"type":"error","name":"SpreadTooHigh","inputs":[]},{"type":"error","name":"UUPSUnauthorizedCallContext","inputs":[]},{"type":"error","name":"UUPSUnsupportedProxiableUUID","inputs":[{"name":"slot","type":"bytes32","internalType":"bytes32"}]}],"bytecode":{"object":"0x60a080604052346100c257306080525f5160206113135f395f51905f525460ff8160401c166100b3576002600160401b03196001600160401b03821601610060575b60405161124c90816100c782396080518181816107b801526108880152f35b6001600160401b0319166001600160401b039081175f5160206113135f395f51905f525581527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a15f80610041565b63f92ee8a960e01b5f5260045ffd5b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816302d4545714610c59575080630957aed914610c3e578063126082cf14610c2257806312d43a5114610bfb578063485cc95514610a485780634f1ef2861461080c57806352d1902d146107a65780635d42fb6b1461071d578063697cd71a146107005780636ba42aaa146106c357806376d69760146106aa57806381a612d61461068757806383daeb47146106445780638edbf436146105a657806395082d251461057f57806396e85ced1461052c5780639b889380146104b2578063a27ea3861461047a578063aaf5bfc31461041b578063ad3cb1cc146103bd578063c9e0c10614610265578063d1b9e853146101f1578063e124e6d2146101c6578063ed0df72b1461016b5763f5a6ba2e1461012f575f80fd5b34610167576020366003190112610167576001600160a01b03610150610c7c565b165f526005602052602060405f2054604051908152f35b5f80fd5b3461016757602036600319011261016757610184610c7c565b5f546001600160a01b031633036101b757600380546001600160a01b0319166001600160a01b0392909216919091179055005b631dd2188d60e31b5f5260045ffd5b346101675760203660031901126101675760206101e96101e4610c7c565b610e87565b604051908152f35b34610167576101ff36610ce4565b5f549091906001600160a01b031633036101b75760207f8dd62d4e1f60b96148552898e743aa2b571686baa26f4f1b647565dc3996c1a79160018060a01b031692835f526006825260405f209015159060ff1981541660ff8316179055604051908152a2005b346101675760403660031901126101675760043567ffffffffffffffff811161016757610296903690600401610d13565b60243567ffffffffffffffff8111610167576102b6903690600401610d13565b5f549092906001600160a01b031633036101b757828103610386575f5b8181106102dc57005b60c86102e9828686610e4f565b351161037757806102fd6001928686610e4f565b35828060a01b0361031761031284878b610e4f565b610e73565b165f52600460205260405f2055610332610312828589610e4f565b7fdc57d8716d6b33bf807c6d4f1dd2addbf67960c73ada97819316dc745dfa11796020610360848989610e4f565b3592604051938452858060a01b031692a2016102d3565b639821c0c960e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152600f60248201526e0d8cadccee8d040dad2e6dac2e8c6d608b1b6044820152606490fd5b34610167575f3660031901126101675760408051906103dc8183610c92565b600582526020820191640352e302e360dc1b83528151928391602083525180918160208501528484015e5f828201840152601f01601f19168101030190f35b3461016757602036600319011261016757610434610c7c565b5f546001600160a01b031633036101b7576001600160a01b0316801561046b576001600160601b0360a01b60015416176001555f80f35b63e6c4247b60e01b5f5260045ffd5b34610167576020366003190112610167576001600160a01b0361049b610c7c565b165f526004602052602060405f2054604051908152f35b34610167576040366003190112610167576104cb610c7c565b5f5460243591906001600160a01b031633036101b75760c882116103775760207fdc57d8716d6b33bf807c6d4f1dd2addbf67960c73ada97819316dc745dfa11799160018060a01b031692835f52600482528060405f2055604051908152a2005b3461016757602036600319011261016757610545610c7c565b335f52600660205260ff60405f205416158061056b575b6101b7576101e9602091610dc1565b505f546001600160a01b031633141561055c565b34610167575f3660031901126101675760206040516c0c9f2c9cd04674edea400000008152f35b34610167576020366003190112610167576105bf610c7c565b6001546001600160a01b038281169116810361060257505060a06105e1610ef7565b5f8180805b6040519485526020850152604084015260608301526080820152f35b8161060e60a093610fc3565b91805f52600560205260405f2054905f52600460205260405f20549161063e8461063881846110a1565b926110e1565b916105e6565b34610167576020366003190112610167575f54600435906001600160a01b031633036101b7576107d0811161067857600255005b63165376f560e21b5f5260045ffd5b346101675760203660031901126101675760206101e96106a5610c7c565b610d86565b346101675760206101e96106bd36610ce4565b90610d44565b34610167576020366003190112610167576001600160a01b036106e4610c7c565b165f526006602052602060ff60405f2054166040519015158152f35b34610167575f366003190112610167576020600254604051908152f35b3461016757604036600319011261016757610736610c7c565b5f5460243591906001600160a01b031633036101b7576001600160a01b03165f818152600560209081526040918290208054908590558251908152908101939093524290830152907f8647dab5101cbe18afb171756e9753802f9d66725bf2346b079b8b1a275e011690606090a2005b34610167575f366003190112610167577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031630036107fd5760206040515f5160206111d75f395f51905f528152f35b63703e46dd60e11b5f5260045ffd5b604036600319011261016757610820610c7c565b6024359067ffffffffffffffff821161016757366023830112156101675781600401359061084d82610cc8565b9161085b6040519384610c92565b8083526020830193366024838301011161016757815f926024602093018737840101526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016308114908115610a26575b506107fd575f546001600160a01b031633036101b7576040516352d1902d60e01b81526001600160a01b0382169390602081600481885afa5f91816109f2575b5061090b5784634c9c8ce360e01b5f5260045260245ffd5b805f5160206111d75f395f51905f528692036109e05750823b156109ce575f5160206111d75f395f51905f5280546001600160a01b031916821790557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a28251156109b5575f80916109ab945190845af43d156109ad573d9161098f83610cc8565b9261099d6040519485610c92565b83523d5f602085013e611178565b005b606091611178565b505050346109bf57005b63b398979f60e01b5f5260045ffd5b634c9c8ce360e01b5f5260045260245ffd5b632a87526960e21b5f5260045260245ffd5b9091506020813d602011610a1e575b81610a0e60209383610c92565b81010312610167575190866108f3565b3d9150610a01565b5f5160206111d75f395f51905f52546001600160a01b031614159050846108b3565b3461016757604036600319011261016757610a61610c7c565b6024356001600160a01b03811690819003610167575f5160206111f75f395f51905f52549060ff8260401c16159167ffffffffffffffff811680159081610bf3575b6001149081610be9575b159081610be0575b50610bd15767ffffffffffffffff1981166001175f5160206111f75f395f51905f525582610ba5575b505f5160206111f75f395f51905f52549260ff8460401c1615610b96576001600160a01b0316801561046b576001600160601b0360a01b60015416176001556001600160601b0360a01b6003541617600355336001600160601b0360a01b5f5416175f556101f4600255610b4e57005b68ff000000000000000019165f5160206111f75f395f51905f52557fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602060405160018152a1005b631afcd79f60e31b5f5260045ffd5b68ffffffffffffffffff191668010000000000000001175f5160206111f75f395f51905f525583610ade565b63f92ee8a960e01b5f5260045ffd5b90501585610ab5565b303b159150610aad565b849150610aa3565b34610167575f366003190112610167575f546040516001600160a01b039091168152602090f35b34610167575f3660031901126101675760206040516127108152f35b34610167575f36600319011261016757602060405160c88152f35b34610167575f366003190112610167576001546001600160a01b03168152602090f35b600435906001600160a01b038216820361016757565b90601f8019910116810190811067ffffffffffffffff821117610cb457604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff8111610cb457601f01601f191660200190565b6040906003190112610167576004356001600160a01b0381168103610167579060243580151581036101675790565b9181601f840112156101675782359167ffffffffffffffff8311610167576020808501948460051b01011161016757565b6001549091906001600160a01b03808416911614610d7c5781610d69610d7993610fc3565b90610d748282611033565b611119565b90565b5050610d79610ef7565b6001546001600160a01b03828116911614610db85780610da8610d7992610fc3565b90610db38282611033565b6110e1565b50610d79610ef7565b6001546001600160a01b0382811691168114610d7c57805f5260056020527f8647dab5101cbe18afb171756e9753802f9d66725bf2346b079b8b1a275e0116610e4960405f2054610e1b610e1486610fc3565b8096611033565b835f5260056020528460405f2055604051918291864291846040919493926060820195825260208201520152565b0390a290565b9190811015610e5f5760051b0190565b634e487b7160e01b5f52603260045260245ffd5b356001600160a01b03811681036101675790565b6001546001600160a01b03828116911614610db85780610ea9610d7992610fc3565b90610eb48282611033565b6110a1565b519069ffffffffffffffffffff8216820361016757565b81810292918115918404141715610ee357565b634e487b7160e01b5f52601160045260245ffd5b600354604051633fabe5a360e21b81529060a090829060049082906001600160a01b03165afa908115610fb8575f91610f6b575b505f811315610f5c5769021e19e0c9bab240000081029080820469021e19e0c9bab24000001490151715610ee35790565b638002905d60e01b5f5260045ffd5b905060a0813d60a011610fb0575b81610f8660a09383610c92565b8101031261016757610f9781610eb9565b50610fa9608060208301519201610eb9565b505f610f2b565b3d9150610f79565b6040513d5f823e3d90fd5b60405163adcc40cb60e01b815290602090829060049082906001600160a01b03165afa908115610fb8575f91610ff7575090565b90506020813d60201161101e575b8161101260209383610c92565b81010312610167575190565b3d9150611005565b91908203918211610ee357565b6001600160a01b03165f9081526005602052604090205490811561109d5761107661271091838082115f1461108d5761106b91611026565b925b60025490610ed0565b041061107e57565b63a8eb64ed60e01b5f5260045ffd5b9061109791611026565b9261106d565b5050565b6001600160a01b03165f9081526004602052604090205480156110dd5761271001908161271011610ee357612710916110d991610ed0565b0490565b5090565b6001600160a01b03165f9081526004602052604090205480156110dd5761271003906127108211610ee357612710916110d991610ed0565b6001600160a01b03165f908152600460205260409020549091811561117357156111585761271001908161271011610ee357612710916110d991610ed0565b61271003906127108211610ee357612710916110d991610ed0565b505090565b9061119c575080511561118d57602081519101fd5b63d6bda27560e01b5f5260045ffd5b815115806111cd575b6111ad575090565b639996b31560e01b5f9081526001600160a01b0391909116600452602490fd5b50803b156111a556fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbcf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a26469706673582212204282215c04c4905a3f923a0242934cda4255d81c00f5982ce12f91f20e898eb064736f6c634300081e0033f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00","sourceMap":"370:7470:7:-:0;;;;;;;1171:4:36;1163:13;;-1:-1:-1;;;;;;;;;;;370:7470:7;;;;;;7894:76:35;;-1:-1:-1;;;;;;;;;;;370:7470:7;;7983:34:35;7979:146;;-1:-1:-1;370:7470:7;;;;;;;;1163:13:36;370:7470:7;;;;;;;;;;;7979:146:35;-1:-1:-1;;;;;;370:7470:7;-1:-1:-1;;;;;370:7470:7;;;-1:-1:-1;;;;;;;;;;;370:7470:7;;;8085:29:35;;370:7470:7;;8085:29:35;7979:146;;;;7894:76;7936:23;;;-1:-1:-1;7936:23:35;;-1:-1:-1;7936:23:35;370:7470:7;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080806040526004361015610012575f80fd5b5f3560e01c90816302d4545714610c59575080630957aed914610c3e578063126082cf14610c2257806312d43a5114610bfb578063485cc95514610a485780634f1ef2861461080c57806352d1902d146107a65780635d42fb6b1461071d578063697cd71a146107005780636ba42aaa146106c357806376d69760146106aa57806381a612d61461068757806383daeb47146106445780638edbf436146105a657806395082d251461057f57806396e85ced1461052c5780639b889380146104b2578063a27ea3861461047a578063aaf5bfc31461041b578063ad3cb1cc146103bd578063c9e0c10614610265578063d1b9e853146101f1578063e124e6d2146101c6578063ed0df72b1461016b5763f5a6ba2e1461012f575f80fd5b34610167576020366003190112610167576001600160a01b03610150610c7c565b165f526005602052602060405f2054604051908152f35b5f80fd5b3461016757602036600319011261016757610184610c7c565b5f546001600160a01b031633036101b757600380546001600160a01b0319166001600160a01b0392909216919091179055005b631dd2188d60e31b5f5260045ffd5b346101675760203660031901126101675760206101e96101e4610c7c565b610e87565b604051908152f35b34610167576101ff36610ce4565b5f549091906001600160a01b031633036101b75760207f8dd62d4e1f60b96148552898e743aa2b571686baa26f4f1b647565dc3996c1a79160018060a01b031692835f526006825260405f209015159060ff1981541660ff8316179055604051908152a2005b346101675760403660031901126101675760043567ffffffffffffffff811161016757610296903690600401610d13565b60243567ffffffffffffffff8111610167576102b6903690600401610d13565b5f549092906001600160a01b031633036101b757828103610386575f5b8181106102dc57005b60c86102e9828686610e4f565b351161037757806102fd6001928686610e4f565b35828060a01b0361031761031284878b610e4f565b610e73565b165f52600460205260405f2055610332610312828589610e4f565b7fdc57d8716d6b33bf807c6d4f1dd2addbf67960c73ada97819316dc745dfa11796020610360848989610e4f565b3592604051938452858060a01b031692a2016102d3565b639821c0c960e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152600f60248201526e0d8cadccee8d040dad2e6dac2e8c6d608b1b6044820152606490fd5b34610167575f3660031901126101675760408051906103dc8183610c92565b600582526020820191640352e302e360dc1b83528151928391602083525180918160208501528484015e5f828201840152601f01601f19168101030190f35b3461016757602036600319011261016757610434610c7c565b5f546001600160a01b031633036101b7576001600160a01b0316801561046b576001600160601b0360a01b60015416176001555f80f35b63e6c4247b60e01b5f5260045ffd5b34610167576020366003190112610167576001600160a01b0361049b610c7c565b165f526004602052602060405f2054604051908152f35b34610167576040366003190112610167576104cb610c7c565b5f5460243591906001600160a01b031633036101b75760c882116103775760207fdc57d8716d6b33bf807c6d4f1dd2addbf67960c73ada97819316dc745dfa11799160018060a01b031692835f52600482528060405f2055604051908152a2005b3461016757602036600319011261016757610545610c7c565b335f52600660205260ff60405f205416158061056b575b6101b7576101e9602091610dc1565b505f546001600160a01b031633141561055c565b34610167575f3660031901126101675760206040516c0c9f2c9cd04674edea400000008152f35b34610167576020366003190112610167576105bf610c7c565b6001546001600160a01b038281169116810361060257505060a06105e1610ef7565b5f8180805b6040519485526020850152604084015260608301526080820152f35b8161060e60a093610fc3565b91805f52600560205260405f2054905f52600460205260405f20549161063e8461063881846110a1565b926110e1565b916105e6565b34610167576020366003190112610167575f54600435906001600160a01b031633036101b7576107d0811161067857600255005b63165376f560e21b5f5260045ffd5b346101675760203660031901126101675760206101e96106a5610c7c565b610d86565b346101675760206101e96106bd36610ce4565b90610d44565b34610167576020366003190112610167576001600160a01b036106e4610c7c565b165f526006602052602060ff60405f2054166040519015158152f35b34610167575f366003190112610167576020600254604051908152f35b3461016757604036600319011261016757610736610c7c565b5f5460243591906001600160a01b031633036101b7576001600160a01b03165f818152600560209081526040918290208054908590558251908152908101939093524290830152907f8647dab5101cbe18afb171756e9753802f9d66725bf2346b079b8b1a275e011690606090a2005b34610167575f366003190112610167577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031630036107fd5760206040515f5160206111d75f395f51905f528152f35b63703e46dd60e11b5f5260045ffd5b604036600319011261016757610820610c7c565b6024359067ffffffffffffffff821161016757366023830112156101675781600401359061084d82610cc8565b9161085b6040519384610c92565b8083526020830193366024838301011161016757815f926024602093018737840101526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016308114908115610a26575b506107fd575f546001600160a01b031633036101b7576040516352d1902d60e01b81526001600160a01b0382169390602081600481885afa5f91816109f2575b5061090b5784634c9c8ce360e01b5f5260045260245ffd5b805f5160206111d75f395f51905f528692036109e05750823b156109ce575f5160206111d75f395f51905f5280546001600160a01b031916821790557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a28251156109b5575f80916109ab945190845af43d156109ad573d9161098f83610cc8565b9261099d6040519485610c92565b83523d5f602085013e611178565b005b606091611178565b505050346109bf57005b63b398979f60e01b5f5260045ffd5b634c9c8ce360e01b5f5260045260245ffd5b632a87526960e21b5f5260045260245ffd5b9091506020813d602011610a1e575b81610a0e60209383610c92565b81010312610167575190866108f3565b3d9150610a01565b5f5160206111d75f395f51905f52546001600160a01b031614159050846108b3565b3461016757604036600319011261016757610a61610c7c565b6024356001600160a01b03811690819003610167575f5160206111f75f395f51905f52549060ff8260401c16159167ffffffffffffffff811680159081610bf3575b6001149081610be9575b159081610be0575b50610bd15767ffffffffffffffff1981166001175f5160206111f75f395f51905f525582610ba5575b505f5160206111f75f395f51905f52549260ff8460401c1615610b96576001600160a01b0316801561046b576001600160601b0360a01b60015416176001556001600160601b0360a01b6003541617600355336001600160601b0360a01b5f5416175f556101f4600255610b4e57005b68ff000000000000000019165f5160206111f75f395f51905f52557fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602060405160018152a1005b631afcd79f60e31b5f5260045ffd5b68ffffffffffffffffff191668010000000000000001175f5160206111f75f395f51905f525583610ade565b63f92ee8a960e01b5f5260045ffd5b90501585610ab5565b303b159150610aad565b849150610aa3565b34610167575f366003190112610167575f546040516001600160a01b039091168152602090f35b34610167575f3660031901126101675760206040516127108152f35b34610167575f36600319011261016757602060405160c88152f35b34610167575f366003190112610167576001546001600160a01b03168152602090f35b600435906001600160a01b038216820361016757565b90601f8019910116810190811067ffffffffffffffff821117610cb457604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff8111610cb457601f01601f191660200190565b6040906003190112610167576004356001600160a01b0381168103610167579060243580151581036101675790565b9181601f840112156101675782359167ffffffffffffffff8311610167576020808501948460051b01011161016757565b6001549091906001600160a01b03808416911614610d7c5781610d69610d7993610fc3565b90610d748282611033565b611119565b90565b5050610d79610ef7565b6001546001600160a01b03828116911614610db85780610da8610d7992610fc3565b90610db38282611033565b6110e1565b50610d79610ef7565b6001546001600160a01b0382811691168114610d7c57805f5260056020527f8647dab5101cbe18afb171756e9753802f9d66725bf2346b079b8b1a275e0116610e4960405f2054610e1b610e1486610fc3565b8096611033565b835f5260056020528460405f2055604051918291864291846040919493926060820195825260208201520152565b0390a290565b9190811015610e5f5760051b0190565b634e487b7160e01b5f52603260045260245ffd5b356001600160a01b03811681036101675790565b6001546001600160a01b03828116911614610db85780610ea9610d7992610fc3565b90610eb48282611033565b6110a1565b519069ffffffffffffffffffff8216820361016757565b81810292918115918404141715610ee357565b634e487b7160e01b5f52601160045260245ffd5b600354604051633fabe5a360e21b81529060a090829060049082906001600160a01b03165afa908115610fb8575f91610f6b575b505f811315610f5c5769021e19e0c9bab240000081029080820469021e19e0c9bab24000001490151715610ee35790565b638002905d60e01b5f5260045ffd5b905060a0813d60a011610fb0575b81610f8660a09383610c92565b8101031261016757610f9781610eb9565b50610fa9608060208301519201610eb9565b505f610f2b565b3d9150610f79565b6040513d5f823e3d90fd5b60405163adcc40cb60e01b815290602090829060049082906001600160a01b03165afa908115610fb8575f91610ff7575090565b90506020813d60201161101e575b8161101260209383610c92565b81010312610167575190565b3d9150611005565b91908203918211610ee357565b6001600160a01b03165f9081526005602052604090205490811561109d5761107661271091838082115f1461108d5761106b91611026565b925b60025490610ed0565b041061107e57565b63a8eb64ed60e01b5f5260045ffd5b9061109791611026565b9261106d565b5050565b6001600160a01b03165f9081526004602052604090205480156110dd5761271001908161271011610ee357612710916110d991610ed0565b0490565b5090565b6001600160a01b03165f9081526004602052604090205480156110dd5761271003906127108211610ee357612710916110d991610ed0565b6001600160a01b03165f908152600460205260409020549091811561117357156111585761271001908161271011610ee357612710916110d991610ed0565b61271003906127108211610ee357612710916110d991610ed0565b505090565b9061119c575080511561118d57602081519101fd5b63d6bda27560e01b5f5260045ffd5b815115806111cd575b6111ad575090565b639996b31560e01b5f9081526001600160a01b0391909116600452602490fd5b50803b156111a556fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbcf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a26469706673582212204282215c04c4905a3f923a0242934cda4255d81c00f5982ce12f91f20e898eb064736f6c634300081e0033","sourceMap":"370:7470:7:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;370:7470:7;;;;-1:-1:-1;;;;;370:7470:7;;:::i;:::-;;;;1169:44;370:7470;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;370:7470:7;;;;;;:::i;:::-;;;-1:-1:-1;;;;;370:7470:7;1540:10;:17;1536:41;;2367:53;370:7470;;-1:-1:-1;;;;;;370:7470:7;-1:-1:-1;;;;;370:7470:7;;;;;;;;;;;1536:41;1566:11;;;370:7470;1566:11;370:7470;;1566:11;370:7470;;;;;;-1:-1:-1;;370:7470:7;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;;;;370:7470:7;1540:10;:17;1536:41;;370:7470;2652:29;370:7470;;;;;;;;;;;2608:8;370:7470;;;;;;;;;;;;;;;;;;;;;;;;;2652:29;370:7470;;;;;;;-1:-1:-1;;370:7470:7;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;;;;370:7470:7;1540:10;:17;1536:41;;3383:43;;;370:7470;;;3476:18;;;;;;370:7470;3496:3;918;3519:21;;;;;:::i;:::-;370:7470;3519:47;3515:75;;3636:21;;370:7470;3636:21;;;;:::i;:::-;370:7470;;;;;;3622:10;;;;;;:::i;:::-;;:::i;:::-;370:7470;;;;;;;;;;3689:10;;;;;;:::i;:::-;3676:47;370:7470;3701:21;;;;;:::i;:::-;370:7470;;;;;;;;;;;;;3676:47;;370:7470;3461:13;;3515:75;3075:15;;;370:7470;3575:15;370:7470;;3575:15;370:7470;;;-1:-1:-1;;;370:7470:7;;;;;;;;;;;;-1:-1:-1;;;370:7470:7;;;;;;;;;;;;;-1:-1:-1;;370:7470:7;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;370:7470:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;370:7470:7;;;;;;;;;;;;;-1:-1:-1;;370:7470:7;;;;;;:::i;:::-;;;-1:-1:-1;;;;;370:7470:7;1540:10;:17;1536:41;;-1:-1:-1;;;;;370:7470:7;2190:26;;2186:55;;-1:-1:-1;;;;;370:7470:7;;2251:26;370:7470;;;2251:26;370:7470;;;;2186:55;1901:16;;;370:7470;2225:16;370:7470;;2225:16;370:7470;;;;;;-1:-1:-1;;370:7470:7;;;;-1:-1:-1;;;;;370:7470:7;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;370:7470:7;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;370:7470:7;1540:10;:17;1536:41;;918:3;3022:44;;3018:72;;370:7470;3161:40;370:7470;;;;;;;;;;;;;;;;;;;;;;;;3161:40;370:7470;;;;;;;-1:-1:-1;;370:7470:7;;;;;;:::i;:::-;1651:10;370:7470;;1642:8;370:7470;;;;;;;;1641:21;:42;;;370:7470;1637:66;;3746:487;370:7470;3746:487;;:::i;1641:42::-;-1:-1:-1;370:7470:7;;-1:-1:-1;;;;;370:7470:7;1651:10;1666:17;;1641:42;;370:7470;;;;;;-1:-1:-1;;370:7470:7;;;;;;;796:8;370:7470;;;;;;;;;-1:-1:-1;;370:7470:7;;;;;;:::i;:::-;;;-1:-1:-1;;;;;370:7470:7;;;;;6615:21;;;;6672:15;;370:7470;6672:15;;:::i;:::-;370:7470;6739:23;;;6611:544;370:7470;;;;;;;;;;;;;;;;;;;;;;6611:544;6900:20;;370:7470;6900:20;;:::i;:::-;370:7470;;;;6948:9;370:7470;;;;;;;;;;;;;;;;7038:40;7103:41;7038:40;;;;;:::i;:::-;7103:41;;:::i;:::-;6611:544;;;370:7470;;;;;;-1:-1:-1;;370:7470:7;;;;;;;;;-1:-1:-1;;;;;370:7470:7;1540:10;:17;1536:41;;2808:4;2787:25;;2783:56;;2862:38;370:7470;;2783:56;2821:18;;;370:7470;2821:18;370:7470;;2821:18;370:7470;;;;;;-1:-1:-1;;370:7470:7;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;:::i;:::-;;;;;;-1:-1:-1;;370:7470:7;;;;-1:-1:-1;;;;;370:7470:7;;:::i;:::-;;;;1224:40;370:7470;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;370:7470:7;;;;;987:32;370:7470;;;;;;;;;;;;;-1:-1:-1;;370:7470:7;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;370:7470:7;1540:10;:17;1536:41;;-1:-1:-1;;;;;370:7470:7;;;;;4347:9;370:7470;;;;;;;;;;;;;;;;;;;;;;;;;;;4453:15;370:7470;;;;;4415:54;;370:7470;;4415:54;370:7470;;;;;;;-1:-1:-1;;370:7470:7;;;;5090:6:36;-1:-1:-1;;;;;370:7470:7;5081:4:36;5073:23;5069:145;;370:7470:7;;;-1:-1:-1;;;;;;;;;;;370:7470:7;;;5069:145:36;4844:29;;;370:7470:7;5174:29:36;370:7470:7;;5174:29:36;370:7470:7;;;-1:-1:-1;;370:7470:7;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4667:6:36;370:7470:7;4658:4:36;4650:23;;;:120;;;;370:7470:7;4633:251:36;;;370:7470:7;;-1:-1:-1;;;;;370:7470:7;1540:10;:17;1536:41;;370:7470;;-1:-1:-1;;;6131:52:36;;-1:-1:-1;;;;;370:7470:7;;;;;;;;;6131:52:36;;370:7470:7;;6131:52:36;;;370:7470:7;-1:-1:-1;6127:437:36;;1805:47:48;;;;370:7470:7;6493:60:36;370:7470:7;;;;6493:60:36;6127:437;6225:40;-1:-1:-1;;;;;;;;;;;6225:40:36;;;6221:120;;1748:29:48;;;:34;1744:119;;-1:-1:-1;;;;;;;;;;;370:7470:7;;-1:-1:-1;;;;;;370:7470:7;;;;;2407:36:48;-1:-1:-1;;2407:36:48;370:7470:7;;2458:15:48;:11;;370:7470:7;4065:25:55;;4107:55;4065:25;;;;;;370:7470:7;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;4107:55:55;:::i;:::-;370:7470:7;;;;4107:55:55;:::i;2454:148:48:-;6163:9;;;;6159:70;;370:7470:7;6159:70:48;6199:19;;;370:7470:7;6199:19:48;370:7470:7;;6199:19:48;1744:119;1805:47;;;370:7470:7;1805:47:48;370:7470:7;;;;1805:47:48;6221:120:36;6292:34;;;370:7470:7;6292:34:36;370:7470:7;;;;6292:34:36;6131:52;;;;370:7470:7;6131:52:36;;370:7470:7;6131:52:36;;;;;;370:7470:7;6131:52:36;;;:::i;:::-;;;370:7470:7;;;;;6131:52:36;;;;;;;-1:-1:-1;6131:52:36;;4650:120;-1:-1:-1;;;;;;;;;;;370:7470:7;-1:-1:-1;;;;;370:7470:7;4728:42:36;;;-1:-1:-1;4650:120:36;;;370:7470:7;;;;;;-1:-1:-1;;370:7470:7;;;;;;:::i;:::-;;;-1:-1:-1;;;;;370:7470:7;;;;;;;;-1:-1:-1;;;;;;;;;;;370:7470:7;;;;;;;4301:16:35;370:7470:7;;;;4724:16:35;;:34;;;;370:7470:7;4803:1:35;4788:16;:50;;;;370:7470:7;4853:13:35;:30;;;;370:7470:7;4849:91:35;;;-1:-1:-1;;370:7470:7;;4803:1:35;370:7470:7;-1:-1:-1;;;;;;;;;;;370:7470:7;;4977:67:35;;370:7470:7;;-1:-1:-1;;;;;;;;;;;370:7470:7;;;;;;;7148:18:35;7144:73;;-1:-1:-1;;;;;370:7470:7;1866:26;;1862:55;;-1:-1:-1;;;;;370:7470:7;;4803:1:35;370:7470:7;;;4803:1:35;370:7470:7;-1:-1:-1;;;;;370:7470:7;;1963:53;370:7470;;;1963:53;370:7470;2032:10;-1:-1:-1;;;;;370:7470:7;;;;;;;;2072:3;2052:23;370:7470;5064:101:35;;370:7470:7;5064:101:35;370:7470:7;;;-1:-1:-1;;;;;;;;;;;370:7470:7;5140:14:35;370:7470:7;;;4803:1:35;370:7470:7;;5140:14:35;370:7470:7;7144:73:35;7189:17;;;370:7470:7;7189:17:35;370:7470:7;;7189:17:35;4977:67;-1:-1:-1;;370:7470:7;;;-1:-1:-1;;;;;;;;;;;370:7470:7;4977:67:35;;;4849:91;4906:23;;;370:7470:7;4906:23:35;370:7470:7;;4906:23:35;4853:30;4870:13;;;4853:30;;;4788:50;4816:4;4808:25;:30;;-1:-1:-1;4788:50:35;;4724:34;;;-1:-1:-1;4724:34:35;;370:7470:7;;;;;;-1:-1:-1;;370:7470:7;;;;;;;;-1:-1:-1;;;;;370:7470:7;;;;;;;;;;;;;;-1:-1:-1;;370:7470:7;;;;;;;857:5;370:7470;;;;;;;;;-1:-1:-1;;370:7470:7;;;;;;;918:3;370:7470;;;;;;;;;-1:-1:-1;;370:7470:7;;;;;;-1:-1:-1;;;;;370:7470:7;;;;;;;;;;-1:-1:-1;;;;;370:7470:7;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;-1:-1:-1;370:7470:7;;;;;-1:-1:-1;370:7470:7;;;;;;;;;-1:-1:-1;;370:7470:7;;;;:::o;:::-;;;;;;;;;;;-1:-1:-1;;;;;370:7470:7;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4487:357::-;370:7470;;4487:357;;;-1:-1:-1;;;;;370:7470:7;;;;;4583:21;4579:74;;4691:20;;4795:42;4691:20;;:::i;:::-;4759:9;;;;;:::i;:::-;4795:42;:::i;:::-;4487:357;:::o;4579:74::-;4627:15;;;;:::i;7489:313::-;370:7470;;-1:-1:-1;;;;;370:7470:7;;;;;7572:21;7568:74;;7671:20;;7757:38;7671:20;;:::i;:::-;7730:9;;;;;:::i;:::-;7757:38;:::i;7568:74::-;7616:15;;;:::i;3746:487::-;370:7470;;-1:-1:-1;;;;;370:7470:7;;;;;3835:21;;3831:74;;370:7470;-1:-1:-1;370:7470:7;3942:9;370:7470;;4136:56;;370:7470;-1:-1:-1;370:7470:7;;4056:8;3988:20;;;:::i;:::-;4056:8;;;:::i;:::-;370:7470;-1:-1:-1;370:7470:7;3942:9;370:7470;;;;-1:-1:-1;370:7470:7;;;;4176:15;;;;;4136:56;;370:7470;;;;;;;;;;;;;;;;;;4136:56;;;;3746:487;:::o;370:7470::-;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;370:7470:7;;;;;;;:::o;7167:312::-;370:7470;;-1:-1:-1;;;;;370:7470:7;;;;;7250:21;7246:74;;7349:20;;7435:37;7349:20;;:::i;:::-;7408:9;;;;;:::i;:::-;7435:37;:::i;370:7470::-;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;4984:426;5240:13;370:7470;;;-1:-1:-1;;;5240:31:7;;370:7470;5240:31;;370:7470;;5240:31;;370:7470;;-1:-1:-1;;;;;370:7470:7;5240:31;;;;;;;-1:-1:-1;5240:31:7;;;4984:426;5294:10;-1:-1:-1;5294:10:7;;;5290:46;;5379:4;370:7470;;;;;;5379:4;370:7470;;;;;;;4984:426;:::o;5290:46::-;5313:23;;;-1:-1:-1;5313:23:7;5240:31;-1:-1:-1;5313:23:7;5240:31;;;;;;;;;;;;;;;;;:::i;:::-;;;370:7470;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;5240:31;;;;;;-1:-1:-1;5240:31:7;;;370:7470;;;-1:-1:-1;370:7470:7;;;;;4854:124;370:7470;;-1:-1:-1;;;4940:31:7;;370:7470;4940:31;;370:7470;;4940:31;;370:7470;;-1:-1:-1;;;;;370:7470:7;4940:31;;;;;;;-1:-1:-1;4940:31:7;;;4933:38;4854:124;:::o;4940:31::-;;;;;;;;;;;;;;;;;:::i;:::-;;;370:7470;;;;;4854:124;:::o;4940:31::-;;;-1:-1:-1;4940:31:7;;370:7470;;;;;;;;;;:::o;5934:455::-;-1:-1:-1;;;;;370:7470:7;-1:-1:-1;370:7470:7;;;6041:9;370:7470;;;;;;;6081:13;;6077:50;;6259:28;857:5;6165:66;:20;;;;:66;:20;;;6188;;;:::i;:::-;6165:66;;6270:17;370:7470;6259:28;;:::i;:::-;370:7470;-1:-1:-1;6329:53:7;;5934:455::o;6329:53::-;6361:21;;;-1:-1:-1;6361:21:7;;-1:-1:-1;6361:21:7;6165:66;6211:20;;;;:::i;:::-;6165:66;;;6077:50;6110:7;;:::o;5416:508::-;-1:-1:-1;;;;;370:7470:7;;;;;5578:17;370:7470;;;;;;5626:11;;5622:59;;857:5;370:7470;;;857:5;370:7470;;;857:5;5735:44;;;;:::i;:::-;370:7470;5416:508;:::o;5622:59::-;5653:17;;:::o;5416:508::-;-1:-1:-1;;;;;370:7470:7;;;;;5578:17;370:7470;;;;;;5626:11;;5622:59;;857:5;370:7470;;857:5;370:7470;;;;857:5;5840:44;;;;:::i;5416:508::-;-1:-1:-1;;;;;370:7470:7;;;;;5578:17;370:7470;;;;;;5416:508;;5626:11;;5622:59;;5699:219;;;857:5;370:7470;;;857:5;370:7470;;;857:5;5735:44;;;;:::i;5699:219::-;857:5;370:7470;;857:5;370:7470;;;;857:5;5840:44;;;;:::i;5622:59::-;5653:17;;;:::o;4437:582:55:-;;4609:8;;-1:-1:-1;370:7470:7;;5690:21:55;:17;;5815:105;;;;;;5686:301;5957:19;;;5710:1;5957:19;;5710:1;5957:19;4605:408;370:7470:7;;4857:22:55;:49;;;4605:408;4853:119;;4985:17;;:::o;4853:119::-;-1:-1:-1;;;4878:1:55;4933:24;;;-1:-1:-1;;;;;370:7470:7;;;;4933:24:55;370:7470:7;;;4933:24:55;4857:49;4883:18;;;:23;4857:49;","linkReferences":{},"immutableReferences":{"46970":[{"start":1976,"length":32},{"start":2184,"length":32}]}},"methodIdentifiers":{"BASIS_POINTS_DIVISOR()":"126082cf","MAX_SPREAD_BASIS_POINTS()":"0957aed9","PRICE_PRECISION()":"95082d25","UPGRADE_INTERFACE_VERSION()":"ad3cb1cc","forceUpdatePrice(address,uint256)":"5d42fb6b","getMaxPrice(address)":"e124e6d2","getMinPrice(address)":"81a612d6","getPrice(address,bool)":"76d69760","getPriceInfo(address)":"8edbf436","gov()":"12d43a51","initialize(address,address)":"485cc955","isKeeper(address)":"6ba42aaa","lastPrice(address)":"f5a6ba2e","maxPriceChangeBps()":"697cd71a","proxiableUUID()":"52d1902d","setKeeper(address,bool)":"d1b9e853","setMaxPriceChangeBps(uint256)":"83daeb47","setSpreadBasisPoints(address,uint256)":"9b889380","setSpreadBasisPointsForMultiple(address[],uint256[])":"c9e0c106","setUSDCAddress(address)":"aaf5bfc3","setUSDCPriceFeed(address)":"ed0df72b","spreadBasisPoints(address)":"a27ea386","updatePrice(address)":"96e85ced","upgradeToAndCall(address,bytes)":"4f1ef286","usdcAddress()":"02d45457"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"}],\"name\":\"AddressEmptyCode\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"ERC1967InvalidImplementation\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ERC1967NonPayable\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FailedCall\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Forbidden\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidChainlinkPrice\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidInitialization\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MaxChangeTooHigh\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotInitializing\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PriceChangeTooLarge\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SpreadTooHigh\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UUPSUnauthorizedCallContext\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"slot\",\"type\":\"bytes32\"}],\"name\":\"UUPSUnsupportedProxiableUUID\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"version\",\"type\":\"uint64\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"keeper\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"isActive\",\"type\":\"bool\"}],\"name\":\"KeeperSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"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\":\"PriceUpdate\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"spreadBps\",\"type\":\"uint256\"}],\"name\":\"SpreadUpdate\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"BASIS_POINTS_DIVISOR\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_SPREAD_BASIS_POINTS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PRICE_PRECISION\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UPGRADE_INTERFACE_VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_price\",\"type\":\"uint256\"}],\"name\":\"forceUpdatePrice\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"getMaxPrice\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"getMinPrice\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_maximise\",\"type\":\"bool\"}],\"name\":\"getPrice\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"getPriceInfo\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"currentPrice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"cachedPrice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxPrice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minPrice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"spread\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gov\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_usdcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_usdcPriceFeed\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"isKeeper\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"lastPrice\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"maxPriceChangeBps\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_keeper\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_isActive\",\"type\":\"bool\"}],\"name\":\"setKeeper\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_maxPriceChangeBps\",\"type\":\"uint256\"}],\"name\":\"setMaxPriceChangeBps\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_spreadBasisPoints\",\"type\":\"uint256\"}],\"name\":\"setSpreadBasisPoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_tokens\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"_spreadBasisPoints\",\"type\":\"uint256[]\"}],\"name\":\"setSpreadBasisPointsForMultiple\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_usdcAddress\",\"type\":\"address\"}],\"name\":\"setUSDCAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_usdcPriceFeed\",\"type\":\"address\"}],\"name\":\"setUSDCPriceFeed\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"spreadBasisPoints\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"updatePrice\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"usdcAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"AddressEmptyCode(address)\":[{\"details\":\"There's no code at `target` (it is not a contract).\"}],\"ERC1967InvalidImplementation(address)\":[{\"details\":\"The `implementation` of the proxy is invalid.\"}],\"ERC1967NonPayable()\":[{\"details\":\"An upgrade function sees `msg.value > 0` that may be lost.\"}],\"FailedCall()\":[{\"details\":\"A call to an address target failed. The target may have reverted.\"}],\"InvalidInitialization()\":[{\"details\":\"The contract is already initialized.\"}],\"NotInitializing()\":[{\"details\":\"The contract is not initializing.\"}],\"UUPSUnauthorizedCallContext()\":[{\"details\":\"The call is from an unauthorized context.\"}],\"UUPSUnsupportedProxiableUUID(bytes32)\":[{\"details\":\"The storage `slot` is unsupported as a UUID.\"}]},\"events\":{\"Initialized(uint64)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"constructor\":{\"custom:oz-upgrades-unsafe-allow\":\"constructor\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC-1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/ytLp/core/YTPriceFeed.sol\":\"YTPriceFeed\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@arbitrum/=node_modules/@arbitrum/\",\":@chainlink/=node_modules/@chainlink/\",\":@ensdomains/=node_modules/@ensdomains/\",\":@eth-optimism/=node_modules/@chainlink/contracts/node_modules/@eth-optimism/\",\":@offchainlabs/=node_modules/@offchainlabs/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":@scroll-tech/=node_modules/@scroll-tech/\",\":@zksync/=node_modules/@zksync/\",\":forge-std/=lib/forge-std/src/\",\":hardhat/=node_modules/hardhat/\",\":solady/=node_modules/solady/\"],\"viaIR\":true},\"sources\":{\"contracts/interfaces/IYTAssetVault.sol\":{\"keccak256\":\"0xb0a83f0d960d0739bc31898eb3e04d817984a708c53c8b0eaa38c10cf79ce503\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2036d1b7de81fb909e5af2842d97e5a5a55a9b43f1023ec3642c521c592d0f6e\",\"dweb:/ipfs/Qma3adh7SavnDX84zoyizeSQ7bS1NeihWCcnzqEw4rT9nE\"]},\"contracts/ytLp/core/YTPriceFeed.sol\":{\"keccak256\":\"0x44f40056fe5ba493d7f92445d683242097742f6364f33f5a72d056da5996ef01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://90c223fc81d8f8e3e1dffa702253e3f0abf83d3dd69f2383ba441b32e0755bd7\",\"dweb:/ipfs/QmRscesTnN43NRTjAZ3oa8bFA5n6y1Rjrd9S8eb9hreRBi\"]},\"node_modules/@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.sol\":{\"keccak256\":\"0x257a8d28fa83d3d942547c8e129ef465e4b5f3f31171e7be4739a4c98da6b4f0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6d39e11b1dc7b9b8ccdabbc9be442ab7cda4a81c748f57e316dcb1bcb4a28bf9\",\"dweb:/ipfs/QmaG6vz6W6iEUBsbHSBob5mdcitYxWjoygxREHpsJHfWrS\"]},\"node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0xdb4d24ee2c087c391d587cd17adfe5b3f9d93b3110b1388c2ab6c7c0ad1dcd05\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ab7b6d5b9e2b88176312967fe0f0e78f3d9a1422fa5e4b64e2440c35869b5d08\",\"dweb:/ipfs/QmXKYWWyzcLg1B2k7Sb1qkEXgLCYfXecR9wYW5obRzWP1Q\"]},\"node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0x574a7451e42724f7de29e2855c392a8a5020acd695169466a18459467d719d63\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5bc189f63b639ee173dd7b6fecc39baf7113bf161776aea22b34c57fdd1872ec\",\"dweb:/ipfs/QmZAf2VtjDLRULqjJkde6LNsxAg12tUqpPqgUQQZbAjgtZ\"]},\"node_modules/@openzeppelin/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0xbf2aefe54b76d7f7bcd4f6da1080b7b1662611937d870b880db584d09cea56b5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f5e7e2f12e0feec75296e57f51f82fdaa8bd1551f4b8cc6560442c0bf60f818c\",\"dweb:/ipfs/QmcW9wDMaQ8RbQibMarfp17a3bABzY5KraWe2YDwuUrUoz\"]},\"node_modules/@openzeppelin/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x82f757819bf2429a0d4db141b99a4bbe5039e4ef86dfb94e2e6d40577ed5b28b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://37c30ed931e19fb71fdb806bb504cfdb9913b7127545001b64d4487783374422\",\"dweb:/ipfs/QmUBHpv4hm3ZmwJ4GH8BeVzK4mv41Q6vBbWXxn8HExPXza\"]},\"node_modules/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.sol\":{\"keccak256\":\"0xa1ad192cd45317c788618bef5cb1fb3ca4ce8b230f6433ac68cc1d850fb81618\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b43447bb85a53679d269a403c693b9d88d6c74177dfb35eddca63abaf7cf110a\",\"dweb:/ipfs/QmXSDmpd4bNZj1PDgegr6C4w1jDaWHXCconC3rYiw9TSkQ\"]},\"node_modules/@openzeppelin/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0x20462ddb2665e9521372c76b001d0ce196e59dbbd989de9af5576cad0bd5628b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f417fd12aeec8fbfaceaa30e3a08a0724c0bc39de363e2acf6773c897abbaf6d\",\"dweb:/ipfs/QmU4Hko6sApdweVM92CsiuLKkCk8HfyBeutF89PCTz5Tye\"]},\"node_modules/@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x6d0ae6e206645341fd122d278c2cb643dea260c190531f2f3f6a0426e77b00c0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://032d1201d839435be2c85b72e33206b3ea980c569d6ebf7fa57d811ab580a82f\",\"dweb:/ipfs/QmeqQjAtMvdZT2tG7zm39itcRJkuwu8AEReK6WRnLJ18DD\"]},\"node_modules/@openzeppelin/contracts/utils/Errors.sol\":{\"keccak256\":\"0x6afa713bfd42cf0f7656efa91201007ac465e42049d7de1d50753a373648c123\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ba1d02f4847670a1b83dec9f7d37f0b0418d6043447b69f3a29a5f9efc547fcf\",\"dweb:/ipfs/QmQ7iH2keLNUKgq2xSWcRmuBE5eZ3F5whYAkAGzCNNoEWB\"]},\"node_modules/@openzeppelin/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xcf74f855663ce2ae00ed8352666b7935f6cddea2932fdf2c3ecd30a9b1cd0e97\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9f660b1f351b757dfe01438e59888f31f33ded3afcf5cb5b0d9bf9aa6f320a8b\",\"dweb:/ipfs/QmarDJ5hZEgBtCmmrVzEZWjub9769eD686jmzb2XpSU1cM\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.30+commit.73712a01"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"type":"error","name":"AddressEmptyCode"},{"inputs":[{"internalType":"address","name":"implementation","type":"address"}],"type":"error","name":"ERC1967InvalidImplementation"},{"inputs":[],"type":"error","name":"ERC1967NonPayable"},{"inputs":[],"type":"error","name":"FailedCall"},{"inputs":[],"type":"error","name":"Forbidden"},{"inputs":[],"type":"error","name":"InvalidAddress"},{"inputs":[],"type":"error","name":"InvalidChainlinkPrice"},{"inputs":[],"type":"error","name":"InvalidInitialization"},{"inputs":[],"type":"error","name":"MaxChangeTooHigh"},{"inputs":[],"type":"error","name":"NotInitializing"},{"inputs":[],"type":"error","name":"PriceChangeTooLarge"},{"inputs":[],"type":"error","name":"SpreadTooHigh"},{"inputs":[],"type":"error","name":"UUPSUnauthorizedCallContext"},{"inputs":[{"internalType":"bytes32","name":"slot","type":"bytes32"}],"type":"error","name":"UUPSUnsupportedProxiableUUID"},{"inputs":[{"internalType":"uint64","name":"version","type":"uint64","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"keeper","type":"address","indexed":true},{"internalType":"bool","name":"isActive","type":"bool","indexed":false}],"type":"event","name":"KeeperSet","anonymous":false},{"inputs":[{"internalType":"address","name":"token","type":"address","indexed":true},{"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":"PriceUpdate","anonymous":false},{"inputs":[{"internalType":"address","name":"token","type":"address","indexed":true},{"internalType":"uint256","name":"spreadBps","type":"uint256","indexed":false}],"type":"event","name":"SpreadUpdate","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"BASIS_POINTS_DIVISOR","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_SPREAD_BASIS_POINTS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PRICE_PRECISION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"UPGRADE_INTERFACE_VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"uint256","name":"_price","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"forceUpdatePrice"},{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"stateMutability":"view","type":"function","name":"getMaxPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"stateMutability":"view","type":"function","name":"getMinPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"bool","name":"_maximise","type":"bool"}],"stateMutability":"view","type":"function","name":"getPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"stateMutability":"view","type":"function","name":"getPriceInfo","outputs":[{"internalType":"uint256","name":"currentPrice","type":"uint256"},{"internalType":"uint256","name":"cachedPrice","type":"uint256"},{"internalType":"uint256","name":"maxPrice","type":"uint256"},{"internalType":"uint256","name":"minPrice","type":"uint256"},{"internalType":"uint256","name":"spread","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gov","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_usdcAddress","type":"address"},{"internalType":"address","name":"_usdcPriceFeed","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"isKeeper","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"lastPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"maxPriceChangeBps","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"_keeper","type":"address"},{"internalType":"bool","name":"_isActive","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setKeeper"},{"inputs":[{"internalType":"uint256","name":"_maxPriceChangeBps","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setMaxPriceChangeBps"},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"uint256","name":"_spreadBasisPoints","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setSpreadBasisPoints"},{"inputs":[{"internalType":"address[]","name":"_tokens","type":"address[]"},{"internalType":"uint256[]","name":"_spreadBasisPoints","type":"uint256[]"}],"stateMutability":"nonpayable","type":"function","name":"setSpreadBasisPointsForMultiple"},{"inputs":[{"internalType":"address","name":"_usdcAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setUSDCAddress"},{"inputs":[{"internalType":"address","name":"_usdcPriceFeed","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setUSDCPriceFeed"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"spreadBasisPoints","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"updatePrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"},{"inputs":[],"stateMutability":"view","type":"function","name":"usdcAddress","outputs":[{"internalType":"address","name":"","type":"address"}]}],"devdoc":{"kind":"dev","methods":{"constructor":{"custom:oz-upgrades-unsafe-allow":"constructor"},"proxiableUUID()":{"details":"Implementation of the ERC-1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@arbitrum/=node_modules/@arbitrum/","@chainlink/=node_modules/@chainlink/","@ensdomains/=node_modules/@ensdomains/","@eth-optimism/=node_modules/@chainlink/contracts/node_modules/@eth-optimism/","@offchainlabs/=node_modules/@offchainlabs/","@openzeppelin/=node_modules/@openzeppelin/","@scroll-tech/=node_modules/@scroll-tech/","@zksync/=node_modules/@zksync/","forge-std/=lib/forge-std/src/","hardhat/=node_modules/hardhat/","solady/=node_modules/solady/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"contracts/ytLp/core/YTPriceFeed.sol":"YTPriceFeed"},"evmVersion":"prague","libraries":{},"viaIR":true},"sources":{"contracts/interfaces/IYTAssetVault.sol":{"keccak256":"0xb0a83f0d960d0739bc31898eb3e04d817984a708c53c8b0eaa38c10cf79ce503","urls":["bzz-raw://2036d1b7de81fb909e5af2842d97e5a5a55a9b43f1023ec3642c521c592d0f6e","dweb:/ipfs/Qma3adh7SavnDX84zoyizeSQ7bS1NeihWCcnzqEw4rT9nE"],"license":"MIT"},"contracts/ytLp/core/YTPriceFeed.sol":{"keccak256":"0x44f40056fe5ba493d7f92445d683242097742f6364f33f5a72d056da5996ef01","urls":["bzz-raw://90c223fc81d8f8e3e1dffa702253e3f0abf83d3dd69f2383ba441b32e0755bd7","dweb:/ipfs/QmRscesTnN43NRTjAZ3oa8bFA5n6y1Rjrd9S8eb9hreRBi"],"license":"MIT"},"node_modules/@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.sol":{"keccak256":"0x257a8d28fa83d3d942547c8e129ef465e4b5f3f31171e7be4739a4c98da6b4f0","urls":["bzz-raw://6d39e11b1dc7b9b8ccdabbc9be442ab7cda4a81c748f57e316dcb1bcb4a28bf9","dweb:/ipfs/QmaG6vz6W6iEUBsbHSBob5mdcitYxWjoygxREHpsJHfWrS"],"license":"MIT"},"node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol":{"keccak256":"0xdb4d24ee2c087c391d587cd17adfe5b3f9d93b3110b1388c2ab6c7c0ad1dcd05","urls":["bzz-raw://ab7b6d5b9e2b88176312967fe0f0e78f3d9a1422fa5e4b64e2440c35869b5d08","dweb:/ipfs/QmXKYWWyzcLg1B2k7Sb1qkEXgLCYfXecR9wYW5obRzWP1Q"],"license":"MIT"},"node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0x574a7451e42724f7de29e2855c392a8a5020acd695169466a18459467d719d63","urls":["bzz-raw://5bc189f63b639ee173dd7b6fecc39baf7113bf161776aea22b34c57fdd1872ec","dweb:/ipfs/QmZAf2VtjDLRULqjJkde6LNsxAg12tUqpPqgUQQZbAjgtZ"],"license":"MIT"},"node_modules/@openzeppelin/contracts/interfaces/IERC1967.sol":{"keccak256":"0xbf2aefe54b76d7f7bcd4f6da1080b7b1662611937d870b880db584d09cea56b5","urls":["bzz-raw://f5e7e2f12e0feec75296e57f51f82fdaa8bd1551f4b8cc6560442c0bf60f818c","dweb:/ipfs/QmcW9wDMaQ8RbQibMarfp17a3bABzY5KraWe2YDwuUrUoz"],"license":"MIT"},"node_modules/@openzeppelin/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x82f757819bf2429a0d4db141b99a4bbe5039e4ef86dfb94e2e6d40577ed5b28b","urls":["bzz-raw://37c30ed931e19fb71fdb806bb504cfdb9913b7127545001b64d4487783374422","dweb:/ipfs/QmUBHpv4hm3ZmwJ4GH8BeVzK4mv41Q6vBbWXxn8HExPXza"],"license":"MIT"},"node_modules/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.sol":{"keccak256":"0xa1ad192cd45317c788618bef5cb1fb3ca4ce8b230f6433ac68cc1d850fb81618","urls":["bzz-raw://b43447bb85a53679d269a403c693b9d88d6c74177dfb35eddca63abaf7cf110a","dweb:/ipfs/QmXSDmpd4bNZj1PDgegr6C4w1jDaWHXCconC3rYiw9TSkQ"],"license":"MIT"},"node_modules/@openzeppelin/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0x20462ddb2665e9521372c76b001d0ce196e59dbbd989de9af5576cad0bd5628b","urls":["bzz-raw://f417fd12aeec8fbfaceaa30e3a08a0724c0bc39de363e2acf6773c897abbaf6d","dweb:/ipfs/QmU4Hko6sApdweVM92CsiuLKkCk8HfyBeutF89PCTz5Tye"],"license":"MIT"},"node_modules/@openzeppelin/contracts/utils/Address.sol":{"keccak256":"0x6d0ae6e206645341fd122d278c2cb643dea260c190531f2f3f6a0426e77b00c0","urls":["bzz-raw://032d1201d839435be2c85b72e33206b3ea980c569d6ebf7fa57d811ab580a82f","dweb:/ipfs/QmeqQjAtMvdZT2tG7zm39itcRJkuwu8AEReK6WRnLJ18DD"],"license":"MIT"},"node_modules/@openzeppelin/contracts/utils/Errors.sol":{"keccak256":"0x6afa713bfd42cf0f7656efa91201007ac465e42049d7de1d50753a373648c123","urls":["bzz-raw://ba1d02f4847670a1b83dec9f7d37f0b0418d6043447b69f3a29a5f9efc547fcf","dweb:/ipfs/QmQ7iH2keLNUKgq2xSWcRmuBE5eZ3F5whYAkAGzCNNoEWB"],"license":"MIT"},"node_modules/@openzeppelin/contracts/utils/StorageSlot.sol":{"keccak256":"0xcf74f855663ce2ae00ed8352666b7935f6cddea2932fdf2c3ecd30a9b1cd0e97","urls":["bzz-raw://9f660b1f351b757dfe01438e59888f31f33ded3afcf5cb5b0d9bf9aa6f320a8b","dweb:/ipfs/QmarDJ5hZEgBtCmmrVzEZWjub9769eD686jmzb2XpSU1cM"],"license":"MIT"}},"version":1},"id":7}