0 txs
0 calls
constructor
constructor()
functions
allowance
viewfunction allowance(address owner, address spender) view returns (uint256)
balanceOf
viewfunction balanceOf(address account) view returns (uint256)
convertlessDepositRatio
viewfunction convertlessDepositRatio() view returns (uint256[] output)
decimals
viewfunction decimals() view returns (uint8)
divider
viewfunction divider() view returns (uint256)
factory
viewfunction factory() view returns (address)
farmConnector
viewfunction farmConnector(address) view returns (address)
farmConnectorLatestReinitializationTimestamp
viewfunction farmConnectorLatestReinitializationTimestamp(address) view returns (uint256)
farms
viewfunction farms(uint256 index) view returns (tuple)
farmsCount
viewfunction farmsCount() view returns (uint256)
harvesterDebt
viewfunction harvesterDebt() view returns (uint256)
lastHarvestTimestamp
viewfunction lastHarvestTimestamp() view returns (uint256)
name
viewfunction name() view returns (string)
native
viewfunction native() view returns (address)
owner
viewfunction owner() view returns (address)
profit
viewfunction profit() view returns (uint256)
profitStorage
viewfunction profitStorage() view returns (address)
publishData
viewfunction publishData() view returns (tuple)
symbol
viewfunction symbol() view returns (string)
totalSupply
viewfunction totalSupply() view returns (uint256)
approve
nonpayablefunction approve(address spender, uint256 amount) returns (bool)
decreaseAllowance
nonpayablefunction decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)
deposit
nonpayablefunction deposit(uint256 amount, address to, uint256 minMintAmount) returns (uint256 mintAmount)
depositConvertless
nonpayablefunction depositConvertless(uint256[] stakingAmounts, uint256 minMintAmount) returns (uint256 mintAmount)
emergencyWithdraw
nonpayablefunction emergencyWithdraw() returns (uint256[] outputAmounts)
harvest
nonpayablefunction harvest(uint256 minRestakingAmount_) returns (uint256 reinvestAmount, uint256 harvestFeeAmount, uint256 profitAmount, uint256 paidDebtAmount, uint256 remainingDebtAmount, uint256 restakingAmount)
increaseAllowance
nonpayablefunction increaseAllowance(address spender, uint256 addedValue) returns (bool)
increaseHarvesterDebt
nonpayablefunction increaseHarvesterDebt(uint256 amount) returns (bool)
initialize
nonpayablefunction initialize(string name_, string symbol_, address owner_, uint256 profit_, address profitToken_, tuple[] farms_) returns (bool)
publish
nonpayablefunction publish(uint256 minRestakingAmount_) returns (uint256 restakingAmount)
renounceOwnership
nonpayablefunction renounceOwnership()
transfer
nonpayablefunction transfer(address to, uint256 amount) returns (bool)
transferFrom
nonpayablefunction transferFrom(address from, address to, uint256 amount) returns (bool)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updateFarms
nonpayablefunction updateFarms(tuple[] farms_, uint256 minRestakingAmount_) returns (uint256 restakingAmount, uint256 liquidityInNative)
updateProfit
nonpayablefunction updateProfit(uint256 profit_) returns (bool)
updateProfitToken
nonpayablefunction updateProfitToken(address profitToken_) returns (bool)
withdraw
nonpayablefunction withdraw(uint256 amount, address from, uint256 minNativeAmount) returns (uint256 nativeAmount)
withdrawConvertless
nonpayablefunction withdrawConvertless(uint256 amount, uint256 minRestakingAmount_) returns (uint256[] outputAmounts, uint256 restakingAmount)
events
Approval
event Approval(address indexed owner, address indexed spender, uint256 value)
ConvertlessDeposited
event ConvertlessDeposited(address indexed user, uint256 syntheticAmount, uint256[] stakingAmounts, uint256[] depositLiquidityAmounts, uint256[] feeLiquidityAmounts)
ConvertlessWithdrawn
event ConvertlessWithdrawn(address indexed user, uint256 syntheticAmount, uint256[] outputAmounts, uint256[] feeAmounts, uint256 outputNativeAmount, uint256 feeNativeAmount)
Deposited
event Deposited(address indexed user, address indexed to, uint256 nativeAmount, uint256 syntheticAmount, uint256 feeAmount)
EmergencyWithdrawn
event EmergencyWithdrawn(address indexed user, uint256 syntheticAmount, uint256[] outputAmounts)
FarmsUpdated
event FarmsUpdated((address beacon, uint256 percent, bytes data)[] farms)
Harvested
event Harvested(address indexed user, uint256 reinvestAmount, uint256 feeAmount, uint256 profitAmount, uint256 paidDebtAmount, uint256 remainingDebtAmount)
HarvesterDebtIncreased
event HarvesterDebtIncreased(uint256 amount, uint256 remainingDebtAmount)
Initialized
event Initialized(uint8 version)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
ProfitUpdated
event ProfitUpdated(uint256 profit)
Published
event Published(address publisher)
Transfer
event Transfer(address indexed from, address indexed to, uint256 value)
Withdrawn
event Withdrawn(address indexed user, address indexed from, uint256 syntheticAmount, uint256 nativeAmount, uint256 feeAmount)
errors
ActualizeFarmStatusReinitializationFailed
error ActualizeFarmStatusReinitializationFailed(address farm, bytes data)
ContractNotInitialized
error ContractNotInitialized()
DepositAmountZero
error DepositAmountZero()
DepositConvertlessAmountsLengthDiffers
error DepositConvertlessAmountsLengthDiffers(uint256 amountsLength, uint256 target)
DepositConvertlessMintAmountUnderflow
error DepositConvertlessMintAmountUnderflow(uint256 mintAmount, uint256 minMintAmount)
DepositConvertlessSupplyZero
error DepositConvertlessSupplyZero()
DepositLiquidityNotPositive
error DepositLiquidityNotPositive()
DepositMintAmountUnderflow
error DepositMintAmountUnderflow(uint256 mintAmount, uint256 minMintAmount)
DepositUsersCountOverflow
error DepositUsersCountOverflow()
EmergencyWithdrawUserBalanceZero
error EmergencyWithdrawUserBalanceZero()
IncreaseHarvesterDebtCallerNotHarvester
error IncreaseHarvesterDebtCallerNotHarvester(address caller, address harvester)
ProtocolPaused
error ProtocolPaused()
RestakingAmountUnderflow
error RestakingAmountUnderflow(uint256 restakingAmount, uint256 minRestakingAmount)
UpdateFarmsInvalidPercentsSum
error UpdateFarmsInvalidPercentsSum(uint256 percentSum, uint256 targetSum)
UpdateFarmsLengthZero
error UpdateFarmsLengthZero()
UpdateProfitOverflow
error UpdateProfitOverflow(uint256 profit, uint256 max)
UpdateProfitUnderflow
error UpdateProfitUnderflow(uint256 profit, uint256 min)
WithdrawAmountZero
error WithdrawAmountZero()
WithdrawConvertlessAmountZero
error WithdrawConvertlessAmountZero()
WithdrawNativeAmountUnderflow
error WithdrawNativeAmountUnderflow(uint256 nativeAmount, uint256 minNativeAmount)
creation bytecode
0x60808060405234620000c4575f549060ff8260081c1662000072575060ff8082160362000037575b604051615b0d9081620000c98239f35b60ff90811916175f557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160ff8152a15f62000027565b62461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b6064820152608490fd5b5f80fdfe608080604052600436101562000013575f80fd5b5f3560e01c9081629866061462002fad5750806306fdde031462002f17578063095ea7b31462002eeb57806311b0b42d1462002ec1578063147bf0f31462002e8557806318160ddd1462002e66578063221472171462002d255780632257a7381462002d0657806323b872dd1462002c3f578063313ce5671462002c22578063378efa371462002c03578063395093511462002bae578063652918bc1462002b7957806366d16cc31462002b5a5780636b3c53fd1462002ab957806370a082311462002a7d578063715018a61462002a575780637da470ea14620029b45780638891902014620029955780638da5cb5b146200296b5780639359525c14620028b957806395d89b4114620027ea578063a457c2d71462002740578063a631a93b1462002721578063a7c3e2ca14620026e4578063a9059cbb14620026b8578063a9f104cf146200237d578063b288bfe31462002290578063bc157ac11462001b12578063c45a01551462001ae8578063cc4ef11914620019ac578063db2e21bc14620017a3578063dd62ed3e1462001750578063ddc6326214620016b4578063e63697c814620013c0578063e83d6915146200099a578063eae52f541462000970578063f2fde38b14620008d85763ffc91d4a14620001f0575f80fd5b346200066d5760c03660031901126200066d576004356001600160401b0381116200066d57620002259036906004016200330a565b6024356001600160401b0381116200066d57620002479036906004016200330a565b906044356001600160a01b03811690036200066d576084356001600160a01b03811681036200066d5760a4356001600160401b0381116200066d5762000292903690600401620031b8565b5f549260ff8460081c161593848095620008ca575b8015620008b1575b15620008555760ff1981166001175f558462000842575b503360018060a01b031960c954161760c955604051630c40877b60e31b8152602081600481335afa908115620005d9575f916200080a575b5060cb556200031f60ff5f5460081c16620003198162003982565b62003982565b8051906001600160401b038211620005e4576200033e609a54620033e8565b601f8111620007ca575b50602090601f831160011462000750576200036f92915f91836200067a575b505062003a37565b609a555b83516001600160401b038111620005e45762000391609b54620033e8565b601f8111620006f2575b506020601f821160011462000686578190620003c3939495965f926200067a57505062003a37565b609b555b620003de60ff5f5460081c16620003198162003982565b620003e933620033b2565b620003f6604435620033b2565b6200040d60ff5f5460081c16620003198162003982565b600160655560c9546040516311b0b42d60e01b81526001600160a01b0390911690602081600481855afa908115620005d9575f916200062d575b5060ca80546001600160a01b0319166001600160a01b039092169190911790556040516315f000b560e11b815290608090829060049082905afa908115620005d9575f91620005f8575b506040908101519051906001600160a01b03166106558083016001600160401b03811184821017620005e45760609284926200540384398152604060208201525f60408201520301905ff08015620005d95760cd80546001600160a01b0319166001600160a01b0392831690811790915560c95460405163485cc95560e01b81529083166004820152939091166024840152602090839060449082905f905af1918215620005d9576200055892620005a3575b506200055260643562004982565b62004505565b62000569575b602060405160018152f35b61ff00195f54165f557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160018152a16200055e565b620005c99060203d602011620005d1575b620005c0818362003125565b81019062003968565b505f62000544565b503d620005b4565b6040513d5f823e3d90fd5b634e487b7160e01b5f52604160045260245ffd5b6200061e915060803d811162000625575b62000615818362003125565b81019062003920565b5f62000491565b503d62000609565b90506020813d60201162000671575b816200064b6020938362003125565b810103126200066d57600491620006646080926200385e565b91509162000447565b5f80fd5b3d91506200063c565b015190505f8062000367565b609b5f5260205f20905f5b601f1984168110620006d9575060019394959683601f19811610620006c0575b505050811b01609b55620003c7565b01515f1960f88460031b161c191690555f8080620006b1565b9091602060018192858b01518155019301910162000691565b609b5f526200073e907fbba9db4cdbea0a37c207bbb83e20f828cd4441c49891101dc94fd20dc8efc349601f840160051c8101916020851062000745575b601f0160051c0190620039e3565b5f6200039b565b909150819062000730565b609a5f90815292915f8051602062005a58833981519152915b601f1984168510620007ae576001945083601f1981161062000795575b505050811b01609a5562000373565b01515f1960f88460031b161c191690555f808062000786565b8181015183556020948501946001909301929091019062000769565b609a5f5262000803905f8051602062005a58833981519152601f850160051c810191602086106200074557601f0160051c0190620039e3565b5f62000348565b90506020813d60201162000839575b81620008286020938362003125565b810103126200066d57515f620002fe565b3d915062000819565b61ffff1916610101175f908155620002c6565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b158015620002af5750600160ff821614620002af565b50600160ff821610620002a7565b346200066d5760203660031901126200066d57620008f56200305b565b620008ff62003328565b6001600160a01b038116156200091c576200091a90620033b2565b005b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b346200066d575f3660031901126200066d5760cd546040516001600160a01b039091168152602090f35b346200066d5760403660031901126200066d576004356001600160401b0381116200066d57366023820112156200066d57806004013590620009dc8262003149565b91620009ec604051938462003125565b8083526024602084019160051b830101913683116200066d57602401905b828210620013af578360ff5f5416156200139d5760c954604051635c975abb60e01b815290602090829060049082906001600160a01b03165afa908115620005d9575f9162001379575b50620013675762000a6462003b2c565b60995415620013565762000a7762004241565b62000a8162005078565b505050505062000a9062004a61565b505060cd546040516335d09d4160e11b8152906001600160a01b0316602082600481845afa918215620005d9575f926200131c575b5060c954604051631f30d2ed60e21b81526001600160a01b03909116929060a081600481875afa8015620005d9576020915f91620012e7575b5001511115908162001289575b50620012775760d35482518181036200125a57506040516301e5eb1d60e41b81525f1992608090829060049082905afa908115620005d9575f9162001224575b50515f5b828110620010d6575062000b638262003802565b9262000b6f8362003802565b925f19925f5b82811062000c4e575050505062000b9362000b9d9160995462003aeb565b60cb549062003aff565b91602435831062000c2e5762000bff60209462000c1e62000c0e7fdfd7abd58acd02c950745d006a920d061f8ca048137827df9a78388073607d8f9462000be5883362003b83565b60405194859489865260808b8701526080860190620032a9565b908482036040860152620032a9565b82810360608401523395620032a9565b0390a26001606555604051908152f35b60448360405190636f082ab560e11b825260048201526024356024820152fd5b62000c5981620037d1565b5060018060a01b039054165f5260d060205260018060a01b0360405f20541660405163b8c876b160e01b8152816004820152602081602481855afa908115620005d9575f916200109e575b5062000cf08962000cea8662000ce38762000cc08c8862003aeb565b9462000cd060cb54809762003aff565b62000cdc838362003849565b5262003849565b5162003aeb565b62003aff565b62000cfc848a62003849565b5262000d2162000d0d848a62003849565b5162000d1a858c62003849565b5162003b1e565b62000d2d848b62003849565b526040516372f702f360e01b8152602081600481865afa8015620005d9578b85925f926200104b575b5062000d6862000d85935f9262003849565b5160405180948192629314d360e31b835230336004850162003cf9565b0381875afa908115620005d95762000da6925f9262000fcf575b5062004050565b506040516372f702f360e01b8152602081600481865afa8015620005d9578b85925f9262000ff8575b5062000de162000dfe935f9262003849565b516040518094819263039fcd1960e01b8352886004840162003cb3565b0381875afa908115620005d95762000e1e925f9262000fcf575062004050565b5062000e2b838b62003849565b519162000e39848b62003849565b5162000e46858b62003849565b5160c954604051630fb2f23560e01b81529060e090829060049082906001600160a01b03165afa908115620005d9575f9162000f99575b50608001516001600160a01b031691833b156200066d576040519563809b5dc960e01b875260048701526024860152604485015260648401523360848401525f8360a48183855af1908115620005d95760249360209262000f87575b506040519384809263b8c876b160e01b82528060048301525afa918215620005d9575f9262000f4a575b5062000cea62000f239262000f1c8360cb549262003b1e565b9062003aeb565b85811062000f3e575b5062000f38906200383a565b62000b75565b945062000f3862000f2c565b91506020823d60201162000f7e575b8162000f686020938362003125565b810103126200066d5790519062000cea62000f03565b3d915062000f59565b62000f9290620030f5565b8c62000ed9565b62000fc0915060e03d60e01162000fc7575b62000fb7818362003125565b81019062003873565b8e62000e7d565b503d62000fab565b62000ff09192503d805f833e62000fe7818362003125565b81019062004027565b908d62000d9f565b925050506020813d60201162001042575b81620010186020938362003125565b810103126200066d578a5f62000de1866200103762000dfe956200385e565b939250935062000dcf565b3d915062001009565b925050506020813d60201162001095575b816200106b6020938362003125565b810103126200066d578a5f62000d68866200108a62000d85956200385e565b939250935062000d56565b3d91506200105c565b90506020813d602011620010cd575b81620010bc6020938362003125565b810103126200066d57518a62000ca4565b3d9150620010ad565b620010e181620037d1565b50546001600160a01b039081165f90815260d0602052604090205460cb5491166200110d838862003849565b5191604051926315e64dd160e21b845260048401526020836024815f865af1928315620005d9575f93620011e7575b506200114d60249360209262003aeb565b916040519384809263b8c876b160e01b82528060048301525afa908115620005d9575f91620011aa575b62001183925062003aff565b8481106200119e575b5062001198906200383a565b62000b4f565b9350620011986200118c565b90506020823d602011620011de575b81620011c86020938362003125565b810103126200066d576200118391519062001177565b3d9150620011b9565b92506020833d6020116200121b575b81620012056020938362003125565b810103126200066d579151916200114d6200113c565b3d9150620011f6565b6200124b915060803d60801162001252575b62001242818362003125565b81019062003aac565b8462000b4b565b503d62001236565b604491604051916329f03a3960e01b835260048301526024820152fd5b6040516329a0b2dd60e01b8152600490fd5b604051630284d68d60e21b81523360048201529150602090829060249082905afa908115620005d9575f91620012c3575b50158362000b0b565b620012e0915060203d602011620005d157620005c0818362003125565b83620012ba565b6200130d915060a03d811162001314575b62001304818362003125565b81019062003a49565b8662000afe565b503d620012f8565b9091506020813d6020116200134d575b816200133b6020938362003125565b810103126200066d5751908362000ac5565b3d91506200132c565b60405162fdae9360e31b8152600490fd5b604051634427925560e01b8152600490fd5b62001396915060203d602011620005d157620005c0818362003125565b8262000a54565b604051635079799360e01b8152600490fd5b813581526020918201910162000a0a565b346200066d57620013d136620032de565b919060ff5f5416156200139d57620013e862003b2c565b8115620016a257600491620013fc62004241565b6200140662005078565b50505050505f9160018060a01b039460e08660c9541660405196878092630fb2f235851b82525afa948515620005d9575f956200167c575b508560c086015116331415806200166b575b62001662575b602460208760ca5416604051928380926370a0823160e01b82523060048301525afa8015620005d95784915f9162001625575b506200149e620014ba92620014a89262003aeb565b6099549062003aff565b620014b38562004dae565b90620034bb565b94866060820151163303620015b8575b846200158a575b508085106200156c57506020947f3cae9923fd3c2f468aa25a8ef687923e37f957459557c0380fd06526c0b8cdbc918562001555575b620015138482620040a5565b620015396040519283921695339588846040919493926060820195825260208201520152565b0390a36200154662004a61565b50506001606555604051908152f35b6200156686338460ca541662003cce565b62001507565b8460449160405191631ccd1b8360e11b835260048301526024820152fd5b620015b09195620015aa8680938a60808160ca5416920151169062003cce565b62003b1e565b9386620014d1565b9350600460808760c95416604051928380926301e5eb1d60e41b82525afa8015620005d957604062000b9391620015fb935f9162001602575b5001518762003aeb565b93620014ca565b6200161e915060803d8111620012525762001242818362003125565b8a620015f1565b9150506020813d821162001659575b81620016436020938362003125565b810103126200066d575183906200149e62001489565b3d915062001634565b33915062001456565b508560608601511633141562001450565b6200169a91955060e03d60e01162000fc75762000fb7818362003125565b93866200143e565b60405163375bfb0160e11b8152600490fd5b346200066d5760203660031901126200066d5760043560ff5f5416156200139d57620016df62003b2c565b620016e962004241565b620016f362005078565b91620016fe62004a61565b5093868510620017325760c096506001606555604051958652602086015260408501526060840152608083015260a0820152f35b60448588604051916312dfc83760e01b835260048301526024820152fd5b346200066d5760403660031901126200066d576200176d6200305b565b6200177762003072565b9060018060a01b038091165f52609860205260405f2091165f52602052602060405f2054604051908152f35b346200066d575f3660031901126200066d5760ff5f5416156200139d57620017ca62003b2c565b620017d462004241565b335f5260206097815260405f20549081156200199a5760995460d391620017fc835462003802565b5f5b84548110156200192a576200181381620037d1565b5060018060a01b03809154165f5260d0845260405f2054169060405163b8c876b160e01b81528260048201528481602481865afa908115620005d957889187915f91620018ee575b506200186c9262000cea9162003aeb565b62001878828562003849565b5262001885818462003849565b5191803b156200066d576040516302f940c760e41b8152925f918491829084908290620018b89033906004840162004228565b03925af1918215620005d957620018d692620018dc575b506200383a565b620017fe565b620018e790620030f5565b87620018cf565b925050508481813d831162001922575b6200190a818362003125565b810103126200066d5751879086906200186c6200185b565b503d620018fe565b509084620019398133620040a5565b6040519081526040828201527f7f1ec4785ae825d96a5c57302b6622ad338d82d8a3ad214489308454f45fcf99339180620019786040820187620032a9565b0390a2600160655562001996604051928284938452830190620032a9565b0390f35b6040516345ca6a5560e11b8152600490fd5b346200066d576020806003193601126200066d5760043560ff5f5416156200139d5760c954604051635c975abb60e01b8152908390829060049082906001600160a01b03165afa908115620005d9575f9162001ac6575b50620013675762001a1362003328565b62001a1d62004241565b62001a2762005078565b505050505062001a3662004a61565b509080821062001aa8575060d280546001600160a81b0319163360081b610100600160a81b031617600117905562001a6d62003328565b62001a7762003381565b7ff54c24545e5fc900f7bb4549b86535135beb27fe5d4431e32e18d5629777cfd282604051338152a1604051908152f35b60449250604051916312dfc83760e01b835260048301526024820152fd5b62001ae19150833d8511620005d157620005c0818362003125565b8362001a03565b346200066d575f3660031901126200066d5760c9546040516001600160a01b039091168152602090f35b346200066d5762001b2336620032de565b9060ff5f5416156200139d5760c954604051635c975abb60e01b815290602090829060049082906001600160a01b03165afa908115620005d9575f916200226c575b50620013675762001b7562003b2c565b8280156200225a5762001b8762004241565b62001b9162005078565b505050505062001ba062004a61565b505060c954604051630fb2f23560e01b81525f92916001600160a01b031660e082600481845afa918215620005d9575f9262002234575b5060c08201516001600160a01b0316331415806200221c575b62002213575b60cd546040516335d09d4160e11b81526001600160a01b0390911691602082600481865afa918215620005d9575f92620021d8575b5060a060049160405192838092631f30d2ed60e21b82525afa8015620005d9576020915f91620021b4575b500151111590816200214d575b50620012775760ca546040516323b872dd60e01b602082015262001cb5916001600160a01b031662001caf8262001ca08730336024850162003cf9565b03601f19810184528362003125565b62003e16565b60608101516001600160a01b03163303620020d8575b82620020a1575b50505f905f925f5b60d3548082101562001f185762001cf182620037d1565b509060018060a01b038254165f5260d060205260018060a01b0360405f205416916040519163b8c876b160e01b8352836004840152602083602481875afa928315620005d9575f9362001ede575b50805f1981011162001eca575f1901840362001eb2575062001d6e62001d66888b62003b1e565b8098620034bb565b968062001e34575b60206024936040519485809263b8c876b160e01b82528060048301525afa928315620005d9575f9362001dfa575b5082821062001dc2575b50505062001dbc906200383a565b62001cda565b62001df09262001de98362001de262001dbc979a95620014b39562003aeb565b9262003b1e565b9062003aff565b9390888062001dae565b9092506020813d60201162001e2b575b8162001e196020938362003125565b810103126200066d5751918a62001da4565b3d915062001e0a565b60ca5462001e4f90829085906001600160a01b031662003d1b565b60405163b6b55f2560e01b8152600481018290526020816024815f885af18015620005d95762001e81575b5062001d76565b602090813d831162001eaa575b62001e9a818362003125565b810103126200066d578a62001e7a565b503d62001e8e565b62001d6662000b93600162001d6e9301548c62003aeb565b634e487b7160e01b5f52601160045260245ffd5b9092506020813d60201162001f0f575b8162001efd6020938362003125565b810103126200066d5751918b62001d3f565b3d915062001eee565b8287858a886099549081151580809162002098575b6200208657806200207c575b1562001ff95762000cea62001f4f928462003aeb565b925b808410801562001ff0575b62001fd257507f8bab6aed5a508937051a144e61d6e61336834a66aaee250a00613ae6f744c42262001fc28562001f968660209862003b83565b60408051948552602085018790528401949094526001600160a01b039093169233929081906060820190565b0390a36001606555604051908152f35b83604491604051916310b6802960e01b835260048301526024820152fd5b50831562001f5c565b505060046200200b60cb548362003aeb565b60c954604051631f30d2ed60e21b81529260a09184919082906001600160a01b03165afa918215620005d95762002051926040915f9162002058575b5001519062003aff565b9262001f51565b62002075915060a03d60a011620013145762001304818362003125565b8862002047565b5080151562001f39565b6040516313c3759360e31b8152600490fd5b50811562001f2d565b60ca54608090910151929550620020cf92869291620015aa9184916001600160a01b03918216911662003cce565b92848062001cd2565b60c9546040516301e5eb1d60e41b8152919350608090829060049082906001600160a01b03165afa908115620005d957620021239162000b93915f916200212a575b50518362003aeb565b9162001ccb565b62002146915060803d8111620012525762001242818362003125565b886200211a565b604051630284d68d60e21b81526001600160a01b03871660048201529150602090829060249082905afa908115620005d9575f9162002190575b50158762001c63565b620021ad915060203d602011620005d157620005c0818362003125565b8762002187565b620021d1915060a03d60a011620013145762001304818362003125565b8a62001c56565b9091506020813d6020116200220a575b81620021f76020938362003125565b810103126200066d57519060a062001c2b565b3d9150620021e8565b33945062001bf6565b5060608201516001600160a01b031633141562001bf0565b6200225291925060e03d60e01162000fc75762000fb7818362003125565b908762001bd7565b604051635d66204960e11b8152600490fd5b62002289915060203d602011620005d157620005c0818362003125565b8462001b65565b346200066d575f3660031901126200066d5760d354620022b08162003802565b905f5b818110620022d357604051602080825281906200199690820186620032a9565b80620022e1602492620037d1565b5060018060a01b03809154165f526020809160d0825260405f2054166040519485809263b8c876b160e01b82528060048301525afa908115620005d9575f9162002346575b5062002340925062002339828662003849565b526200383a565b620022b3565b905082813d831162002375575b6200235f818362003125565b810103126200066d576200234091518562002326565b503d62002353565b346200066d5760403660031901126200066d576004356024359060ff5f5416156200139d57620023ac62003b2c565b806060918115620026a657620023c162004241565b620023cb62005078565b505060c9546040516301e5eb1d60e41b81526001600160a01b03918216958895505f9450919250608081600481895afa8015620005d957604062000b939162002420935f9162002683575b5001518862003aeb565b918060ca54169660405180986370a0823160e01b825230600483015281602460209b8c935afa8015620005d95782915f9162002649575b5062002468916200149e9162003aeb565b968462002585575b505085806200256c575b50508062002536575b620024b05f8051602062005a7883398151915294939282620024aa620024cc9433620040a5565b620034bb565b9260405193845260a08785015262000bff60a0850189620032a9565b93606083015260808201528033930390a2620024e762004a61565b5083811062002518576200251093506001606555604051938493604085526040850190620032a9565b918301520390f35b60449084604051916312dfc83760e01b835260048301526024820152fd5b955090620024cc620024b05f8051602062005a7883398151915294936200255e338a62004f12565b989250929394505062002483565b6200257d9160ca5416339062003cce565b88856200247a565b90955060e09194506004925060405192838092630fb2f235851b82525afa908115620005d95783916080915f9162002625575b5001511691620025c9838362004f12565b93620025db8162000cea858962003aeb565b9384620025ff575b5082620025f691620015aa8233620040a5565b90898062002470565b6200261c85620025f69398620015aa8288958860ca541662003cce565b969150620025e3565b62002642915060e03d60e01162000fc75762000fb7818362003125565b8a620025b8565b8092508a8092503d83116200267b575b62002665818362003125565b810103126200066d575181906200246862002457565b503d62002659565b6200269f915060803d8111620012525762001242818362003125565b8c62002416565b60405163a013ee7560e01b8152600490fd5b346200066d5760403660031901126200066d576200055e620026d96200305b565b6024359033620034c9565b346200066d5760203660031901126200066d5760206001600160a01b03806200270c6200305b565b165f5260d0825260405f205416604051908152f35b346200066d575f3660031901126200066d57602060d354604051908152f35b346200066d5760403660031901126200066d576200275d6200305b565b60243590335f52609860205260405f2060018060a01b0382165f5260205260405f20549180831062002797576200055e92039033620036d1565b60405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608490fd5b346200066d575f3660031901126200066d57604051609b545f826200280f83620033e8565b918282526020936001908582821691825f146200289757505060011462002856575b50620028409250038362003125565b6200199660405192828493845283019062003034565b849150609b5f52815f20905f915b8583106200287e5750506200284093508201018562002831565b8054838901850152879450869390920191810162002864565b60ff1916858201526200284095151560051b8501019250879150620028319050565b346200066d5760403660031901126200066d576004356001600160401b0381116200066d57620028ee903690600401620031b8565b6024359060ff5f5416156200139d5762002943906200290c62003328565b6200291662003b2c565b6200292062004241565b6200292a62005078565b50505050506200293c60995462004dae565b5062004505565b6200294d62004a61565b9180821062001aa85750604091600160655582519182526020820152f35b346200066d575f3660031901126200066d576033546040516001600160a01b039091168152602090f35b346200066d575f3660031901126200066d57602060cf54604051908152f35b346200066d5760203660031901126200066d57606060408051620029d881620030d9565b5f81525f6020820152015262001996620029f4600435620037d1565b50600262002a3d6040519262002a0a84620030d9565b80546001600160a01b031684526001810154602085015260405192839162002a359183910162003423565b038262003125565b604082015260405191829160208352602083019062003089565b346200066d575f3660031901126200066d5762002a7362003328565b6200091a62003381565b346200066d5760203660031901126200066d576001600160a01b0362002aa26200305b565b165f526097602052602060405f2054604051908152f35b346200066d5760203660031901126200066d5762002ad66200305b565b60ff5f5416156200139d5762002aeb62003328565b60cd54604051636b3c53fd60e01b81526001600160a01b03928316600482015291602091839160249183915f91165af18015620005d9576020915f9162002b38575b506040519015158152f35b62002b539150823d8111620005d157620005c0818362003125565b8262002b2d565b346200066d575f3660031901126200066d57602060cc54604051908152f35b346200066d5760203660031901126200066d5760ff5f5416156200139d5762002ba162003328565b6200055e60043562004982565b346200066d5760403660031901126200066d576200055e62002bcf6200305b565b335f52609860205260405f2060018060a01b0382165f5260205262002bfb60243560405f2054620034bb565b9033620036d1565b346200066d575f3660031901126200066d57602060cb54604051908152f35b346200066d575f3660031901126200066d57602060405160128152f35b346200066d5760603660031901126200066d5762002c5c6200305b565b62002c6662003072565b6044359060018060a01b0383165f52609860205260405f20335f5260205260405f2054925f19840362002ca0575b6200055e9350620034c9565b82841062002cc15762002cbb836200055e95033383620036d1565b62002c94565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b346200066d575f3660031901126200066d57602060ce54604051908152f35b346200066d5760203660031901126200066d5760043560ff5f5416156200139d5760c954604051630fb2f23560e01b8082526001600160a01b03928316929160e081600481875afa908115620005d95783916040915f9162002e42575b50015116330362002dd9577fe46119fb6023c20a3c4faa325e0f50cb8d2332d1728b419ae6de76a03da4e59e60408562002dbf8160cf54620034bb565b8060cf5582519182526020820152a1602060405160018152f35b60e09060046040518095819382525afa918215620005d9576044926040915f9162002e1e575b50015160405163cbc38da160e01b815233600482015291166024820152fd5b62002e3b915060e03d60e01162000fc75762000fb7818362003125565b8462002dff565b62002e5f915060e03d60e01162000fc75762000fb7818362003125565b8762002d82565b346200066d575f3660031901126200066d576020609954604051908152f35b346200066d5760203660031901126200066d576001600160a01b0362002eaa6200305b565b165f5260d1602052602060405f2054604051908152f35b346200066d575f3660031901126200066d5760ca546040516001600160a01b039091168152602090f35b346200066d5760403660031901126200066d576200055e62002f0c6200305b565b6024359033620036d1565b346200066d575f3660031901126200066d57604051609a545f8262002f3c83620033e8565b918282526020936001908582821691825f146200289757505060011462002f6c5750620028409250038362003125565b849150609a5f52815f20905f915b85831062002f945750506200284093508201018562002831565b8054838901850152879450869390920191810162002f7a565b346200066d575f3660031901126200066d5760208162002fce5f93620030bd565b82815201526040805162002fe281620030bd565b602060d25460ff811615159283815260018060a01b03928391019160081c168152835192835251166020820152f35b5f5b838110620030235750505f910152565b818101518382015260200162003013565b906020916200304f8151809281855285808601910162003011565b601f01601f1916010190565b600435906001600160a01b03821682036200066d57565b602435906001600160a01b03821682036200066d57565b9060606040620030ba9360018060a01b03815116845260208101516020850152015191816040820152019062003034565b90565b604081019081106001600160401b03821117620005e457604052565b606081019081106001600160401b03821117620005e457604052565b6001600160401b038111620005e457604052565b608081019081106001600160401b03821117620005e457604052565b601f909101601f19168101906001600160401b03821190821017620005e457604052565b6001600160401b038111620005e45760051b60200190565b6001600160401b038111620005e457601f01601f191660200190565b9291926200318b8262003161565b916200319b604051938462003125565b8294818452818301116200066d578281602093845f960137010152565b9080601f830112156200066d57813591602091620031d68462003149565b93604092620031e88451968762003125565b818652848087019260051b820101938385116200066d57858201925b85841062003216575050505050505090565b6001600160401b039084358281116200066d5784019160609283601f19828a0301126200066d578451936200324b85620030d9565b818b01356001600160a01b03811681036200066d578552858201358b8601528101359182116200066d57019086603f830112156200066d57889262003299888487878097013591016200317d565b8582015281520193019262003204565b9081518082526020808093019301915f5b828110620032c9575050505090565b835185529381019392810192600101620032ba565b60609060031901126200066d57600435906024356001600160a01b03811681036200066d579060443590565b9080601f830112156200066d57816020620030ba933591016200317d565b6033546001600160a01b031633036200333d57565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b031981169091555f906001600160a01b03165f8051602062005a988339815191528280a3565b603380546001600160a01b039283166001600160a01b0319821681179092559091165f8051602062005a988339815191525f80a3565b90600182811c9216801562003418575b60208310146200340457565b634e487b7160e01b5f52602260045260245ffd5b91607f1691620033f8565b80545f93926200343382620033e8565b9182825260209360019182811690815f146200349b57506001146200345a575b5050505050565b90939495505f92919252835f2092845f945b8386106200348657505050500101905f8080808062003453565b8054858701830152940193859082016200346c565b60ff19168685015250505090151560051b010191505f8080808062003453565b9190820180921162001eca57565b6001600160a01b0390811692909183156200367e5782169182156200362d575f91848352609760205260409384842054828110620035da5782908786526097602052038585205580845284842082815401905580865f8051602062005ab883398151915260208851868152a373d7a81fadda72909ea86443aab24c9b905c770c65908360c95416928460cd541694603354169060ff60d2541692843b15620035d65791879695939160e495938a519b8c988997635544262160e01b89526004890152602488015260448701526064860152608485015260a4840152151560c48301525af4918215620035cc575050620035bf5750565b620035ca90620030f5565b565b51903d90823e3d90fd5b8780fd5b855162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fd5b6001600160a01b03908116918215620037805716918215620037305760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526098825260405f20855f5282528060405f2055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b60d354811015620037ee5760d35f52600360205f20910201905f90565b634e487b7160e01b5f52603260045260245ffd5b906200380e8262003149565b6200381d604051918262003125565b828152809262003830601f199162003149565b0190602036910137565b5f19811462001eca5760010190565b8051821015620037ee5760209160051b010190565b51906001600160a01b03821682036200066d57565b908160e09103126200066d576040519060e082016001600160401b03811183821017620005e457620039189160c091604052620038b0816200385e565b8452620038c0602082016200385e565b6020850152620038d3604082016200385e565b6040850152620038e6606082016200385e565b6060850152620038f9608082016200385e565b60808501526200390c60a082016200385e565b60a0850152016200385e565b60c082015290565b908160809103126200066d576060604051916200393d8362003109565b805183526020810151602084015262003959604082016200385e565b60408401520151606082015290565b908160209103126200066d575180151581036200066d5790565b156200398a57565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b818110620039ef575050565b5f8155600101620039e3565b9190601f811162003a0b57505050565b620035ca925f5260205f20906020601f840160051c830193106200074557601f0160051c0190620039e3565b8160011b915f199060031b1c19161790565b908160a09103126200066d576040519060a08201906001600160401b03821183831017620005e45760809160405262003a82816200385e565b83526020810151602084015260408101516040840152606081015160608401520151608082015290565b908160809103126200066d5760606040519162003ac98362003109565b8051835260208101516020840152604081015160408401520151606082015290565b8181029291811591840414171562001eca57565b811562003b0a570490565b634e487b7160e01b5f52601260045260245ffd5b9190820391821162001eca57565b60026065541462003b3e576002606555565b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b6001600160a01b039081169190821562003c6e5762003ba582609954620034bb565b6099555f9183835260976020526040832081815401905583835f8051602062005ab88339815191526020604051858152a373d7a81fadda72909ea86443aab24c9b905c770c658260c95416918360cd5416936033541660ff60d2541691833b1562003c6a579160e4939187969593604051998a978896635544262160e01b8852600488015260248701528860448701526064860152608485015260a4840152151560c48301525af490811562003c5e5750620035bf5750565b604051903d90823e3d90fd5b8680fd5b60405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606490fd5b6001600160a01b039091168152602081019190915260400190565b62001caf620035ca939262001ca060405194859263a9059cbb60e01b60208501526024840162003cb3565b6001600160a01b03918216815291166020820152604081019190915260600190565b60405191602083019362003d538462003d4463095ea7b360e01b93848952856024840162003cb3565b03601f19810186528562003125565b83516001600160a01b0395848716915f9182919082855af19062003d7662003f06565b8262003ddf575b508162003dd3575b501562003d93575050505050565b62003dc89462001caf926040519260208401521660248201525f60448201526044815262003dc18162003109565b8262003e16565b5f8080808062003453565b90503b15155f62003d85565b8051919250811591821562003df9575b5050905f62003d7d565b62003e0e925060208091830101910162003968565b5f8062003def565b60405162003e79916001600160a01b031662003e3282620030bd565b5f806020958685527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656487860152868151910182855af162003e7262003f06565b9162003f3a565b80519082821592831562003eeb575b5050501562003e945750565b6084906040519062461bcd60e51b82526004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152fd5b62003efd935082018101910162003968565b5f828162003e88565b3d1562003f35573d9062003f1a8262003161565b9162003f2a604051938462003125565b82523d5f602084013e565b606090565b9192901562003f9f575081511562003f50575090565b3b1562003f5a5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b82519091501562003fb35750805190602001fd5b60405162461bcd60e51b81526020600482015290819062003fd990602483019062003034565b0390fd5b81601f820112156200066d57805162003ff68162003161565b9262004006604051948562003125565b818452602082840101116200066d57620030ba916020808501910162003011565b906020828203126200066d5781516001600160401b0381116200066d57620030ba920162003fdd565b90620030ba915f80604051936200406785620030bd565b601e85527f416464726573733a206c6f772d6c6576656c2063616c6c206661696c65640000602086015260208151910182855af162003e7262003f06565b6001600160a01b0390811691908215620041d9575f908382526097602052604092838320548181106200418a57819086855260976020520384842055806099540360995582855f8051602062005ab883398151915260208751858152a373d7a81fadda72909ea86443aab24c9b905c770c658260c95416918360cd5416936033541660ff60d2541691833b1562003c6a579160e493918796959389519a8b978896635544262160e01b8852600488015260248701526044860152876064860152608485015260a4840152151560c48301525af4918215620035cc575050620035bf5750565b845162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608490fd5b9081526001600160a01b03909116602082015260400190565b5f905b60d35482101562004501576200425a82620037d1565b509160018060a01b03928381541693845f5260d190602090828252604093845f20548260c954168651996354eb53cd60e11b8b528a60049382858301528760249d8e81875afa918215620044f7575f92620044bf575b5010620042d4575b5050505050505050620042cd9192506200383a565b9062004244565b5f908b895180948193636463f8b160e11b8352878301525afa908115620044b5575f9162004498575b50805160028401916001600160401b03821162004486576200432c82620043258554620033e8565b85620039fb565b8690601f83116001146200441f576200435092915f91836200067a57505062003a37565b81555b838354165f5260d085525f856200438a868a842054168d8b51948580948193636cf8a61360e11b8352878b84015282018962003423565b03925af190811562004415575f91620043f3575b5015620043c7575050620042cd96975054165f525242905f205582915f808080808080620042b8565b9154865163f4c48c6f60e01b8152931690830152818801859052819062003fd990604483019062003423565b6200440e9150863d8811620005d157620005c0818362003125565b5f6200439e565b88513d5f823e3d90fd5b90601f19831691845f5283895f20935f5b8b8282106200446c5750501062004453575b505050600190811b01815562004353565b01515f1960f88460031b161c191690555f808062004442565b848601518755600190960195948501948793500162004430565b8b604185634e487b7160e01b5f52525ffd5b620044ae913d8091833e62000fe7818362003125565b5f620042fd565b87513d5f823e3d90fd5b90918882813d8311620044ef575b620044d9818362003125565b81010312620044ec575051905f620042b0565b80fd5b503d620044cd565b8a513d5f823e3d90fd5b9050565b9060d3545f60d35580620048c3575b5081518015620048b1575f905f5b818110620045e157505060cb54808203620045c35750506040516020808201818352845180915260408301918060408360051b8601019601925f905b83821062004594575050505050807fb6c53eb9030723642218be7e70755c6d28327bf02461572867bee0fb32ca2dd692930390a1565b90919293968380620045b3600193603f198a82030186528b5162003089565b990192019201909392916200455e565b6044925060405191636d627f1760e01b835260048301526024820152fd5b60c9546040906001600160a01b03905f90821662004600858a62003849565b5190836200460f878c62003849565b515116835260d0602052838584205416620046678651968794859463074789cf60e21b8652600486015260606024860152878151166064860152602081015160848601520151606060a485015260c484019062003034565b906044830152038173d7a81fadda72909ea86443aab24c9b905c770c655af4918215620005d9575f905f9362004813575b50818151165f5260d060205260405f208260018060a01b0319941684825416179055818151165f5260d16020524260405f2055620046dd6020820196875190620034bb565b9560d354600160401b811015620005e45780600162004700920160d355620037d1565b949094620048005760409383511690855416178455516001840155015180519060018060401b038211620005e4576200474c82620047426002860154620033e8565b60028601620039fb565b602090601f8311600114620047895782620047839594936002936200477a935f926200067a57505062003a37565b9101556200383a565b62004522565b90600284015f5260205f20915f5b601f1985168110620047e75750926002926001926200478397969583601f19811610620047ce575b505050811b019101556200383a565b01515f1960f88460031b161c191690555f8080620047bf565b9192602060018192868501518155019401920162004797565b634e487b7160e01b5f525f60045260245ffd5b9250503d805f843e62004827818462003125565b8201916040818403126200066d5780516001600160401b0391908281116200066d5781016060818603126200066d57604051946200486586620030d9565b62004870826200385e565b86526020820151602087015260408201519384116200066d5760209362004898920162003fdd565b604085015201519181831683036200066d575f62004698565b60405163226da34d60e01b8152600490fd5b600390808202908282040362001eca5760d35f527f915c3eb987b20e1af620c1403197bf687fb7f18513b3a73fde6e78c7072c41a6908101906020905b828110620049115750505062004514565b805f85925560015f81830155600282016200492d8154620033e8565b806200493e575b5050500162004900565b5f92601f8083116001146200495b57505050555b5f808062004934565b83916200497a918694958552898520950160051c8501908501620039e3565b555562004952565b60c9546040516315f000b560e11b815290608090829060049082906001600160a01b03165afa908115620005d9575f9162004a3e575b50805180831062004a2057506020015180821162004a0257506020817f264686cbb03ba32c463d477682b4936254fc33c5541b9df663f9357a6b71b3ad9260cc55604051908152a1565b60449250604051916350bc024160e01b835260048301526024820152fd5b82604491604051916362db421f60e01b835260048301526024820152fd5b62004a5a915060803d8111620006255762000615818362003125565b5f620049b8565b5f905f908160018060a01b0360ca9181835416916040928351809581936370a0823160e01b83526004933085850152602095869160249586915afa97881562004da457869862004d6b575b508360a08260c95416895192838092631f30d2ed60e21b82525afa90811562004d61578991608091899162004d3e575b500151111562004af1575b5050505050505050565b85969897999a9293949591875b60d3548082101562004d225762004b1582620037d1565b50805485168b5260d08a528c8b20548516915f19810190811162004d105790868f62004b589386145f1462004cfa5762004b50925062003b1e565b8096620034bb565b948062004b73575b505062004b6d906200383a565b62004afe565b89929e9281898f8c908f9562004b9190888c999e998c541662003d1b565b51948593849263b6b55f2560e01b84528301528b5af190811562004cba578b9162004cc4575b5062004bc391620034bb565b948b5163b8c876b160e01b8152818982015289818981855afa90811562004cba5790888a8f8e908e95829562004c78575b5051958694859363795bd06760e01b85528401525af190811562004c6e578a9162004c34575b5062004c2b9062004b6d92620034bb565b9c905f62004b60565b90508881813d831162004c66575b62004c4e818362003125565b8101031262004c62575162004b6d62004c1a565b8980fd5b503d62004c42565b8c513d8c823e3d90fd5b9594505050505081813d831162004cb2575b62004c96818362003125565b8101031262004cae578c888a8d8d9451935f62004bf4565b8a80fd5b503d62004c8a565b8d513d8d823e3d90fd5b90508981813d831162004cf2575b62004cde818362003125565b8101031262004cae575162004bc362004bb7565b503d62004cd2565b62000b939150600162004b509301549062003aeb565b634e487b7160e01b8c5260118a52888cfd5b50505050509796505050505090505f8080808080808062004ae7565b62004d5a915060a03d8111620013145762001304818362003125565b5f62004adc565b88513d89823e3d90fd5b9097508481813d831162004d9c575b62004d86818362003125565b8101031262004d985751965f62004aac565b8580fd5b503d62004d7a565b87513d88823e3d90fd5b6099545f92919083805b60d35486101562004f0b5762004dce86620037d1565b5060018060a01b03809154168352602060d08152604091828520541690825163b8c876b160e01b8152600490838282015260249083818381885afa90811562004f01578a859493928b928b9162004ebf575b5062004e32929162000cea9162003aeb565b918887519687948593632e1a7d4d60e01b85528401525af192831562004eb65750849262004e7b575b505062004e6d9062004e7492620034bb565b956200383a565b9462004db8565b90809250813d831162004eae575b62004e95818362003125565b8101031262004eaa57518162004e6d62004e5b565b8280fd5b503d62004e89565b513d86823e3d90fd5b9394959250505081813d831162004ef9575b62004edd818362003125565b81010312620035d657518392919089908b9062004e3262004e20565b503d62004ed1565b86513d8a823e3d90fd5b9450505050565b6099549060d39262004f25845462003802565b945f5b8554811015620050705762004f3d81620037d1565b5060018060a01b03809154165f5260209060d08252604090815f2054169181519063b8c876b160e01b825260049184838201528181602481885afa9182156200506657918a918a935f9262005028575b505062004f9f9262000cea9162003aeb565b62004fab858c62003849565b5262004fb8848b62003849565b5190833b156200066d5762004fe7935f928389938651978895869485936304f7371f60e51b8552840162004228565b03925af19081156200501f5750906200500792916200500d57506200383a565b62004f28565b6200501890620030f5565b5f620018cf565b513d5f823e3d90fd5b819450809293503d83116200505e575b62005044818362003125565b81010312620044ec575051879089908262000cea62004f8d565b503d62005038565b84513d5f823e3d90fd5b509350505050565b60cd545f916001600160a01b0391821691908390815b60d3548610156200513d5783620050a587620037d1565b5054168352602060d0815283604091808784842054166004855180958193634641257d60e01b83525af19283156200513457508592620050f9575b505062004e6d90620050f292620034bb565b946200508e565b90809250813d83116200512c575b62005113818362003125565b810103126200512857518162004e6d620050e0565b8380fd5b503d62005107565b513d87823e3d90fd5b92919450928160c95416936040918251906301e5eb1d60e41b82526080826004818a5afa918215620053f8579762000cea9697988193620053d3575b506200518b6020809401518962003aeb565b91620051a76200519f60cb54809562003aff565b809a62003b1e565b9660cf548881105f14620053be5760e0620051e5620051dd600493975b620051d189809e62003b1e565b9d8e60cc549062003aeb565b809c62003b1e565b9c895192838092630fb2f235851b82525afa908115620053b45786928594928c92869162005391575b508d8062005372575b50878062005342575b505081620052c5575b505060048851809581936355d54c8b60e11b83525af1908115620052ba575062005298575b504260ce558560cf5494888151948b865285015283015260608201528260808201527f2a86a2dac4c093ea22ea0b6ce2656ba747d1c7c6a105875b1859e73b1dfae4f260a03392a2565b620052b290833d8511620005d157620005c0818362003125565b505f6200524e565b8651903d90823e3d90fd5b8091929450620052e0935060ca54169060cd54169062003d1b565b855163221068e360e11b815260048101899052848160248186865af180156200533857918591849362005316575b8a9062005229565b6200533090833d8511620005d157620005c0818362003125565b505f6200530e565b87513d85823e3d90fd5b620053599183878160ca5416920151169062003cce565b620053678760cf5462003b1e565b60cf555f8762005220565b6200538a908360ca5416846080850151169062003cce565b8d62005217565b620053ad915060e03d811162000fc75762000fb7818362003125565b5f6200520e565b88513d86823e3d90fd5b50600460e0620051e5620051dd8b97620051c4565b620053f091935060803d8111620012525762001242818362003125565b915f62005179565b84513d8a823e3d90fdfe608060409080825261065580380380916100198285610345565b833981019082818303126103415761003081610368565b6020828101516001600160401b039391929184821161034157019084601f83011215610341578151916100628361037c565b9261006f88519485610345565b8084528484019685828401011161034157868561008c9301610397565b803b156102ef578551635c60da1b60e01b80825292916001600160a01b0316908481600481855afa9081156102e5575f916102b0575b503b15610253577fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d5080546001600160a01b03191682179055865192817f1cf3b03a6cf19fa2baba4df148e9dcabedea7f8a5c07840e207e5c089be95d3e5f80a282511580159061024c575b610140575b87516101e9908161046c8239f35b6004848693819382525afa918215610242575f92610208575b5085519360608501908111858210176101f4578652602784527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c83850152660819985a5b195960ca1b84870152516101de945f918291845af4903d156101eb573d6101c38161037c565b906101d088519283610345565b81525f81943d92013e6103b8565b505f808080808080610132565b606092506103b8565b634e487b7160e01b5f52604160045260245ffd5b90918382813d831161023b575b61021f8183610345565b81010312610238575061023190610368565b905f610159565b80fd5b503d610215565b86513d5f823e3d90fd5b505f61012d565b865162461bcd60e51b815260048101859052603060248201527f455243313936373a20626561636f6e20696d706c656d656e746174696f6e206960448201526f1cc81b9bdd08184818dbdb9d1c9858dd60821b6064820152608490fd5b908582813d83116102de575b6102c68183610345565b8101031261023857506102d890610368565b5f6100c2565b503d6102bc565b88513d5f823e3d90fd5b855162461bcd60e51b815260048101849052602560248201527f455243313936373a206e657720626561636f6e206973206e6f74206120636f6e6044820152641d1c9858dd60da1b6064820152608490fd5b5f80fd5b601f909101601f19168101906001600160401b038211908210176101f457604052565b51906001600160a01b038216820361034157565b6001600160401b0381116101f457601f01601f191660200190565b5f5b8381106103a85750505f910152565b8181015183820152602001610399565b9192901561041a57508151156103cc575090565b3b156103d55790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b82519091501561042d5750805190602001fd5b6044604051809262461bcd60e51b82526020600483015261045d8151809281602486015260208686019101610397565b601f01601f19168101030190fdfe608080604052366100ae575f8051602061019483398151915254635c60da1b60e01b8252602090829060049082906001600160a01b03165afa9081156100a3575f9161004c575b50610130565b6020903d821161009b575b601f8201601f191681016001600160401b038111828210176100875761008193506040520161014e565b5f610046565b634e487b7160e01b84526041600452602484fd5b3d9150610057565b6040513d5f823e3d90fd5b5f8051602061019483398151915254604051635c60da1b60e01b815290602090829060049082906001600160a01b03165afa9081156100a3575f916100f35750610130565b60203d8111610129575b601f8101601f191682016001600160401b03811183821017610087576100819350604052810190610174565b503d6100fd565b5f808092368280378136915af43d82803e1561014a573d90f35b3d90fd5b602090607f190112610170576080516001600160a01b03811681036101705790565b5f80fd5b9081602091031261017057516001600160a01b0381168103610170579056fea3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d50a2646970667358221220154e89cc7e679cb69e1d8882e12ba602836b05f93143e9d37ab837fa7321383a64736f6c6343000815003344da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be4cceb9f6740fd9767d7e56be5c06d7e2874dd1a95877b67e8263ffdf3ad0db5d28be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220a8b62959f14870530fc055903fe1d106e6f788e59b50f7248d026b470c8efac264736f6c63430008150033