@augmentedfinance/protocol-v1
Version:
Augmented Protocol smart contracts
426 lines • 45.4 kB
JavaScript
;
/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */
Object.defineProperty(exports, "__esModule", { value: true });
exports.UniswapRepayAdapterFactory = void 0;
const contracts_1 = require("@ethersproject/contracts");
class UniswapRepayAdapterFactory extends contracts_1.ContractFactory {
constructor(signer) {
super(_abi, _bytecode, signer);
}
deploy(addressesProvider, uniswapRouter, overrides) {
return super.deploy(addressesProvider, uniswapRouter, overrides || {});
}
getDeployTransaction(addressesProvider, uniswapRouter, overrides) {
return super.getDeployTransaction(addressesProvider, uniswapRouter, overrides || {});
}
attach(address) {
return super.attach(address);
}
connect(signer) {
return super.connect(signer);
}
static connect(address, signerOrProvider) {
return new contracts_1.Contract(address, _abi, signerOrProvider);
}
}
exports.UniswapRepayAdapterFactory = UniswapRepayAdapterFactory;
const _abi = [
{
inputs: [
{
internalType: "contract IFlashLoanAddressProvider",
name: "addressesProvider",
type: "address",
},
{
internalType: "contract IUniswapV2Router02ForAdapter",
name: "uniswapRouter",
type: "address",
},
],
stateMutability: "nonpayable",
type: "constructor",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "fromAsset",
type: "address",
},
{
indexed: false,
internalType: "address",
name: "toAsset",
type: "address",
},
{
indexed: false,
internalType: "uint256",
name: "fromAmount",
type: "uint256",
},
{
indexed: false,
internalType: "uint256",
name: "receivedAmount",
type: "uint256",
},
],
name: "Swapped",
type: "event",
},
{
inputs: [],
name: "ADDRESSES_PROVIDER",
outputs: [
{
internalType: "contract IFlashLoanAddressProvider",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "ADDRESS_PROVIDER",
outputs: [
{
internalType: "contract IFlashLoanAddressProvider",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "FLASHLOAN_PREMIUM_TOTAL",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "LENDING_POOL",
outputs: [
{
internalType: "contract ILendingPool",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "MAX_SLIPPAGE_PERCENT",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "ORACLE",
outputs: [
{
internalType: "contract IPriceOracleGetter",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "UNISWAP_ROUTER",
outputs: [
{
internalType: "contract IUniswapV2Router02ForAdapter",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "USD_ADDRESS",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "WETH_ADDRESS",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address[]",
name: "assets",
type: "address[]",
},
{
internalType: "uint256[]",
name: "amounts",
type: "uint256[]",
},
{
internalType: "uint256[]",
name: "premiums",
type: "uint256[]",
},
{
internalType: "address",
name: "initiator",
type: "address",
},
{
internalType: "bytes",
name: "params",
type: "bytes",
},
],
name: "executeOperation",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "amountOut",
type: "uint256",
},
{
internalType: "address",
name: "reserveIn",
type: "address",
},
{
internalType: "address",
name: "reserveOut",
type: "address",
},
],
name: "getAmountsIn",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "address[]",
name: "",
type: "address[]",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "amountIn",
type: "uint256",
},
{
internalType: "address",
name: "reserveIn",
type: "address",
},
{
internalType: "address",
name: "reserveOut",
type: "address",
},
],
name: "getAmountsOut",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "address[]",
name: "",
type: "address[]",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "collateralAsset",
type: "address",
},
{
internalType: "address",
name: "debtAsset",
type: "address",
},
{
internalType: "uint256",
name: "collateralAmount",
type: "uint256",
},
{
internalType: "uint256",
name: "debtRepayAmount",
type: "uint256",
},
{
internalType: "uint256",
name: "debtRateMode",
type: "uint256",
},
{
components: [
{
internalType: "uint256",
name: "amount",
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",
},
],
internalType: "struct IBaseUniswapAdapter.PermitSignature",
name: "permitSignature",
type: "tuple",
},
{
internalType: "bool",
name: "useEthPath",
type: "bool",
},
],
name: "swapAndRepay",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "token",
type: "address",
},
{
internalType: "address",
name: "to",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "sweepToken",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
];
const _bytecode = "0x610120604052610bb860c0523480156200001857600080fd5b50604051620042dc380380620042dc8339810160408190526200003b9162000319565b818181806001600160a01b03166080816001600160a01b031660601b81525050806001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156200009557600080fd5b505afa158015620000aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000d09190620002f3565b6001600160601b0319606091821b811660a0529083901b16610100525060408051630261bf8b60e01b815290516000916001600160a01b03851691630261bf8b91600480820192602092909190829003018186803b1580156200013257600080fd5b505afa15801562000147573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200016d9190620002f3565b6001600160a01b031663fe65acfe6040518163ffffffff1660e01b815260040160206040518083038186803b158015620001a657600080fd5b505afa158015620001bb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001e19190620002f3565b604051635c9fcd8560e11b8152630800000060048201529091506001600160a01b0382169063b93f9b0a9060240160206040518083038186803b1580156200022857600080fd5b505afa1580156200023d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002639190620002f3565b6001600160a01b031663affa88176040518163ffffffff1660e01b815260040160206040518083038186803b1580156200029c57600080fd5b505afa158015620002b1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002d79190620002f3565b60601b6001600160601b03191660e05250620003709350505050565b60006020828403121562000305578081fd5b8151620003128162000357565b9392505050565b600080604083850312156200032c578081fd5b8251620003398162000357565b60208401519092506200034c8162000357565b809150509250929050565b6001600160a01b03811681146200036d57600080fd5b50565b60805160601c60a05160601c60c05160e05160601c6101005160601c613e35620004a76000396000818161027b015281816115a30152818161169601528181611fe601528181612403015281816124380152818161261a0152818161306a015261315a01526000818160f4015281816114410152818161147e015281816114fc01528181611e83015281816124ca01528181612f0801528181612f450152612fc301526000818161019b015261231a01526000818161021d015281816102b401528181610438015281816108680152818161089d015281816108f50152818161098401528181610c7f01528181610cb401528181610d8b01528181610fed0152818161101801528181611d7c015281816121670152612ad20152600081816101350152818161017401526103500152613e356000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063920f5c841161008c578063baf7fa9911610066578063baf7fa991461023f578063cdf58cd614610263578063d826492014610276578063e68135631461029d57600080fd5b8063920f5c84146101da5780639d1211bf146101fd578063b4dcfc771461021857600080fd5b80631848effa116100c85780631848effa1461016f57806332e4b2861461019657806338013f02146101bd57806364aff9ec146101c557600080fd5b8063040141e5146100ef5780630542975c14610133578063074b2e4314610159575b600080fd5b6101167f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b7f0000000000000000000000000000000000000000000000000000000000000000610116565b6101616102b0565b60405190815260200161012a565b6101167f000000000000000000000000000000000000000000000000000000000000000081565b6101617f000000000000000000000000000000000000000000000000000000000000000081565b61011661034c565b6101d86101d33660046135cf565b6103e4565b005b6101ed6101e8366004613694565b61042b565b604051901515815260200161012a565b6101167310f7fc1f91ba351f9c629c5947ad69bd03c05b9681565b6101167f000000000000000000000000000000000000000000000000000000000000000081565b61025261024d3660046139f2565b6105a6565b60405161012a959493929190613b36565b6102526102713660046139f2565b6105e6565b6101167f000000000000000000000000000000000000000000000000000000000000000081565b6101d86102ab36600461360f565b6105fb565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f8aaa0e96040518163ffffffff1660e01b815260040160206040518083038186803b15801561030b57600080fd5b505afa15801561031f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061034391906139b8565b61ffff16905090565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b1580156103a757600080fd5b505afa1580156103bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103df919061352a565b905090565b6103ec610980565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14156104205761041b8282610a40565b505050565b61041b838383610b59565b6000336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146104aa5760405162461bcd60e51b815260206004820152601b60248201527f43414c4c45525f4d5553545f42455f4c454e44494e475f504f4f4c000000000060448201526064015b60405180910390fd5b60006104eb84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610bbc92505050565b905061059581600001518c8c600081811061051657634e487b7160e01b600052603260045260246000fd5b905060200201602081019061052b919061350e565b8b8b600081811061054c57634e487b7160e01b600052603260045260246000fd5b90506020020135846020015185604001518a8d8d600081811061057f57634e487b7160e01b600052603260045260246000fd5b9050602002013588606001518960800151610c63565b5060019a9950505050505050505050565b600080600080606060006105bb88888b61105f565b8051602082015160408301516060840151608090940151929d919c509a509198509650945050505050565b600080600080606060006105bb88888b61191c565b600061060688611cf5565b9050600061061388611cf5565b90506000600186600281111561063957634e487b7160e01b600052602160045260246000fd5b600281111561065857634e487b7160e01b600052602160045260246000fd5b146106685781610120015161066f565b8161010001515b6040516370a0823160e01b81523360048201529091506000906001600160a01b038316906370a082319060240160206040518083038186803b1580156106b457600080fd5b505afa1580156106c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ec91906139da565b90506000818911156106fe5781610700565b885b90508a6001600160a01b03168c6001600160a01b03161461083d57898982101561073b576107388a6107328385611dfd565b90611e09565b90505b60006107498e8e858b611e15565b9050818160008151811061076d57634e487b7160e01b600052603260045260246000fd5b602002602001015111156107b75760405162461bcd60e51b81526020600482015260116024820152700e6d8d2e0e0c2ceca40e8dede40d0d2ced607b1b60448201526064016104a1565b6108008e8860e0015133846000815181106107e257634e487b7160e01b600052603260045260246000fd5b60200260200101518d8036038101906107fb9190613855565b61207b565b6108358e8e8360008151811061082657634e487b7160e01b600052603260045260246000fd5b6020026020010151868c6121eb565b505050610859565b6108598c8660e0015133848b8036038101906107fb9190613855565b61088e6001600160a01b038c167f000000000000000000000000000000000000000000000000000000000000000060006127bd565b6108c26001600160a01b038c167f0000000000000000000000000000000000000000000000000000000000000000836127bd565b60405163573ade8160e01b81526001600160a01b038c8116600483015260248201839052604482018a90523360648301527f0000000000000000000000000000000000000000000000000000000000000000169063573ade8190608401602060405180830381600087803b15801561093957600080fd5b505af115801561094d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097191906139da565b50505050505050505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663fe65acfe6040518163ffffffff1660e01b815260040160206040518083038186803b1580156109db57600080fd5b505afa1580156109ef573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a13919061352a565b9050610a3d8133610100604051806040016040528060028152602001610e0d60f21b8152506128e1565b50565b80471015610a905760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016104a1565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114610add576040519150601f19603f3d011682016040523d82523d6000602084013e610ae2565b606091505b505090508061041b5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d6179206861766520726576657274656400000000000060648201526084016104a1565b6040516001600160a01b03831660248201526044810182905261041b90849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152612912565b610bc46133c2565b60008060008060008060008060008a806020019051810190610be69190613546565b9850985098509850985098509850985098506040518060a001604052808a6001600160a01b031681526020018981526020018881526020016040518060a001604052808981526020018881526020018760ff1681526020018681526020018581525081526020018215158152509950505050505050505050919050565b6000610c6e8a611cf5565b9050610ca56001600160a01b038a167f000000000000000000000000000000000000000000000000000000000000000060006127bd565b610cd96001600160a01b038a167f00000000000000000000000000000000000000000000000000000000000000008a6127bd565b6040516370a0823160e01b81523060048201526000906001600160a01b038b16906370a082319060240160206040518083038186803b158015610d1b57600080fd5b505afa158015610d2f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d5391906139da565b60405163573ade8160e01b81526001600160a01b038c81166004830152602482018c9052604482018a905288811660648301529192507f00000000000000000000000000000000000000000000000000000000000000009091169063573ade8190608401602060405180830381600087803b158015610dd157600080fd5b505af1158015610de5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e0991906139da565b506040516370a0823160e01b8152306004820152610e8c906001600160a01b038c16906370a082319060240160206040518083038186803b158015610e4d57600080fd5b505afa158015610e61573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e8591906139da565b8290612a98565b9050896001600160a01b03168b6001600160a01b031614610fc2578789821015610ec157610ebe8a6107328385611dfd565b90505b6000610ecd8388612aa4565b90506000610edd8e8e8489611e15565b90508281600081518110610f0157634e487b7160e01b600052603260045260246000fd5b60200260200101511115610f4b5760405162461bcd60e51b81526020600482015260116024820152700e6d8d2e0e0c2ceca40e8dede40d0d2ced607b1b60448201526064016104a1565b610f848e8660e001518b84600081518110610f7657634e487b7160e01b600052603260045260246000fd5b60200260200101518b61207b565b610fb98e8e83600081518110610faa57634e487b7160e01b600052603260045260246000fd5b6020026020010151858a6121eb565b50505050610fde565b60e0820151610fde908c9088610fd8858a612aa4565b8861207b565b6110136001600160a01b038b167f000000000000000000000000000000000000000000000000000000000000000060006127bd565b6110527f00000000000000000000000000000000000000000000000000000000000000006110418b88612aa4565b6001600160a01b038d1691906127bd565b5050505050505050505050565b6110916040518060a0016040528060008152602001600081526020016000815260200160008152602001606081525090565b60006110a961109e612ab0565b849061ffff16612ba0565b905060006110b561034c565b60408051606081019182905263b3596f0760e01b9091527310f7fc1f91ba351f9c629c5947ad69bd03c05b966064820152909150600090806001600160a01b03841663b3596f076084830160206040518083038186803b15801561111857600080fd5b505afa15801561112c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115091906139da565b815260405163b3596f0760e01b81526001600160a01b038a8116600483015260209092019185169063b3596f079060240160206040518083038186803b15801561119957600080fd5b505afa1580156111ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111d191906139da565b81526020016111df89612c95565b815250905061120860405180606001604052806000815260200160008152602001600081525090565b866001600160a01b0316886001600160a01b031614156112db575060408051600180825281830190925282916000919060208083019080368337019050509050888160008151811061126a57634e487b7160e01b600052603260045260246000fd5b6001600160a01b039092166020928302919091018201526040805160a081019091528681529081016112a88961073289670de0b6b3a7640000611dfd565b81526020016112b7858a612d11565b81526020016112c68588612d11565b81526020018281525095505050505050611915565b6040805160608101825283518152905163b3596f0760e01b81526001600160a01b03898116600483015260208301919086169063b3596f079060240160206040518083038186803b15801561132f57600080fd5b505afa158015611343573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061136791906139da565b815260200161137589612c95565b9052604080516002808252606082018352929350600092909160208301908036833701905050905088816000815181106113bf57634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b031681525050878160018151811061140157634e487b7160e01b600052603260045260246000fd5b6001600160a01b039290921660209283029190910182015260408051600380825260808201909252606092839260009291820184803683370190505090507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168c6001600160a01b0316141580156114b357507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168b6001600160a01b031614155b1561165a578b816000815181106114da57634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000008160018151811061153c57634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250508a8160028151811061157e57634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201015260405163d06ca61f60e01b81527f00000000000000000000000000000000000000000000000000000000000000009091169063d06ca61f906115dc908b908590600401613ae1565b60006040518083038186803b1580156115f457600080fd5b505afa92505050801561162957506040513d6000823e601f3d908101601f191682016040526116269190810190613791565b60015b6116535760408051600380825260808201909252906020820160608036833701905050915061167c565b915061167c565b6040805160038082526080820190925290602082016060803683370190505091505b60405163d06ca61f60e01b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063d06ca61f906116cd908c908990600401613ae1565b60006040518083038186803b1580156116e557600080fd5b505afa92505050801561171a57506040513d6000823e601f3d908101601f191682016040526117179190810190613791565b60015b61176e5760408051600280825260608201835290916020830190803683370190505093508260028151811061175f57634e487b7160e01b600052603260045260246000fd5b60200260200101519050611824565b8094508460018151811061179257634e487b7160e01b600052603260045260246000fd5b6020026020010151846002815181106117bb57634e487b7160e01b600052603260045260246000fd5b6020026020010151116117f657846001815181106117e957634e487b7160e01b600052603260045260246000fd5b6020026020010151611820565b8360028151811061181757634e487b7160e01b600052603260045260246000fd5b60200260200101515b9150505b60006118706118448960400151600a61183d9190613c57565b8490611dfd565b6107328960400151600a6118589190613c57565b61186a8e670de0b6b3a7640000611dfd565b90611dfd565b90506040518060a001604052808381526020018281526020016118938a8f612d11565b81526020016118a28985612d11565b815260200183156118e857866001815181106118ce57634e487b7160e01b600052603260045260246000fd5b602002602001015184146118e25784611906565b87611906565b60408051600280825260608201835290916020830190803683375050505b90529a50505050505050505050505b9392505050565b61194e6040518060a0016040528060008152602001600081526020016000815260200160008152602001606081525090565b600061195861034c565b60408051606081019182905263b3596f0760e01b9091527310f7fc1f91ba351f9c629c5947ad69bd03c05b966064820152909150600090806001600160a01b03841663b3596f076084830160206040518083038186803b1580156119bb57600080fd5b505afa1580156119cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119f391906139da565b815260405163b3596f0760e01b81526001600160a01b03898116600483015260209092019185169063b3596f079060240160206040518083038186803b158015611a3c57600080fd5b505afa158015611a50573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a7491906139da565b8152602001611a8288612c95565b8152509050611aab60405180606001604052806000815260200160008152602001600081525090565b6000611ab5612ab0565b9050866001600160a01b0316886001600160a01b03161415611b9e578291506000611ae48761ffff8416612d4b565b60408051600180825281830190925291925060009190602080830190803683370190505090508981600081518110611b2c57634e487b7160e01b600052603260045260246000fd5b6001600160a01b039092166020928302919091018201526040805160a08101909152838152908101611b6a846107328c670de0b6b3a7640000611dfd565b8152602001611b798785612d11565b8152602001611b88878b612d11565b8152602001828152509650505050505050611915565b6040805160608101825284518152905163b3596f0760e01b81526001600160a01b03898116600483015260208301919087169063b3596f079060240160206040518083038186803b158015611bf257600080fd5b505afa158015611c06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c2a91906139da565b8152602001611c3889612c95565b90529150600080611c4a8a8a8a612e3c565b915091506000611c8f8461ffff1684600081518110611c7957634e487b7160e01b600052603260045260246000fd5b6020026020010151612d4b90919063ffffffff16565b90506000611caa6118448760400151600a61183d9190613c57565b90506040518060a00160405280838152602001828152602001611ccd8985612d11565b8152602001611cdc888d612d11565b81526020019390935250909a9950505050505050505050565b604080516101a08101825260006101808201818152825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081018290526101008101829052610120810182905261014081018290526101608101919091526040516335ea6a7560e01b81526001600160a01b0383811660048301527f000000000000000000000000000000000000000000000000000000000000000016906335ea6a75906024016101806040518083038186803b158015611dbf57600080fd5b505afa158015611dd3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611df791906138cc565b92915050565b60006119158284613d29565b60006119158284613c00565b6060808215611f2a576040805160038082526080820190925290602082016060803683370190505090508581600081518110611e6157634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110611ec357634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250508481600281518110611f0557634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b031681525050611fcf565b60408051600280825260608201835290916020830190803683370190505090508581600081518110611f6c57634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250508481600181518110611fae57634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250505b6040516307c0329d60e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631f00ca749061201d9087908590600401613ae1565b60006040518083038186803b15801561203557600080fd5b505afa158015612049573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526120719190810190613791565b9695505050505050565b6120848161329a565b15612126578051602082015160408084015160608501516080860151925163d505accf60e01b81526001600160a01b0389811660048301523060248301526044820196909652606481019490945260ff909116608484015260a483015260c48201529085169063d505accf9060e401600060405180830381600087803b15801561210d57600080fd5b505af1158015612121573d6000803e3d6000fd5b505050505b61213b6001600160a01b0385168430856132bf565b604051631a4ca37b60e21b81526001600160a01b038681166004830152602482018490523060448301527f000000000000000000000000000000000000000000000000000000000000000016906369328dec90606401602060405180830381600087803b1580156121ab57600080fd5b505af11580156121bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121e391906139da565b505050505050565b6000806121f787612c95565b9050600061220487612c95565b9050600061221061034c565b60405163b3596f0760e01b81526001600160a01b038b8116600483015291925060009183169063b3596f079060240160206040518083038186803b15801561225757600080fd5b505afa15801561226b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061228f91906139da565b60405163b3596f0760e01b81526001600160a01b038b8116600483015291925060009184169063b3596f079060240160206040518083038186803b1580156122d657600080fd5b505afa1580156122ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230e91906139da565b9050600061239761235a7f000000000000000000000000000000000000000000000000000000000000000061234560016064613cff565b612350906064613cff565b61ffff1690612aa4565b61239161237261236b89600a613c57565b8790611dfd565b61073261238a6123838c600a613c57565b8890611dfd565b8e90611dfd565b90612ba0565b9050808a106123f45760405162461bcd60e51b815260206004820152602360248201527f6d6178416d6f756e74546f5377617020657863656564206d617820736c69707060448201526261676560e81b60648201526084016104a1565b6124296001600160a01b038d167f000000000000000000000000000000000000000000000000000000000000000060006127bd565b61245d6001600160a01b038d167f00000000000000000000000000000000000000000000000000000000000000008c6127bd565b60608815612571576040805160038082526080820190925290602082016060803683370190505090508c816000815181106124a857634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000008160018151811061250a57634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250508b8160028151811061254c57634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b031681525050612616565b60408051600280825260608201835290916020830190803683370190505090508c816000815181106125b357634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250508b816001815181106125f557634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250505b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316638803dbee8c8e8530426040518663ffffffff1660e01b815260040161266c959493929190613afa565b600060405180830381600087803b15801561268657600080fd5b505af115801561269a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526126c29190810190613791565b90507fa078c4190abe07940190effc1846be0ccf03ad6007bc9e93f9697d0b460befbb8e8e8360008151811061270857634e487b7160e01b600052603260045260246000fd5b6020026020010151846001865161271f9190613d48565b8151811061273d57634e487b7160e01b600052603260045260246000fd5b602002602001015160405161277994939291906001600160a01b0394851681529290931660208301526040820152606081019190915260800190565b60405180910390a1806000815181106127a257634e487b7160e01b600052603260045260246000fd5b60200260200101519850505050505050505095945050505050565b8015806128465750604051636eb1769f60e11b81523060048201526001600160a01b03838116602483015284169063dd62ed3e9060440160206040518083038186803b15801561280c57600080fd5b505afa158015612820573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061284491906139da565b155b6128b15760405162461bcd60e51b815260206004820152603660248201527f5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f60448201527520746f206e6f6e2d7a65726f20616c6c6f77616e636560501b60648201526084016104a1565b6040516001600160a01b03831660248201526044810182905261041b90849063095ea7b360e01b90606401610b85565b6128ec8484846132f7565b819061290b5760405162461bcd60e51b81526004016104a19190613aae565b5050505050565b6001600160a01b0382163b6129695760405162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e74726163740060448201526064016104a1565b600080836001600160a01b0316836040516129849190613a92565b6000604051808303816000865af19150503d80600081146129c1576040519150601f19603f3d011682016040523d82523d6000602084013e6129c6565b606091505b509150915081612a185760405162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656460448201526064016104a1565b805115612a925780806020019051810190612a339190613839565b612a925760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016104a1565b50505050565b60006119158284613d48565b60006119158284613bc7565b60006103df612ac160016064613cff565b612acc906064613cff565b61ffff167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f8aaa0e96040518163ffffffff1660e01b815260040160206040518083038186803b158015612b2957600080fd5b505afa158015612b3d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b6191906139b8565b61ffff166040518060400160405280601981526020017f494e56414c49445f464c4153484c4f414e5f5052454d49554d00000000000000815250613312565b6000821580612bad575081155b15612bba57506000611df7565b816002612bc960016064613cff565b612bd4906064613cff565b612bde9190613bdf565b612bee9061ffff16600019613d48565b612bf89190613c00565b83111560405180604001604052806002815260200161068760f31b81525090612c345760405162461bcd60e51b81526004016104a19190613aae565b50612c4160016064613cff565b612c4c906064613cff565b61ffff166002612c5e60016064613cff565b612c69906064613cff565b612c739190613bdf565b61ffff16612c818486613d29565b612c8b9190613bc7565b6119159190613c00565b6000816001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b158015612cd057600080fd5b505afa158015612ce4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d089190613a33565b60ff1692915050565b6000611915670de0b6b3a7640000610732856000015161186a8760400151600a612d3b9190613c57565b6020890151610732908990611dfd565b604080518082019091526002815261035360f41b602082015260009082612d855760405162461bcd60e51b81526004016104a19190613aae565b50600182811c90612d97906064613cff565b612da2906064613cff565b61ffff16612db282600019613d48565b612dbc9190613c00565b84111560405180604001604052806002815260200161068760f31b81525090612df85760405162461bcd60e51b81526004016104a19190613aae565b508281612e0760016064613cff565b612e12906064613cff565b612e209061ffff1687613d29565b612e2a9190613bc7565b612e349190613c00565b949350505050565b604080516002808252606082810190935282916000918160200160208202803683370190505090508581600081518110612e8657634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250508481600181518110612ec857634e487b7160e01b600052603260045260246000fd5b6001600160a01b039290921660209283029190910182015260408051600380825260808201909252606092839260009291820184803683370190505090507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316896001600160a01b031614158015612f7a57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316886001600160a01b031614155b15613121578881600081518110612fa157634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000008160018151811061300357634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b031681525050878160028151811061304557634e487b7160e01b600052603260045260246000fd5b6001600160a01b0392831660209182029290920101526040516307c0329d60e21b81527f000000000000000000000000000000000000000000000000000000000000000090911690631f00ca74906130a3908a908590600401613ae1565b60006040518083038186803b1580156130bb57600080fd5b505afa9250505080156130f057506040513d6000823e601f3d908101601f191682016040526130ed9190810190613791565b60015b61311a57604080516003808252608082019092529060208201606080368337019050509150613143565b9150613143565b6040805160038082526080820190925290602082016060803683370190505091505b6040516307c0329d60e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631f00ca7490613191908a908890600401613ae1565b60006040518083038186803b1580156131a957600080fd5b505afa9250505080156131de57506040513d6000823e601f3d908101601f191682016040526131db9190810190613791565b60015b6131ef579094509250613292915050565b8093508360008151811061321357634e487b7160e01b600052603260045260246000fd5b60200260200101518360008151811061323c57634e487b7160e01b600052603260045260246000fd5b602002602001015110801561327a57508260008151811061326d57634e487b7160e01b600052603260045260246000fd5b6020026020010151600014155b613285578385613288565b82825b9650965050505050505b935093915050565b6000816040015160ff1682602001511480156132b857506020820151155b1592915050565b6040516001600160a01b0380851660248301528316604482015260648101829052612a929085906323b872dd60e01b90608401610b85565b60008061330585858561333e565b9092161515949350505050565b600081848411156133365760405162461bcd60e51b81526004016104a19190613aae565b505050900390565b60405163cc8b29c160e01b81526001600160a01b038381166004830152602482018390526000919085169063cc8b29c19060440160206040518083038186803b15801561338a57600080fd5b505afa15801561339e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e3491906139da565b6040518060a0016040528060006001600160a01b0316815260200160008152602001600081526020016134266040518060a001604052806000815260200160008152602001600060ff16815260200160008019168152602001600080191681525090565b8152600060209091015290565b805161343e81613dcd565b919050565b60008083601f840112613454578182fd5b50813567ffffffffffffffff81111561346b578182fd5b6020830191508360208260051b850101111561348657600080fd5b9250929050565b60006020828403121561349e578081fd5b6040516020810181811067ffffffffffffffff821117156134c1576134c1613db7565b6040529151825250919050565b80516fffffffffffffffffffffffffffffffff8116811461343e57600080fd5b805164ffffffffff8116811461343e57600080fd5b805161343e81613df0565b60006020828403121561351f578081fd5b813561191581613dcd565b60006020828403121561353b578081fd5b815161191581613dcd565b60008060008060008060008060006101208a8c031215613564578485fd5b895161356f81613dcd565b8099505060208a0151975060408a0151965060608a0151955060808a0151945060a08a015161359d81613df0565b8094505060c08a0151925060e08a015191506101008a01516135be81613de2565b809150509295985092959850929598565b6000806000606084860312156135e3578081fd5b83356135ee81613dcd565b925060208401356135fe81613dcd565b929592945050506040919091013590565b600080600080600080600087890361016081121561362b578182fd5b883561363681613dcd565b9750602089013561364681613dcd565b965060408901359550606089013594506080890135935060a0609f198201121561366e578182fd5b5060a08801915061014088013561368481613de2565b8091505092959891949750929550565b600080600080600080600080600060a08a8c0312156136b1578283fd5b893567ffffffffffffffff808211156136c8578485fd5b6136d48d838e01613443565b909b50995060208c01359150808211156136ec578485fd5b6136f88d838e01613443565b909950975060408c0135915080821115613710578485fd5b61371c8d838e01613443565b909750955060608c0135915061373182613dcd565b90935060808b01359080821115613746578384fd5b818c0191508c601f830112613759578384fd5b813581811115613767578485fd5b8d6020828501011115613778578485fd5b6020830194508093505050509295985092959850929598565b600060208083850312156137a3578182fd5b825167ffffffffffffffff808211156137ba578384fd5b818501915085601f8301126137cd578384fd5b8151818111156137df576137df613db7565b8060051b91506137f0848301613b96565b8181528481019084860184860187018a101561380a578788fd5b8795505b8386101561382c57805183526001959095019491860191860161380e565b5098975050505050505050565b60006020828403121561384a578081fd5b815161191581613de2565b600060a08284031215613866578081fd5b60405160a0810181811067ffffffffffffffff8211171561388957613889613db7565b8060405250823581526020830135602082015260408301356138aa81613df0565b6040820152606083810135908201526080928301359281019290925250919050565b600061018082840312156138de578081fd5b6138e6613b6c565b6138f0848461348d565b81526138fe602084016134ce565b602082015261390f604084016134ce565b6040820152613920606084016134ce565b6060820152613931608084016134ce565b608082015261394260a084016134ce565b60a082015261395360c084016134ee565b60c082015261396460e08401613433565b60e0820152610100613977818501613433565b90820152610120613989848201613433565b9082015261014061399b848201613433565b908201526101606139ad848201613503565b908201529392505050565b6000602082840312156139c9578081fd5b815161ffff81168114611915578182fd5b6000602082840312156139eb578081fd5b5051919050565b600080600060608486031215613a06578081fd5b833592506020840135613a1881613dcd565b91506040840135613a2881613dcd565b809150509250925092565b600060208284031215613a44578081fd5b815161191581613df0565b6000815180845260208085019450808401835b83811015613a875781516001600160a01b031687529582019590820190600101613a62565b509495945050505050565b60008251613aa4818460208701613d5f565b9190910192915050565b6020815260008251806020840152613acd816040850160208701613d5f565b601f01601f19169190910160400192915050565b828152604060208201526000612e346040830184613a4f565b85815284602082015260a060408201526000613b1960a0830186613a4f565b6001600160a01b0394909416606083015250608001529392505050565b85815284602082015283604082015282606082015260a060808201526000613b6160a0830184613a4f565b979650505050505050565b604051610180810167ffffffffffffffff81118282101715613b9057613b90613db7565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715613bbf57613bbf613db7565b604052919050565b60008219821115613bda57613bda613d8b565b500190565b600061ffff80841680613bf457613bf4613da1565b92169190910492915050565b600082613c0f57613c0f613da1565b500490565b600181815b80851115613c4f578160001904821115613c3557613c35613d8b565b80851615613c4257918102915b93841c9390800290613c19565b509250929050565b60006119158383600082613c6d57506001611df7565b81613c7a57506000611df7565b8160018114613c905760028114613c9a57613cb6565b6001915050611df7565b60ff841115613cab57613cab613d8b565b50506001821b611df7565b5060208310610133831016604e8410600b8410161715613cd9575081810a611df7565b613ce38383613c14565b8060001904821115613cf757613cf7613d8b565b029392505050565b600061ffff80831681851681830481118215151615613d2057613d20613d8b565b02949350505050565b6000816000190483118215151615613d4357613d43613d8b565b500290565b600082821015613d5a57613d5a613d8b565b500390565b60005b83811015613d7a578181015183820152602001613d62565b83811115612a925750506000910152565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114610a3d57600080fd5b8015158114610a3d57600080fd5b60ff81168114610a3d57600080fdfea2646970667358221220431f27dc481766aa39d37cf4cc4b098913005ca3908f6619e675c143b4ebabeb64736f6c63430008040033";
//# sourceMappingURL=UniswapRepayAdapterFactory.js.map