0 txs
1 call
constructor
constructor(address stateView, address positionManager, address pancakeInfinityCLPoolManager, address pancakeInfinityPositionManager)
functions
PANCAKE_INFINITY_CLPOOLMANAGER
viewfunction PANCAKE_INFINITY_CLPOOLMANAGER() view returns (address)
PANCAKE_INFINITY_POSITION_MANAGER
viewfunction PANCAKE_INFINITY_POSITION_MANAGER() view returns (address)
POSITION_MANAGER
viewfunction POSITION_MANAGER() view returns (address)
queryAlgebraTicksSuperCompact
viewfunction queryAlgebraTicksSuperCompact(address pool, uint256 len) view returns (bytes)
queryAlgebraTicksSuperCompact2
viewfunction queryAlgebraTicksSuperCompact2(address pool, uint256 iteration) view returns (bytes)
queryAlgebraTicksSuperCompact3_back
viewfunction queryAlgebraTicksSuperCompact3_back(address pool, uint256 len) view returns (bytes)
queryAlgebraTicksSuperCompact3
viewfunction queryAlgebraTicksSuperCompact3(address pool, uint256 len) view returns (bytes)
queryHorizonTicksSuperCompact
viewfunction queryHorizonTicksSuperCompact(address pool, uint256 iteration) view returns (bytes)
queryIzumiSuperCompact
viewfunction queryIzumiSuperCompact(address pool, uint256 len) view returns (bytes, bytes)
queryPancakeInfinityTicksSuperCompact
viewfunction queryPancakeInfinityTicksSuperCompact(bytes32 poolId, uint256 len) view returns (bytes)
queryUniv3TicksSuperCompact
viewfunction queryUniv3TicksSuperCompact(address pool, uint256 len) view returns (bytes)
queryUniv4TicksSuperCompact
viewfunction queryUniv4TicksSuperCompact(bytes32 poolId, uint256 len) view returns (bytes)
STATE_VIEW
viewfunction STATE_VIEW() view returns (address)
events
No events.
errors
No errors.
creation bytecode
0x6101006040523480156200001257600080fd5b5060405162004a7938038062004a79833981016040819052620000359162000075565b6001600160a01b0393841660805291831660a052821660c0521660e052620000d2565b80516001600160a01b03811681146200007057600080fd5b919050565b600080600080608085870312156200008c57600080fd5b620000978562000058565b9350620000a76020860162000058565b9250620000b76040860162000058565b9150620000c76060860162000058565b905092959194509250565b60805160a05160c05160e05161491a6200015f6000396000818161019801526109de01526000818161013d01528181610ab301528181610d1401528181610e1c01528181610f6f01526110b901526000818160d901526131300152600081816101d2015281816131d101528181613437015281816135410152818161369001526137dc015261491a6000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80637df8773a1161008c578063c684206c11610066578063c684206c14610207578063ca883bec1461021a578063d1c62f261461022d578063f9f59a771461024057600080fd5b80637df8773a146101ba578063aa4cfccd146101cd578063c38f8f35146101f457600080fd5b80631bea83fe146100d45780632d6d225e146101185780634421ab4b14610138578063512bcef91461015f578063594a1bf3146101725780636099710714610193575b600080fd5b6100fb7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b61012b6101263660046140bc565b610253565b60405161010f9190614138565b6100fb7f000000000000000000000000000000000000000000000000000000000000000081565b61012b61016d366004614152565b6109b4565b6101856101803660046140bc565b6111de565b60405161010f929190614174565b6100fb7f000000000000000000000000000000000000000000000000000000000000000081565b61012b6101c83660046140bc565b611ca6565b6100fb7f000000000000000000000000000000000000000000000000000000000000000081565b61012b6102023660046140bc565b6122f9565b61012b6102153660046140bc565b612a1a565b61012b6102283660046140bc565b612d88565b61012b61023b366004614152565b613104565b61012b61024e3660046140bc565b6138fe565b606061025d614060565b836001600160a01b031663d0c93a7c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561029b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102bf91906141b9565b60020b815260408051600481526024810182526020810180516001600160e01b03166339db007960e21b17905290516000916001600160a01b0387169161030691906141d4565b600060405180830381855afa9150503d8060008114610341576040519150601f19603f3d011682016040523d82523d6000602084013e610346565b606091505b506040015160020b602084018190528351610100935061036792509061421c565b610371919061421c565b600290810b604083015281516101009061038f90620d89e71961421c565b610399919061421c565b6103a39190614256565b60020b60808201528051610100906103be90620d89e861421c565b6103c8919061421c565b6103d390600161427b565b600290810b60a083015260208201516000910b1215610466576101006001610100836000015160020b846020015160020b61040e91906142a0565b61041891906142a0565b61042291906142ce565b61042e906101006142f5565b826000015160020b836020015160020b61044891906142a0565b61045291906142ce565b61045c9190614325565b60c0820152610493565b610100816000015160020b826020015160020b6104839190614339565b61048d9190614325565b60c08201525b60c081015160e08201526020810151600060029190910b12156104c757604081018051906104c08261434d565b60020b9052505b604081015160020b60608281019190915260005b6104e6600286614339565b8110801561050157508260a0015160020b836040015160020b125b1561071e576040838101519051630633bf1f60e51b815260019190910b60048201526000906001600160a01b0388169063c677e3e090602401602060405180830381865afa158015610557573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061057b9190614370565b905080156106fa5760c084015190811c905b610100811080156105a757506105a4600288614339565b83105b156106f8576001821680156106de576000866000015160020b8388604001516101006105d39190614389565b60020b6105e091906143a9565b6105ea91906142f5565b905060008a6001600160a01b03168260405160240161060b91815260200190565b60408051601f198184030181529181526020820180516001600160e01b031663f30dba9360e01b1790525161064091906141d4565b600060405180830381855afa9150503d806000811461067b576040519150601f19603f3d011682016040523d82523d6000602084013e610680565b606091505b506040810151909250905060006106a46001600160801b038316608086901b6143a9565b6040519091506106ba908a9083906020016143d1565b604051602081830303815290604052985087806106d6906143f3565b985050505050505b5060019190911c90806106f0816143f3565b91505061058d565b505b600060c0850152604084018051906107118261440c565b60020b9052506104db9050565b60015b858210801561073d5750836080015160020b846060015160020b135b156109a7576060840151604051630633bf1f60e51b815260019190910b60048201526000906001600160a01b0389169063c677e3e090602401602060405180830381865afa158015610793573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107b79190614370565b90506000811180156107cc575060e085015115155b1561097e57816107dc57806107ff565b6101008560e001516101006107f1919061442d565b6107fb9190614325565b81901b5b9050600060018660e00151610814919061442d565b90505b8784101561097c57600160ff1b82168015610954576000876000015160020b8389606001516101006108499190614389565b60020b61085691906143a9565b61086091906142f5565b905060008b6001600160a01b03168260405160240161088191815260200190565b60408051601f198184030181529181526020820180516001600160e01b031663f30dba9360e01b179052516108b691906141d4565b600060405180830381855afa9150503d80600081146108f1576040519150601f19603f3d011682016040523d82523d6000602084013e6108f6565b606091505b5060408101519092509050600061091a6001600160801b038316608086901b6143a9565b604051909150610930908b9083906020016143d1565b6040516020818303038152906040529950888061094c906143f3565b995050505050505b600183901b925081600003610969575061097c565b508061097481614440565b915050610817565b505b61010060e0860152606085018051600093509061099a8261434d565b60020b9052506107219050565b5090925050505b92915050565b60606109be614060565b60405166ffffffffffffff19851660248201526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169060440160408051601f198184030181529181526020820180516001600160e01b03166386b6be7d60e01b17905251610a3791906141d4565b600060405180830381855afa9150503d8060008114610a72576040519150601f19603f3d011682016040523d82523d6000602084013e610a77565b606091505b5060c08101519092509050610a918160101c62ffffff1690565b60020b83525050604051633205590760e21b81526004810185905284906000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c815641c90602401608060405180830381865afa158015610b02573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b26919061446a565b505060020b6020850181905284516101009350610b4492509061421c565b610b4e919061421c565b600290810b6040840152825161010090610b6c90620d89e71961421c565b610b76919061421c565b610b809190614256565b60020b6080830152815161010090610b9b90620d89e861421c565b610ba5919061421c565b610bb090600161427b565b600290810b60a084015260208301516000910b1215610c43576101006001610100846000015160020b856020015160020b610beb91906142a0565b610bf591906142a0565b610bff91906142ce565b610c0b906101006142f5565b836000015160020b846020015160020b610c2591906142a0565b610c2f91906142ce565b610c399190614325565b60c0830152610c70565b610100826000015160020b836020015160020b610c609190614339565b610c6a9190614325565b60c08301525b60c082015160e08301526020820151600060029190910b1215610ca45760408201805190610c9d8261434d565b60020b9052505b604082015160020b60608381019190915260005b610cc3600287614339565b81108015610cde57508360a0015160020b846040015160020b125b15610f22576040808501519051633e1a977b60e11b81526004810185905260019190910b60248201526000906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690637c352ef690604401602060405180830381865afa158015610d5b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7f9190614370565b90508015610efe5760c085015190811c905b61010081108015610dab5750610da8600289614339565b83105b15610efc57600182168015610ee2576000876000015160020b838960400151610100610dd79190614389565b60020b610de491906143a9565b610dee91906142f5565b6040516316a8822960e21b815260048101899052600282900b60248201529091506000906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635aa208a490604401608060405180830381865afa158015610e63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e8791906144e9565b60208101519091506000610ea86001600160801b038316608086901b6143a9565b604051909150610ebe908a9083906020016143d1565b60405160208183030381529060405298508780610eda906143f3565b985050505050505b5060019190911c9080610ef4816143f3565b915050610d91565b505b600060c086015260408501805190610f158261440c565b60020b905250610cb89050565b60015b8682108015610f415750846080015160020b856060015160020b135b156111d2576060850151604051633e1a977b60e11b81526004810186905260019190910b60248201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690637c352ef690604401602060405180830381865afa158015610fbe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fe29190614370565b9050600081118015610ff7575060e086015115155b156111a95781611007578061102a565b6101008660e0015161010061101c919061442d565b6110269190614325565b81901b5b9050600060018760e0015161103f919061442d565b90505b888410156111a757600160ff1b8216801561117f576000886000015160020b838a606001516101006110749190614389565b60020b61108191906143a9565b61108b91906142f5565b6040516316a8822960e21b8152600481018a9052600282900b60248201529091506000906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635aa208a490604401608060405180830381865afa158015611100573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061112491906144e9565b602081015190915060006111456001600160801b038316608086901b6143a9565b60405190915061115b908b9083906020016143d1565b60405160208183030381529060405299508880611177906143f3565b995050505050505b600183901b92508160000361119457506111a7565b508061119f81614440565b915050611042565b505b61010060e087015260608601805160009350906111c58261434d565b60020b905250610f259050565b50909695505050505050565b6060806111e9614060565b846001600160a01b03166358c51ce66040518163ffffffff1660e01b8152600401602060405180830381865afa158015611227573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061124b91906141b9565b60020b815260408051600481526024810182526020810180516001600160e01b031663c19d93fb60e01b17905290516000916001600160a01b0388169161129291906141d4565b600060405180830381855afa9150503d80600081146112cd576040519150601f19603f3d011682016040523d82523d6000602084013e6112d2565b606091505b506040015160020b60208401819052835161010093506112f392509061421c565b6112fd919061421c565b600290810b604083015281516101009061131b90620d89e71961421c565b611325919061421c565b61132f9190614256565b60020b608082015280516101009061134a90620d89e861421c565b611354919061421c565b61135f90600161427b565b600290810b60a083015260208201516000910b12156113f2576101006001610100836000015160020b846020015160020b61139a91906142a0565b6113a491906142a0565b6113ae91906142ce565b6113ba906101006142f5565b826000015160020b836020015160020b6113d491906142a0565b6113de91906142ce565b6113e89190614325565b60c082015261141f565b610100816000015160020b826020015160020b61140f9190614339565b6114199190614325565b60c08201525b60c081015160e08201526020810151600060029190910b1215611453576040810180519061144c8261434d565b60020b9052505b604081015160020b6060828101919091528060005b611473600288614339565b8110801561148e57508360a0015160020b846040015160020b125b1561184e576040848101519051634c507b9760e11b815260019190910b60048201526000906001600160a01b038a16906398a0f72e90602401602060405180830381865afa1580156114e4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115089190614370565b9050801561182a5760c085015190811c905b6101008110156118285760018216801561180e576000876000015160020b83896040015161010061154b9190614389565b60020b61155891906143a9565b61156291906142f5565b905060008c6001600160a01b031663edcba3b28a6000015184611585919061421c565b6040516001600160e01b031960e084901b16815260029190910b6004820152602401602060405180830381865afa1580156115c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e891906141b9565b90508060011660020b6001036116cd576040516375c0e0d560e01b8152600283900b60048201526000906001600160a01b038f16906375c0e0d59060240160a060405180830381865afa158015611643573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116679190614579565b50505091505080600f0b6000146116cb5760006116946001600160801b038316608086901b60120b6143a9565b6040519091506116aa908b9083906020016143d1565b604051602081830303815290604052995087806116c6906143f3565b985050505b505b8060021660020b60020361180b576000808e6001600160a01b0316638790aca3856040518263ffffffff1660e01b8152600401611713919060029190910b815260200190565b61014060405180830381865afa158015611731573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175591906145c9565b505050509550505050509150816001600160801b0316600014158061178257506001600160801b03811615155b15611808576040805160e086901b601e0b60208201526001600160901b0319609085811b8216602484015284901b166032820152600091016040516020818303038152906040526117d290614667565b905089816040516020016117e79291906143d1565b60405160208183030381529060405299508880611803906143f3565b995050505b50505b50505b5060019190911c9080611820816143f3565b91505061151a565b505b600060c0860152604085018051906118418261440c565b60020b9052506114689050565b60015b878210801561186d5750846080015160020b856060015160020b135b15611c98576060850151604051634c507b9760e11b815260019190910b60048201526000906001600160a01b038b16906398a0f72e90602401602060405180830381865afa1580156118c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118e79190614370565b90506000811180156118fc575060e086015115155b15611c6f578161190c578061192f565b6101008660e00151610100611921919061442d565b61192b9190614325565b81901b5b9050600060018760e00151611944919061442d565b90505b89841015611c6d57600160ff1b82168015611c45576000886000015160020b838a606001516101006119799190614389565b60020b61198691906143a9565b61199091906142f5565b905060008d6001600160a01b031663edcba3b28b60000151846119b3919061421c565b6040516001600160e01b031960e084901b16815260029190910b6004820152602401602060405180830381865afa1580156119f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a1691906141b9565b90508060011660020b600103611b045760008e6001600160a01b03166375c0e0d5846040518263ffffffff1660e01b8152600401611a5d919060029190910b815260200190565b60a060405180830381865afa158015611a7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a9e9190614579565b50505091505080600f0b600014611b02576000611acb6001600160801b038316608086901b60120b6143a9565b604051909150611ae1908c9083906020016143d1565b6040516020818303038152906040529a508880611afd906143f3565b995050505b505b8060021660020b600203611c42576000808f6001600160a01b0316638790aca3856040518263ffffffff1660e01b8152600401611b4a919060029190910b815260200190565b61014060405180830381865afa158015611b68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b8c91906145c9565b505050509550505050509150816001600160801b03166000141580611bb957506001600160801b03811615155b15611c3f576040805160e086901b601e0b60208201526001600160901b0319609085811b8216602484015284901b16603282015260009101604051602081830303815290604052611c0990614667565b90508a81604051602001611c1e9291906143d1565b6040516020818303038152906040529a508980611c3a906143f3565b9a5050505b50505b50505b600183901b925081600003611c5a5750611c6d565b5080611c6581614440565b915050611947565b505b61010060e08701526060860180516000935090611c8b8261434d565b60020b9052506118519050565b509197909650945050505050565b6060611cb0614060565b60408051600481526024810182526020810180516001600160e01b03166339db007960e21b17905290516000916001600160a01b03871691611cf291906141d4565b600060405180830381855afa9150503d8060008114611d2d576040519150601f19603f3d011682016040523d82523d6000602084013e611d32565b606091505b506040015160020b60208401819052611d509250610100915061421c565b600290810b6040830152611d6a610100620d89e71961421c565b611d749190614256565b60020b6080820152611d8b610100620d89e861421c565b611d9690600161427b565b600290810b60a083015260208201516000910b1215611dee57610100808260200151611dc19061468e565b60020b611dce9190614325565b611dda9061010061442d565b611de49190614325565b60c0820152611e09565b610100816020015160020b611e039190614325565b60c08201525b60c081015160e08201526020810151600060029190910b1215611e3d5760408101805190611e368261434d565b60020b9052505b604081015160020b60608281019190915260005b611e5c600286614339565b81108015611e7757508260a0015160020b836040015160020b125b15612082576040838101519051630633bf1f60e51b815260019190910b60048201526000906001600160a01b0388169063c677e3e090602401602060405180830381865afa158015611ecd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ef19190614370565b9050801561205e5760c084015190811c905b61010081108015611f1d5750611f1a600288614339565b83105b1561205c57600182168015612042576000828760400151610100611f419190614389565b60020b611f4e91906143a9565b905060008a6001600160a01b031682604051602401611f6f91815260200190565b60408051601f198184030181529181526020820180516001600160e01b031663f30dba9360e01b17905251611fa491906141d4565b600060405180830381855afa9150503d8060008114611fdf576040519150601f19603f3d011682016040523d82523d6000602084013e611fe4565b606091505b506040810151909250905060006120086001600160801b038316608086901b6143a9565b60405190915061201e908a9083906020016143d1565b6040516020818303038152906040529850878061203a906143f3565b985050505050505b5060019190911c9080612054816143f3565b915050611f03565b505b600060c0850152604084018051906120758261440c565b60020b905250611e519050565b60015b85821080156120a15750836080015160020b846060015160020b135b156109a7576060840151604051630633bf1f60e51b815260019190910b60048201526000906001600160a01b0389169063c677e3e090602401602060405180830381865afa1580156120f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061211b9190614370565b9050600081118015612130575060e085015115155b156122d057816121405780612163565b6101008560e00151610100612155919061442d565b61215f9190614325565b81901b5b9050600060018660e00151612178919061442d565b90505b878410156122ce57600160ff1b821680156122a65760008288606001516101006121a59190614389565b60020b6121b291906143a9565b905060008b6001600160a01b0316826040516024016121d391815260200190565b60408051601f198184030181529181526020820180516001600160e01b031663f30dba9360e01b1790525161220891906141d4565b600060405180830381855afa9150503d8060008114612243576040519150601f19603f3d011682016040523d82523d6000602084013e612248565b606091505b5060408101519092509050600061226c6001600160801b038316608086901b6143a9565b604051909150612282908b9083906020016143d1565b6040516020818303038152906040529950888061229e906143f3565b995050505050505b600183901b9250816000036122bb57506122ce565b50806122c681614440565b91505061217b565b505b61010060e086015260608501805160009350906122ec8261434d565b60020b9052506120859050565b6060612303614060565b6001815260408051600481526024810182526020810180516001600160e01b03166339db007960e21b17905290516000916001600160a01b0387169161234991906141d4565b600060405180830381855afa9150503d8060008114612384576040519150601f19603f3d011682016040523d82523d6000602084013e612389565b606091505b506040015160020b602084015250600090506123a68460c8614389565b9050610100826000015183602001516123bf919061421c565b6123c9919061421c565b600290810b60408401528251602084015161010091906123ea908590614256565b6123f4919061421c565b6123fe919061421c565b6124089190614256565b60020b608083015281516020830151610100919061242790849061427b565b612431919061421c565b61243b919061421c565b61244690600161427b565b600290810b60a084015260208301516000910b12156124d9576101006001610100846000015160020b856020015160020b61248191906142a0565b61248b91906142a0565b61249591906142ce565b6124a1906101006142f5565b836000015160020b846020015160020b6124bb91906142a0565b6124c591906142ce565b6124cf9190614325565b60c0830152612506565b610100826000015160020b836020015160020b6124f69190614339565b6125009190614325565b60c08301525b60c082015160e08301526020820151600060029190910b121561253a57604082018051906125338261434d565b60020b9052505b604082015160020b60608381019190915260005b612559600287614339565b8110801561257457508360a0015160020b846040015160020b125b15612791576040848101519051630633bf1f60e51b815260019190910b60048201526000906001600160a01b0389169063c677e3e090602401602060405180830381865afa1580156125ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125ee9190614370565b9050801561276d5760c085015190811c905b6101008110801561261a5750612617600289614339565b83105b1561276b57600182168015612751576000876000015160020b8389604001516101006126469190614389565b60020b61265391906143a9565b61265d91906142f5565b905060008b6001600160a01b03168260405160240161267e91815260200190565b60408051601f198184030181529181526020820180516001600160e01b031663f30dba9360e01b179052516126b391906141d4565b600060405180830381855afa9150503d80600081146126ee576040519150601f19603f3d011682016040523d82523d6000602084013e6126f3565b606091505b506040810151909250905060006127176001600160801b038316608086901b6143a9565b60405190915061272d908a9083906020016143d1565b60405160208183030381529060405298508780612749906143f3565b985050505050505b5060019190911c9080612763816143f3565b915050612600565b505b600060c0860152604085018051906127848261440c565b60020b90525061254e9050565b60015b86821080156127b05750846080015160020b856060015160020b135b156111d2576060850151604051630633bf1f60e51b815260019190910b60048201526000906001600160a01b038a169063c677e3e090602401602060405180830381865afa158015612806573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282a9190614370565b905060008111801561283f575060e086015115155b156129f1578161284f5780612872565b6101008660e00151610100612864919061442d565b61286e9190614325565b81901b5b9050600060018760e00151612887919061442d565b90505b888410156129ef57600160ff1b821680156129c7576000886000015160020b838a606001516101006128bc9190614389565b60020b6128c991906143a9565b6128d391906142f5565b905060008c6001600160a01b0316826040516024016128f491815260200190565b60408051601f198184030181529181526020820180516001600160e01b031663f30dba9360e01b1790525161292991906141d4565b600060405180830381855afa9150503d8060008114612964576040519150601f19603f3d011682016040523d82523d6000602084013e612969565b606091505b5060408101519092509050600061298d6001600160801b038316608086901b6143a9565b6040519091506129a3908b9083906020016143d1565b604051602081830303815290604052995088806129bf906143f3565b995050505050505b600183901b9250816000036129dc57506129ef565b50806129e781614440565b91505061288a565b505b61010060e08701526060860180516000935090612a0d8261434d565b60020b9052506127949050565b60606000836001600160a01b031663217ac2376040518163ffffffff1660e01b8152600401608060405180830381865afa158015612a5c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a8091906146b0565b50925082915060009050612a95600286614339565b905060605b620d89e9600285900b128015612aaf57508186115b15612c0b5760405163f30dba9360e01b8152600285900b60048201526000906001600160a01b0389169063f30dba9390602401608060405180830381865afa158015612aff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b2391906146fb565b5090925060009150612b4790506001600160801b038316608088901b60120b6143a9565b604051909150612b5d90849083906020016143d1565b60408051808303601f190181529082905263c0ac75cf60e01b8252600288900b600483015293506000906001600160a01b038b169063c0ac75cf906024016040805180830381865afa158015612bb7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bdb919061473d565b9150508060020b8760020b03612bf357505050612c0b565b95508588612c0081614440565b995050505050612a9a565b620d89e819600284900b138015612c225750600086115b15612d7e5760405163f30dba9360e01b8152600284900b60048201526000906001600160a01b0389169063f30dba9390602401608060405180830381865afa158015612c72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c9691906146fb565b5090925060009150612cba90506001600160801b038316608087901b60120b6143a9565b604051909150612cd090849083906020016143d1565b60408051808303601f190181529082905263c0ac75cf60e01b8252600287900b600483015293506000906001600160a01b038b169063c0ac75cf906024016040805180830381865afa158015612d2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d4e919061473d565b5090508560020b8160020b03612d6657505050612d7e565b94508488612d7381614440565b995050505050612c0b565b9695505050505050565b60408051600481526024810182526020810180516001600160e01b031663bba0f17160e01b1790529051606091600091829182916001600160a01b03881691612dd0916141d4565b600060405180830381855afa9150503d8060008114612e0b576040519150601f19603f3d011682016040523d82523d6000602084013e612e10565b606091505b50915091508115612e365780806020019051810190612e2f91906141b9565b9250612ec8565b60408051600481526024810182526020810180516001600160e01b03166339db007960e21b17905290516001600160a01b03881691612e74916141d4565b600060405180830381855afa9150503d8060008114612eaf576040519150601f19603f3d011682016040523d82523d6000602084013e612eb4565b606091505b5090925090508115612ec857606081015192505b508190506000612ed9600286614339565b905060605b620d89e9600285900b128015612ef357508186115b15612ff05760405163f30dba9360e01b8152600285900b6004820152600090819081906001600160a01b038b169063f30dba939060240161012060405180830381865afa158015612f48573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f6c9190614770565b505050955095505050935050600083600f0b6001600160801b031660808960020b901b612f9991906143a9565b604051909150612faf90869083906020016143d1565b60405160208183030381529060405294508160020b8860020b03612fd65750505050612ff0565b8197508980612fe490614440565b9a505050505050612ede565b620d89e819600284900b1380156130075750600086115b15612d7e5760405163f30dba9360e01b8152600284900b6004820152600090819081906001600160a01b038b169063f30dba939060240161012060405180830381865afa15801561305c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130809190614770565b505050955095505050935050600083600f0b6001600160801b031660808860020b901b6130ad91906143a9565b6040519091506130c390869083906020016143d1565b60405160208183030381529060405294508260020b8760020b036130ea5750505050612d7e565b82965089806130f890614440565b9a505050505050612ff0565b606061310e614060565b6040516386b6be7d60e01b815266ffffffffffffff19851660048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906386b6be7d9060240160a060405180830381865afa15801561317f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131a39190614818565b606081015160020b8352604051633205590760e21b81526004810187905290915085906000908190819081907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c815641c90602401608060405180830381865afa158015613220573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613244919061446a565b505060020b602089018190528851610100965061326795509350915061421c9050565b613271919061421c565b600290810b604085015283516101009061328f90620d89e71961421c565b613299919061421c565b6132a39190614256565b60020b60808401528251610100906132be90620d89e861421c565b6132c8919061421c565b6132d390600161427b565b600290810b60a085015260208401516000910b1215613366576101006001610100856000015160020b866020015160020b61330e91906142a0565b61331891906142a0565b61332291906142ce565b61332e906101006142f5565b846000015160020b856020015160020b61334891906142a0565b61335291906142ce565b61335c9190614325565b60c0840152613393565b610100836000015160020b846020015160020b6133839190614339565b61338d9190614325565b60c08401525b60c083015160e08401526020830151600060029190910b12156133c757604083018051906133c08261434d565b60020b9052505b604083015160020b60608481019190915260005b6133e6600288614339565b8110801561340157508460a0015160020b856040015160020b125b1561364357604080860151905163071f32d360e21b81526004810185905260019190910b60248201526000906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631c7ccb4c90604401602060405180830381865afa15801561347e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134a29190614370565b9050801561361f5760c086015190811c905b610100811080156134ce57506134cb60028a614339565b83105b1561361d57600182168015613603576000886000015160020b838a604001516101006134fa9190614389565b60020b61350791906143a9565b61351191906142f5565b6040516332bb6ad560e21b815260048101899052600282900b602482015290915060009081906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063caedab54906044016040805180830381865afa158015613587573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135ab91906148ba565b909250905060006135c96001600160801b038316608086901b6143a9565b6040519091506135df908a9083906020016143d1565b604051602081830303815290604052985087806135fb906143f3565b985050505050505b5060019190911c9080613615816143f3565b9150506134b4565b505b600060c0870152604086018051906136368261440c565b60020b9052506133db9050565b60015b87821080156136625750856080015160020b866060015160020b135b156138f157606086015160405163071f32d360e21b81526004810186905260019190910b60248201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690631c7ccb4c90604401602060405180830381865afa1580156136df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137039190614370565b9050600081118015613718575060e087015115155b156138c85781613728578061374b565b6101008760e0015161010061373d919061442d565b6137479190614325565b81901b5b9050600060018860e00151613760919061442d565b90505b898410156138c657600160ff1b8216801561389e576000896000015160020b838b606001516101006137959190614389565b60020b6137a291906143a9565b6137ac91906142f5565b6040516332bb6ad560e21b8152600481018a9052600282900b602482015290915060009081906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063caedab54906044016040805180830381865afa158015613822573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061384691906148ba565b909250905060006138646001600160801b038316608086901b6143a9565b60405190915061387a908b9083906020016143d1565b60405160208183030381529060405299508880613896906143f3565b995050505050505b600183901b9250816000036138b357506138c6565b50806138be81614440565b915050613763565b505b61010060e088015260608701805160009350906138e48261434d565b60020b9052506136469050565b5090979650505050505050565b6060613908614060565b836001600160a01b031663d0c93a7c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613946573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061396a91906141b9565b60020b815260408051600481526024810182526020810180516001600160e01b0316633850c7bd60e01b17905290516000916001600160a01b038716916139b191906141d4565b600060405180830381855afa9150503d80600081146139ec576040519150601f19603f3d011682016040523d82523d6000602084013e6139f1565b606091505b506040015160020b6020840181905283516101009350613a1292509061421c565b613a1c919061421c565b600290810b6040830152815161010090613a3a90620d89e71961421c565b613a44919061421c565b613a4e9190614256565b60020b6080820152805161010090613a6990620d89e861421c565b613a73919061421c565b613a7e90600161427b565b600290810b60a083015260208201516000910b1215613b11576101006001610100836000015160020b846020015160020b613ab991906142a0565b613ac391906142a0565b613acd91906142ce565b613ad9906101006142f5565b826000015160020b836020015160020b613af391906142a0565b613afd91906142ce565b613b079190614325565b60c0820152613b3e565b610100816000015160020b826020015160020b613b2e9190614339565b613b389190614325565b60c08201525b60c081015160e08201526020810151600060029190910b1215613b725760408101805190613b6b8261434d565b60020b9052505b604081015160020b60608281019190915260005b613b91600286614339565b81108015613bac57508260a0015160020b836040015160020b125b15613dd057604083810151905163299ce14b60e11b815260019190910b60048201526000906001600160a01b03881690635339c29690602401602060405180830381865afa158015613c02573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c269190614370565b90508015613dac5760c084015190811c905b61010081108015613c525750613c4f600288614339565b83105b15613daa57600182168015613d90576000866000015160020b838860400151610100613c7e9190614389565b60020b613c8b91906143a9565b613c9591906142f5565b60408051600283900b60248083019190915282518083039091018152604490910182526020810180516001600160e01b031663f30dba9360e01b179052905191925060009182916001600160a01b038e1691613cf191906141d4565b600060405180830381855afa9150503d8060008114613d2c576040519150601f19603f3d011682016040523d82523d6000602084013e613d31565b606091505b5060408101519350915060009050613d566001600160801b038416608086901b6143a9565b604051909150613d6c908a9083906020016143d1565b60405160208183030381529060405298508780613d88906143f3565b985050505050505b5060019190911c9080613da2816143f3565b915050613c38565b505b600060c085015260408401805190613dc38261440c565b60020b905250613b869050565b60015b8582108015613def5750836080015160020b846060015160020b135b156109a757606084015160405163299ce14b60e11b815260019190910b60048201526000906001600160a01b03891690635339c29690602401602060405180830381865afa158015613e45573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e699190614370565b9050600081118015613e7e575060e085015115155b156140375781613e8e5780613eb1565b6101008560e00151610100613ea3919061442d565b613ead9190614325565b81901b5b9050600060018660e00151613ec6919061442d565b90505b8784101561403557600160ff1b8216801561400d576000876000015160020b838960600151610100613efb9190614389565b60020b613f0891906143a9565b613f1291906142f5565b60408051600283900b60248083019190915282518083039091018152604490910182526020810180516001600160e01b031663f30dba9360e01b179052905191925060009182916001600160a01b038f1691613f6e91906141d4565b600060405180830381855afa9150503d8060008114613fa9576040519150601f19603f3d011682016040523d82523d6000602084013e613fae565b606091505b5060408101519350915060009050613fd36001600160801b038416608086901b6143a9565b604051909150613fe9908b9083906020016143d1565b60405160208183030381529060405299508880614005906143f3565b995050505050505b600183901b9250816000036140225750614035565b508061402d81614440565b915050613ec9565b505b61010060e086015260608501805160009350906140538261434d565b60020b905250613dd39050565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081019190915290565b6001600160a01b03811681146140b957600080fd5b50565b600080604083850312156140cf57600080fd5b82356140da816140a4565b946020939093013593505050565b60005b838110156141035781810151838201526020016140eb565b50506000910152565b600081518084526141248160208601602086016140e8565b601f01601f19169290920160200192915050565b60208152600061414b602083018461410c565b9392505050565b6000806040838503121561416557600080fd5b50508035926020909101359150565b604081526000614187604083018561410c565b8281036020840152614199818561410c565b95945050505050565b8051600281900b81146141b457600080fd5b919050565b6000602082840312156141cb57600080fd5b61414b826141a2565b600082516141e68184602087016140e8565b9190910192915050565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60008160020b8360020b80614233576142336141f0565b627fffff1982146000198214161561424d5761424d614206565b90059392505050565b600282810b9082900b03627fffff198112627fffff821317156109ae576109ae614206565b600281810b9083900b01627fffff8113627fffff19821217156109ae576109ae614206565b6000826142af576142af6141f0565b600160ff1b8214600019841416156142c9576142c9614206565b500590565b81810360008312801583831316838312821617156142ee576142ee614206565b5092915050565b80820260008212600160ff1b8414161561431157614311614206565b81810583148215176109ae576109ae614206565b600082614334576143346141f0565b500690565b600082614348576143486141f0565b500490565b60008160020b627fffff19810361436657614366614206565b6000190192915050565b60006020828403121561438257600080fd5b5051919050565b60008260020b8260020b028060020b91508082146142ee576142ee614206565b80820182811260008312801582168215821617156143c9576143c9614206565b505092915050565b600083516143e38184602088016140e8565b9190910191825250602001919050565b60006001820161440557614405614206565b5060010190565b60008160020b627fffff810361442457614424614206565b60010192915050565b818103818111156109ae576109ae614206565b60008161444f5761444f614206565b506000190190565b805162ffffff811681146141b457600080fd5b6000806000806080858703121561448057600080fd5b845161448b816140a4565b9350614499602086016141a2565b92506144a760408601614457565b91506144b560608601614457565b905092959194509250565b80516001600160801b03811681146141b457600080fd5b8051600f81900b81146141b457600080fd5b6000608082840312156144fb57600080fd5b6040516080810181811067ffffffffffffffff8211171561452c57634e487b7160e01b600052604160045260246000fd5b604052614538836144c0565b8152614546602084016144d7565b602082015260408301516040820152606083015160608201528091505092915050565b805180151581146141b457600080fd5b600080600080600060a0868803121561459157600080fd5b855194506145a1602087016144d7565b935060408601519250606086015191506145bd60808701614569565b90509295509295909350565b6000806000806000806000806000806101408b8d0312156145e957600080fd5b6145f28b6144c0565b995061460060208c016144c0565b985060408b0151975060608b0151965061461c60808c016144c0565b955061462a60a08c016144c0565b945061463860c08c016144c0565b935061464660e08c016144c0565b92506101008b015191506101208b015190509295989b9194979a5092959850565b80516020808301519190811015614688576000198160200360031b1b821691505b50919050565b60008160020b627fffff1981036146a7576146a7614206565b60000392915050565b600080600080608085870312156146c657600080fd5b84516146d1816140a4565b93506146df602086016141a2565b92506146ed604086016141a2565b91506144b560608601614569565b6000806000806080858703121561471157600080fd5b61471a856144c0565b9350614728602086016144d7565b9250604085015191506144b5606086016144c0565b6000806040838503121561475057600080fd5b614759836141a2565b9150614767602084016141a2565b90509250929050565b60008060008060008060008060006101208a8c03121561478f57600080fd5b6147988a6144c0565b98506147a660208b016144d7565b975060408a0151965060608a015195506147c260808b016141a2565b94506147d060a08b016141a2565b935060c08a01516147e0816140a4565b60e08b015190935063ffffffff811681146147fa57600080fd5b91506148096101008b01614569565b90509295985092959850929598565b600060a0828403121561482a57600080fd5b60405160a0810181811067ffffffffffffffff8211171561485b57634e487b7160e01b600052604160045260246000fd5b6040528251614869816140a4565b81526020830151614879816140a4565b602082015261488a60408401614457565b604082015261489b606084016141a2565b606082015260808301516148ae816140a4565b60808201529392505050565b600080604083850312156148cd57600080fd5b6148d6836144c0565b9150614767602084016144d756fea264697066735822122073d3c16ef697d414fdecb83623a76cef2914eae8d978d7c714f7a9ca3503e66064736f6c63430008110033000000000000000000000000d13dd3d6e93f276fafc9db9e6bb47c1180aee0c40000000000000000000000007a4a5c919ae2541aed11041a1aeee68f1287f95b000000000000000000000000a0ffb9c1ce1fe56963b0321b32e7a0302114058b00000000000000000000000055f4c8aba71a1e923edc303eb4feff14608cc226