[ { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "caller", "type": "address" }, { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "assets", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "shares", "type": "uint256" } ], "name": "Deposit", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint8", "name": "version", "type": "uint8" } ], "name": "Initialized", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "caller", "type": "address" }, { "indexed": true, "internalType": "address", "name": "receiver", "type": "address" }, { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "assets", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "shares", "type": "uint256" } ], "name": "Withdraw", "type": "event" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "asset", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "shares", "type": "uint256" } ], "name": "convertToAssets", "outputs": [ { "internalType": "uint256", "name": "assets", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assets", "type": "uint256" } ], "name": "convertToShares", "outputs": [ { "internalType": "uint256", "name": "shares", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assets", "type": "uint256" }, { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "deposit", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "addedValue", "type": "uint256" } ], "name": "increaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_vault", "type": "address" }, { "internalType": "string", "name": "_name", "type": "string" }, { "internalType": "string", "name": "_symbol", "type": "string" } ], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "maxDeposit", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "maxMint", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "maxRedeem", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "maxWithdraw", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "shares", "type": "uint256" }, { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "mint", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assets", "type": "uint256" } ], "name": "previewDeposit", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "shares", "type": "uint256" } ], "name": "previewMint", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "shares", "type": "uint256" } ], "name": "previewRedeem", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assets", "type": "uint256" } ], "name": "previewWithdraw", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "shares", "type": "uint256" }, { "internalType": "address", "name": "receiver", "type": "address" }, { "internalType": "address", "name": "owner", "type": "address" } ], "name": "redeem", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalAssets", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "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" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "unwrap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "unwrapAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "vault", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assets", "type": "uint256" }, { "internalType": "address", "name": "receiver", "type": "address" }, { "internalType": "address", "name": "owner", "type": "address" } ], "name": "withdraw", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "wrap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "wrapAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
608060405234801561001057600080fd5b50612269806100206000396000f3fe608060405234801561001057600080fd5b50600436106101fb5760003560e01c8063906571471161011a578063c63d75b6116100ad578063dd62ed3e1161007c578063dd62ed3e14610417578063de0e9a3e1461042a578063ea598cb01461043d578063ef8b30f7146103de578063fbfa77cf1461045057600080fd5b8063c63d75b6146103c9578063c6e6f592146103de578063ce96cb77146103f1578063d905777e1461040457600080fd5b8063a9059cbb116100e9578063a9059cbb1461037d578063b3d7f6b914610390578063b460af94146103a3578063ba087652146103b657600080fd5b8063906571471461033c57806394bf804d1461034f57806395d89b4114610362578063a457c2d71461036a57600080fd5b806338d52e0f116101925780634c84c1c8116101615780634c84c1c8146102f85780634cdad506146102305780636e553f651461030057806370a082311461031357600080fd5b806338d52e0f146102a357806339509351146102c8578063402d267d146102db5780634982e3b7146102ee57600080fd5b80630a28a477116101ce5780630a28a4771461026657806318160ddd1461027957806323b872dd14610281578063313ce5671461029457600080fd5b806301e1d1141461020057806306fdde031461021b57806307a2d13a14610230578063095ea7b314610243575b600080fd5b610208610463565b6040519081526020015b60405180910390f35b6102236104d6565b6040516102129190611c01565b61020861023e366004611c34565b610568565b610256610251366004611c62565b61057b565b6040519015158152602001610212565b610208610274366004611c34565b610593565b6102086105a0565b61025661028f366004611c8e565b6105ea565b60405160128152602001610212565b6065546001600160a01b03165b6040516001600160a01b039091168152602001610212565b6102566102d6366004611c62565b610610565b6102086102e9366004611ccf565b610632565b6102f6610650565b005b6102f661066b565b61020861030e366004611cec565b6106d9565b610208610321366004611ccf565b6001600160a01b031660009081526033602052604090205490565b6102f661034a366004611dbf565b610751565b61020861035d366004611cec565b61092b565b610223610945565b610256610378366004611c62565b610954565b61025661038b366004611c62565b6109da565b61020861039e366004611c34565b6109e8565b6102086103b1366004611e35565b6109f5565b6102086103c4366004611e35565b610a71565b6102086103d7366004611ccf565b5060001990565b6102086103ec366004611c34565b610ae5565b6102086103ff366004611ccf565b610af2565b610208610412366004611ccf565b610b16565b610208610425366004611e77565b610b34565b6102f6610438366004611c34565b610b5f565b6102f661044b366004611c34565b610b83565b6097546102b0906001600160a01b031681565b609754604080516316d3df1560e31b815290516000926001600160a01b03169163b69ef8a89160048083019260209291908290030181865afa1580156104ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104d19190611ea5565b905090565b6060603680546104e590611ebe565b80601f016020809104026020016040519081016040528092919081815260200182805461051190611ebe565b801561055e5780601f106105335761010080835404028352916020019161055e565b820191906000526020600020905b81548152906001019060200180831161054157829003601f168201915b5050505050905090565b6000610575826000610ba5565b92915050565b600033610589818585610c62565b5060019392505050565b6000610575826001610d86565b609754604080516318160ddd60e01b815290516000926001600160a01b0316916318160ddd9160048083019260209291908290030181865afa1580156104ad573d6000803e3d6000fd5b6000336105f8858285610e34565b610603858585610ea8565b60019150505b9392505050565b6000336105898185856106238383610b34565b61062d9190611f0e565b610c62565b600061063c611076565b610647576000610575565b60001992915050565b3360009081526033602052604090205461066990610b5f565b565b6097546040516370a0823160e01b8152336004820152610669916001600160a01b0316906370a0823190602401602060405180830381865afa1580156106b5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061044b9190611ea5565b60006106e482610632565b8311156107385760405162461bcd60e51b815260206004820152601e60248201527f455243343632363a206465706f736974206d6f7265207468616e206d6178000060448201526064015b60405180910390fd5b600061074384610ae5565b905061060933848684611096565b600054610100900460ff16158080156107715750600054600160ff909116105b8061078b5750303b15801561078b575060005460ff166001145b6107ee5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161072f565b6000805460ff191660011790558015610811576000805461ff0019166101001790555b609780546001600160a01b0319166001600160a01b038616179055610836838361126c565b60975460408051631f1fcd5160e01b815290516108aa926001600160a01b031691631f1fcd519160048083019260209291908290030181865afa158015610881573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a59190611f26565b6112a1565b6097546108df906001600160a01b03166000196108cf6065546001600160a01b031690565b6001600160a01b031691906112d1565b8015610925576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b600080610937846109e8565b905061060933848387611096565b6060603780546104e590611ebe565b600033816109628286610b34565b9050838110156109c25760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161072f565b6109cf8286868403610c62565b506001949350505050565b600033610589818585610ea8565b6000610575826001610ba5565b6000610a0082610af2565b841115610a4f5760405162461bcd60e51b815260206004820152601f60248201527f455243343632363a207769746864726177206d6f7265207468616e206d617800604482015260640161072f565b6000610a5a85610593565b9050610a69338585888561141e565b949350505050565b6000610a7c82610b16565b841115610acb5760405162461bcd60e51b815260206004820152601d60248201527f455243343632363a2072656465656d206d6f7265207468616e206d6178000000604482015260640161072f565b6000610ad685610568565b9050610a69338585848961141e565b6000610575826000610d86565b6001600160a01b038116600090815260336020526040812054610575906000610ba5565b6001600160a01b038116600090815260336020526040812054610575565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b610b6933826115c5565b609754610b80906001600160a01b03163383611713565b50565b609754610b9b906001600160a01b0316333084611743565b610b80338261177b565b600080610bb06105a0565b90508015610bd157610bcc610bc3610463565b8590838661185a565b610a69565b6065546040805163313ce56760e01b81529051610a69926001600160a01b03169163313ce5679160048083019260209291908290030181865afa158015610c1c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c409190611f43565b610c4b90600a61204a565b60125b610c5990600a61204a565b8691908661185a565b6001600160a01b038316610cc45760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161072f565b6001600160a01b038216610d255760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161072f565b6001600160a01b0383811660008181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600080610d916105a0565b9050831580610d9e575080155b610dae57610bcc81610c59610463565b610a69610dbd6012600a61204a565b606560009054906101000a90046001600160a01b03166001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e10573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4e9190611f43565b6000610e408484610b34565b905060001981146109255781811015610e9b5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161072f565b6109258484848403610c62565b6001600160a01b038316610f0c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161072f565b6001600160a01b038216610f6e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161072f565b6001600160a01b03831660009081526033602052604090205481811015610fe65760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161072f565b6001600160a01b0380851660009081526033602052604080822085850390559185168152908120805484929061101d908490611f0e565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161106991815260200190565b60405180910390a3610925565b600080611081610463565b11806104d157506110906105a0565b15905090565b6110bf8430846110ae6065546001600160a01b031690565b6001600160a01b0316929190611743565b6097546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015611108573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061112c9190611ea5565b60975460405163b6b55f2560e01b8152600481018690529192506001600160a01b03169063b6b55f2590602401600060405180830381600087803b15801561117357600080fd5b505af1158015611187573d6000803e3d6000fd5b50506097546040516370a0823160e01b81523060048201528493506001600160a01b0390911691506370a0823190602401602060405180830381865afa1580156111d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f99190611ea5565b6112039190612059565b915061120f848361177b565b836001600160a01b0316856001600160a01b03167fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d7858560405161125d929190918252602082015260400190565b60405180910390a35050505050565b600054610100900460ff166112935760405162461bcd60e51b815260040161072f90612070565b61129d82826118b7565b5050565b600054610100900460ff166112c85760405162461bcd60e51b815260040161072f90612070565b610b80816118f7565b80158061134b5750604051636eb1769f60e11b81523060048201526001600160a01b03838116602483015284169063dd62ed3e90604401602060405180830381865afa158015611325573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113499190611ea5565b155b6113b65760405162461bcd60e51b815260206004820152603660248201527f5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f60448201527520746f206e6f6e2d7a65726f20616c6c6f77616e636560501b606482015260840161072f565b6040516001600160a01b03831660248201526044810182905261141990849063095ea7b360e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611940565b505050565b826001600160a01b0316856001600160a01b03161461144257611442838683610e34565b61144c83826115c5565b609754604051632e1a7d4d60e01b8152600481018390526001600160a01b0390911690632e1a7d4d90602401600060405180830381600087803b15801561149257600080fd5b505af11580156114a6573d6000803e3d6000fd5b5050505060006114be6065546001600160a01b031690565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa158015611504573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115289190611ea5565b905080831115611536578092505b61155d858461154d6065546001600160a01b031690565b6001600160a01b03169190611713565b836001600160a01b0316856001600160a01b0316876001600160a01b03167ffbde797d201c681b91056529119e0b02407c7bb96a4a2c75c01fc9667232c8db86866040516115b5929190918252602082015260400190565b60405180910390a4505050505050565b6001600160a01b0382166116255760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b606482015260840161072f565b6001600160a01b038216600090815260336020526040902054818110156116995760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b606482015260840161072f565b6001600160a01b03831660009081526033602052604081208383039055603580548492906116c8908490612059565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3505050565b6040516001600160a01b03831660248201526044810182905261141990849063a9059cbb60e01b906064016113e2565b6040516001600160a01b03808516602483015283166044820152606481018290526109259085906323b872dd60e01b906084016113e2565b6001600160a01b0382166117d15760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161072f565b80603560008282546117e39190611f0e565b90915550506001600160a01b03821660009081526033602052604081208054839290611810908490611f0e565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b600080611868868686611a12565b9050600183600281111561187e5761187e6120bb565b14801561189b575060008480611896576118966120d1565b868809115b156118ae576118ab600182611f0e565b90505b95945050505050565b600054610100900460ff166118de5760405162461bcd60e51b815260040161072f90612070565b60366118ea8382612135565b5060376114198282612135565b600054610100900460ff1661191e5760405162461bcd60e51b815260040161072f90612070565b606580546001600160a01b0319166001600160a01b0392909216919091179055565b6000611995826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611ac19092919063ffffffff16565b80519091501561141957808060200190518101906119b391906121f5565b6114195760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161072f565b6000808060001985870985870292508281108382030391505080600003611a4c57838281611a4257611a426120d1565b0492505050610609565b808411611a5857600080fd5b60008486880960026001871981018816978890046003810283188082028403028082028403028082028403028082028403028082028403029081029092039091026000889003889004909101858311909403939093029303949094049190911702949350505050565b6060610a698484600085856001600160a01b0385163b611b235760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161072f565b600080866001600160a01b03168587604051611b3f9190612217565b60006040518083038185875af1925050503d8060008114611b7c576040519150601f19603f3d011682016040523d82523d6000602084013e611b81565b606091505b5091509150611b91828286611b9c565b979650505050505050565b60608315611bab575081610609565b825115611bbb5782518084602001fd5b8160405162461bcd60e51b815260040161072f9190611c01565b60005b83811015611bf0578181015183820152602001611bd8565b838111156109255750506000910152565b6020815260008251806020840152611c20816040850160208701611bd5565b601f01601f19169190910160400192915050565b600060208284031215611c4657600080fd5b5035919050565b6001600160a01b0381168114610b8057600080fd5b60008060408385031215611c7557600080fd5b8235611c8081611c4d565b946020939093013593505050565b600080600060608486031215611ca357600080fd5b8335611cae81611c4d565b92506020840135611cbe81611c4d565b929592945050506040919091013590565b600060208284031215611ce157600080fd5b813561060981611c4d565b60008060408385031215611cff57600080fd5b823591506020830135611d1181611c4d565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112611d4357600080fd5b813567ffffffffffffffff80821115611d5e57611d5e611d1c565b604051601f8301601f19908116603f01168101908282118183101715611d8657611d86611d1c565b81604052838152866020858801011115611d9f57600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600060608486031215611dd457600080fd5b8335611ddf81611c4d565b9250602084013567ffffffffffffffff80821115611dfc57600080fd5b611e0887838801611d32565b93506040860135915080821115611e1e57600080fd5b50611e2b86828701611d32565b9150509250925092565b600080600060608486031215611e4a57600080fd5b833592506020840135611e5c81611c4d565b91506040840135611e6c81611c4d565b809150509250925092565b60008060408385031215611e8a57600080fd5b8235611e9581611c4d565b91506020830135611d1181611c4d565b600060208284031215611eb757600080fd5b5051919050565b600181811c90821680611ed257607f821691505b602082108103611ef257634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b60008219821115611f2157611f21611ef8565b500190565b600060208284031215611f3857600080fd5b815161060981611c4d565b600060208284031215611f5557600080fd5b815160ff8116811461060957600080fd5b600181815b80851115611fa1578160001904821115611f8757611f87611ef8565b80851615611f9457918102915b93841c9390800290611f6b565b509250929050565b600082611fb857506001610575565b81611fc557506000610575565b8160018114611fdb5760028114611fe557612001565b6001915050610575565b60ff841115611ff657611ff6611ef8565b50506001821b610575565b5060208310610133831016604e8410600b8410161715612024575081810a610575565b61202e8383611f66565b806000190482111561204257612042611ef8565b029392505050565b600061060960ff841683611fa9565b60008282101561206b5761206b611ef8565b500390565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b601f82111561141957600081815260208120601f850160051c8101602086101561210e5750805b601f850160051c820191505b8181101561212d5782815560010161211a565b505050505050565b815167ffffffffffffffff81111561214f5761214f611d1c565b6121638161215d8454611ebe565b846120e7565b602080601f83116001811461219857600084156121805750858301515b600019600386901b1c1916600185901b17855561212d565b600085815260208120601f198616915b828110156121c7578886015182559484019460019091019084016121a8565b50858210156121e55787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121561220757600080fd5b8151801515811461060957600080fd5b60008251612229818460208701611bd5565b919091019291505056fea26469706673582212202ecec980f4c15fbb4bf0ddbfe94254e8af57a33edefa0162835352b9ada5887064736f6c634300080f0033