Full lifecycle view
Gateway_FinalizeBlock
Block timestamp → commit, incl. the gateway-build-block call for block #164990
Measured from on-chain timestamps only: the EVM block timestamp, which the producer chose when it planned the block (whole seconds), and the record time (commit) of the Gateway_FinalizeBlock transaction; a commit that reads slightly before the block timestamp (rounding) shows as 0. The gateway-build-block external call runs inside that transaction and is not timed on its own; the import into the execution layers follows the commit and its time is not observable here, so those steps are markers without a duration.
Total
3.65s
Block → Canton commit
3.65s
block timestamp → record time (±1s)
Measured from on-chain timestamps: the EVM block timestamp, chosen when the producer planned the block, and the record time (commit) of the Gateway_FinalizeBlock transaction. The block timestamp is whole seconds and follows Canton's ledger time, so the span carries up to ±1s of rounding; a commit that reads slightly before the block timestamp shows as 0.
0xf95ff91185012a05f200837a12008080b95fa360806040526000805534801561001457600080fd5b50615f7e80620000256000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c80637af635a611610104578063aeb4fcc1116100a2578063c4d66de811610071578063c4d66de8146103b8578063d14a0983146103cb578063d4fe3f99146103de578063f213ef0e146103f157600080fd5b8063aeb4fcc11461036c578063b736aaeb1461037f578063bb01c37c14610392578063c19d61e4146103a557600080fd5b80638a751a60116100de5780638a751a601461032057806396e957c414610333578063a7fa83b714610346578063ad4e64321461035957600080fd5b80637af635a6146102e05780637c4e560b146102fa5780638a4936761461030d57600080fd5b806348d9fba91161017157806363c9b8601161014b57806363c9b86014610294578063682cf264146102a75780637626cde3146102ba5780637641f3d9146102cd57600080fd5b806348d9fba91461025b5780634b4e67531461026e578063571f03e51461028157600080fd5b80631df970bd116101ad5780631df970bd1461020f57806326d2cec2146102225780633036b4391461023557806338ae0cc31461024857600080fd5b806302fb45e6146101d4578063145f5892146101e95780631d2118f9146101fc575b600080fd5b6101e76101e2366004614e76565b610404565b005b6101e76101f7366004614f20565b6104d5565b6101e761020a366004614f4c565b61066f565b6101e761021d366004614fa3565b6107f4565b6101e7610230366004614f20565b610a90565b6101e7610243366004614fc7565b610c8f565b6101e7610256366004614fee565b610e59565b6101e7610269366004614fee565b610fe4565b6101e761027c366004614f20565b611170565b6101e761028f366004614f20565b611484565b6101e76102a236600461501c565b611614565b6101e76102b5366004614fee565b611681565b6101e76102c8366004615039565b611880565b6101e76102db366004615074565b611925565b6102e8600281565b60405190815260200160405180910390f35b6101e7610308366004615091565b611a77565b6101e761031b366004614fa3565b611e01565b6101e761032e366004614fee565b61208c565b6101e7610341366004614fee565b61228f565b6101e7610354366004614fee565b61240e565b6101e7610367366004615039565b6125bb565b6101e761037a366004614f20565b61262d565b6101e761038d366004614fee565b61285a565b6101e76103a03660046150cc565b6129e7565b6101e76103b3366004615128565b612a59565b6101e76103c636600461501c565b6130cd565b6101e76103d9366004614f20565b6132e8565b6101e76103ec3660046151f6565b613478565b6101e76103ff366004614fee565b613757565b61040c6138d6565b60355473ffffffffffffffffffffffffffffffffffffffff1660005b828110156104cf5773a44d343b621a66f42c531f6a69b7545b18480b7863df59b8b28386868581811061045d5761045d61522b565b905060200281019061046f919061525a565b6040518363ffffffff1660e01b815260040161048c92919061534c565b60006040518083038186803b1580156104a457600080fd5b505af41580156104b8573d6000803e3d6000fd5b5050505080806104c7906155fb565b915050610428565b50505050565b6104dd613b01565b6035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063c44b11f790602401602060405180830381865afa15801561054e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105729190615768565b805190915060b01c640fffffffff1661058b8284613d28565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152845160248301529091169063f51e435b90604401600060405180830381600087803b1580156105ff57600080fd5b505af1158015610613573d6000803e3d6000fd5b5050604080518481526020810187905273ffffffffffffffffffffffffffffffffffffffff881693507f09808b1fc5abde94edf02fdde393bea0d2e4795999ba31695472848638b5c29f9250015b60405180910390a250505050565b610677613b01565b6035546040517f35ea6a7500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff848116600483015260009216906335ea6a75906024016101e060405180830381865afa1580156106e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061070d91906157ba565b6101608101516035546040517f1d2118f900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8781166004830152868116602483015293945091921690631d2118f990604401600060405180830381600087803b15801561078b57600080fd5b505af115801561079f573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff85811682528781166020830152881693507fdb8dada53709ce4988154324196790c2e4a60c377e1256790946f83b87db3c33925001610661565b6107fc613dcc565b60408051808201909152600281527f313900000000000000000000000000000000000000000000000000000000000060208201526127106fffffffffffffffffffffffffffffffff83161115610888576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b60405180910390fd5b50603554604080517f6a99c036000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff1691636a99c0369160048083019260209291908290030181865afa1580156108f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091d9190615966565b603554604080517f074b2e43000000000000000000000000000000000000000000000000000000008152905192935073ffffffffffffffffffffffffffffffffffffffff9091169163bcb6e52291839163074b2e43916004808201926020929091908290030181865afa158015610998573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109bc9190615966565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681526fffffffffffffffffffffffffffffffff91821660048201529085166024820152604401600060405180830381600087803b158015610a2657600080fd5b505af1158015610a3a573d6000803e3d6000fd5b5050604080516fffffffffffffffffffffffffffffffff8086168252861660208201527fe7e0c75e1fc2d0bd83dc85d59f085b3e763107c392fb368e85572b292f1f557693500190505b60405180910390a15050565b610a98613b01565b60408051808201909152600281527f37300000000000000000000000000000000000000000000000000000000000006020820152612710821115610b09576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b506035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063c44b11f790602401602060405180830381865afa158015610b7b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b9f9190615768565b805190915060981c61ffff16610bb58284613f5f565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152845160248301529091169063f51e435b90604401600060405180830381600087803b158015610c2957600080fd5b505af1158015610c3d573d6000803e3d6000fd5b5050604080518481526020810187905273ffffffffffffffffffffffffffffffffffffffff881693507fb5b0a963825337808b6e3154de8e98027595a5cad4219bb3a9bc55b192f4b391925001610661565b610c97613dcc565b60408051808201909152600281527f32320000000000000000000000000000000000000000000000000000000000006020820152612710821115610d08576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b50603554604080517f272d9072000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163272d90729160048083019260209291908290030181865afa158015610d79573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9d9190615983565b6035546040517f3036b4390000000000000000000000000000000000000000000000000000000081526004810185905291925073ffffffffffffffffffffffffffffffffffffffff1690633036b43990602401600060405180830381600087803b158015610e0a57600080fd5b505af1158015610e1e573d6000803e3d6000fd5b505060408051848152602081018690527f30b17cb587a89089d003457c432f73e22aeee93de425e92224ba01080260ecd99350019050610a84565b610e61613b01565b6035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063c44b11f790602401602060405180830381865afa158015610ed2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ef69190615768565b9050610f028183614000565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152835160248301529091169063f51e435b90604401600060405180830381600087803b158015610f7657600080fd5b505af1158015610f8a573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff8716815285151560208201527f74adf6aaf58c08bc4f993640385e136522375ea3d1589a10d02adbb906c67d1c935001905060405180910390a1505050565b610fec614045565b6035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063c44b11f790602401602060405180830381865afa15801561105d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110819190615768565b905061108d818361426c565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152835160248301529091169063f51e435b90604401600060405180830381600087803b15801561110157600080fd5b505af1158015611115573d6000803e3d6000fd5b505050508273ffffffffffffffffffffffffffffffffffffffff167fe188d542a5f11925d3a3af33703cdd30a43cb3e8066a3cf68b1b57f61a5a94b583604051611163911515815260200190565b60405180910390a2505050565b611178613b01565b60408051808201909152600281527f363700000000000000000000000000000000000000000000000000000000000060208201526127108211156111e9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b506035546040517fab2b51f600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301529091169063ab2b51f690602401600060405180830381600087803b15801561125757600080fd5b505af115801561126b573d6000803e3d6000fd5b50506035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff868116600483015260009450909116915063c44b11f790602401602060405180830381865afa1580156112e2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113069190615768565b805190915060401c61ffff1661131c82846142b1565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152845160248301529091169063f51e435b90604401600060405180830381600087803b15801561139057600080fd5b505af11580156113a4573d6000803e3d6000fd5b5050604080518481526020810187905273ffffffffffffffffffffffffffffffffffffffff881693507fb46e2b82b0c2cf3d7d9dece53635e165c53e0eaa7a44f904d61a2b7174826aef92500160405180910390a26035546040517f98c7da4e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152909116906398c7da4e90602401600060405180830381600087803b15801561146657600080fd5b505af115801561147a573d6000803e3d6000fd5b5050505050505050565b61148c613b01565b6035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063c44b11f790602401602060405180830381865afa1580156114fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115219190615768565b805190915060741c640fffffffff1661153a8284614352565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152845160248301529091169063f51e435b90604401600060405180830381600087803b1580156115ae57600080fd5b505af11580156115c2573d6000803e3d6000fd5b5050604080518481526020810187905273ffffffffffffffffffffffffffffffffffffffff881693507f0263602682188540a2d633561c0b4453b7d8566285e99f9f6018b8ef2facef49925001610661565b61161c613dcc565b604080518082018252600281527f3830000000000000000000000000000000000000000000000000000000000000602082015290517f08c379a000000000000000000000000000000000000000000000000000000000815261087f9190600401615953565b611689613b01565b6035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063c44b11f790602401602060405180830381865afa1580156116fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061171e9190615768565b9050816117a057805160408051808201909152600281527f3838000000000000000000000000000000000000000000000000000000000000602082015290670800000000000000161561179e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b505b6117aa81836143f6565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152835160248301529091169063f51e435b90604401600060405180830381600087803b15801561181e57600080fd5b505af1158015611832573d6000803e3d6000fd5b505050508273ffffffffffffffffffffffffffffffffffffffff167f2443ba28e8d1d88d531a3d90b981816a4f3b3c7f1fd4085c6029e81d1b7a570d83604051611163911515815260200190565b611888613dcc565b6035546040517ff5b50e7000000000000000000000000000000000000000000000000000000000815273a44d343b621a66f42c531f6a69b7545b18480b789163f5b50e70916118f29173ffffffffffffffffffffffffffffffffffffffff1690859060040161599c565b60006040518083038186803b15801561190a57600080fd5b505af415801561191e573d6000803e3d6000fd5b5050505050565b61192d61443b565b603554604080517fd1946dbc000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163d1946dbc91600480830192869291908290030181865afa15801561199c573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526119e29190810190615aa1565b905060005b8151811015611a7257600073ffffffffffffffffffffffffffffffffffffffff16828281518110611a1a57611a1a61522b565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614611a6057611a60828281518110611a5257611a5261522b565b602002602001015184610fe4565b80611a6a816155fb565b9150506119e7565b505050565b611a7f613b01565b60408051808201909152600281527f3230000000000000000000000000000000000000000000000000000000000000602082015282841115611aee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b506035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152600092169063c44b11f790602401602060405180830381865afa158015611b60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b849190615768565b90508215611c805760408051808201909152600281527f323000000000000000000000000000000000000000000000000000000000000060208201526127108311611bfc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b50612710611c0a84846145ce565b11156040518060400160405280600281526020017f323000000000000000000000000000000000000000000000000000000000000081525090611c7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b50611cf7565b60408051808201909152600281527f323000000000000000000000000000000000000000000000000000000000000060208201528215611ced576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b50611cf785614611565b611d0181856147c2565b611d0b818461485d565b611d1581836148fe565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8781166004830152835160248301529091169063f51e435b90604401600060405180830381600087803b158015611d8957600080fd5b505af1158015611d9d573d6000803e3d6000fd5b5050604080518781526020810187905290810185905273ffffffffffffffffffffffffffffffffffffffff881692507f637febbda9275aea2e85c0ff690444c8d87eb2e8339bbede9715abcc89cb0995915060600160405180910390a25050505050565b611e09613dcc565b60408051808201909152600281527f313900000000000000000000000000000000000000000000000000000000000060208201526127106fffffffffffffffffffffffffffffffff83161115611e8c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b50603554604080517f074b2e43000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163074b2e439160048083019260209291908290030181865afa158015611efd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f219190615966565b603554604080517f6a99c036000000000000000000000000000000000000000000000000000000008152905192935073ffffffffffffffffffffffffffffffffffffffff9091169163bcb6e5229185918491636a99c0369160048083019260209291908290030181865afa158015611f9d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fc19190615966565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526fffffffffffffffffffffffffffffffff928316600482015291166024820152604401600060405180830381600087803b15801561202a57600080fd5b505af115801561203e573d6000803e3d6000fd5b5050604080516fffffffffffffffffffffffffffffffff8086168252861660208201527f71aba182c9d0529b516de7a78bed74d49c207ef7e152f52f7ea5d8730138f6439350019050610a84565b612094613b01565b6035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063c44b11f790602401602060405180830381865afa158015612105573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121299190615768565b905081156121af5780516704000000000000001615156040518060400160405280600281526020017f3330000000000000000000000000000000000000000000000000000000000000815250906121ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b505b6121b9818361499f565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152835160248301529091169063f51e435b90604401600060405180830381600087803b15801561222d57600080fd5b505af1158015612241573d6000803e3d6000fd5b505050508273ffffffffffffffffffffffffffffffffffffffff167f0b64d0941719acd363f1a6be3d8525d8ec9d71738f7445aabcd88d7939b472e783604051611163911515815260200190565b612297613b01565b6035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063c44b11f790602401602060405180830381865afa158015612308573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061232c9190615768565b905061233881836149e4565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152835160248301529091169063f51e435b90604401600060405180830381600087803b1580156123ac57600080fd5b505af11580156123c0573d6000803e3d6000fd5b505050508273ffffffffffffffffffffffffffffffffffffffff167f0c4443d258a350d27dc50c378b2ebf165e6469725f786d21b30cab16823f558783604051611163911515815260200190565b612416613b01565b80156124255761242582614a29565b6035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063c44b11f790602401602060405180830381865afa158015612496573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124ba9190615768565b905060006124d2825167400000000000000016151590565b90506124de8284614bbf565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152845160248301529091169063f51e435b90604401600060405180830381600087803b15801561255257600080fd5b505af1158015612566573d6000803e3d6000fd5b5050604080518415158152861515602082015273ffffffffffffffffffffffffffffffffffffffff881693507f842a280b07e8e502a9101f32a3b768ebaba3655556dd674f0831900861fc674b925001610661565b6125c3613dcc565b6035546040517fb0f0935500000000000000000000000000000000000000000000000000000000815273a44d343b621a66f42c531f6a69b7545b18480b789163b0f09355916118f29173ffffffffffffffffffffffffffffffffffffffff1690859060040161599c565b612635613b01565b6035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063c44b11f790602401602060405180830381865afa1580156126a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126ca9190615768565b805190915060d41c64ffffffffff16806126e7576126e784614611565b6126f18284614c04565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152845160248301529091169063f51e435b90604401600060405180830381600087803b15801561276557600080fd5b505af1158015612779573d6000803e3d6000fd5b50505050826000141561280c576035546040517fe43e88a100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86811660048301529091169063e43e88a190602401600060405180830381600087803b1580156127f357600080fd5b505af1158015612807573d6000803e3d6000fd5b505050505b604080518281526020810185905273ffffffffffffffffffffffffffffffffffffffff8616917f6824a6c7fbc10d2979b1f1ccf2dd4ed0436541679a661dedb5c10bd4be8306829101610661565b612862613dcc565b806128705761287082614611565b6035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063c44b11f790602401602060405180830381865afa1580156128e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129059190615768565b90506129118183614ca8565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152835160248301529091169063f51e435b90604401600060405180830381600087803b15801561298557600080fd5b505af1158015612999573d6000803e3d6000fd5b505050508273ffffffffffffffffffffffffffffffffffffffff167fc36c7d11ba01a5869d52aa4a3781939dab851cbc9ee6e7fdcedc7d58898a3f1e83604051611163911515815260200190565b6129ef613dcc565b6035546040517fb13c96a800000000000000000000000000000000000000000000000000000000815273a44d343b621a66f42c531f6a69b7545b18480b789163b13c96a8916118f29173ffffffffffffffffffffffffffffffffffffffff16908590600401615b53565b612a61613b01565b60408051808201909152600281527f3231000000000000000000000000000000000000000000000000000000000000602082015261ffff8716612ad1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b5060408051808201909152600281527f3231000000000000000000000000000000000000000000000000000000000000602082015261ffff8616612b42576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b508461ffff168661ffff1611156040518060400160405280600281526020017f323100000000000000000000000000000000000000000000000000000000000081525090612bbd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b5060408051808201909152600281527f3231000000000000000000000000000000000000000000000000000000000000602082015261271061ffff861611612c32576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b50612710612c4761ffff8781169087166145ce565b11156040518060400160405280600281526020017f323100000000000000000000000000000000000000000000000000000000000081525090612cb7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b50603554604080517fd1946dbc000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163d1946dbc91600480830192869291908290030181865afa158015612d27573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052612d6d9190810190615aa1565b905060005b8151811015612f5557603554825160009173ffffffffffffffffffffffffffffffffffffffff169063c44b11f790859085908110612db257612db261522b565b60200260200101516040518263ffffffff1660e01b8152600401612df2919073ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b602060405180830381865afa158015612e0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e339190615768565b805190915060a81c60ff168a60ff161415612f4257805161ffff168961ffff16116040518060400160405280600281526020017f323100000000000000000000000000000000000000000000000000000000000081525090612ec2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b50805160101c61ffff168861ffff16116040518060400160405280600281526020017f323100000000000000000000000000000000000000000000000000000000000081525090612f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b505b5080612f4d816155fb565b915050612d72565b50603560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d579ea7d896040518060a001604052808b61ffff1681526020018a61ffff1681526020018961ffff1681526020018873ffffffffffffffffffffffffffffffffffffffff16815260200187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050509152506040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815261304c929190600401615c92565b600060405180830381600087803b15801561306657600080fd5b505af115801561307a573d6000803e3d6000fd5b505050508760ff167f0acf8b4a3cace10779798a89a206a0ae73a71b63acdd3be2801d39c2ef7ab3cb8888888888886040516130bb96959493929190615d08565b60405180910390a25050505050505050565b60015460029060ff16806130e05750303b155b806130ec575060005481115b613178576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f436f6e747261637420696e7374616e63652068617320616c726561647920626560448201527f656e20696e697469616c697a6564000000000000000000000000000000000000606482015260840161087f565b60015460ff161580156131b557600180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168117905560008290555b603480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8516908117909155604080517f026b1d5f000000000000000000000000000000000000000000000000000000008152905163026b1d5f916004808201926020929091908290030181865afa15801561324c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132709190615d54565b603580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff929092169190911790558015611a7257600180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055505050565b6132f0613b01565b6035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063c44b11f790602401602060405180830381865afa158015613361573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133859190615768565b805190915060501c640fffffffff1661339e8284614ced565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152845160248301529091169063f51e435b90604401600060405180830381600087803b15801561341257600080fd5b505af1158015613426573d6000803e3d6000fd5b5050604080518481526020810187905273ffffffffffffffffffffffffffffffffffffffff881693507fc51aca575985d521c5072ad11549bad77013bb786d57f30f94b40ed8f8dc9bc4925001610661565b613480613b01565b6035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063c44b11f790602401602060405180830381865afa1580156134f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135159190615768565b905060ff82161561365f576035546040517f6c6f6ae100000000000000000000000000000000000000000000000000000000815260ff8416600482015260009173ffffffffffffffffffffffffffffffffffffffff1690636c6f6ae190602401600060405180830381865afa158015613592573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526135d89190810190615d71565b825190915060101c61ffff16816020015161ffff16116040518060400160405280600281526020017f31370000000000000000000000000000000000000000000000000000000000008152509061365c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b50505b805160009060a81c60ff1690506136798260ff8516614d91565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152845160248301529091169063f51e435b90604401600060405180830381600087803b1580156136ed57600080fd5b505af1158015613701573d6000803e3d6000fd5b50506040805160ff80861682528716602082015273ffffffffffffffffffffffffffffffffffffffff881693507f5bb69795b6a2ea222d73a5f8939c23471a1f85a99c7ca43c207f1b71f10c6264925001610661565b61375f613b01565b6035546040517fc44b11f700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063c44b11f790602401602060405180830381865afa1580156137d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137f49190615768565b90506138008183614e31565b6035546040517ff51e435b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152835160248301529091169063f51e435b90604401600060405180830381600087803b15801561387457600080fd5b505af1158015613888573d6000803e3d6000fd5b505050508273ffffffffffffffffffffffffffffffffffffffff167fc8ff3cc5b0fddaa3e6ebbbd7438f43393e4ea30e88b80ad016c1bc094655034d83604051611163911515815260200190565b603454604080517f707cd716000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163707cd7169160048083019260209291908290030181865afa158015613946573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061396a9190615d54565b6040517f13ee32e000000000000000000000000000000000000000000000000000000000815233600482015290915073ffffffffffffffffffffffffffffffffffffffff8216906313ee32e090602401602060405180830381865afa1580156139d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139fb9190615e9c565b80613a8f57506040517f7be53ca100000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff821690637be53ca190602401602060405180830381865afa158015613a6b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a8f9190615e9c565b6040518060400160405280600181526020017f350000000000000000000000000000000000000000000000000000000000000081525090613afd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b5050565b603454604080517f707cd716000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163707cd7169160048083019260209291908290030181865afa158015613b71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b959190615d54565b6040517f674b5e4d00000000000000000000000000000000000000000000000000000000815233600482015290915073ffffffffffffffffffffffffffffffffffffffff82169063674b5e4d90602401602060405180830381865afa158015613c02573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c269190615e9c565b80613cba57506040517f7be53ca100000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff821690637be53ca190602401602060405180830381865afa158015613c96573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613cba9190615e9c565b6040518060400160405280600181526020017f340000000000000000000000000000000000000000000000000000000000000081525090613afd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b60408051808201909152600281527f37320000000000000000000000000000000000000000000000000000000000006020820152640fffffffff821115613d9c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b5081517ffffffffffff000000000ffffffffffffffffffffffffffffffffffffffffffff1660b09190911b179052565b603454604080517f707cd716000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163707cd7169160048083019260209291908290030181865afa158015613e3c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e609190615d54565b6040517f7be53ca100000000000000000000000000000000000000000000000000000000815233600482015290915073ffffffffffffffffffffffffffffffffffffffff821690637be53ca190602401602060405180830381865afa158015613ecd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ef19190615e9c565b6040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525090613afd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b60408051808201909152600281527f3730000000000000000000000000000000000000000000000000000000000000602082015261ffff821115613fd0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b5081517fffffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffff1660989190911b179052565b603d8161400e576000614011565b60015b83517fffffffffffffffffffffffffffffffffffffffffffffffffdfffffffffffffff1660ff9190911690911b1790915250565b603454604080517f707cd716000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163707cd7169160048083019260209291908290030181865afa1580156140b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140d99190615d54565b6040517f7be53ca100000000000000000000000000000000000000000000000000000000815233600482015290915073ffffffffffffffffffffffffffffffffffffffff821690637be53ca190602401602060405180830381865afa158015614146573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061416a9190615e9c565b806141fe57506040517f2500f2b600000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff821690632500f2b690602401602060405180830381865afa1580156141da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141fe9190615e9c565b6040518060400160405280600181526020017f330000000000000000000000000000000000000000000000000000000000000081525090613afd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b603c8161427a57600061427d565b60015b83517fffffffffffffffffffffffffffffffffffffffffffffffffefffffffffffffff1660ff9190911690911b1790915250565b60408051808201909152600281527f3637000000000000000000000000000000000000000000000000000000000000602082015261ffff821115614322576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b5081517fffffffffffffffffffffffffffffffffffffffffffff0000ffffffffffffffff1660409190911b179052565b60408051808201909152600281527f36390000000000000000000000000000000000000000000000000000000000006020820152640fffffffff8211156143c6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b5081517fffffffffffffffffffffffffff000000000fffffffffffffffffffffffffffff1660749190911b179052565b603a81614404576000614407565b60015b83517ffffffffffffffffffffffffffffffffffffffffffffffffffbffffffffffffff1660ff9190911690911b1790915250565b603454604080517f707cd716000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163707cd7169160048083019260209291908290030181865afa1580156144ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906144cf9190615d54565b6040517f2500f2b600000000000000000000000000000000000000000000000000000000815233600482015290915073ffffffffffffffffffffffffffffffffffffffff821690632500f2b690602401602060405180830381865afa15801561453c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906145609190615e9c565b6040518060400160405280600181526020017f320000000000000000000000000000000000000000000000000000000000000081525090613afd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b600081157fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec778390048411151761460357600080fd5b506127109102611388010490565b600080603460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e860accb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015614681573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906146a59190615d54565b6040517f35ea6a7500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015291909116906335ea6a759060240161018060405180830381865afa158015614714573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906147389190615eb9565b5050505050505050509250925050806000148015614754575081155b6040518060400160405280600281526020017f3138000000000000000000000000000000000000000000000000000000000000815250906104cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b60408051808201909152600281527f3633000000000000000000000000000000000000000000000000000000000000602082015261ffff821115614833576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b5081517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000016179052565b60408051808201909152600281527f3634000000000000000000000000000000000000000000000000000000000000602082015261ffff8211156148ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b5081517fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000ffff1660109190911b179052565b60408051808201909152600281527f3635000000000000000000000000000000000000000000000000000000000000602082015261ffff82111561496f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b5081517fffffffffffffffffffffffffffffffffffffffffffffffffffff0000ffffffff1660209190911b179052565b603b816149ad5760006149b0565b60015b83517ffffffffffffffffffffffffffffffffffffffffffffffffff7ffffffffffffff1660ff9190911690911b1790915250565b6039816149f25760006149f5565b60015b83517ffffffffffffffffffffffffffffffffffffffffffffffffffdffffffffffffff1660ff9190911690911b1790915250565b603454604080517fe860accb000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163e860accb9160048083019260209291908290030181865afa158015614a99573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614abd9190615d54565b6040517f4d44ac4f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301529190911690634d44ac4f90602401602060405180830381865afa158015614b2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614b4f9190615983565b60408051808201909152600281527f393000000000000000000000000000000000000000000000000000000000000060208201529091508115611a72576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b603e81614bcd576000614bd0565b60015b83517fffffffffffffffffffffffffffffffffffffffffffffffffbfffffffffffffff1660ff9190911690911b1790915250565b60408051808201909152600281527f3733000000000000000000000000000000000000000000000000000000000000602082015264ffffffffff821115614c78576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b5081517ff0000000000fffffffffffffffffffffffffffffffffffffffffffffffffffff1660d49190911b179052565b603881614cb6576000614cb9565b60015b83517ffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffff1660ff9190911690911b1790915250565b60408051808201909152600281527f36380000000000000000000000000000000000000000000000000000000000006020820152640fffffffff821115614d61576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b5081517ffffffffffffffffffffffffffffffffffff000000000ffffffffffffffffffff1660509190911b179052565b60408051808201909152600281527f3731000000000000000000000000000000000000000000000000000000000000602082015260ff821115614e01576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f9190615953565b5081517fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff1660a89190911b179052565b603f81614e3f576000614e42565b60015b83517fffffffffffffffffffffffffffffffffffffffffffffffff7fffffffffffffff1660ff9190911690911b1790915250565b60008060208385031215614e8957600080fd5b823567ffffffffffffffff80821115614ea157600080fd5b818501915085601f830112614eb557600080fd5b813581811115614ec457600080fd5b8660208260051b8501011115614ed957600080fd5b60209290920196919550909350505050565b73ffffffffffffffffffffffffffffffffffffffff81168114614f0d57600080fd5b50565b8035614f1b81614eeb565b919050565b60008060408385031215614f3357600080fd5b8235614f3e81614eeb565b946020939093013593505050565b60008060408385031215614f5f57600080fd5b8235614f6a81614eeb565b91506020830135614f7a81614eeb565b809150509250929050565b6fffffffffffffffffffffffffffffffff81168114614f0d57600080fd5b600060208284031215614fb557600080fd5b8135614fc081614f85565b9392505050565b600060208284031215614fd957600080fd5b5035919050565b8015158114614f0d57600080fd5b6000806040838503121561500157600080fd5b823561500c81614eeb565b91506020830135614f7a81614fe0565b60006020828403121561502e57600080fd5b8135614fc081614eeb565b60006020828403121561504b57600080fd5b813567ffffffffffffffff81111561506257600080fd5b820160c08185031215614fc057600080fd5b60006020828403121561508657600080fd5b8135614fc081614fe0565b600080600080608085870312156150a757600080fd5b84356150b281614eeb565b966020860135965060408601359560600135945092505050565b6000602082840312156150de57600080fd5b813567ffffffffffffffff8111156150f557600080fd5b820160e08185031215614fc057600080fd5b803560ff81168114614f1b57600080fd5b61ffff81168114614f0d57600080fd5b600080600080600080600060c0888a03121561514357600080fd5b61514c88615107565b9650602088013561515c81615118565b9550604088013561516c81615118565b9450606088013561517c81615118565b9350608088013561518c81614eeb565b925060a088013567ffffffffffffffff808211156151a957600080fd5b818a0191508a601f8301126151bd57600080fd5b8135818111156151cc57600080fd5b8b60208285010111156151de57600080fd5b60208301945080935050505092959891949750929550565b6000806040838503121561520957600080fd5b823561521481614eeb565b915061522260208401615107565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe2183360301811261528e57600080fd5b9190910192915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126152cd57600080fd5b830160208101925035905067ffffffffffffffff8111156152ed57600080fd5b8036038313156152fc57600080fd5b9250929050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b73ffffffffffffffffffffffffffffffffffffffff83168152604060208201526153966040820161537c84614f10565b73ffffffffffffffffffffffffffffffffffffffff169052565b60006153a460208401614f10565b73ffffffffffffffffffffffffffffffffffffffff1660608301526153cb60408401614f10565b73ffffffffffffffffffffffffffffffffffffffff1660808301526153f260608401615107565b60ff1660a083015261540660808401614f10565b73ffffffffffffffffffffffffffffffffffffffff1660c083015261542d60a08401614f10565b73ffffffffffffffffffffffffffffffffffffffff1660e083015261545460c08401614f10565b6101006154788185018373ffffffffffffffffffffffffffffffffffffffff169052565b61548460e08601614f10565b91506101206154aa8186018473ffffffffffffffffffffffffffffffffffffffff169052565b6154b682870187615298565b935091506101e061014081818801526154d461022088018686615303565b94506154e283890189615298565b945092507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc06101608189880301818a015261551e878787615303565b965061552c838b018b615298565b9650945061018092508189880301838a0152615549878787615303565b9650615557818b018b615298565b96509450506101a08189880301818a0152615573878787615303565b9650615581838b018b615298565b965094506101c092508189880301838a015261559e878787615303565b96506155ac818b018b615298565b96509450508088870301838901526155c5868686615303565b95506155d3828a018a615298565b9550935080888703016102008901525050506155f0838383615303565b979650505050505050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415615654577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040516101e0810167ffffffffffffffff811182821017156156ae576156ae61565b565b60405290565b60405160a0810167ffffffffffffffff811182821017156156ae576156ae61565b565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561571e5761571e61565b565b604052919050565b60006020828403121561573857600080fd5b6040516020810181811067ffffffffffffffff8211171561575b5761575b61565b565b6040529151825250919050565b60006020828403121561577a57600080fd5b614fc08383615726565b8051614f1b81614f85565b805164ffffffffff81168114614f1b57600080fd5b8051614f1b81615118565b8051614f1b81614eeb565b60006101e082840312156157cd57600080fd5b6157d561568a565b6157df8484615726565b81526157ed60208401615784565b60208201526157fe60408401615784565b604082015261580f60608401615784565b606082015261582060808401615784565b608082015261583160a08401615784565b60a082015261584260c0840161578f565b60c082015261585360e084016157a4565b60e08201526101006158668185016157af565b908201526101206158788482016157af565b9082015261014061588a8482016157af565b9082015261016061589c8482016157af565b908201526101806158ae848201615784565b908201526101a06158c0848201615784565b908201526101c06158d2848201615784565b908201529392505050565b60005b838110156158f85781810151838201526020016158e0565b838111156104cf5750506000910152565b600081518084526159218160208601602086016158dd565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000614fc06020830184615909565b60006020828403121561597857600080fd5b8151614fc081614f85565b60006020828403121561599557600080fd5b5051919050565b600073ffffffffffffffffffffffffffffffffffffffff80851683526040602084015283356159ca81614eeb565b8116604084015260208401356159df81614eeb565b1660608301526159f26040840184615298565b60c06080850152615a0861010085018284615303565b915050615a186060850185615298565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0808685030160a0870152615a4e848385615303565b9350615a5c60808801614f10565b73ffffffffffffffffffffffffffffffffffffffff811660c08801529250615a8760a0880188615298565b93509150808685030160e0870152506155f0838383615303565b60006020808385031215615ab457600080fd5b825167ffffffffffffffff80821115615acc57600080fd5b818501915085601f830112615ae057600080fd5b815181811115615af257615af261565b565b8060051b9150615b038483016156d7565b8181529183018401918481019088841115615b1d57600080fd5b938501935b83851015615b475784519250615b3783614eeb565b8282529385019390850190615b22565b98975050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff8085168352604060208401528335615b8181614eeb565b166040830152615b9360208401614f10565b73ffffffffffffffffffffffffffffffffffffffff166060830152615bba60408401614f10565b73ffffffffffffffffffffffffffffffffffffffff166080830152615be26060840184615298565b60e060a0850152615bf861012085018284615303565b915050615c086080850185615298565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0808685030160c0870152615c3e848385615303565b9350615c4c60a08801614f10565b73ffffffffffffffffffffffffffffffffffffffff811660e08801529250615c7760c0880188615298565b935091508086850301610100870152506155f0838383615303565b60ff8316815260406020820152600061ffff8084511660408401528060208501511660608401528060408501511660808401525073ffffffffffffffffffffffffffffffffffffffff60608401511660a0830152608083015160a060c0840152615cff60e0840182615909565b95945050505050565b600061ffff8089168352808816602084015280871660408401525073ffffffffffffffffffffffffffffffffffffffff8516606083015260a06080830152615b4760a083018486615303565b600060208284031215615d6657600080fd5b8151614fc081614eeb565b60006020808385031215615d8457600080fd5b825167ffffffffffffffff80821115615d9c57600080fd5b9084019060a08287031215615db057600080fd5b615db86156b4565b8251615dc381615118565b815282840151615dd281615118565b818501526040830151615de481615118565b60408201526060830151615df781614eeb565b6060820152608083015182811115615e0e57600080fd5b80840193505086601f840112615e2357600080fd5b825182811115615e3557615e3561565b565b615e65857fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116016156d7565b92508083528785828601011115615e7b57600080fd5b615e8a818685018787016158dd565b50608081019190915295945050505050565b600060208284031215615eae57600080fd5b8151614fc081614fe0565b6000806000806000806000806000806000806101808d8f031215615edc57600080fd5b8c519b5060208d01519a5060408d0151995060608d0151985060808d0151975060a08d0151965060c08d0151955060e08d015194506101008d015193506101208d015192506101408d01519150615f366101608e0161578f565b90509295989b509295989b509295989b56fea2646970667358221220d7e60e552f0a3cbcf0250c12750bdc29aef48d753c0f162f1f37ad612377336264736f6c634300080a0033831c946da06191c17603cf12299fe8ebdbc84bef0cb02c3e55848e392e6d44237b0d0ff818a00adf50d4145beae65d82f533213ee51a65c0d4495c1da821b9b7db79a2812ca0