UNPKG

@uniswap/universal-router

Version:

Smart contracts for Universal Router

1 lines 38.5 kB
{"abi":[{"type":"constructor","inputs":[{"name":"amountToMint","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"DOMAIN_SEPARATOR","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"allowance","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"approve","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"balanceOf","inputs":[{"name":"","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":"mint","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"name","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"nonces","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"permit","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"symbol","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"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":"amount","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":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"Approval","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"spender","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false}],"bytecode":{"object":"0x60e0806040523461041857602081611266803803809161001f828561041c565b83398101031261041857516040519061003960408361041c565b60048252631d195cdd60e21b60208301526040519061005960408361041c565b6004825263151154d560e21b602083015282516001600160401b038111610349576100845f5461043f565b601f81116103c9575b506020601f821160011461036857819293945f9261035d575b50508160011b915f199060031b1c1916175f555b81516001600160401b038111610349576100d560015461043f565b601f81116102e6575b50602092601f821160011461028557928192935f9261027a575b50508160011b915f199060031b1c1916176001555b60126080524660a052604051905f915f54906101288261043f565b80825260208201926001811690811561025f575060011461021c575b50610154816101ef95038261041c565b51902060405160208101917f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f835260408201527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260a081526101c860c08261041c565b51902060c052335f52600360205260405f206101e5828254610477565b9055600254610477565b600255604051610dad9081610499823960805181610765015260a05181610bd5015260c05181610bfb0152f35b5f8080529094505f805160206112468339815191525b858210610249575081016020019350610154610144565b6001816020925483858701015201910190610232565b60ff1916845250151560051b81016020019350610154610144565b015190505f806100f8565b601f1982169360015f52805f20915f5b8681106102ce57508360019596106102b6575b505050811b0160015561010d565b01515f1960f88460031b161c191690555f80806102a8565b91926020600181928685015181550194019201610295565b60015f527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6601f830160051c8101916020841061033f575b601f0160051c01905b81811061033457506100de565b5f8155600101610327565b909150819061031e565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100a6565b601f198216905f8052805f20915f5b8181106103b157509583600195969710610399575b505050811b015f556100ba565b01515f1960f88460031b161c191690555f808061038c565b9192602060018192868b015181550194019201610377565b5f80525f80516020611246833981519152601f830160051c8101916020841061040e575b601f0160051c01905b818110610403575061008d565b5f81556001016103f6565b90915081906103ed565b5f80fd5b601f909101601f19168101906001600160401b0382119082101761034957604052565b90600182811c9216801561046d575b602083101461045957565b634e487b7160e01b5f52602260045260245ffd5b91607f169161044e565b9190820180921161048457565b634e487b7160e01b5f52601160045260245ffdfe60806040526004361015610011575f80fd5b5f3560e01c806306fdde031461098b578063095ea7b3146108e857806318160ddd146108ad57806323b872dd14610789578063313ce5671461072e5780633644e515146106ee57806340c10f191461067557806370a08231146106125780637ecebe00146105af57806395d89b4114610499578063a9059cbb146103e5578063d505accf146101385763dd62ed3e146100a8575f80fd5b346101345760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610134576100df610b52565b73ffffffffffffffffffffffffffffffffffffffff6100fc610b75565b91165f52600460205273ffffffffffffffffffffffffffffffffffffffff60405f2091165f52602052602060405f2054604051908152f35b5f80fd5b346101345760e07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101345761016f610b52565b610177610b75565b6044356064359260843560ff8116809103610134574285106103875760805f9160209373ffffffffffffffffffffffffffffffffffffffff6101b7610bd2565b91169687855260058652604085209889549960018b0190556040519073ffffffffffffffffffffffffffffffffffffffff888301937f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c985528b6040850152169a8b6060840152898784015260a083015260c082015260c0815261023b60e082610a9c565b51902060405190868201927f190100000000000000000000000000000000000000000000000000000000000084526022830152604282015260428152610282606282610a9c565b519020906040519182528482015260a435604082015260c435606082015282805260015afa1561037c5773ffffffffffffffffffffffffffffffffffffffff5f511680151580610373575b15610315577f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925916020915f526004825260405f20855f5282528060405f2055604051908152a3005b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f494e56414c49445f5349474e45520000000000000000000000000000000000006044820152fd5b508281146102cd565b6040513d5f823e3d90fd5b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f5045524d49545f444541444c494e455f455850495245440000000000000000006044820152fd5b346101345760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101345761041c610b52565b73ffffffffffffffffffffffffffffffffffffffff60243591335f52600360205260405f2061044c848254610b98565b90551690815f52600360205260405f208181540190556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b34610134575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610134576040515f6001546104d781610a4b565b808452906001811690811561056d575060011461050f575b61050b836104ff81850382610a9c565b60405191829182610b0a565b0390f35b60015f9081527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6939250905b808210610553575090915081016020016104ff6104ef565b91926001816020925483858801015201910190929161053b565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660208086019190915291151560051b840190910191506104ff90506104ef565b346101345760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101345773ffffffffffffffffffffffffffffffffffffffff6105fb610b52565b165f526005602052602060405f2054604051908152f35b346101345760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101345773ffffffffffffffffffffffffffffffffffffffff61065e610b52565b165f526003602052602060405f2054604051908152f35b346101345760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610134576106e96106af610b52565b73ffffffffffffffffffffffffffffffffffffffff60243591165f52600360205260405f206106df828254610d6a565b9055600254610d6a565b600255005b34610134575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610134576020610726610bd2565b604051908152f35b34610134575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261013457602060405160ff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346101345760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610134576107c0610b52565b6107c8610b75565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602073ffffffffffffffffffffffffffffffffffffffff80604435951693845f526004835260405f208233165f52835260405f2054867fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610886575b5050845f526003835260405f2061085f878254610b98565b90551693845f526003825260405f20818154019055604051908152a3602060405160018152f35b61088f91610b98565b855f526004845260405f208333165f52845260405f20558686610847565b34610134575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610134576020600254604051908152f35b346101345760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101345761091f610b52565b73ffffffffffffffffffffffffffffffffffffffff60243591335f52600460205260405f208282165f526020528260405f205560405192835216907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b34610134575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610134576040515f80546109c881610a4b565b808452906001811690811561056d57506001146109ef5761050b836104ff81850382610a9c565b5f8080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563939250905b808210610a31575090915081016020016104ff6104ef565b919260018160209254838588010152019101909291610a19565b90600182811c92168015610a92575b6020831014610a6557565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f1691610a5a565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117610add57604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602060409481855280519182918282880152018686015e5f8582860101520116010190565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361013457565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361013457565b91908203918211610ba557565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b467f000000000000000000000000000000000000000000000000000000000000000003610c1d577f000000000000000000000000000000000000000000000000000000000000000090565b6040515f905f549181610c2f84610a4b565b9182825260208201946001811690815f14610d305750600114610cd3575b610c5992500382610a9c565b51902060405160208101917f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f835260408201527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260a08152610ccd60c082610a9c565b51902090565b505f80805290917f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5635b818310610d14575050906020610c5992820101610c4d565b6020919350806001915483858801015201910190918392610cfc565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016865250610c5992151560051b82016020019050610c4d565b91908201809211610ba55756fea264697066735822122008cfebcccf2657ece032016f82e321a1491830e81f8ad6dee452b206004b2bff64736f6c634300081a0033290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563","sourceMap":"124:273:22:-:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;124:273:22;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;124:273:22;;;;;;-1:-1:-1;;;;;124:273:22;;;;;-1:-1:-1;124:273:22;;:::i;:::-;;;;;;-1:-1:-1;124:273:22;;;;;;;;;;;;;-1:-1:-1;124:273:22;;;;;;;;;;;;;;;;;;;-1:-1:-1;124:273:22;;;;-1:-1:-1;;;;;124:273:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;124:273:22;;;;;;;;;;;;;;;;;;;;;;218:2;2142:20:49;;2192:13;2173:32;;124:273:22;;;-1:-1:-1;124:273:22;-1:-1:-1;124:273:22;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;367:21;124:273;;;;:::i;:::-;;5789:22:49;;124:273:22;;;5640:295:49;;124:273:22;5672:95:49;124:273:22;;;;;;5833:14:49;124:273:22;;;;2192:13:49;2142:20;124:273:22;;;5912:4:49;2173:32;124:273:22;;;2173:32:49;5640:295;;;;;;:::i;:::-;124:273:22;5613:336:49;;5640:295;2215:51;237:10:22;-1:-1:-1;124:273:22;334:9;124:273;;;-1:-1:-1;124:273:22;334:23;124:273;;;334:23;:::i;:::-;124:273;;367:21;124:273;367:21;:::i;:::-;;124:273;;;;;;;;;2142:20:49;124:273:22;;;;;2173:32:49;124:273:22;;;;;5640:295:49;124:273:22;;;;;;;-1:-1:-1;124:273:22;;;;;-1:-1:-1;;;;;;;;;;;;124:273:22;;;;;;-1:-1:-1;124:273:22;;;;;-1:-1:-1;124:273:22;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;124:273:22;;;-1:-1:-1;124:273:22;;;;;;;;;-1:-1:-1;124:273:22;;;;;;;-1:-1:-1;124:273:22;;;;;;;;;;;-1:-1:-1;124:273:22;;-1:-1:-1;124:273:22;;-1:-1:-1;124:273:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;124:273:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;124:273:22;;;;;;;;;-1:-1:-1;124:273:22;;;;;;;;-1:-1:-1;124:273:22;;;;;-1:-1:-1;124:273:22;;;;;-1:-1:-1;124:273:22;;;;;;;;;;-1:-1:-1;124:273:22;;;-1:-1:-1;124:273:22;;-1:-1:-1;124:273:22;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;124:273:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;124:273:22;;-1:-1:-1;;;;;;;;;;;124:273:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;124:273:22;;;;;;;;;-1:-1:-1;124:273:22;;;;;-1:-1:-1;124:273:22;;;;;;;-1:-1:-1;;124:273:22;;;;-1:-1:-1;;;;;124:273:22;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040526004361015610011575f80fd5b5f3560e01c806306fdde031461098b578063095ea7b3146108e857806318160ddd146108ad57806323b872dd14610789578063313ce5671461072e5780633644e515146106ee57806340c10f191461067557806370a08231146106125780637ecebe00146105af57806395d89b4114610499578063a9059cbb146103e5578063d505accf146101385763dd62ed3e146100a8575f80fd5b346101345760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610134576100df610b52565b73ffffffffffffffffffffffffffffffffffffffff6100fc610b75565b91165f52600460205273ffffffffffffffffffffffffffffffffffffffff60405f2091165f52602052602060405f2054604051908152f35b5f80fd5b346101345760e07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101345761016f610b52565b610177610b75565b6044356064359260843560ff8116809103610134574285106103875760805f9160209373ffffffffffffffffffffffffffffffffffffffff6101b7610bd2565b91169687855260058652604085209889549960018b0190556040519073ffffffffffffffffffffffffffffffffffffffff888301937f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c985528b6040850152169a8b6060840152898784015260a083015260c082015260c0815261023b60e082610a9c565b51902060405190868201927f190100000000000000000000000000000000000000000000000000000000000084526022830152604282015260428152610282606282610a9c565b519020906040519182528482015260a435604082015260c435606082015282805260015afa1561037c5773ffffffffffffffffffffffffffffffffffffffff5f511680151580610373575b15610315577f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925916020915f526004825260405f20855f5282528060405f2055604051908152a3005b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f494e56414c49445f5349474e45520000000000000000000000000000000000006044820152fd5b508281146102cd565b6040513d5f823e3d90fd5b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f5045524d49545f444541444c494e455f455850495245440000000000000000006044820152fd5b346101345760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101345761041c610b52565b73ffffffffffffffffffffffffffffffffffffffff60243591335f52600360205260405f2061044c848254610b98565b90551690815f52600360205260405f208181540190556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b34610134575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610134576040515f6001546104d781610a4b565b808452906001811690811561056d575060011461050f575b61050b836104ff81850382610a9c565b60405191829182610b0a565b0390f35b60015f9081527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6939250905b808210610553575090915081016020016104ff6104ef565b91926001816020925483858801015201910190929161053b565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660208086019190915291151560051b840190910191506104ff90506104ef565b346101345760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101345773ffffffffffffffffffffffffffffffffffffffff6105fb610b52565b165f526005602052602060405f2054604051908152f35b346101345760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101345773ffffffffffffffffffffffffffffffffffffffff61065e610b52565b165f526003602052602060405f2054604051908152f35b346101345760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610134576106e96106af610b52565b73ffffffffffffffffffffffffffffffffffffffff60243591165f52600360205260405f206106df828254610d6a565b9055600254610d6a565b600255005b34610134575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610134576020610726610bd2565b604051908152f35b34610134575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261013457602060405160ff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346101345760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610134576107c0610b52565b6107c8610b75565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602073ffffffffffffffffffffffffffffffffffffffff80604435951693845f526004835260405f208233165f52835260405f2054867fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610886575b5050845f526003835260405f2061085f878254610b98565b90551693845f526003825260405f20818154019055604051908152a3602060405160018152f35b61088f91610b98565b855f526004845260405f208333165f52845260405f20558686610847565b34610134575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610134576020600254604051908152f35b346101345760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101345761091f610b52565b73ffffffffffffffffffffffffffffffffffffffff60243591335f52600460205260405f208282165f526020528260405f205560405192835216907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b34610134575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610134576040515f80546109c881610a4b565b808452906001811690811561056d57506001146109ef5761050b836104ff81850382610a9c565b5f8080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563939250905b808210610a31575090915081016020016104ff6104ef565b919260018160209254838588010152019101909291610a19565b90600182811c92168015610a92575b6020831014610a6557565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f1691610a5a565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117610add57604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602060409481855280519182918282880152018686015e5f8582860101520116010190565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361013457565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361013457565b91908203918211610ba557565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b467f000000000000000000000000000000000000000000000000000000000000000003610c1d577f000000000000000000000000000000000000000000000000000000000000000090565b6040515f905f549181610c2f84610a4b565b9182825260208201946001811690815f14610d305750600114610cd3575b610c5992500382610a9c565b51902060405160208101917f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f835260408201527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260a08152610ccd60c082610a9c565b51902090565b505f80805290917f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5635b818310610d14575050906020610c5992820101610c4d565b6020919350806001915483858801015201910190918392610cfc565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016865250610c5992151560051b82016020019050610c4d565b91908201809211610ba55756fea264697066735822122008cfebcccf2657ece032016f82e321a1491830e81f8ad6dee452b206004b2bff64736f6c634300081a0033","sourceMap":"124:273:22:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::i;:::-;;;;;;;;;;;;1388:64:49;124:273:22;-1:-1:-1;124:273:22;;;;;-1:-1:-1;124:273:22;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::i;:::-;;;;;;;;;;;;;;;;4057:15:49;4045:27;;124:273:22;;;;4428:18:49;124:273:22;4428:18:49;124:273:22;4428:18:49;;:::i;:::-;124:273:22;;;;;;4873:6:49;124:273:22;;;;;;;;;;;;;;;;4511:449:49;124:273:22;4511:449:49;;;124:273:22;4555:165:49;124:273:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;4511:449:49;;;124:273:22;4511:449:49;;:::i;:::-;124:273:22;4472:514:49;;124:273:22;;4350:658:49;;;;124:273:22;;;;;;;;;;;;;4350:658:49;;;;;;:::i;:::-;124:273:22;4319:707:49;;124:273:22;;;;;;;;;;;;;;;;;;;;;;4292:805:49;;;124:273:22;4292:805:49;;;;;124:273:22;;4292:805:49;124:273:22;5120:30:49;;;:59;;;124:273:22;;;;5283:31:49;124:273:22;;;;;;;;;;;;-1:-1:-1;124:273:22;;;;;-1:-1:-1;124:273:22;;;;;;;5283:31:49;124:273:22;;;;;;;;;;;;;;;;;;;;;;;;5120:59:49;5154:25;;;;5120:59;;4292:805;124:273:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;2774:10:49;;124:273:22;;2764:9:49;124:273:22;;;;;2764:31:49;124:273:22;;;2764:31:49;:::i;:::-;124:273:22;;;;;;;2764:9:49;124:273:22;;;;;;;;;;;;;;;;2990:32:49;124:273:22;2774:10:49;2990:32;;124:273:22;;;;;;;;;;;;;;;;;;;;;1056:20:49;124:273:22;;;;:::i;:::-;;;;;1056:20:49;124:273:22;;;1056:20:49;;;;124:273:22;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;1056:20:49;124:273:22;;;;;;;-1:-1:-1;124:273:22;;;;;;;-1:-1:-1;124:273:22;;-1:-1:-1;124:273:22;;;;;;;;;;1056:20:49;124:273:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;124:273:22;;-1:-1:-1;124:273:22;;;;;;;;;;;;;;;;:::i;:::-;;;;1751:41:49;124:273:22;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;1337:44:49;124:273:22;;;;;;;;;;;;;;;;;;;;;;;;367:21;124:273;;:::i;:::-;;;;;;;;334:9;124:273;;;;;334:23;124:273;;;334:23;:::i;:::-;124:273;;367:21;124:273;367:21;:::i;:::-;;124:273;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;1083:31:49;124:273:22;;;;;;;;;;;;;;;;;:::i;:::-;;;:::i;:::-;3594:26:49;124:273:22;;;;;;;;;;;;;;;;;3225:10:49;;124:273:22;-1:-1:-1;124:273:22;;;;-1:-1:-1;124:273:22;;3287:28:49;3298:17;3287:28;;3283:80;;124:273:22;;;;;;3374:9:49;124:273:22;;;;;3374:25:49;124:273:22;;;3374:25:49;:::i;:::-;124:273:22;;;;;;;3374:9:49;124:273:22;;;;;;;;;;;;;;;;3594:26:49;124:273:22;;;;;;;3283:80:49;3347:16;;;:::i;:::-;124:273:22;;;;;;;;;3225:10:49;;124:273:22;-1:-1:-1;124:273:22;;;;-1:-1:-1;124:273:22;;3283:80:49;;;;124:273:22;;;;;;;;;;;;1304:26:49;124:273:22;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;2561:10:49;;124:273:22;;;;;;;;;;;-1:-1:-1;124:273:22;;;;;-1:-1:-1;124:273:22;;;;;;;;2561:10:49;2606:37;124:273:22;2561:10:49;2606:37;;124:273:22;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;124:273:22;;;;;;;-1:-1:-1;124:273:22;;-1:-1:-1;124:273:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;-1:-1:-1;124:273:22;;;;;-1:-1:-1;124:273:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;:::o;:::-;;;;;;;;;;5327:177:49;5410:13;5427:16;5410:33;5427:16;;5446:24;5327:177;:::o;5410:87::-;124:273:22;;-1:-1:-1;124:273:22;-1:-1:-1;124:273:22;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5789:22:49;;124:273:22;;;5640:295:49;;124:273:22;5672:95:49;124:273:22;;;;;;5833:14:49;124:273:22;;;;5410:13:49;124:273:22;;;;5912:4:49;124:273:22;;;;;5640:295:49;;;;;;:::i;:::-;124:273:22;5613:336:49;;5327:177;:::o;124:273:22:-;-1:-1:-1;;124:273:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;124:273:22;;;;;;;;;;;-1:-1:-1;124:273:22;;;;;;;;;;;;:::o","linkReferences":{},"immutableReferences":{"32855":[{"start":1893,"length":32}],"32869":[{"start":3029,"length":32}],"32871":[{"start":3067,"length":32}]}},"methodIdentifiers":{"DOMAIN_SEPARATOR()":"3644e515","allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decimals()":"313ce567","mint(address,uint256)":"40c10f19","name()":"06fdde03","nonces(address)":"7ecebe00","permit(address,address,uint256,uint256,uint8,bytes32,bytes32)":"d505accf","symbol()":"95d89b41","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.26+commit.8a97fa7a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountToMint\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"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\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DOMAIN_SEPARATOR\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"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\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"nonces\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"permit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"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\":\"amount\",\"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\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/test/MintableERC20.sol\":\"MintableERC20\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":44444444},\"remappings\":[\":@ensdomains/=lib/v4-periphery/lib/v4-core/node_modules/@ensdomains/\",\":@openzeppelin/=lib/v4-periphery/lib/v4-core/lib/openzeppelin-contracts/\",\":@openzeppelin/contracts/=lib/v4-periphery/lib/v4-core/lib/openzeppelin-contracts/contracts/\",\":@uniswap/v2-core/=node_modules/@uniswap/v2-core/\",\":@uniswap/v3-core/=node_modules/@uniswap/v3-core/\",\":@uniswap/v3-periphery/=lib/v3-periphery/\",\":@uniswap/v4-core/=lib/v4-periphery/lib/v4-core/\",\":@uniswap/v4-periphery/=lib/v4-periphery/\",\":ds-test/=lib/solmate/lib/ds-test/src/\",\":erc4626-tests/=lib/v4-periphery/lib/v4-core/lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hardhat/=lib/v4-periphery/lib/v4-core/node_modules/hardhat/\",\":openzeppelin-contracts/=lib/permit2/lib/openzeppelin-contracts/\",\":permit2/=lib/permit2/\",\":solmate/=lib/solmate/\",\":v3-periphery/=lib/v3-periphery/contracts/\",\":v4-core/=lib/v4-periphery/lib/v4-core/src/\",\":v4-periphery/=lib/v4-periphery/\"],\"viaIR\":true},\"sources\":{\"contracts/test/MintableERC20.sol\":{\"keccak256\":\"0x22a56dd3312d678a1c3d8ea1620111ff6dc9ace0ff757881daada97f441b00e6\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://c99516a8b3b4bf7559c636939491baee3d7f8838f381435982674bc35da76f83\",\"dweb:/ipfs/Qmdo1YPkuUHrhJYgk5E5NQPhMYk6xyjGLTkb7v4ScnYGyX\"]},\"lib/solmate/src/tokens/ERC20.sol\":{\"keccak256\":\"0xcdfd8db76b2a3415620e4d18cc5545f3d50de792dbf2c3dd5adb40cbe6f94b10\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57b3ab70cde374af1cf2c9888636e8de6cf660f087b1c9abd805e9271e19fa35\",\"dweb:/ipfs/QmNrLDBAHYFjpjSd12jerm1AdBkDqEYUUaXgnT854BUZ97\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.26+commit.8a97fa7a"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"uint256","name":"amountToMint","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"spender","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Approval","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Transfer","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"","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":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"mint"},{"inputs":[],"stateMutability":"view","type":"function","name":"name","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"permit"},{"inputs":[],"stateMutability":"view","type":"function","name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","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":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@ensdomains/=lib/v4-periphery/lib/v4-core/node_modules/@ensdomains/","@openzeppelin/=lib/v4-periphery/lib/v4-core/lib/openzeppelin-contracts/","@openzeppelin/contracts/=lib/v4-periphery/lib/v4-core/lib/openzeppelin-contracts/contracts/","@uniswap/v2-core/=node_modules/@uniswap/v2-core/","@uniswap/v3-core/=node_modules/@uniswap/v3-core/","@uniswap/v3-periphery/=lib/v3-periphery/","@uniswap/v4-core/=lib/v4-periphery/lib/v4-core/","@uniswap/v4-periphery/=lib/v4-periphery/","ds-test/=lib/solmate/lib/ds-test/src/","erc4626-tests/=lib/v4-periphery/lib/v4-core/lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hardhat/=lib/v4-periphery/lib/v4-core/node_modules/hardhat/","openzeppelin-contracts/=lib/permit2/lib/openzeppelin-contracts/","permit2/=lib/permit2/","solmate/=lib/solmate/","v3-periphery/=lib/v3-periphery/contracts/","v4-core/=lib/v4-periphery/lib/v4-core/src/","v4-periphery/=lib/v4-periphery/"],"optimizer":{"enabled":true,"runs":44444444},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"contracts/test/MintableERC20.sol":"MintableERC20"},"evmVersion":"cancun","libraries":{},"viaIR":true},"sources":{"contracts/test/MintableERC20.sol":{"keccak256":"0x22a56dd3312d678a1c3d8ea1620111ff6dc9ace0ff757881daada97f441b00e6","urls":["bzz-raw://c99516a8b3b4bf7559c636939491baee3d7f8838f381435982674bc35da76f83","dweb:/ipfs/Qmdo1YPkuUHrhJYgk5E5NQPhMYk6xyjGLTkb7v4ScnYGyX"],"license":"GPL-3.0-or-later"},"lib/solmate/src/tokens/ERC20.sol":{"keccak256":"0xcdfd8db76b2a3415620e4d18cc5545f3d50de792dbf2c3dd5adb40cbe6f94b10","urls":["bzz-raw://57b3ab70cde374af1cf2c9888636e8de6cf660f087b1c9abd805e9271e19fa35","dweb:/ipfs/QmNrLDBAHYFjpjSd12jerm1AdBkDqEYUUaXgnT854BUZ97"],"license":"AGPL-3.0-only"}},"version":1},"id":22}