UNPKG

@devasher/kuru-sdk

Version:

Ethers v6 SDK to interact with Kuru (forked from @kuru-labs/kuru-sdk)

87 lines (86 loc) 11 kB
{ "_format": "hh-sol-artifact-1", "contractName": "KuruUtils", "sourceName": "contracts/periphery/KuruUtils.sol", "abi": [ { "inputs": [ { "internalType": "address[]", "name": "route", "type": "address[]" }, { "internalType": "bool[]", "name": "isBuy", "type": "bool[]" } ], "name": "calculatePriceOverRoute", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "tokens", "type": "address[]" }, { "internalType": "address", "name": "holder", "type": "address" } ], "name": "getTokensInfo", "outputs": [ { "components": [ { "internalType": "string", "name": "name", "type": "string" }, { "internalType": "string", "name": "symbol", "type": "string" }, { "internalType": "uint256", "name": "balance", "type": "uint256" }, { "internalType": "uint8", "name": "decimals", "type": "uint8" }, { "internalType": "uint256", "name": "totalSupply", "type": "uint256" } ], "internalType": "struct KuruUtils.TokenInfo[]", "name": "", "type": "tuple[]" } ], "stateMutability": "view", "type": "function" } ], "bytecode": "0x60808060405234601557610800908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80630964d85b146103da5763f7f04a8a1461002f575f80fd5b3461022b57604036600319011261022b576004356001600160401b03811161022b5761005f903690600401610668565b6024356001600160a01b0381169081900361022b5790805161008081610651565b9061008e6040519283610630565b80825261009d601f1991610651565b015f5b81811061039d5750505f926020935b8351811015610301576001600160a01b036100ca828661071c565b5116906040516100da8782610630565b5f81526040516100ea8882610630565b5f8082526040516306fdde0360e01b81528190819081816004818b5afa5f91816102e5575b506102dd575b506040516395d89b4160e01b81525f816004818b5afa5f91816102b9575b506102b1575b506040516370a0823160e01b8152600481018990528b816024818b5afa5f9181610282575b5061027a575b5060405163313ce56760e01b8152968b908189600481845afa80995f9161023e575b50600499610236575b506040516318160ddd60e01b815298899182905afa805f91610202575b600198506101f9575b5060ff9293604051956101c787610601565b86528b860152604085015216606083015260808201526101e7828661071c565b526101f2818561071c565b50016100af565b925060ff6101b5565b90508b88813d831161022f575b6102198183610630565b8101031261022b5760019751906101ac565b5f80fd5b503d61020f565b93505f61018f565b8381939492503d8311610273575b6102568183610630565b8101031261022b57519060ff8216820361022b578c916004610186565b503d61024c565b90505f610164565b9091508c81813d83116102aa575b61029a8183610630565b8101031261022b5751905f61015e565b503d610290565b93505f610139565b6102d69192503d805f833e6102ce8183610630565b81019061075a565b905f610133565b94505f610115565b6102fa9192503d805f833e6102ce8183610630565b905f61010f565b6040805186815284518188018190525f92600582901b8301810191878a01918a9085015b8287106103325785850386f35b909192938280600192603f19898203018552875190608080610370610360855160a0865260a08601906106f7565b86860151858203888701526106f7565b936040810151604085015260ff606082015116606085015201519101529601920196019592919092610325565b6020906040959495516103af81610601565b606081526060838201525f60408201525f60608201525f6080820152828286010152019392936100a0565b3461022b57604036600319011261022b576004356001600160401b03811161022b5761040a903690600401610668565b6024356001600160401b03811161022b573660238201121561022b57806004013561043481610651565b916104426040519384610630565b8183526024602084019260051b8201019036821161022b57602401915b8183106105e857505050670de0b6b3a7640000915f925b81518410156105dd57610489848461071c565b51156105405760049060406001600160a01b036104a6878661071c565b5116815193848092630b4de8b760e41b82525afa918215610535575f92610503575b508181029181830414901517156104ef57670de0b6b3a764000060019104935b0192610476565b634e487b7160e01b5f52601160045260245ffd5b61052591925060403d811161052e575b61051d8183610630565b810190610744565b905090856104c8565b503d610513565b6040513d5f823e3d90fd5b600460406001600160a01b03610556878661071c565b5116815192838092630b4de8b760e41b82525afa908115610535575f916105be575b50670de0b6b3a7640000820291808304670de0b6b3a764000014901517156104ef5780156105aa5760019104936104e8565b634e487b7160e01b5f52601260045260245ffd5b6105d6915060403d811161052e5761051d8183610630565b5085610578565b602090604051908152f35b8235801515810361022b5781526020928301920161045f565b60a081019081106001600160401b0382111761061c57604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b0382111761061c57604052565b6001600160401b03811161061c5760051b60200190565b9080601f8301121561022b5781359061068082610651565b9261068e6040519485610630565b82845260208085019360051b82010191821161022b57602001915b8183106106b65750505090565b82356001600160a01b038116810361022b578152602092830192016106a9565b5f5b8381106106e75750505f910152565b81810151838201526020016106d8565b90602091610710815180928185528580860191016106d6565b601f01601f1916010190565b80518210156107305760209160051b010190565b634e487b7160e01b5f52603260045260245ffd5b919082604091031261022b576020825192015190565b60208183031261022b578051906001600160401b03821161022b570181601f8201121561022b5780516001600160401b03811161061c57604051926107a9601f8301601f191660200185610630565b8184526020828401011161022b576107c791602080850191016106d6565b9056fea26469706673582212203c425e7c1ab0f37566996843a88ec7ca67b8b098166553b7cd44c0abb447a64964736f6c634300081a0033", "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c80630964d85b146103da5763f7f04a8a1461002f575f80fd5b3461022b57604036600319011261022b576004356001600160401b03811161022b5761005f903690600401610668565b6024356001600160a01b0381169081900361022b5790805161008081610651565b9061008e6040519283610630565b80825261009d601f1991610651565b015f5b81811061039d5750505f926020935b8351811015610301576001600160a01b036100ca828661071c565b5116906040516100da8782610630565b5f81526040516100ea8882610630565b5f8082526040516306fdde0360e01b81528190819081816004818b5afa5f91816102e5575b506102dd575b506040516395d89b4160e01b81525f816004818b5afa5f91816102b9575b506102b1575b506040516370a0823160e01b8152600481018990528b816024818b5afa5f9181610282575b5061027a575b5060405163313ce56760e01b8152968b908189600481845afa80995f9161023e575b50600499610236575b506040516318160ddd60e01b815298899182905afa805f91610202575b600198506101f9575b5060ff9293604051956101c787610601565b86528b860152604085015216606083015260808201526101e7828661071c565b526101f2818561071c565b50016100af565b925060ff6101b5565b90508b88813d831161022f575b6102198183610630565b8101031261022b5760019751906101ac565b5f80fd5b503d61020f565b93505f61018f565b8381939492503d8311610273575b6102568183610630565b8101031261022b57519060ff8216820361022b578c916004610186565b503d61024c565b90505f610164565b9091508c81813d83116102aa575b61029a8183610630565b8101031261022b5751905f61015e565b503d610290565b93505f610139565b6102d69192503d805f833e6102ce8183610630565b81019061075a565b905f610133565b94505f610115565b6102fa9192503d805f833e6102ce8183610630565b905f61010f565b6040805186815284518188018190525f92600582901b8301810191878a01918a9085015b8287106103325785850386f35b909192938280600192603f19898203018552875190608080610370610360855160a0865260a08601906106f7565b86860151858203888701526106f7565b936040810151604085015260ff606082015116606085015201519101529601920196019592919092610325565b6020906040959495516103af81610601565b606081526060838201525f60408201525f60608201525f6080820152828286010152019392936100a0565b3461022b57604036600319011261022b576004356001600160401b03811161022b5761040a903690600401610668565b6024356001600160401b03811161022b573660238201121561022b57806004013561043481610651565b916104426040519384610630565b8183526024602084019260051b8201019036821161022b57602401915b8183106105e857505050670de0b6b3a7640000915f925b81518410156105dd57610489848461071c565b51156105405760049060406001600160a01b036104a6878661071c565b5116815193848092630b4de8b760e41b82525afa918215610535575f92610503575b508181029181830414901517156104ef57670de0b6b3a764000060019104935b0192610476565b634e487b7160e01b5f52601160045260245ffd5b61052591925060403d811161052e575b61051d8183610630565b810190610744565b905090856104c8565b503d610513565b6040513d5f823e3d90fd5b600460406001600160a01b03610556878661071c565b5116815192838092630b4de8b760e41b82525afa908115610535575f916105be575b50670de0b6b3a7640000820291808304670de0b6b3a764000014901517156104ef5780156105aa5760019104936104e8565b634e487b7160e01b5f52601260045260245ffd5b6105d6915060403d811161052e5761051d8183610630565b5085610578565b602090604051908152f35b8235801515810361022b5781526020928301920161045f565b60a081019081106001600160401b0382111761061c57604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b0382111761061c57604052565b6001600160401b03811161061c5760051b60200190565b9080601f8301121561022b5781359061068082610651565b9261068e6040519485610630565b82845260208085019360051b82010191821161022b57602001915b8183106106b65750505090565b82356001600160a01b038116810361022b578152602092830192016106a9565b5f5b8381106106e75750505f910152565b81810151838201526020016106d8565b90602091610710815180928185528580860191016106d6565b601f01601f1916010190565b80518210156107305760209160051b010190565b634e487b7160e01b5f52603260045260245ffd5b919082604091031261022b576020825192015190565b60208183031261022b578051906001600160401b03821161022b570181601f8201121561022b5780516001600160401b03811161061c57604051926107a9601f8301601f191660200185610630565b8184526020828401011161022b576107c791602080850191016106d6565b9056fea26469706673582212203c425e7c1ab0f37566996843a88ec7ca67b8b098166553b7cd44c0abb447a64964736f6c634300081a0033", "linkReferences": {}, "deployedLinkReferences": {} }