@towns-protocol/generated 0.0.244 → 0.0.246
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dev/abis/IAppRegistry.abi.json +297 -59
- package/dev/abis/IAppRegistry.abi.ts +297 -59
- package/dev/abis/IAppRegistryBase.abi.json +105 -0
- package/dev/abis/IAppRegistryBase.abi.ts +105 -0
- package/dev/abis/IEntitlementChecker.abi.json +5 -0
- package/dev/abis/IEntitlementChecker.abi.ts +5 -0
- package/dev/abis/IEntitlementCheckerBase.abi.json +5 -0
- package/dev/abis/IEntitlementCheckerBase.abi.ts +5 -0
- package/dev/abis/IEntitlementGated.abi.json +5 -0
- package/dev/abis/IEntitlementGated.abi.ts +5 -0
- package/dev/abis/IEntitlementGatedBase.abi.json +5 -0
- package/dev/abis/IEntitlementGatedBase.abi.ts +5 -0
- package/dev/abis/MembershipFacet.abi.json +5 -0
- package/dev/abis/MembershipFacet.abi.ts +5 -0
- package/dev/abis/MockEntitlementGated.abi.json +102 -0
- package/dev/abis/MockEntitlementGated.abi.ts +102 -0
- package/dev/typings/IAppRegistry.ts +373 -73
- package/dev/typings/MockEntitlementGated.ts +46 -0
- package/dev/typings/factories/IAppRegistry__factory.ts +297 -59
- package/dev/typings/factories/IEntitlementChecker__factory.ts +5 -0
- package/dev/typings/factories/MembershipFacet__factory.ts +6 -1
- package/dev/typings/factories/MockEntitlementGated__factory.ts +103 -1
- package/package.json +2 -2
|
@@ -1103,6 +1103,11 @@ const _abi = [
|
|
|
1103
1103
|
name: "EntitlementGated_InvalidEntitlement",
|
|
1104
1104
|
inputs: [],
|
|
1105
1105
|
},
|
|
1106
|
+
{
|
|
1107
|
+
type: "error",
|
|
1108
|
+
name: "EntitlementGated_InvalidValue",
|
|
1109
|
+
inputs: [],
|
|
1110
|
+
},
|
|
1106
1111
|
{
|
|
1107
1112
|
type: "error",
|
|
1108
1113
|
name: "EntitlementGated_NodeAlreadyVoted",
|
|
@@ -1508,7 +1513,7 @@ const _abi = [
|
|
|
1508
1513
|
] as const;
|
|
1509
1514
|
|
|
1510
1515
|
const _bytecode =
|
|
1511
|
-
"0x6080604052348015600e575f5ffd5b5060156019565b60bd565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef520008054640100000000900460ff16156064576040516366008a2d60e01b815260040160405180910390fd5b805463ffffffff908116101560ba57805463ffffffff191663ffffffff90811782556040519081527fe9c9b456cb2994b80aeef036cf59d26e9617df80f816a6ee5a5b4166e07e2f5c9060200160405180910390a15b50565b614f64806100ca5f395ff3fe608060405260043610610162575f3560e01c806379dda585116100c657806393b13cb71161007c578063a5a4103111610057578063a5a41031146103ab578063df9a9fe6146103bf578063e847abdd146103de575f5ffd5b806393b13cb71461035757806395d600c81461037857806397fb7c1e1461038c575f5ffd5b80638120f0ba116100ac5780638120f0ba146102f857806383f3f0dc146103255780638c625b0614610344575f5ffd5b806379dda585146102d15780637c9669ac146102e5575f5ffd5b80635becd24a1161011b578063686f768411610101578063686f76841461028b57806369d5f38a1461029e578063706b8e09146102bd575f5ffd5b80635becd24a14610233578063657e45e814610252575f5ffd5b806317c957091161014b57806317c95709146101ae5780633e9491a2146102025780635803909f14610214575f5ffd5b80630ef1be5f146101665780631278076a14610187575b5f5ffd5b348015610171575f5ffd5b50610185610180366004614392565b6103f2565b005b348015610192575f5ffd5b5061019b6104a7565b6040519081526020015b60405180910390f35b3480156101b9575f5ffd5b5061019b6101c8366004614400565b5f9081527f4775a23600034fdd9f073b224f794d51a58b35ba663a9602623ba7a5c09cce00602052604090205467ffffffffffffffff1690565b34801561020d575f5ffd5b504761019b565b34801561021f575f5ffd5b5061019b61022e366004614400565b610500565b34801561023e575f5ffd5b5061018561024d366004614400565b61055b565b34801561025d575f5ffd5b50610266610642565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101a5565b610185610299366004614522565b610681565b3480156102a9575f5ffd5b506101856102b8366004614400565b6106c5565b3480156102c8575f5ffd5b5061019b6107dd565b3480156102dc575f5ffd5b506102666107e6565b6101856102f3366004614400565b610825565b348015610303575f5ffd5b5061030c610868565b60405167ffffffffffffffff90911681526020016101a5565b348015610330575f5ffd5b5061018561033f366004614621565b610871565b61018561035236600461463c565b6108eb565b348015610362575f5ffd5b5061036b61091e565b6040516101a591906146a3565b348015610383575f5ffd5b5061019b610928565b348015610397575f5ffd5b506101856103a6366004614400565b610951565b3480156103b6575f5ffd5b5061019b610a3b565b3480156103ca575f5ffd5b506101856103d936600461463c565b610a92565b3480156103e9575f5ffd5b50610266610b6b565b6103fa610baa565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610465576040517f65f490650000000000000000000000000000000000000000000000000000000081523360048201526024015b60405180910390fd5b6104a382828080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610c6a92505050565b5050565b5f6104fb6104f67f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b610c95565b905090565b5f610555826105507f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b610e78565b92915050565b610563610baa565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146105c9576040517f65f4906500000000000000000000000000000000000000000000000000000000815233600482015260240161045c565b5f6105f27fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6035490565b9050801580159061060257508082115b15610630576106307fc3983b9100000000000000000000000000000000000000000000000000000000610f61565b61063982610f69565b6104a38261100d565b5f6104fb7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b3068929eee149b4bd21268540361069f5763ab143c065f526004601cfd5b3068929eee149b4bd21268556106b582826110cb565b3868929eee149b4bd21268555050565b6106cd610baa565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610733576040517f65f4906500000000000000000000000000000000000000000000000000000000815233600482015260240161045c565b61073c816111c9565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb608546040517f91b7f5ed0000000000000000000000000000000000000000000000000000000081526004810183905273ffffffffffffffffffffffffffffffffffffffff909116906391b7f5ed906024015f604051808303815f87803b1580156107c4575f5ffd5b505af11580156107d6573d5f5f3e3d5ffd5b5050505050565b5f6104fb611271565b5f6104fb7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6065473ffffffffffffffffffffffffffffffffffffffff1690565b3068929eee149b4bd2126854036108435763ab143c065f526004601cfd5b3068929eee149b4bd2126855610859338261133c565b3868929eee149b4bd212685550565b5f6104fb6114b6565b610879610baa565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146108df576040517f65f4906500000000000000000000000000000000000000000000000000000000815233600482015260240161045c565b6108e881611579565b50565b3068929eee149b4bd2126854036109095763ab143c065f526004601cfd5b3068929eee149b4bd2126855610859816115f4565b60606104fb611697565b5f6104fb7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6035490565b610959610baa565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146109bf576040517f65f4906500000000000000000000000000000000000000000000000000000000815233600482015260240161045c565b610a1381610a0e7f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b611749565b6108e8817fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb60355565b5f6104fb610a8d6104f67f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b61177a565b610a9a610baa565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610b00576040517f65f4906500000000000000000000000000000000000000000000000000000000815233600482015260240161045c565b610b09816118ed565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb60880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff831617905550565b5f6104fb7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6085473ffffffffffffffffffffffffffffffffffffffff1690565b5f807fd2f24d4f172e4e84e48e7c4125b6e904c29e5eba33ad4938fee51dd5dbd4b600805460018201546040517f6352211e000000000000000000000000000000000000000000000000000000008152600481019190915291925073ffffffffffffffffffffffffffffffffffffffff1690636352211e90602401602060405180830381865afa158015610c40573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c6491906146b5565b91505090565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb60c6104a3828261475f565b5f5f610c9f611271565b9050610cdf7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6085473ffffffffffffffffffffffffffffffffffffffff1690565b6040517f5cf4ee91000000000000000000000000000000000000000000000000000000008152600481018390526024810185905273ffffffffffffffffffffffffffffffffffffffff9190911690635cf4ee9190604401602060405180830381865afa158015610d51573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d759190614876565b91505f610d806107e6565b90505f8173ffffffffffffffffffffffffffffffffffffffff16631b159e2e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dcc573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610df09190614876565b905080841015610e70578173ffffffffffffffffffffffffffffffffffffffff16630eac306d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e43573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e679190614876565b95945050505050565b505050919050565b5f7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb60081610ea36107e6565b90505f8173ffffffffffffffffffffffffffffffffffffffff16631b159e2e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610eef573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f139190614876565b5f8781526009850160205260409020549091508015610f4057818110828218028118945050505050610555565b5f610f4a87610c95565b905082811083821802811898975050505050505050565b805f5260045ffd5b610f716107e6565b73ffffffffffffffffffffffffffffffffffffffff16632cbb9d136040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fb9573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fdd9190614876565b8111156108e8576108e87fc3983b9100000000000000000000000000000000000000000000000000000000610f61565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6078190557fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb60d80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556040517fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6009082907fab14a23e88fb272313490d4f20d63098e64fd38304c0e07a377db98c2b39b92f905f90a25050565b6110d482611a26565b5f6110dd611b1c565b905080156110ed576110ed611bb5565b6110f78383611c43565b5f82604051602001611109919061488d565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905290507f686f7684000000000000000000000000000000000000000000000000000000005f6111708661116b84338388611ce8565b611d1a565b90505f5f61117f883385611e55565b91509150806111bf5781156111b557851561119d5761119d836120aa565b6111a7838961222e565b6111b0886122b9565b6111bf565b6111bf83896123a8565b5050505050505050565b5f6111d26107e6565b73ffffffffffffffffffffffffffffffffffffffff16630eac306d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561121a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061123e9190614876565b9050808210156104a3576104a37f3447ac8e00000000000000000000000000000000000000000000000000000000610f61565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb60d545f907fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6009060ff16156112c85760070154919050565b6112d06107e6565b73ffffffffffffffffffffffffffffffffffffffff16632cbb9d136040518163ffffffff1660e01b8152600401602060405180830381865afa158015611318573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c649190614876565b5f6113468261240e565b905073ffffffffffffffffffffffffffffffffffffffff811661138c5761138c7f5fbd571700000000000000000000000000000000000000000000000000000000610f61565b5f6113956114b6565b67ffffffffffffffff1690505f6113f1846105507f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b905034811115611424576114247f34a7a93d00000000000000000000000000000000000000000000000000000000610f61565b5f61142f8683612418565b90505f61143c8284614914565b905080156114505761144e87826124e0565b505b5f61145b8434614914565b905080156114ac576114ac6114a47fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b308a84612656565b6111bf87866126ba565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6065474010000000000000000000000000000000000000000900467ffffffffffffffff165f8190036115765761150a6107e6565b73ffffffffffffffffffffffffffffffffffffffff16638120f0ba6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611552573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104fb9190614927565b90565b611582816127e8565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb606805467ffffffffffffffff90921674010000000000000000000000000000000000000000027fffffffff0000000000000000ffffffffffffffffffffffffffffffffffffffff909216919091179055565b6115fd81611a26565b5f611606611b1c565b9050801561161657611616611bb5565b5f638c625b0660e01b90505f6116408461116b84338860405180602001604052805f815250611ce8565b90505f5f61164f863385611e55565b915091508061168f57811561168557841561166d5761166d836128de565b611677838761222e565b611680866122b9565b61168f565b61168f83876123a8565b505050505050565b60607fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb600600c0180546116c8906146d0565b80601f01602080910402602001604051908101604052809291908181526020018280546116f4906146d0565b801561173f5780601f106117165761010080835404028352916020019161173f565b820191905f5260205f20905b81548152906001019060200180831161172257829003601f168201915b5050505050905090565b808210156104a3576104a37fccc9aa2e00000000000000000000000000000000000000000000000000000000610f61565b5f5f6117846107e6565b90505f8173ffffffffffffffffffffffffffffffffffffffff16631b159e2e6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156117d0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117f49190614876565b905080841015611873578173ffffffffffffffffffffffffffffffffffffffff16630eac306d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611847573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061186b9190614876565b949350505050565b61186b848373ffffffffffffffffffffffffffffffffffffffff16639f6542aa6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118c0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118e49190614942565b61ffff166129fc565b73ffffffffffffffffffffffffffffffffffffffff8116611931576119317f0e88bf4b00000000000000000000000000000000000000000000000000000000610f61565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6065473ffffffffffffffffffffffffffffffffffffffff166040517f8df80bd600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301529190911690638df80bd690602401602060405180830381865afa1580156119d5573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119f99190614977565b6108e8576108e87f0e88bf4b00000000000000000000000000000000000000000000000000000000610f61565b73ffffffffffffffffffffffffffffffffffffffff8116611a6a57611a6a7f5fbd571700000000000000000000000000000000000000000000000000000000610f61565b5f611a937fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6035490565b90508015801590611aee575080611aeb7f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b10155b156104a3576104a37f7efcdb4900000000000000000000000000000000000000000000000000000000610f61565b5f5f611b697f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b90505f611b74611271565b90505f611b7f612a4f565b905082821115611b92575f935050505090565b8015611bab57611ba26001612a78565b5f935050505090565b6001935050505090565b5f611c046104f67f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b90505f611c1082612ab5565b9050803410156104a3576104a37fb1296a8a00000000000000000000000000000000000000000000000000000000610f61565b602081015173ffffffffffffffffffffffffffffffffffffffff16156104a3578173ffffffffffffffffffffffffffffffffffffffff16816020015173ffffffffffffffffffffffffffffffffffffffff161480611cba5750602081015173ffffffffffffffffffffffffffffffffffffffff1633145b156104a3576104a37f5fbd571700000000000000000000000000000000000000000000000000000000610f61565b606084848484604051602001611d019493929190614990565b6040516020818303038152906040529050949350505050565b6040517fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606084901b1660208201524360348201525f908190605401604051602081830303815290604052805190602001209050611df981611dcd8387611d8086612ae5565b6040805160208082019590955273ffffffffffffffffffffffffffffffffffffffff9390931683820152606080840192909252805180840390920182526080909201909152805191012090565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b91505f611e0583612b2b565b511115611e3557611e357ff82e65c300000000000000000000000000000000000000000000000000000000610f61565b611e3f8284612c0b565b3415611e4e57611e4e82612c63565b5092915050565b5f5f5f611e966040518060400160405280600981526020017f4a6f696e53706163650000000000000000000000000000000000000000000000815250612cc1565b90505f611ea287612e59565b82519091505f5b8181101561209d575f848281518110611ec457611ec4614a0c565b60200260200101519050806040015115611ede5750612095565b5f5b816080015151811015612092575f82608001518281518110611f0457611f04614a0c565b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff16630cf0b5335f5f1b886040518060400160405280600981526020017f4a6f696e53706163650000000000000000000000000000000000000000000000815250604051602001611f749190614a39565b604051602081830303815290604052611f8c90614a4f565b6040518463ffffffff1660e01b8152600401611faa93929190614a91565b602060405180830381865afa158015611fc5573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611fe99190614977565b156120025750600197505f96506120a295505050505050565b8073ffffffffffffffffffffffffffffffffffffffff16632e1b61e46040518163ffffffff1660e01b8152600401602060405180830381865afa15801561204b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061206f9190614977565b15612089576120848c8c8c84875f015161319d565b600197505b50600101611ee0565b50505b600101611ea9565b505050505b935093915050565b5f6120f96104f67f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b90505f61210582612ab5565b90505f5f5f5f61211487612b2b565b8060200190518101906121279190614b61565b929650909450925090507fffffffff0000000000000000000000000000000000000000000000000000000084167f686f768400000000000000000000000000000000000000000000000000000000146121a3576121a37fda6153bd00000000000000000000000000000000000000000000000000000000610f61565b5f818060200190518101906121b89190614be5565b90505f5f6121c6868a612418565b90505f6121d787855f01518c6133b9565b90505f6121ee88866020015187604001518e613526565b905080826121fc858d614914565b6122069190614914565b6122109190614914565b93505050506122238986868a858d6136a8565b505050505050505050565b5f8281527f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e01602052604090205480156122b45761226b8382613733565b6122b46122ac7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b308484612656565b505050565b5f6122c261379b565b9050612346816123166104f67f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b5f9182527fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb609602052604090912055565b6123518260016137c2565b6123628161235d6114b6565b6126ba565b604051819073ffffffffffffffffffffffffffffffffffffffff8416907f2f40b0474996b72a4251e00fb9170cdd960deea1dc749772cbbab61395b9b576905f90a35050565b6123c08260405180602001604052805f815250612c0b565b6123ca828261222e565b60405173ffffffffffffffffffffffffffffffffffffffff8216907f86fd446d5c04e892d58b448a924dcd9c3ece3a5e0d2960b8c35cd475a5595a1f905f90a25050565b5f610555826137db565b5f6124228261177a565b90506105556124657fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b8461246e6107e6565b73ffffffffffffffffffffffffffffffffffffffff16634ccb20c06040518163ffffffff1660e01b8152600401602060405180830381865afa1580156124b6573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124da91906146b5565b84612656565b5f7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb600816125417fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b90507fffffffffffffffffffffffff111111111111111111111111111111111111111273ffffffffffffffffffffffffffffffffffffffff8216016125a3578382600a015f8282546125939190614c8d565b9091555084935061055592505050565b5f6125c473ffffffffffffffffffffffffffffffffffffffff83163061390c565b90506125d282873088612656565b5f6125f373ffffffffffffffffffffffffffffffffffffffff84163061390c565b90505f6126008383614914565b9050868114612632576126327fb1296a8a00000000000000000000000000000000000000000000000000000000610f61565b8085600a015f8282546126459190614c8d565b909155509098975050505050505050565b80156126b4577fffffffffffffffffffffffff111111111111111111111111111111111111111273ffffffffffffffffffffffffffffffffffffffff8516016126a8576126a3828261393f565b6126b4565b6126b48484848461395f565b50505050565b5f8281527f4775a23600034fdd9f073b224f794d51a58b35ba663a9602623ba7a5c09cce00602081905260409091205467ffffffffffffffff16801580159061270057505f5b1561273a576040517ff7d2131a0000000000000000000000000000000000000000000000000000000081526004810185905260240161045c565b5f428267ffffffffffffffff16111561275e576127578483614ca0565b905061276b565b6127688442614ca0565b90505b5f858152602084815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001667ffffffffffffffff8516908117909155915191825286917f2ec2be2c4b90c2cf13ecb6751a24daed6bb741ae5ed3f7371aabf9402f6d62e8910160405180910390a25050505050565b5f6127f16107e6565b73ffffffffffffffffffffffffffffffffffffffff16638120f0ba6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612839573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061285d9190614927565b67ffffffffffffffff1690508167ffffffffffffffff165f036128a3576128a37f82323d2e00000000000000000000000000000000000000000000000000000000610f61565b808267ffffffffffffffff1611156104a3576104a37f82323d2e00000000000000000000000000000000000000000000000000000000610f61565b5f61292d6104f67f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b90505f61293982612ab5565b90505f5f5f61294786612b2b565b80602001905181019061295a9190614b61565b50919450925090507fffffffff0000000000000000000000000000000000000000000000000000000083167f8c625b0600000000000000000000000000000000000000000000000000000000146129d4576129d47fda6153bd00000000000000000000000000000000000000000000000000000000610f61565b5f6129df8387612418565b90505f6129ec8287614914565b90506111bf88858589858c6136a8565b5f612710821115612a3157612a317f197f196200000000000000000000000000000000000000000000000000000000836139f3565b612710612a3e8385614cc0565b612a489190614cd7565b9392505050565b5f7f097b4f25b64e012d0cf55f67e9b34fe5d57f15b11b95baa4ddd136b424967c005b54919050565b7f097b4f25b64e012d0cf55f67e9b34fe5d57f15b11b95baa4ddd136b424967c008054829082905f90612aac908490614914565b90915550505050565b5f5f612abf612a4f565b90508015612acf57505f92915050565b825f03612ade57505f92915050565b5090919050565b5f8181527f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e0060208190526040822080549083612b2083614d0f565b909155509392505050565b5f8181527f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e026020526040902080546060917f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e0091612b87906146d0565b80601f0160208091040260200160405190810160405280929190818152602001828054612bb3906146d0565b8015612bfe5780601f10612bd557610100808354040283529160200191612bfe565b820191905f5260205f20905b815481529060010190602001808311612be157829003601f168201915b5050505050915050919050565b5f8281527f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e02602052604090207f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e00906126b4838261475f565b5f8181527f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e016020526040812080547f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e0092349291612aac908490614c8d565b60605f612ccc6139ff565b80519091505f8167ffffffffffffffff811115612ceb57612ceb614438565b604051908082528060200260200182016040528015612d4e57816020015b612d3b6040518060a001604052805f8152602001606081526020015f1515815260200160608152602001606081525090565b815260200190600190039081612d095790505b50855160208701209091505f90815b84811015612e4d575f5f5f5f612d8b8a8681518110612d7e57612d7e614a0c565b6020026020010151613a2a565b93509350935093505f5b8251811015612e3d5786838281518110612db157612db1614a0c565b60200260200101518051906020012003612e35576040518060a001604052808c8881518110612de257612de2614a0c565b60200260200101518152602001868152602001851515815260200184815260200183815250898981518110612e1957612e19614a0c565b602002602001018190525087612e2e90614d0f565b9750612e3d565b600101612d95565b5050505050806001019050612d5d565b50508152949350505050565b60605f7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb600600601546040517f02345b9800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015290911691505f9082906302345b98906024015f60405180830381865afa158015612ef0573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052612f359190810190614d46565b905080515f036130a6576040517ff821039800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85811660048301525f919084169063f821039890602401602060405180830381865afa158015612fac573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612fd091906146b5565b905073ffffffffffffffffffffffffffffffffffffffff8116156130a4576040517f02345b9800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff808316600483015291955085918416906302345b98906024015f60405180830381865afa15801561305c573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526130a19190810190614d46565b91505b505b80515f6130b4826001614c8d565b67ffffffffffffffff8111156130cc576130cc614438565b6040519080825280602002602001820160405280156130f5578160200160208202803683370190505b5090505f5b8281101561315b5783818151811061311457613114614a0c565b602002602001015182828151811061312e5761312e614a0c565b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101526001016130fa565b508581838151811061316f5761316f614a0c565b73ffffffffffffffffffffffffffffffffffffffff9092166020928302919091019091015295945050505050565b73ffffffffffffffffffffffffffffffffffffffff85166131e1576131e17f99ef038800000000000000000000000000000000000000000000000000000000610f61565b73ffffffffffffffffffffffffffffffffffffffff8216613225576132257f4bb7c20500000000000000000000000000000000000000000000000000000000610f61565b5f8381527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e016020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011781556003810180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff888116919091179091558251908916938101939093527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e00939092909101604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905284547f21be050a00000000000000000000000000000000000000000000000000000000835290925073ffffffffffffffffffffffffffffffffffffffff16906321be050a903490613381908c908b908a908890600401614dfa565b5f604051808303818588803b158015613398575f5ffd5b505af11580156133aa573d5f5f3e3d5ffd5b50505050505050505050505050565b5f73ffffffffffffffffffffffffffffffffffffffff83166133dc57505f612a48565b5f61341b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6065473ffffffffffffffffffffffffffffffffffffffff1690565b6040517f5cb4f54800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86811660048301529190911690635cb4f54890602401608060405180830381865afa158015613487573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906134ab9190614e34565b905080604001515f036134c1575f915050612a48565b6134cf8382604001516129fc565b915061351e6135127fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b86836020015185612656565b509392505050565b5f82515f146135d6575f61353984613b16565b604081015190915073ffffffffffffffffffffffffffffffffffffffff16158061356557506020810151155b15613573575f91505061186b565b6135818382602001516129fc565b91506135d06135c47fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b87836040015185612656565b5061186b565b73ffffffffffffffffffffffffffffffffffffffff84161561186b578473ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff160361362c57505f61186b565b61365d826136587faca21cc4d2a125f3e0ae03aa135d42b2b9177631aca87599d42a68b47e9008015490565b6129fc565b905061186b6136a07fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b868684612656565b81156136ba576136b885836124e0565b505b6136c48684613733565b6136dc8660405180602001604052805f815250612c0b565b5f6136e5613bbe565b90505f613714825f8560405160200161370091815260200190565b604051602081830303815290604052613c91565b9050613721828783613d02565b6111bf8261372d610baa565b83613d02565b5f8281527f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e016020526040812080547f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e0092849291613791908490614914565b9091555050505050565b5f7f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00612a72565b6104a3828260405180602001604052805f815250613d8a565b5f8181527f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df046020526040812054907f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00907c0100000000000000000000000000000000000000000000000000000000831690036138d957815f036138d35780548310613892576040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092015f81815260048401602052604090205490929091508115613893575b50919050565b506040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f816014526f70a082310000000000000000000000005f5260208060246010865afa601f3d111660205102905092915050565b6104a373ffffffffffffffffffffffffffffffffffffffff831682613e52565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603156126b4573073ffffffffffffffffffffffffffffffffffffffff8416036139d1576126a373ffffffffffffffffffffffffffffffffffffffff85168383613e6b565b6126b473ffffffffffffffffffffffffffffffffffffffff8516848484613ebe565b815f528060045260245ffd5b60606104fb7f672ef851d5f92307da037116e23aa9e31af7e1f7e3ca62c4e6d540631df3fd01613f20565b5f8181527f672ef851d5f92307da037116e23aa9e31af7e1f7e3ca62c4e6d540631df3fd036020526040812080546060929183918291908190613a6c906146d0565b80601f0160208091040260200160405190810160405280929190818152602001828054613a98906146d0565b8015613ae35780601f10613aba57610100808354040283529160200191613ae3565b820191905f5260205f20905b815481529060010190602001808311613ac657829003601f168201915b5050505060018301549196505060ff169350613b0160028201613f2c565b9250613b0c81614003565b9150509193509193565b613b4e6040518060600160405280606081526020015f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b5080516020808301919091205f9081527faca21cc4d2a125f3e0ae03aa135d42b2b9177631aca87599d42a68b47e9008028252604090819020815160608101835293845280549284019290925260019091015473ffffffffffffffffffffffffffffffffffffffff169082015290565b5f7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb600600601546040517f44ab66800000000000000000000000000000000000000000000000000000000081527f526976657241697264726f700000000000000000000000000000000000000000600482015273ffffffffffffffffffffffffffffffffffffffff909116906344ab668090602401602060405180830381865afa158015613c6d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104fb91906146b5565b6040517fdc69fdde0000000000000000000000000000000000000000000000000000000081525f9073ffffffffffffffffffffffffffffffffffffffff85169063dc69fdde90613ce79086908690600401614eae565b602060405180830381865afa158015611847573d5f5f3e3d5ffd5b6040517f40c10f1900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152602482018390528416906340c10f19906044015f604051808303815f87803b158015613d6f575f5ffd5b505af1158015613d81573d5f5f3e3d5ffd5b50505050505050565b613d948383614012565b73ffffffffffffffffffffffffffffffffffffffff83163b156122b4577f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00548281035b613de95f8683806001019450866141c7565b613e1f576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b818110613dd757817f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df0054146107d6575f5ffd5b5f385f3884865af16104a35763b12d13eb5f526004601cfd5b81601452806034526fa9059cbb0000000000000000000000005f5260205f604460105f875af18060015f511416613eb457803d853b151710613eb4576390b8ec185f526004601cfd5b505f603452505050565b60405181606052826040528360601b602c526f23b872dd000000000000000000000000600c5260205f6064601c5f895af18060015f511416613f1257803d873b151710613f1257637939f4245f526004601cfd5b505f60605260405250505050565b60605f612a4883614339565b6060815f01805480602002602001604051908101604052809291908181526020015f905b82821015613ff8578382905f5260205f20018054613f6d906146d0565b80601f0160208091040260200160405190810160405280929190818152602001828054613f99906146d0565b8015613fe45780601f10613fbb57610100808354040283529160200191613fe4565b820191905f5260205f20905b815481529060010190602001808311613fc757829003601f168201915b505050505081526020019060010190613f50565b505050509050919050565b60605f612a4883600401613f20565b7f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00545f82900361406e576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff83165f8181527f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df056020908152604080832080546801000000000000000188020190558483527f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df0490915281206001851460e11b4260a01b178317905582840190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b8181146141655780835f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f5fa460010161412f565b50815f0361419f576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df005550505050565b6040517f150b7a020000000000000000000000000000000000000000000000000000000081525f9073ffffffffffffffffffffffffffffffffffffffff85169063150b7a0290614221903390899088908890600401614efb565b6020604051808303815f875af1925050508015614279575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820190925261427691810190614f4b565b60015b6142ee573d8080156142a6576040519150601f19603f3d011682016040523d82523d5f602084013e6142ab565b606091505b5080515f036142e6576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b7fffffffff00000000000000000000000000000000000000000000000000000000167f150b7a020000000000000000000000000000000000000000000000000000000014905061186b565b6060815f0180548060200260200160405190810160405280929190818152602001828054801561438657602002820191905f5260205f20905b815481526020019060010190808311614372575b50505050509050919050565b5f5f602083850312156143a3575f5ffd5b823567ffffffffffffffff8111156143b9575f5ffd5b8301601f810185136143c9575f5ffd5b803567ffffffffffffffff8111156143df575f5ffd5b8560208284010111156143f0575f5ffd5b6020919091019590945092505050565b5f60208284031215614410575f5ffd5b5035919050565b73ffffffffffffffffffffffffffffffffffffffff811681146108e8575f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6040516060810167ffffffffffffffff8111828210171561448857614488614438565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156144d5576144d5614438565b604052919050565b5f67ffffffffffffffff8211156144f6576144f6614438565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b5f5f60408385031215614533575f5ffd5b823561453e81614417565b9150602083013567ffffffffffffffff811115614559575f5ffd5b83016060818603121561456a575f5ffd5b614572614465565b813561457d81614417565b8152602082013561458d81614417565b6020820152604082013567ffffffffffffffff8111156145ab575f5ffd5b80830192505085601f8301126145bf575f5ffd5b81356145d26145cd826144dd565b61448e565b8181528760208386010111156145e6575f5ffd5b816020850160208301375f60208383010152806040840152505080925050509250929050565b67ffffffffffffffff811681146108e8575f5ffd5b5f60208284031215614631575f5ffd5b8135612a488161460c565b5f6020828403121561464c575f5ffd5b8135612a4881614417565b5f81518084528060208401602086015e5f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081525f612a486020830184614657565b5f602082840312156146c5575f5ffd5b8151612a4881614417565b600181811c908216806146e457607f821691505b6020821081036138d3577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b601f8211156122b457805f5260205f20601f840160051c810160208510156147405750805b601f840160051c820191505b818110156107d6575f815560010161474c565b815167ffffffffffffffff81111561477957614779614438565b61478d8161478784546146d0565b8461471b565b6020601f8211600181146147de575f83156147a85750848201515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600385901b1c1916600184901b1784556107d6565b5f848152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08516915b8281101561482b578785015182556020948501946001909201910161480b565b508482101561486757868401517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600387901b60f8161c191681555b50505050600190811b01905550565b5f60208284031215614886575f5ffd5b5051919050565b6020815273ffffffffffffffffffffffffffffffffffffffff825116602082015273ffffffffffffffffffffffffffffffffffffffff60208301511660408201525f604083015160608084015261186b6080840182614657565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b81810381811115610555576105556148e7565b5f60208284031215614937575f5ffd5b8151612a488161460c565b5f60208284031215614952575f5ffd5b815161ffff81168114612a48575f5ffd5b80518015158114614972575f5ffd5b919050565b5f60208284031215614987575f5ffd5b612a4882614963565b7fffffffff000000000000000000000000000000000000000000000000000000008516815273ffffffffffffffffffffffffffffffffffffffff8416602082015273ffffffffffffffffffffffffffffffffffffffff83166040820152608060608201525f614a026080830184614657565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f82518060208501845e5f920191825250919050565b805160208083015191908110156138d3577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60209190910360031b1b16919050565b5f60608201858352606060208401528085518083526080850191506020870192505f5b81811015614ae857835173ffffffffffffffffffffffffffffffffffffffff16835260209384019390920191600101614ab4565b505060409390930193909352509392505050565b80517fffffffff0000000000000000000000000000000000000000000000000000000081168114614972575f5ffd5b5f614b386145cd846144dd565b9050828152838383011115614b4b575f5ffd5b8282602083015e5f602084830101529392505050565b5f5f5f5f60808587031215614b74575f5ffd5b614b7d85614afc565b93506020850151614b8d81614417565b6040860151909350614b9e81614417565b606086015190925067ffffffffffffffff811115614bba575f5ffd5b8501601f81018713614bca575f5ffd5b614bd987825160208401614b2b565b91505092959194509250565b5f60208284031215614bf5575f5ffd5b815167ffffffffffffffff811115614c0b575f5ffd5b820160608185031215614c1c575f5ffd5b614c24614465565b8151614c2f81614417565b81526020820151614c3f81614417565b6020820152604082015167ffffffffffffffff811115614c5d575f5ffd5b80830192505084601f830112614c71575f5ffd5b614c8085835160208501614b2b565b6040820152949350505050565b80820180821115610555576105556148e7565b67ffffffffffffffff8181168382160190811115610555576105556148e7565b8082028115828204841417610555576105556148e7565b5f82614d0a577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614d3f57614d3f6148e7565b5060010190565b5f60208284031215614d56575f5ffd5b815167ffffffffffffffff811115614d6c575f5ffd5b8201601f81018413614d7c575f5ffd5b805167ffffffffffffffff811115614d9657614d96614438565b8060051b614da66020820161448e565b91825260208184018101929081019087841115614dc1575f5ffd5b6020850194505b83851015614def5784519250614ddd83614417565b82825260209485019490910190614dc8565b979650505050505050565b73ffffffffffffffffffffffffffffffffffffffff85168152836020820152826040820152608060608201525f614a026080830184614657565b5f6080828403128015614e45575f5ffd5b506040516080810167ffffffffffffffff81118282101715614e6957614e69614438565b6040528251614e7781614417565b81526020830151614e8781614417565b602082015260408381015190820152614ea260608401614963565b60608201529392505050565b5f60048410614ee4577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b8382526040602083015261186b6040830184614657565b73ffffffffffffffffffffffffffffffffffffffff8516815273ffffffffffffffffffffffffffffffffffffffff84166020820152826040820152608060608201525f614a026080830184614657565b5f60208284031215614f5b575f5ffd5b612a4882614afc56";
|
|
1516
|
+
"0x6080604052348015600e575f5ffd5b5060156019565b60bd565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef520008054640100000000900460ff16156064576040516366008a2d60e01b815260040160405180910390fd5b805463ffffffff908116101560ba57805463ffffffff191663ffffffff90811782556040519081527fe9c9b456cb2994b80aeef036cf59d26e9617df80f816a6ee5a5b4166e07e2f5c9060200160405180910390a15b50565b615270806100ca5f395ff3fe608060405260043610610162575f3560e01c806379dda585116100c657806393b13cb71161007c578063a5a4103111610057578063a5a41031146103ab578063df9a9fe6146103bf578063e847abdd146103de575f5ffd5b806393b13cb71461035757806395d600c81461037857806397fb7c1e1461038c575f5ffd5b80638120f0ba116100ac5780638120f0ba146102f857806383f3f0dc146103255780638c625b0614610344575f5ffd5b806379dda585146102d15780637c9669ac146102e5575f5ffd5b80635becd24a1161011b578063686f768411610101578063686f76841461028b57806369d5f38a1461029e578063706b8e09146102bd575f5ffd5b80635becd24a14610233578063657e45e814610252575f5ffd5b806317c957091161014b57806317c95709146101ae5780633e9491a2146102025780635803909f14610214575f5ffd5b80630ef1be5f146101665780631278076a14610187575b5f5ffd5b348015610171575f5ffd5b506101856101803660046146a8565b6103f2565b005b348015610192575f5ffd5b5061019b6104a7565b6040519081526020015b60405180910390f35b3480156101b9575f5ffd5b5061019b6101c8366004614716565b5f9081527f4775a23600034fdd9f073b224f794d51a58b35ba663a9602623ba7a5c09cce00602052604090205467ffffffffffffffff1690565b34801561020d575f5ffd5b504761019b565b34801561021f575f5ffd5b5061019b61022e366004614716565b610500565b34801561023e575f5ffd5b5061018561024d366004614716565b61055b565b34801561025d575f5ffd5b50610266610642565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101a5565b610185610299366004614838565b610681565b3480156102a9575f5ffd5b506101856102b8366004614716565b6106c5565b3480156102c8575f5ffd5b5061019b6107dd565b3480156102dc575f5ffd5b506102666107e6565b6101856102f3366004614716565b610825565b348015610303575f5ffd5b5061030c610868565b60405167ffffffffffffffff90911681526020016101a5565b348015610330575f5ffd5b5061018561033f366004614937565b610871565b610185610352366004614952565b6108eb565b348015610362575f5ffd5b5061036b61091e565b6040516101a591906149b9565b348015610383575f5ffd5b5061019b610928565b348015610397575f5ffd5b506101856103a6366004614716565b610951565b3480156103b6575f5ffd5b5061019b610a3b565b3480156103ca575f5ffd5b506101856103d9366004614952565b610a92565b3480156103e9575f5ffd5b50610266610b6b565b6103fa610baa565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610465576040517f65f490650000000000000000000000000000000000000000000000000000000081523360048201526024015b60405180910390fd5b6104a382828080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610c6a92505050565b5050565b5f6104fb6104f67f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b610c95565b905090565b5f610555826105507f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b610f0c565b92915050565b610563610baa565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146105c9576040517f65f4906500000000000000000000000000000000000000000000000000000000815233600482015260240161045c565b5f6105f27fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6035490565b9050801580159061060257508082115b15610630576106307fc3983b9100000000000000000000000000000000000000000000000000000000610ff5565b61063982610ffd565b6104a3826110a1565b5f6104fb7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b3068929eee149b4bd21268540361069f5763ab143c065f526004601cfd5b3068929eee149b4bd21268556106b5828261115f565b3868929eee149b4bd21268555050565b6106cd610baa565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610733576040517f65f4906500000000000000000000000000000000000000000000000000000000815233600482015260240161045c565b61073c81611263565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb608546040517f91b7f5ed0000000000000000000000000000000000000000000000000000000081526004810183905273ffffffffffffffffffffffffffffffffffffffff909116906391b7f5ed906024015f604051808303815f87803b1580156107c4575f5ffd5b505af11580156107d6573d5f5f3e3d5ffd5b5050505050565b5f6104fb61130b565b5f6104fb7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6065473ffffffffffffffffffffffffffffffffffffffff1690565b3068929eee149b4bd2126854036108435763ab143c065f526004601cfd5b3068929eee149b4bd212685561085933826113d6565b3868929eee149b4bd212685550565b5f6104fb61155a565b610879610baa565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146108df576040517f65f4906500000000000000000000000000000000000000000000000000000000815233600482015260240161045c565b6108e88161161d565b50565b3068929eee149b4bd2126854036109095763ab143c065f526004601cfd5b3068929eee149b4bd212685561085981611698565b60606104fb611741565b5f6104fb7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6035490565b610959610baa565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146109bf576040517f65f4906500000000000000000000000000000000000000000000000000000000815233600482015260240161045c565b610a1381610a0e7f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b6117f3565b6108e8817fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb60355565b5f6104fb610a8d6104f67f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b611824565b610a9a610baa565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610b00576040517f65f4906500000000000000000000000000000000000000000000000000000000815233600482015260240161045c565b610b0981611997565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb60880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff831617905550565b5f6104fb7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6085473ffffffffffffffffffffffffffffffffffffffff1690565b5f807fd2f24d4f172e4e84e48e7c4125b6e904c29e5eba33ad4938fee51dd5dbd4b600805460018201546040517f6352211e000000000000000000000000000000000000000000000000000000008152600481019190915291925073ffffffffffffffffffffffffffffffffffffffff1690636352211e90602401602060405180830381865afa158015610c40573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c6491906149cb565b91505090565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb60c6104a38282614a75565b5f5f610c9f61130b565b90505f610ce07fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6085473ffffffffffffffffffffffffffffffffffffffff1690565b90505f610ceb6107e6565b905073ffffffffffffffffffffffffffffffffffffffff8216610d7e578073ffffffffffffffffffffffffffffffffffffffff16631b159e2e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d51573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d759190614b8c565b95945050505050565b6040517f5cf4ee91000000000000000000000000000000000000000000000000000000008152600481018490526024810186905273ffffffffffffffffffffffffffffffffffffffff831690635cf4ee9190604401602060405180830381865afa158015610dee573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e129190614b8c565b93505f8173ffffffffffffffffffffffffffffffffffffffff16631b159e2e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e5e573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e829190614b8c565b905080851015610f03578173ffffffffffffffffffffffffffffffffffffffff16630eac306d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ed5573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ef99190614b8c565b9695505050505050565b50505050919050565b5f7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb60081610f376107e6565b90505f8173ffffffffffffffffffffffffffffffffffffffff16631b159e2e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f83573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fa79190614b8c565b5f8781526009850160205260409020549091508015610fd457818110828218028118945050505050610555565b5f610fde87610c95565b905082811083821802811898975050505050505050565b805f5260045ffd5b6110056107e6565b73ffffffffffffffffffffffffffffffffffffffff16632cbb9d136040518163ffffffff1660e01b8152600401602060405180830381865afa15801561104d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110719190614b8c565b8111156108e8576108e87fc3983b9100000000000000000000000000000000000000000000000000000000610ff5565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6078190557fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb60d80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556040517fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6009082907fab14a23e88fb272313490d4f20d63098e64fd38304c0e07a377db98c2b39b92f905f90a25050565b61116882611ad0565b5f611171611bc6565b90505f811561118557611182611c5f565b90505b61118f8484611cf1565b5f836040516020016111a19190614ba3565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905290507f686f7684000000000000000000000000000000000000000000000000000000005f6112088761120384338388611d96565b611dc8565b90505f5f61121889338589611f03565b915091508061125857811561124e5786156112365761123683611f7e565b611240838a6120f7565b61124989612182565b611258565b611258838a612271565b505050505050505050565b5f61126c6107e6565b73ffffffffffffffffffffffffffffffffffffffff16630eac306d6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112b4573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112d89190614b8c565b9050808210156104a3576104a37f3447ac8e00000000000000000000000000000000000000000000000000000000610ff5565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb60d545f907fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6009060ff16156113625760070154919050565b61136a6107e6565b73ffffffffffffffffffffffffffffffffffffffff16632cbb9d136040518163ffffffff1660e01b8152600401602060405180830381865afa1580156113b2573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c649190614b8c565b5f6113e0826122d7565b905073ffffffffffffffffffffffffffffffffffffffff8116611426576114267f5fbd571700000000000000000000000000000000000000000000000000000000610ff5565b5f61142f61155a565b67ffffffffffffffff1690505f61148b846105507f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b9050348111156114be576114be7f34a7a93d00000000000000000000000000000000000000000000000000000000610ff5565b5f6114c986836122e1565b90505f6114d68284614c2a565b905080156114ea576114e887826123a9565b505b5f6114f58434614c2a565b905080156115465761154661153e7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b308a8461251f565b6115508786612583565b5050505050505050565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6065474010000000000000000000000000000000000000000900467ffffffffffffffff165f81900361161a576115ae6107e6565b73ffffffffffffffffffffffffffffffffffffffff16638120f0ba6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115f6573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104fb9190614c3d565b90565b611626816126b1565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb606805467ffffffffffffffff90921674010000000000000000000000000000000000000000027fffffffff0000000000000000ffffffffffffffffffffffffffffffffffffffff909216919091179055565b6116a181611ad0565b5f6116aa611bc6565b90505f81156116be576116bb611c5f565b90505b5f638c625b0660e01b90505f6116e88561120384338960405180602001604052805f815250611d96565b90505f5f6116f887338588611f03565b915091508061173857811561172e57851561171657611716836127a7565b61172083886120f7565b61172987612182565b611738565b6117388388612271565b50505050505050565b60607fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb600600c018054611772906149e6565b80601f016020809104026020016040519081016040528092919081815260200182805461179e906149e6565b80156117e95780601f106117c0576101008083540402835291602001916117e9565b820191905f5260205f20905b8154815290600101906020018083116117cc57829003601f168201915b5050505050905090565b808210156104a3576104a37fccc9aa2e00000000000000000000000000000000000000000000000000000000610ff5565b5f5f61182e6107e6565b90505f8173ffffffffffffffffffffffffffffffffffffffff16631b159e2e6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561187a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061189e9190614b8c565b90508084101561191d578173ffffffffffffffffffffffffffffffffffffffff16630eac306d6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118f1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119159190614b8c565b949350505050565b611915848373ffffffffffffffffffffffffffffffffffffffff16639f6542aa6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561196a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061198e9190614c58565b61ffff166128c5565b73ffffffffffffffffffffffffffffffffffffffff81166119db576119db7f0e88bf4b00000000000000000000000000000000000000000000000000000000610ff5565b7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6065473ffffffffffffffffffffffffffffffffffffffff166040517f8df80bd600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301529190911690638df80bd690602401602060405180830381865afa158015611a7f573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611aa39190614c8d565b6108e8576108e87f0e88bf4b00000000000000000000000000000000000000000000000000000000610ff5565b73ffffffffffffffffffffffffffffffffffffffff8116611b1457611b147f5fbd571700000000000000000000000000000000000000000000000000000000610ff5565b5f611b3d7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6035490565b90508015801590611b98575080611b957f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b10155b156104a3576104a37f7efcdb4900000000000000000000000000000000000000000000000000000000610ff5565b5f5f611c137f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b90505f611c1e61130b565b90505f611c29612918565b905082821115611c3c575f935050505090565b8015611c5557611c4c6001612941565b5f935050505090565b6001935050505090565b5f5f611caf6104f67f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b9050611cba8161297e565b915081341015611ced57611ced7fb1296a8a00000000000000000000000000000000000000000000000000000000610ff5565b5090565b602081015173ffffffffffffffffffffffffffffffffffffffff16156104a3578173ffffffffffffffffffffffffffffffffffffffff16816020015173ffffffffffffffffffffffffffffffffffffffff161480611d685750602081015173ffffffffffffffffffffffffffffffffffffffff1633145b156104a3576104a37f5fbd571700000000000000000000000000000000000000000000000000000000610ff5565b606084848484604051602001611daf9493929190614ca6565b6040516020818303038152906040529050949350505050565b6040517fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606084901b1660208201524360348201525f908190605401604051602081830303815290604052805190602001209050611ea781611e7b8387611e2e866129ae565b6040805160208082019590955273ffffffffffffffffffffffffffffffffffffffff9390931683820152606080840192909252805180840390920182526080909201909152805191012090565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b91505f611eb3836129f4565b511115611ee357611ee37ff82e65c300000000000000000000000000000000000000000000000000000000610ff5565b611eed8284612ad4565b3415611efc57611efc82612b2c565b5092915050565b5f5f5f611f446040518060400160405280600981526020017f4a6f696e53706163650000000000000000000000000000000000000000000000815250612b8a565b9050611f508188612d22565b15611f625760015f9250925050611f75565b611f6f8188888888612f3d565b92509250505b94509492505050565b5f611fcd6104f67f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b90505f611fd98261297e565b90505f5f5f5f611fe8876129f4565b806020019051810190611ffb9190614d7d565b929650909450925090507fffffffff0000000000000000000000000000000000000000000000000000000084167f686f76840000000000000000000000000000000000000000000000000000000014612077576120777fda6153bd00000000000000000000000000000000000000000000000000000000610ff5565b5f8180602001905181019061208c9190614e01565b90505f5f61209a868a6122e1565b90505f6120ab87855f01518c6130ca565b90505f6120c288866020015187604001518e613237565b905080826120d0858d614c2a565b6120da9190614c2a565b6120e49190614c2a565b93505050506112588986868a858d6133b9565b5f8281527f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e016020526040902054801561217d576121348382613444565b61217d6121757fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b30848461251f565b505050565b5f61218b6134ac565b905061220f816121df6104f67f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b5f9182527fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb609602052604090912055565b61221a8260016134d3565b61222b8161222661155a565b612583565b604051819073ffffffffffffffffffffffffffffffffffffffff8416907f2f40b0474996b72a4251e00fb9170cdd960deea1dc749772cbbab61395b9b576905f90a35050565b6122898260405180602001604052805f815250612ad4565b61229382826120f7565b60405173ffffffffffffffffffffffffffffffffffffffff8216907f86fd446d5c04e892d58b448a924dcd9c3ece3a5e0d2960b8c35cd475a5595a1f905f90a25050565b5f610555826134ec565b5f6122eb82611824565b905061055561232e7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b846123376107e6565b73ffffffffffffffffffffffffffffffffffffffff16634ccb20c06040518163ffffffff1660e01b8152600401602060405180830381865afa15801561237f573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906123a391906149cb565b8461251f565b5f7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6008161240a7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b90507fffffffffffffffffffffffff111111111111111111111111111111111111111273ffffffffffffffffffffffffffffffffffffffff82160161246c578382600a015f82825461245c9190614ea9565b9091555084935061055592505050565b5f61248d73ffffffffffffffffffffffffffffffffffffffff83163061361d565b905061249b8287308861251f565b5f6124bc73ffffffffffffffffffffffffffffffffffffffff84163061361d565b90505f6124c98383614c2a565b90508681146124fb576124fb7fb1296a8a00000000000000000000000000000000000000000000000000000000610ff5565b8085600a015f82825461250e9190614ea9565b909155509098975050505050505050565b801561257d577fffffffffffffffffffffffff111111111111111111111111111111111111111273ffffffffffffffffffffffffffffffffffffffff8516016125715761256c8282613650565b61257d565b61257d84848484613670565b50505050565b5f8281527f4775a23600034fdd9f073b224f794d51a58b35ba663a9602623ba7a5c09cce00602081905260409091205467ffffffffffffffff1680158015906125c957505f5b15612603576040517ff7d2131a0000000000000000000000000000000000000000000000000000000081526004810185905260240161045c565b5f428267ffffffffffffffff161115612627576126208483614ebc565b9050612634565b6126318442614ebc565b90505b5f858152602084815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001667ffffffffffffffff8516908117909155915191825286917f2ec2be2c4b90c2cf13ecb6751a24daed6bb741ae5ed3f7371aabf9402f6d62e8910160405180910390a25050505050565b5f6126ba6107e6565b73ffffffffffffffffffffffffffffffffffffffff16638120f0ba6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612702573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127269190614c3d565b67ffffffffffffffff1690508167ffffffffffffffff165f0361276c5761276c7f82323d2e00000000000000000000000000000000000000000000000000000000610ff5565b808267ffffffffffffffff1611156104a3576104a37f82323d2e00000000000000000000000000000000000000000000000000000000610ff5565b5f6127f66104f67f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df01547f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00540390565b90505f6128028261297e565b90505f5f5f612810866129f4565b8060200190518101906128239190614d7d565b50919450925090507fffffffff0000000000000000000000000000000000000000000000000000000083167f8c625b06000000000000000000000000000000000000000000000000000000001461289d5761289d7fda6153bd00000000000000000000000000000000000000000000000000000000610ff5565b5f6128a883876122e1565b90505f6128b58287614c2a565b905061155088858589858c6133b9565b5f6127108211156128fa576128fa7f197f19620000000000000000000000000000000000000000000000000000000083613704565b6127106129078385614edc565b6129119190614ef3565b9392505050565b5f7f097b4f25b64e012d0cf55f67e9b34fe5d57f15b11b95baa4ddd136b424967c005b54919050565b7f097b4f25b64e012d0cf55f67e9b34fe5d57f15b11b95baa4ddd136b424967c008054829082905f90612975908490614c2a565b90915550505050565b5f5f612988612918565b9050801561299857505f92915050565b825f036129a757505f92915050565b5090919050565b5f8181527f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e00602081905260408220805490836129e983614f2b565b909155509392505050565b5f8181527f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e026020526040902080546060917f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e0091612a50906149e6565b80601f0160208091040260200160405190810160405280929190818152602001828054612a7c906149e6565b8015612ac75780601f10612a9e57610100808354040283529160200191612ac7565b820191905f5260205f20905b815481529060010190602001808311612aaa57829003601f168201915b5050505050915050919050565b5f8281527f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e02602052604090207f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e009061257d8382614a75565b5f8181527f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e016020526040812080547f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e0092349291612975908490614ea9565b60605f612b95613710565b80519091505f8167ffffffffffffffff811115612bb457612bb461474e565b604051908082528060200260200182016040528015612c1757816020015b612c046040518060a001604052805f8152602001606081526020015f1515815260200160608152602001606081525090565b815260200190600190039081612bd25790505b50855160208701209091505f90815b84811015612d16575f5f5f5f612c548a8681518110612c4757612c47614f62565b602002602001015161373b565b93509350935093505f5b8251811015612d065786838281518110612c7a57612c7a614f62565b60200260200101518051906020012003612cfe576040518060a001604052808c8881518110612cab57612cab614f62565b60200260200101518152602001868152602001851515815260200184815260200183815250898981518110612ce257612ce2614f62565b602002602001018190525087612cf790614f2b565b9750612d06565b600101612c5e565b5050505050806001019050612c26565b50508152949350505050565b5f5f612d2d83613827565b90505f5b8451811015612f3357848181518110612d4c57612d4c614f62565b602002602001015160400151612f2b575f5b858281518110612d7057612d70614f62565b60200260200101516080015151811015612f29575f868381518110612d9757612d97614f62565b6020026020010151608001518281518110612db457612db4614f62565b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff16632e1b61e46040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e07573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612e2b9190614c8d565b158015612f0e57508073ffffffffffffffffffffffffffffffffffffffff16630cf0b5335f5f1b866040518060400160405280600981526020017f4a6f696e53706163650000000000000000000000000000000000000000000000815250604051602001612e999190614f8f565b604051602081830303815290604052612eb190614fa5565b6040518463ffffffff1660e01b8152600401612ecf93929190614fe7565b602060405180830381865afa158015612eea573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f0e9190614c8d565b15612f20576001945050505050610555565b50600101612d5e565b505b600101612d31565b505f949350505050565b5f8080805b88518110156130bb57888181518110612f5d57612f5d614f62565b6020026020010151604001516130b3575f5b898281518110612f8157612f81614f62565b602002602001015160800151518110156130b1575f8a8381518110612fa857612fa8614f62565b6020026020010151608001518281518110612fc557612fc5614f62565b602002602001015190508073ffffffffffffffffffffffffffffffffffffffff16632e1b61e46040518163ffffffff1660e01b8152600401602060405180830381865afa158015613018573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061303c9190614c8d565b156130a85783613079576130708a8a8a848f888151811061305f5761305f614f62565b60200260200101515f01518c613b6b565b600193506130a3565b6130a38a8a8a848f888151811061309257613092614f62565b60200260200101515f01515f613b6b565b600194505b50600101612f6f565b505b600101612f42565b505f9250509550959350505050565b5f73ffffffffffffffffffffffffffffffffffffffff83166130ed57505f612911565b5f61312c7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6065473ffffffffffffffffffffffffffffffffffffffff1690565b6040517f5cb4f54800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86811660048301529190911690635cb4f54890602401608060405180830381865afa158015613198573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906131bc9190615052565b905080604001515f036131d2575f915050612911565b6131e08382604001516128c5565b915061322f6132237fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b8683602001518561251f565b509392505050565b5f82515f146132e7575f61324a84613c5b565b604081015190915073ffffffffffffffffffffffffffffffffffffffff16158061327657506020810151155b15613284575f915050611915565b6132928382602001516128c5565b91506132e16132d57fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b8783604001518561251f565b50611915565b73ffffffffffffffffffffffffffffffffffffffff841615611915578473ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff160361333d57505f611915565b61336e826133697faca21cc4d2a125f3e0ae03aa135d42b2b9177631aca87599d42a68b47e9008015490565b6128c5565b90506119156133b17fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb6045473ffffffffffffffffffffffffffffffffffffffff1690565b86868461251f565b81156133cb576133c985836123a9565b505b6133d58684613444565b6133ed8660405180602001604052805f815250612ad4565b5f6133f6613d03565b90505f613425825f8560405160200161341191815260200190565b604051602081830303815290604052613dd6565b9050613432828783613e47565b6115508261343e610baa565b83613e47565b5f8281527f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e016020526040812080547f34516f6fe09a043d57f1ff579a303a7ae85314751c77b4eb1a55837604a86e00928492916134a2908490614c2a565b9091555050505050565b5f7f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df0061293b565b6104a3828260405180602001604052805f815250613ec6565b5f8181527f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df046020526040812054907f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00907c0100000000000000000000000000000000000000000000000000000000831690036135ea57815f036135e457805483106135a3576040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092015f818152600484016020526040902054909290915081156135a4575b50919050565b506040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f816014526f70a082310000000000000000000000005f5260208060246010865afa601f3d111660205102905092915050565b6104a373ffffffffffffffffffffffffffffffffffffffff831682613f8e565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16031561257d573073ffffffffffffffffffffffffffffffffffffffff8416036136e25761256c73ffffffffffffffffffffffffffffffffffffffff85168383613fa7565b61257d73ffffffffffffffffffffffffffffffffffffffff8516848484613ffa565b815f528060045260245ffd5b60606104fb7f672ef851d5f92307da037116e23aa9e31af7e1f7e3ca62c4e6d540631df3fd0161405c565b5f8181527f672ef851d5f92307da037116e23aa9e31af7e1f7e3ca62c4e6d540631df3fd03602052604081208054606092918391829190819061377d906149e6565b80601f01602080910402602001604051908101604052809291908181526020018280546137a9906149e6565b80156137f45780601f106137cb576101008083540402835291602001916137f4565b820191905f5260205f20905b8154815290600101906020018083116137d757829003601f168201915b5050505060018301549196505060ff16935061381260028201614068565b925061381d8161413f565b9150509193509193565b60605f7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb600600601546040517f02345b9800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015290911691505f9082906302345b98906024015f60405180830381865afa1580156138be573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820160405261390391908101906150cc565b905080515f03613a74576040517ff821039800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85811660048301525f919084169063f821039890602401602060405180830381865afa15801561397a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061399e91906149cb565b905073ffffffffffffffffffffffffffffffffffffffff811615613a72576040517f02345b9800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff808316600483015291955085918416906302345b98906024015f60405180830381865afa158015613a2a573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052613a6f91908101906150cc565b91505b505b80515f613a82826001614ea9565b67ffffffffffffffff811115613a9a57613a9a61474e565b604051908082528060200260200182016040528015613ac3578160200160208202803683370190505b5090505f5b82811015613b2957838181518110613ae257613ae2614f62565b6020026020010151828281518110613afc57613afc614f62565b73ffffffffffffffffffffffffffffffffffffffff90921660209283029190910190910152600101613ac8565b5085818381518110613b3d57613b3d614f62565b73ffffffffffffffffffffffffffffffffffffffff9092166020928302919091019091015295945050505050565b613b7686848361414e565b5f7f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e005f8681526001828101602052604090912080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016909117815560030180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8716179055905080546040805173ffffffffffffffffffffffffffffffffffffffff89811660208301526117389316918a9189918891889101604051602081830303815290604052614207565b613c936040518060600160405280606081526020015f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b5080516020808301919091205f9081527faca21cc4d2a125f3e0ae03aa135d42b2b9177631aca87599d42a68b47e9008028252604090819020815160608101835293845280549284019290925260019091015473ffffffffffffffffffffffffffffffffffffffff169082015290565b5f7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb600600601546040517f44ab66800000000000000000000000000000000000000000000000000000000081527f526976657241697264726f700000000000000000000000000000000000000000600482015273ffffffffffffffffffffffffffffffffffffffff909116906344ab668090602401602060405180830381865afa158015613db2573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104fb91906149cb565b6040517fdc69fdde0000000000000000000000000000000000000000000000000000000081525f9073ffffffffffffffffffffffffffffffffffffffff85169063dc69fdde90613e2c9086908690600401615180565b602060405180830381865afa1580156118f1573d5f5f3e3d5ffd5b6040517f40c10f1900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152602482018390528416906340c10f19906044015f604051808303815f87803b158015613eb4575f5ffd5b505af1158015611738573d5f5f3e3d5ffd5b613ed08383614328565b73ffffffffffffffffffffffffffffffffffffffff83163b1561217d577f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00548281035b613f255f8683806001019450866144dd565b613f5b576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b818110613f1357817f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df0054146107d6575f5ffd5b5f385f3884865af16104a35763b12d13eb5f526004601cfd5b81601452806034526fa9059cbb0000000000000000000000005f5260205f604460105f875af18060015f511416613ff057803d853b151710613ff0576390b8ec185f526004601cfd5b505f603452505050565b60405181606052826040528360601b602c526f23b872dd000000000000000000000000600c5260205f6064601c5f895af18060015f51141661404e57803d873b15171061404e57637939f4245f526004601cfd5b505f60605260405250505050565b60605f6129118361464f565b6060815f01805480602002602001604051908101604052809291908181526020015f905b82821015614134578382905f5260205f200180546140a9906149e6565b80601f01602080910402602001604051908101604052809291908181526020018280546140d5906149e6565b80156141205780601f106140f757610100808354040283529160200191614120565b820191905f5260205f20905b81548152906001019060200180831161410357829003601f168201915b50505050508152602001906001019061408c565b505050509050919050565b60605f6129118360040161405c565b3481111561417f5761417f7ff4e95a4100000000000000000000000000000000000000000000000000000000610ff5565b73ffffffffffffffffffffffffffffffffffffffff83166141c3576141c37f99ef038800000000000000000000000000000000000000000000000000000000610ff5565b73ffffffffffffffffffffffffffffffffffffffff821661217d5761217d7f4bb7c20500000000000000000000000000000000000000000000000000000000610ff5565b811561429a576040517f21be050a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8716906321be050a9084906142679089908990899088906004016151cd565b5f604051808303818588803b15801561427e575f5ffd5b505af1158015614290573d5f5f3e3d5ffd5b5050505050614320565b6040517f21be050a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8716906321be050a906142f29088908890889087906004016151cd565b5f604051808303815f87803b158015614309575f5ffd5b505af115801561431b573d5f5f3e3d5ffd5b505050505b505050505050565b7f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df00545f829003614384576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff83165f8181527f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df056020908152604080832080546801000000000000000188020190558483527f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df0490915281206001851460e11b4260a01b178317905582840190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b81811461447b5780835f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f5fa4600101614445565b50815f036144b5576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df005550505050565b6040517f150b7a020000000000000000000000000000000000000000000000000000000081525f9073ffffffffffffffffffffffffffffffffffffffff85169063150b7a0290614537903390899088908890600401615207565b6020604051808303815f875af192505050801561458f575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820190925261458c91810190615257565b60015b614604573d8080156145bc576040519150601f19603f3d011682016040523d82523d5f602084013e6145c1565b606091505b5080515f036145fc576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b7fffffffff00000000000000000000000000000000000000000000000000000000167f150b7a0200000000000000000000000000000000000000000000000000000000149050611915565b6060815f0180548060200260200160405190810160405280929190818152602001828054801561469c57602002820191905f5260205f20905b815481526020019060010190808311614688575b50505050509050919050565b5f5f602083850312156146b9575f5ffd5b823567ffffffffffffffff8111156146cf575f5ffd5b8301601f810185136146df575f5ffd5b803567ffffffffffffffff8111156146f5575f5ffd5b856020828401011115614706575f5ffd5b6020919091019590945092505050565b5f60208284031215614726575f5ffd5b5035919050565b73ffffffffffffffffffffffffffffffffffffffff811681146108e8575f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6040516060810167ffffffffffffffff8111828210171561479e5761479e61474e565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156147eb576147eb61474e565b604052919050565b5f67ffffffffffffffff82111561480c5761480c61474e565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b5f5f60408385031215614849575f5ffd5b82356148548161472d565b9150602083013567ffffffffffffffff81111561486f575f5ffd5b830160608186031215614880575f5ffd5b61488861477b565b81356148938161472d565b815260208201356148a38161472d565b6020820152604082013567ffffffffffffffff8111156148c1575f5ffd5b80830192505085601f8301126148d5575f5ffd5b81356148e86148e3826147f3565b6147a4565b8181528760208386010111156148fc575f5ffd5b816020850160208301375f60208383010152806040840152505080925050509250929050565b67ffffffffffffffff811681146108e8575f5ffd5b5f60208284031215614947575f5ffd5b813561291181614922565b5f60208284031215614962575f5ffd5b81356129118161472d565b5f81518084528060208401602086015e5f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081525f612911602083018461496d565b5f602082840312156149db575f5ffd5b81516129118161472d565b600181811c908216806149fa57607f821691505b6020821081036135e4577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b601f82111561217d57805f5260205f20601f840160051c81016020851015614a565750805b601f840160051c820191505b818110156107d6575f8155600101614a62565b815167ffffffffffffffff811115614a8f57614a8f61474e565b614aa381614a9d84546149e6565b84614a31565b6020601f821160018114614af4575f8315614abe5750848201515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600385901b1c1916600184901b1784556107d6565b5f848152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08516915b82811015614b415787850151825560209485019460019092019101614b21565b5084821015614b7d57868401517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600387901b60f8161c191681555b50505050600190811b01905550565b5f60208284031215614b9c575f5ffd5b5051919050565b6020815273ffffffffffffffffffffffffffffffffffffffff825116602082015273ffffffffffffffffffffffffffffffffffffffff60208301511660408201525f6040830151606080840152611915608084018261496d565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8181038181111561055557610555614bfd565b5f60208284031215614c4d575f5ffd5b815161291181614922565b5f60208284031215614c68575f5ffd5b815161ffff81168114612911575f5ffd5b80518015158114614c88575f5ffd5b919050565b5f60208284031215614c9d575f5ffd5b61291182614c79565b7fffffffff000000000000000000000000000000000000000000000000000000008516815273ffffffffffffffffffffffffffffffffffffffff8416602082015273ffffffffffffffffffffffffffffffffffffffff83166040820152608060608201525f610ef9608083018461496d565b80517fffffffff0000000000000000000000000000000000000000000000000000000081168114614c88575f5ffd5b5f614d546148e3846147f3565b9050828152838383011115614d67575f5ffd5b8282602083015e5f602084830101529392505050565b5f5f5f5f60808587031215614d90575f5ffd5b614d9985614d18565b93506020850151614da98161472d565b6040860151909350614dba8161472d565b606086015190925067ffffffffffffffff811115614dd6575f5ffd5b8501601f81018713614de6575f5ffd5b614df587825160208401614d47565b91505092959194509250565b5f60208284031215614e11575f5ffd5b815167ffffffffffffffff811115614e27575f5ffd5b820160608185031215614e38575f5ffd5b614e4061477b565b8151614e4b8161472d565b81526020820151614e5b8161472d565b6020820152604082015167ffffffffffffffff811115614e79575f5ffd5b80830192505084601f830112614e8d575f5ffd5b614e9c85835160208501614d47565b6040820152949350505050565b8082018082111561055557610555614bfd565b67ffffffffffffffff818116838216019081111561055557610555614bfd565b808202811582820484141761055557610555614bfd565b5f82614f26577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614f5b57614f5b614bfd565b5060010190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f82518060208501845e5f920191825250919050565b805160208083015191908110156135e4577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60209190910360031b1b16919050565b5f60608201858352606060208401528085518083526080850191506020870192505f5b8181101561503e57835173ffffffffffffffffffffffffffffffffffffffff1683526020938401939092019160010161500a565b505060409390930193909352509392505050565b5f6080828403128015615063575f5ffd5b506040516080810167ffffffffffffffff811182821017156150875761508761474e565b60405282516150958161472d565b815260208301516150a58161472d565b6020820152604083810151908201526150c060608401614c79565b60608201529392505050565b5f602082840312156150dc575f5ffd5b815167ffffffffffffffff8111156150f2575f5ffd5b8201601f81018413615102575f5ffd5b805167ffffffffffffffff81111561511c5761511c61474e565b8060051b61512c602082016147a4565b91825260208184018101929081019087841115615147575f5ffd5b6020850194505b8385101561517557845192506151638361472d565b8282526020948501949091019061514e565b979650505050505050565b5f600484106151b6577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b83825260406020830152611915604083018461496d565b73ffffffffffffffffffffffffffffffffffffffff85168152836020820152826040820152608060608201525f610ef9608083018461496d565b73ffffffffffffffffffffffffffffffffffffffff8516815273ffffffffffffffffffffffffffffffffffffffff84166020820152826040820152608060608201525f610ef9608083018461496d565b5f60208284031215615267575f5ffd5b61291182614d1856";
|
|
1512
1517
|
|
|
1513
1518
|
type MembershipFacetConstructorParams =
|
|
1514
1519
|
| [signer?: Signer]
|
|
@@ -336,6 +336,103 @@ const _abi = [
|
|
|
336
336
|
],
|
|
337
337
|
stateMutability: "view",
|
|
338
338
|
},
|
|
339
|
+
{
|
|
340
|
+
type: "function",
|
|
341
|
+
name: "joinSpace",
|
|
342
|
+
inputs: [
|
|
343
|
+
{
|
|
344
|
+
name: "receiver",
|
|
345
|
+
type: "address",
|
|
346
|
+
internalType: "address",
|
|
347
|
+
},
|
|
348
|
+
{
|
|
349
|
+
name: "roleIds",
|
|
350
|
+
type: "uint256[]",
|
|
351
|
+
internalType: "uint256[]",
|
|
352
|
+
},
|
|
353
|
+
{
|
|
354
|
+
name: "ruleData",
|
|
355
|
+
type: "tuple",
|
|
356
|
+
internalType: "struct IRuleEntitlementBase.RuleDataV2",
|
|
357
|
+
components: [
|
|
358
|
+
{
|
|
359
|
+
name: "operations",
|
|
360
|
+
type: "tuple[]",
|
|
361
|
+
internalType: "struct IRuleEntitlementBase.Operation[]",
|
|
362
|
+
components: [
|
|
363
|
+
{
|
|
364
|
+
name: "opType",
|
|
365
|
+
type: "uint8",
|
|
366
|
+
internalType: "enum IRuleEntitlementBase.CombinedOperationType",
|
|
367
|
+
},
|
|
368
|
+
{
|
|
369
|
+
name: "index",
|
|
370
|
+
type: "uint8",
|
|
371
|
+
internalType: "uint8",
|
|
372
|
+
},
|
|
373
|
+
],
|
|
374
|
+
},
|
|
375
|
+
{
|
|
376
|
+
name: "checkOperations",
|
|
377
|
+
type: "tuple[]",
|
|
378
|
+
internalType: "struct IRuleEntitlementBase.CheckOperationV2[]",
|
|
379
|
+
components: [
|
|
380
|
+
{
|
|
381
|
+
name: "opType",
|
|
382
|
+
type: "uint8",
|
|
383
|
+
internalType: "enum IRuleEntitlementBase.CheckOperationType",
|
|
384
|
+
},
|
|
385
|
+
{
|
|
386
|
+
name: "chainId",
|
|
387
|
+
type: "uint256",
|
|
388
|
+
internalType: "uint256",
|
|
389
|
+
},
|
|
390
|
+
{
|
|
391
|
+
name: "contractAddress",
|
|
392
|
+
type: "address",
|
|
393
|
+
internalType: "address",
|
|
394
|
+
},
|
|
395
|
+
{
|
|
396
|
+
name: "params",
|
|
397
|
+
type: "bytes",
|
|
398
|
+
internalType: "bytes",
|
|
399
|
+
},
|
|
400
|
+
],
|
|
401
|
+
},
|
|
402
|
+
{
|
|
403
|
+
name: "logicalOperations",
|
|
404
|
+
type: "tuple[]",
|
|
405
|
+
internalType: "struct IRuleEntitlementBase.LogicalOperation[]",
|
|
406
|
+
components: [
|
|
407
|
+
{
|
|
408
|
+
name: "logOpType",
|
|
409
|
+
type: "uint8",
|
|
410
|
+
internalType: "enum IRuleEntitlementBase.LogicalOperationType",
|
|
411
|
+
},
|
|
412
|
+
{
|
|
413
|
+
name: "leftOperationIndex",
|
|
414
|
+
type: "uint8",
|
|
415
|
+
internalType: "uint8",
|
|
416
|
+
},
|
|
417
|
+
{
|
|
418
|
+
name: "rightOperationIndex",
|
|
419
|
+
type: "uint8",
|
|
420
|
+
internalType: "uint8",
|
|
421
|
+
},
|
|
422
|
+
],
|
|
423
|
+
},
|
|
424
|
+
],
|
|
425
|
+
},
|
|
426
|
+
],
|
|
427
|
+
outputs: [
|
|
428
|
+
{
|
|
429
|
+
name: "",
|
|
430
|
+
type: "bytes32",
|
|
431
|
+
internalType: "bytes32",
|
|
432
|
+
},
|
|
433
|
+
],
|
|
434
|
+
stateMutability: "payable",
|
|
435
|
+
},
|
|
339
436
|
{
|
|
340
437
|
type: "function",
|
|
341
438
|
name: "postEntitlementCheckResult",
|
|
@@ -818,6 +915,11 @@ const _abi = [
|
|
|
818
915
|
name: "EntitlementGated_InvalidEntitlement",
|
|
819
916
|
inputs: [],
|
|
820
917
|
},
|
|
918
|
+
{
|
|
919
|
+
type: "error",
|
|
920
|
+
name: "EntitlementGated_InvalidValue",
|
|
921
|
+
inputs: [],
|
|
922
|
+
},
|
|
821
923
|
{
|
|
822
924
|
type: "error",
|
|
823
925
|
name: "EntitlementGated_NodeAlreadyVoted",
|
|
@@ -881,7 +983,7 @@ const _abi = [
|
|
|
881
983
|
] as const;
|
|
882
984
|
|
|
883
985
|
const _bytecode =
|
|
884
|
-
"0x608060405234801561000f575f5ffd5b506040516138fa3803806138fa83398101604081905261002e9161011c565b610036610076565b7f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e0080546001600160a01b0319166001600160a01b03831617905550610149565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef520008054640100000000900460ff16156100c2576040516366008a2d60e01b815260040160405180910390fd5b805463ffffffff908116101561011957805463ffffffff191663ffffffff90811782556040519081527fe9c9b456cb2994b80aeef036cf59d26e9617df80f816a6ee5a5b4166e07e2f5c9060200160405180910390a15b50565b5f6020828403121561012c575f5ffd5b81516001600160a01b0381168114610142575f5ffd5b9392505050565b6137a4806101565f395ff3fe6080604052600436106100b8575f3560e01c80637adc9cbe11610071578063caeb80881161004c578063caeb8088146101e8578063e58690f2146101fb578063ffbfd74d1461020e575f5ffd5b80637adc9cbe1461019757806392c399ff146101b6578063c1066f18146101d5575f5ffd5b80634739e805116100a15780634739e8051461011d5780635bf0fec71461013e57806368ab7dd61461016b575f5ffd5b8063069a3ee9146100bc5780630fe44a21146100f1575b5f5ffd5b3480156100c7575f5ffd5b506100db6100d6366004611e9b565b61022d565b6040516100e89190611fb3565b60405180910390f35b3480156100fc575f5ffd5b5061011061010b3660046120ac565b610467565b6040516100e89190612118565b348015610128575f5ffd5b5061013c610137366004612183565b610561565b005b348015610149575f5ffd5b5061015d6101583660046121cf565b6105a7565b6040519081526020016100e8565b348015610176575f5ffd5b5061018a610185366004611e9b565b610626565b6040516100e89190612213565b3480156101a2575f5ffd5b5061013c6101b1366004612377565b6108d8565b3480156101c1575f5ffd5b506100db6101d03660046120ac565b610947565b61015d6101e33660046123da565b610975565b61015d6101f63660046123da565b610a71565b61013c610209366004612183565b610b59565b348015610219575f5ffd5b5061015d6102283660046123da565b610bf5565b61025160405180606001604052806060815260200160608152602001606081525090565b5f828152602081815260408083208151815460809481028201850190935260608101838152909491938593919285929185015b828210156102ec575f84815260209020604080518082019091529083018054829060ff1660028111156102b9576102b9611eb2565b60028111156102ca576102ca611eb2565b81529054610100900460ff166020918201529082526001929092019101610284565b50505050815260200160018201805480602002602001604051908101604052809291908181526020015f905b828210156103af575f848152602090206040805160808101909152600484029091018054829060ff16600681111561035257610352611eb2565b600681111561036357610363611eb2565b8152600182810154602080840191909152600284015473ffffffffffffffffffffffffffffffffffffffff16604084015260039093015460609092019190915291835292019101610318565b50505050815260200160028201805480602002602001604051908101604052809291908181526020015f905b82821015610459575f8481526020902060408051606081019091529083018054829060ff16600281111561041157610411611eb2565b600281111561042257610422611eb2565b8152905460ff61010082048116602080850191909152620100009092041660409092019190915290825260019290920191016103db565b505050915250909392505050565b60408051808201909152606080825260208201525f82815260208190526040902054156105005760408051608081018252600f8183019081527f52756c65456e7469746c656d656e740000000000000000000000000000000000606083015281525f84815260208181529083902092519192818401926104e792016124e8565b604051602081830303815290604052815250905061055b565b6040805160808101825260118183019081527f52756c65456e7469746c656d656e745632000000000000000000000000000000606083015281525f848152600160209081529083902092519192818401926104e79201612625565b92915050565b3068929eee149b4bd21268540361057f5763ab143c065f526004601cfd5b3068929eee149b4bd2126855610596838383610ce8565b3868929eee149b4bd2126855505050565b5f82815260208190526040812082906105c08282612ceb565b50506040517fffffffffffffffffffffffffffffffffffffffff0000000000000000000000003260601b1660208201524360348201525f9060540160405160208183030381529060405280519060200120905061061f3382308761109b565b9392505050565b61064a60405180606001604052806060815260200160608152602001606081525090565b5f8281526001602090815260408083208151815460809481028201850190935260608101838152909491938593919285929185015b828210156106e7575f84815260209020604080518082019091529083018054829060ff1660028111156106b4576106b4611eb2565b60028111156106c5576106c5611eb2565b81529054610100900460ff16602091820152908252600192909201910161067f565b50505050815260200160018201805480602002602001604051908101604052809291908181526020015f905b8282101561082e575f848152602090206040805160808101909152600484029091018054829060ff16600681111561074d5761074d611eb2565b600681111561075e5761075e611eb2565b815260018201546020820152600282015473ffffffffffffffffffffffffffffffffffffffff16604082015260038201805460609092019161079f906125da565b80601f01602080910402602001604051908101604052809291908181526020018280546107cb906125da565b80156108165780601f106107ed57610100808354040283529160200191610816565b820191905f5260205f20905b8154815290600101906020018083116107f957829003601f168201915b50505050508152505081526020019060010190610713565b50505050815260200160028201805480602002602001604051908101604052809291908181526020015f905b82821015610459575f8481526020902060408051606081019091529083018054829060ff16600281111561089057610890611eb2565b60028111156108a1576108a1611eb2565b8152905460ff610100820481166020808501919091526201000090920416604090920191909152908252600192909201910161085a565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef5200054640100000000900460ff1661093b576040517f77a399b800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610944816114e3565b50565b61096b60405180606001604052806060815260200160608152602001606081525090565b61061f838361156e565b5f805b838110156109bf57825f5f87878581811061099557610995612db5565b9050602002013581526020019081526020015f2081816109b59190612ceb565b5050600101610978565b506040517fffffffffffffffffffffffffffffffffffffffff0000000000000000000000003260601b1660208201524360348201525f90605401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152919052805160209091012090505f5b84811015610a6857610a60333084308a8a87818110610a5457610a54612db5565b905060200201356116db565b600101610a33565b50949350505050565b5f805b83811015610abc578260015f878785818110610a9257610a92612db5565b9050602002013581526020019081526020015f208181610ab291906131b7565b5050600101610a74565b506040517fffffffffffffffffffffffffffffffffffffffff0000000000000000000000003260601b1660208201524360348201525f90605401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152919052805160209091012090505f5b84811015610a6857610b51333084308a8a87818110610a5457610a54612db5565b600101610b30565b7f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e005473ffffffffffffffffffffffffffffffffffffffff163314610bc057610bc07fb2395d70000000000000000000000000000000000000000000000000000000006118d6565b3068929eee149b4bd212685403610bde5763ab143c065f526004601cfd5b3068929eee149b4bd21268556105968383836118de565b5f805b83811015610c40578260015f878785818110610c1657610c16612db5565b9050602002013581526020019081526020015f208181610c3691906131b7565b5050600101610bf8565b506040517fffffffffffffffffffffffffffffffffffffffff0000000000000000000000003260601b1660208201524360348201525f90605401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152919052805160209091012090505f5b84811015610a6857610ce0338330898986818110610cd457610cd4612db5565b9050602002013561109b565b600101610cb4565b5f8381527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e016020526040902080547f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e009190610100900473ffffffffffffffffffffffffffffffffffffffff161580610d625750805460ff16155b15610d99576040517ff5ab487200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f84815260028201602052604090205460ff1615610de3576040517f7912b73900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8481526001820160205260408120805482918291825b81811015610f6d575f838281548110610e1557610e15612db5565b5f91825260209091200180549091503373ffffffffffffffffffffffffffffffffffffffff90911603610f02575f815474010000000000000000000000000000000000000000900460ff166002811115610e7157610e71611eb2565b14610ea8576040517f47592a4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80548a9082907fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1674010000000000000000000000000000000000000000836002811115610ef857610ef8611eb2565b0217905550600196505b805474010000000000000000000000000000000000000000900460ff166001816002811115610f3357610f33611eb2565b03610f4357866001019650610f63565b6002816002811115610f5757610f57611eb2565b03610f63578560010195505b5050600101610dfa565b5084610fa5576040517f8223a7e900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610fb060028261325e565b841180610fc65750610fc360028261325e565b83115b1561108f575f898152600287016020526040812080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055838511611011576002611014565b60015b90505f6110208c6119a7565b9050600182600281111561103657611036611eb2565b148061103f5750805b1561107d578b7fb9d6ce397e562841871d119aaf77469c60a3b5bf8b99a5d9851656015015c633836040516110749190613296565b60405180910390a25b801561108c5761108c8c611a64565b50505b50505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff84166110df576110df7f99ef0388000000000000000000000000000000000000000000000000000000006118d6565b5f8381527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e016020526040902080547f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e00919060ff16156111a85760048101545f5b818110156111a5578483600401828154811061115d5761115d612db5565b905f5260205f2001540361119d576040517f0d5a9ef800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60010161113f565b50505b815473ffffffffffffffffffffffffffffffffffffffff166111cc576111cc611b86565b81546040517f4f845445000000000000000000000000000000000000000000000000000000008152600560048201525f9173ffffffffffffffffffffffffffffffffffffffff1690634f845445906024015f60405180830381865afa158015611237573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820160405261127c919081019061338a565b825490915060ff1661130457815460038301805473ffffffffffffffffffffffffffffffffffffffff8089167fffffffffffffffffffffffff0000000000000000000000000000000000000000909216919091179091558816610100027fffffffffffffffffffffff0000000000000000000000000000000000000000009091161760011782555b600482018054600181810183555f928352602080842090920187905583518784529085019091526040822090915b8281101561144f5781604051806040016040528086848151811061135857611358612db5565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1681526020015f600281111561138d5761138d611eb2565b905281546001810183555f9283526020928390208251910180547fffffffffffffffffffffffff0000000000000000000000000000000000000000811673ffffffffffffffffffffffffffffffffffffffff909316928317825593830151929390929183917fffffffffffffffffffffff00000000000000000000000000000000000000000016177401000000000000000000000000000000000000000083600281111561143d5761143d611eb2565b02179055505050806001019050611332565b5084546040517f541da4e500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063541da4e5906114ab908c908c908b90899060040161341f565b5f604051808303815f87803b1580156114c2575f5ffd5b505af11580156114d4573d5f5f3e3d5ffd5b50505050505050505050505050565b61150c7fd5fa71fa00000000000000000000000000000000000000000000000000000000611cc1565b7f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e0080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff831617905550565b61159260405180606001604052806060815260200160608152602001606081525090565b5f8381527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e016020526040902080547f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e00919060ff1661161c576040517ff5ab487200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60038101546040517f069a3ee90000000000000000000000000000000000000000000000000000000081526004810186905273ffffffffffffffffffffffffffffffffffffffff90911690819063069a3ee9906024015f60405180830381865afa15801561168c573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526116d191908101906135fb565b9695505050505050565b73ffffffffffffffffffffffffffffffffffffffff851661171f5761171f7f99ef0388000000000000000000000000000000000000000000000000000000006118d6565b73ffffffffffffffffffffffffffffffffffffffff8216611763576117637f4bb7c205000000000000000000000000000000000000000000000000000000006118d6565b5f8381527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e016020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011781556003810180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff888116919091179091558251908916938101939093527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e00939092909101604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905284547f21be050a00000000000000000000000000000000000000000000000000000000835290925073ffffffffffffffffffffffffffffffffffffffff16906321be050a9034906118bf908c908b908a90889060040161374f565b5f604051808303818588803b1580156114c2575f5ffd5b805f5260045ffd5b5f8381527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e016020526040902080547f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e00919060ff1661195f5761195f7ff5ab4872000000000000000000000000000000000000000000000000000000006118d6565b847fb9d6ce397e562841871d119aaf77469c60a3b5bf8b99a5d9851656015015c6338460405161198f9190613296565b60405180910390a26119a085611a64565b5050505050565b5f8181527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e016020526040812060048101547f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e009190835b81811015611a5457826002015f846004018381548110611a1f57611a1f612db5565b5f918252602080832090910154835282019290925260400190205460ff16611a4c57505f95945050505050565b6001016119fd565b50600195945050505050565b5050565b5f8181527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e016020526040812060048101547f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e00925b81811015611b0357826001015f846004018381548110611ada57611ada612db5565b905f5260205f20015481526020019081526020015f205f611afb9190611e16565b600101611ab8565b50611b11600483015f611e31565b5f848152600184016020526040812080547fffffffffffffffffffffff0000000000000000000000000000000000000000001681556003810180547fffffffffffffffffffffffff000000000000000000000000000000000000000016905590611b7e6004830182611e31565b505050505050565b5f7f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e0090505f7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb600600601546040517f44ab66800000000000000000000000000000000000000000000000000000000081527f53706163654f70657261746f7200000000000000000000000000000000000000600482015273ffffffffffffffffffffffffffffffffffffffff909116906344ab668090602401602060405180830381865afa158015611c59573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c7d9190613789565b82547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff919091161790915550565b7fffffffff0000000000000000000000000000000000000000000000000000000081165f9081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b00602052604090205460ff16611d95577fffffffff0000000000000000000000000000000000000000000000000000000081165f9081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b006020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055611dc7565b6040517ff2cfeefa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517fffffffff000000000000000000000000000000000000000000000000000000008216907f78f84e5b1c5c05be2b5ad3800781dd404d6d6c6302bc755c0fe20f58a33a7f22905f90a250565b5080545f8255905f5260205f20908101906109449190611e4c565b5080545f8255905f5260205f20908101906109449190611e87565b5b80821115611e835780547fffffffffffffffffffffff000000000000000000000000000000000000000000168155600101611e4d565b5090565b5b80821115611e83575f8155600101611e88565b5f60208284031215611eab575f5ffd5b5035919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b6003811061094457610944611eb2565b5f8151808452602084019350602083015f5b82811015611f385781518051611f1681611edf565b875260209081015160ff16818801526040909601959190910190600101611f01565b5093949350505050565b60078110611f5257611f52611eb2565b9052565b5f8151808452602084019350602083015f5b82811015611f385781518051611f7d81611edf565b8088525060ff602082015116602088015260ff604082015116604088015250606086019550602082019150600181019050611f68565b602081525f825160606020840152611fce6080840182611eef565b6020858101517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0868403016040870152805180845290820193505f92909101905b80831015612070578351612024838251611f42565b6020810151602084015273ffffffffffffffffffffffffffffffffffffffff6040820151166040840152606081015160608401525060808201915060208401935060018301925061200f565b50604086015192507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08582030160608601526116d18184611f56565b5f5f604083850312156120bd575f5ffd5b50508035926020909101359150565b5f81518084528060208401602086015e5f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081525f82516040602084015261213360608401826120cc565b905060208401517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe084830301604085015261216e82826120cc565b95945050505050565b60038110610944575f5ffd5b5f5f5f60608486031215612195575f5ffd5b833592506020840135915060408401356121ae81612177565b809150509250925092565b5f606082840312156121c9575f5ffd5b50919050565b5f5f604083850312156121e0575f5ffd5b82359150602083013567ffffffffffffffff8111156121fd575f5ffd5b612209858286016121b9565b9150509250929050565b602081525f82516060602084015261222e6080840182611eef565b6020858101518583037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0016040870152805180845292935081019181840191600582901b8501015f5b8281101561230e577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe086830301845284516122b3838251611f42565b6020810151602084015273ffffffffffffffffffffffffffffffffffffffff604082015116604084015260608101519050608060608401526122f860808401826120cc565b6020968701969590950194925050600101612277565b50604088015194507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe087820301606088015261234a8186611f56565b98975050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610944575f5ffd5b5f60208284031215612387575f5ffd5b813561061f81612356565b5f5f83601f8401126123a2575f5ffd5b50813567ffffffffffffffff8111156123b9575f5ffd5b6020830191508360208260051b85010111156123d3575f5ffd5b9250929050565b5f5f5f604084860312156123ec575f5ffd5b833567ffffffffffffffff811115612402575f5ffd5b61240e86828701612392565b909450925050602084013567ffffffffffffffff81111561242d575f5ffd5b612439868287016121b9565b9150509250925092565b5f8154808452602084019350825f5260205f205f5b82811015611f3857815460ff811661246f81611edf565b875260081c60ff16602087015260409095019460019182019101612458565b5f8154808452602084019350825f5260205f205f5b82811015611f3857815460ff81166124ba81611edf565b875260ff600882901c8116602089015260109190911c166040870152606090950194600191820191016124a3565b60208152606060208201525f6125016080830184612443565b8281037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00160408401526001840180548083525f91825260208083209301905b808310156125a2576125578260ff865416611f42565b6001840154602083015273ffffffffffffffffffffffffffffffffffffffff600285015416604083015260038401546060830152608082019150600484019350600183019250612541565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08582030160608601526116d1816002880161248e565b600181811c908216806125ee57607f821691505b6020821081036121c9577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b60208152606060208201525f61263e6080830184612443565b600184017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe084830301604085015281815480845260208401915060208160051b850101835f5260205f2093505f5b828110156127af577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08683030184526126c98260ff875416611f42565b6001850154602083015273ffffffffffffffffffffffffffffffffffffffff600286015416604083015260038501608060608401525f815461270a816125da565b806080870152600182165f8114612728576001811461276257612793565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00831660a088015260a082151560051b8801019350612793565b845f5260205f205f5b8381101561278a57815489820160a0015260019091019060200161276b565b880160a0019450505b505050600496909601956020959095019492505060010161268c565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe087820301606088015261234a8160028a0161248e565b5f5f83357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe184360301811261281a575f5ffd5b83018035915067ffffffffffffffff821115612834575f5ffd5b6020019150600681901b36038213156123d3575f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b600281901b7f3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821682146128d3577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b919050565b60ff81168114610944575f5ffd5b81356128f181612177565b6128fa81611edf565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0082541660ff82168117835550506020820135612936816128d8565b81547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16600882901b61ff0016178255505050565b505050565b5f5f83357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126129a3575f5ffd5b83018035915067ffffffffffffffff8211156129bd575f5ffd5b6020019150600781901b36038213156123d3575f5ffd5b60078110610944575f5ffd5b600782106129f0576129f0611eb2565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0081541660ff831681178255505050565b8135612a2c816129d4565b612a3681836129e0565b50602082013560018201556040820135612a4f81612356565b6002820180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790555060609190910135600390910155565b68010000000000000000831115612aba57612aba61284b565b805483825580841015612b1157612ad081612878565b612ad985612878565b5f8481526020902091820191015b81811015612b0e575f80825560018201819055600282018190556003820155600401612ae7565b50505b505f8181526020812083915b85811015611b7e57612b2f8383612a21565b6080929092019160049190910190600101612b1d565b5f5f83357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112612b78575f5ffd5b83018035915067ffffffffffffffff821115612b92575f5ffd5b60200191506060810236038213156123d3575f5ffd5b8135612bb381612177565b612bbc81611edf565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0082541660ff82168117835550506020820135612bf8816128d8565b81547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16600882901b61ff0016178255506040820135612c37816128d8565b81547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff1660109190911b62ff00001617905550565b68010000000000000000831115612c8557612c8561284b565b805483825580841015612cba575f828152602090208481019082015b80821015612cb7575f8255600182019150612ca1565b50505b505f8181526020812083915b85811015611b7e57612cd88383612ba8565b6060929092019160019182019101612cc6565b612cf582836127e7565b68010000000000000000811115612d0e57612d0e61284b565b825481845580821015612d43575f848152602090208281019082015b80821015612d40575f8255600182019150612d2a565b50505b505f838152602090205f5b82811015612d7357612d6084836128e6565b6040939093019260019182019101612d4e565b50505050612d846020830183612970565b612d92818360018601612aa1565b5050612da16040830183612b45565b612daf818360028601612c6c565b50505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f5f83357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112612e15575f5ffd5b83018035915067ffffffffffffffff821115612e2f575f5ffd5b6020019150600581901b36038213156123d3575f5ffd5b5f82357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81833603018112612e78575f5ffd5b9190910192915050565b5b81811015611a60575f8155600101612e83565b601f82111561296b57805f5260205f20601f840160051c81016020851015612ebb5750805b6119a0601f850160051c830182612e82565b8135612ed8816129d4565b612ee281836129e0565b50602082013560018201556040820135612efb81612356565b6002820180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790555060608201357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1833603018112612f72575f5ffd5b8201803567ffffffffffffffff811115612f8a575f5ffd5b602082019150803603821315612f9e575f5ffd5b6003830167ffffffffffffffff821115612fba57612fba61284b565b612fce82612fc883546125da565b83612e96565b5f601f83116001811461301e575f8415612fe85750848201355b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1783556130b2565b5f838152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561306b578785013582556020948501946001909201910161304b565b50858210156130a6577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88760031b161c19848801351681555b505060018460011b0183555b50505050505050565b680100000000000000008311156130d4576130d461284b565b80548382558084101561317a576130ea81612878565b6130f385612878565b5f8481526020902091820191015b81811015613177575f81555f60018201555f60028201556003810161312681546125da565b801561316d57601f811160018114613140575f835561316b565b5f8381526020902061315d601f840160051c820160018301612e82565b505f83815260208120818555555b505b5050600401613101565b50505b505f8181526020812083915b85811015611b7e576131a161319b8487612e46565b83612ecd565b6020929092019160049190910190600101613186565b6131c182836127e7565b680100000000000000008111156131da576131da61284b565b82548184558082101561320f575f848152602090208281019082015b8082101561320c575f82556001820191506131f6565b50505b505f838152602090205f5b8281101561323f5761322c84836128e6565b604093909301926001918201910161321a565b505050506132506020830183612de2565b612d928183600186016130bb565b5f82613291577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b602081016132a383611edf565b91905290565b6040516080810167ffffffffffffffff811182821017156132cc576132cc61284b565b60405290565b6040516060810167ffffffffffffffff811182821017156132cc576132cc61284b565b6040805190810167ffffffffffffffff811182821017156132cc576132cc61284b565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561335f5761335f61284b565b604052919050565b5f67ffffffffffffffff8211156133805761338061284b565b5060051b60200190565b5f6020828403121561339a575f5ffd5b815167ffffffffffffffff8111156133b0575f5ffd5b8201601f810184136133c0575f5ffd5b80516133d36133ce82613367565b613318565b8082825260208201915060208360051b8501019250868311156133f4575f5ffd5b6020840193505b828410156116d157835161340e81612356565b8252602093840193909101906133fb565b5f6080820173ffffffffffffffffffffffffffffffffffffffff871683528560208401528460408401526080606084015280845180835260a0850191506020860192505f5b8181101561349857835173ffffffffffffffffffffffffffffffffffffffff16835260209384019390920191600101613464565b509098975050505050505050565b5f82601f8301126134b5575f5ffd5b81516134c36133ce82613367565b8082825260208201915060208360071b8601019250858311156134e4575f5ffd5b602085015b8381101561354c5760808188031215613500575f5ffd5b6135086132a9565b8151613513816129d4565b815260208281015190820152604082015161352d81612356565b60408201526060828101519082015283526020909201916080016134e9565b5095945050505050565b5f82601f830112613565575f5ffd5b81516135736133ce82613367565b80828252602082019150602060608402860101925085831115613594575f5ffd5b602085015b8381101561354c57606081880312156135b0575f5ffd5b6135b86132d2565b81516135c381612177565b815260208201516135d3816128d8565b602082015260408201516135e6816128d8565b60408201528352602090920191606001613599565b5f6020828403121561360b575f5ffd5b815167ffffffffffffffff811115613621575f5ffd5b820160608185031215613632575f5ffd5b61363a6132d2565b815167ffffffffffffffff811115613650575f5ffd5b8201601f81018613613660575f5ffd5b805161366e6133ce82613367565b8082825260208201915060208360061b85010192508883111561368f575f5ffd5b6020840193505b828410156136ec576040848a0312156136ad575f5ffd5b6136b56132f5565b84516136c081612177565b815260208501516136d0816128d8565b8060208301525080835250602082019150604084019350613696565b8452505050602082015167ffffffffffffffff81111561370a575f5ffd5b613716868285016134a6565b602083015250604082015167ffffffffffffffff811115613735575f5ffd5b61374186828501613556565b604083015250949350505050565b73ffffffffffffffffffffffffffffffffffffffff85168152836020820152826040820152608060608201525f6116d160808301846120cc565b5f60208284031215613799575f5ffd5b815161061f8161235656";
|
|
986
|
+
"0x608060405234801561000f575f5ffd5b50604051613a96380380613a9683398101604081905261002e9161011c565b610036610076565b7f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e0080546001600160a01b0319166001600160a01b03831617905550610149565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef520008054640100000000900460ff16156100c2576040516366008a2d60e01b815260040160405180910390fd5b805463ffffffff908116101561011957805463ffffffff191663ffffffff90811782556040519081527fe9c9b456cb2994b80aeef036cf59d26e9617df80f816a6ee5a5b4166e07e2f5c9060200160405180910390a15b50565b5f6020828403121561012c575f5ffd5b81516001600160a01b0381168114610142575f5ffd5b9392505050565b613940806101565f395ff3fe6080604052600436106100c3575f3560e01c806392c399ff11610071578063caeb80881161004c578063caeb808814610206578063e58690f214610219578063ffbfd74d1461022c575f5ffd5b806392c399ff146101c1578063bef1bee1146101e0578063c1066f18146101f3575f5ffd5b80635bf0fec7116100a15780635bf0fec71461014957806368ab7dd6146101765780637adc9cbe146101a2575f5ffd5b8063069a3ee9146100c75780630fe44a21146100fc5780634739e80514610128575b5f5ffd5b3480156100d2575f5ffd5b506100e66100e1366004611fca565b61024b565b6040516100f391906120e2565b60405180910390f35b348015610107575f5ffd5b5061011b6101163660046121db565b610485565b6040516100f39190612247565b348015610133575f5ffd5b506101476101423660046122a9565b61057f565b005b348015610154575f5ffd5b506101686101633660046122f5565b6105c5565b6040519081526020016100f3565b348015610181575f5ffd5b50610195610190366004611fca565b610644565b6040516100f39190612339565b3480156101ad575f5ffd5b506101476101bc36600461249d565b6108f6565b3480156101cc575f5ffd5b506100e66101db3660046121db565b610965565b6101686101ee366004612500565b610993565b61016861020136600461257c565b610a46565b61016861021436600461257c565b610af7565b6101476102273660046122a9565b610b42565b348015610237575f5ffd5b5061016861024636600461257c565b610bde565b61026f60405180606001604052806060815260200160608152602001606081525090565b5f828152602081815260408083208151815460809481028201850190935260608101838152909491938593919285929185015b8282101561030a575f84815260209020604080518082019091529083018054829060ff1660028111156102d7576102d7611fe1565b60028111156102e8576102e8611fe1565b81529054610100900460ff1660209182015290825260019290920191016102a2565b50505050815260200160018201805480602002602001604051908101604052809291908181526020015f905b828210156103cd575f848152602090206040805160808101909152600484029091018054829060ff16600681111561037057610370611fe1565b600681111561038157610381611fe1565b8152600182810154602080840191909152600284015473ffffffffffffffffffffffffffffffffffffffff16604084015260039093015460609092019190915291835292019101610336565b50505050815260200160028201805480602002602001604051908101604052809291908181526020015f905b82821015610477575f8481526020902060408051606081019091529083018054829060ff16600281111561042f5761042f611fe1565b600281111561044057610440611fe1565b8152905460ff61010082048116602080850191909152620100009092041660409092019190915290825260019290920191016103f9565b505050915250909392505050565b60408051808201909152606080825260208201525f828152602081905260409020541561051e5760408051608081018252600f8183019081527f52756c65456e7469746c656d656e740000000000000000000000000000000000606083015281525f8481526020818152908390209251919281840192610505920161268a565b6040516020818303038152906040528152509050610579565b6040805160808101825260118183019081527f52756c65456e7469746c656d656e745632000000000000000000000000000000606083015281525f8481526001602090815290839020925191928184019261050592016127c7565b92915050565b3068929eee149b4bd21268540361059d5763ab143c065f526004601cfd5b3068929eee149b4bd21268556105b4838383610cda565b3868929eee149b4bd2126855505050565b5f82815260208190526040812082906105de8282612e88565b50506040517fffffffffffffffffffffffffffffffffffffffff0000000000000000000000003260601b1660208201524360348201525f9060540160405160208183030381529060405280519060200120905061063d3382308761108d565b9392505050565b61066860405180606001604052806060815260200160608152602001606081525090565b5f8281526001602090815260408083208151815460809481028201850190935260608101838152909491938593919285929185015b82821015610705575f84815260209020604080518082019091529083018054829060ff1660028111156106d2576106d2611fe1565b60028111156106e3576106e3611fe1565b81529054610100900460ff16602091820152908252600192909201910161069d565b50505050815260200160018201805480602002602001604051908101604052809291908181526020015f905b8282101561084c575f848152602090206040805160808101909152600484029091018054829060ff16600681111561076b5761076b611fe1565b600681111561077c5761077c611fe1565b815260018201546020820152600282015473ffffffffffffffffffffffffffffffffffffffff1660408201526003820180546060909201916107bd9061277c565b80601f01602080910402602001604051908101604052809291908181526020018280546107e99061277c565b80156108345780601f1061080b57610100808354040283529160200191610834565b820191905f5260205f20905b81548152906001019060200180831161081757829003601f168201915b50505050508152505081526020019060010190610731565b50505050815260200160028201805480602002602001604051908101604052809291908181526020015f905b82821015610477575f8481526020902060408051606081019091529083018054829060ff1660028111156108ae576108ae611fe1565b60028111156108bf576108bf611fe1565b8152905460ff6101008204811660208085019190915262010000909204166040909201919091529082526001929092019101610878565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef5200054640100000000900460ff16610959576040517f77a399b800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610962816114d5565b50565b61098960405180606001604052806060815260200160608152602001606081525090565b61063d8383611560565b5f5f5b838110156109de578260015f8787858181106109b4576109b4612f52565b9050602002013581526020019081526020015f2081816109d49190613353565b5050600101610996565b506040517fffffffffffffffffffffffffffffffffffffffff0000000000000000000000003260601b1660208201524360348201525f90605401604051602081830303815290604052805190602001209050610a3d86338388886116cd565b95945050505050565b5f805b83811015610a9057825f5f878785818110610a6657610a66612f52565b9050602002013581526020019081526020015f208181610a869190612e88565b5050600101610a49565b506040517fffffffffffffffffffffffffffffffffffffffff0000000000000000000000003260601b1660208201524360348201525f90605401604051602081830303815290604052805190602001209050610aef33308388886116cd565b949350505050565b5f805b83811015610a90578260015f878785818110610b1857610b18612f52565b9050602002013581526020019081526020015f208181610b389190613353565b5050600101610afa565b7f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e005473ffffffffffffffffffffffffffffffffffffffff163314610ba957610ba97fb2395d7000000000000000000000000000000000000000000000000000000000611743565b3068929eee149b4bd212685403610bc75763ab143c065f526004601cfd5b3068929eee149b4bd21268556105b483838361174b565b5f805b83811015610c29578260015f878785818110610bff57610bff612f52565b9050602002013581526020019081526020015f208181610c1f9190613353565b5050600101610be1565b506040517fffffffffffffffffffffffffffffffffffffffff0000000000000000000000003260601b1660208201524360348201525f90605401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152919052805160209091012090505f5b84811015610cd157610cc9338330898986818110610cbd57610cbd612f52565b9050602002013561108d565b600101610c9d565b50949350505050565b5f8381527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e016020526040902080547f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e009190610100900473ffffffffffffffffffffffffffffffffffffffff161580610d545750805460ff16155b15610d8b576040517ff5ab487200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f84815260028201602052604090205460ff1615610dd5576040517f7912b73900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8481526001820160205260408120805482918291825b81811015610f5f575f838281548110610e0757610e07612f52565b5f91825260209091200180549091503373ffffffffffffffffffffffffffffffffffffffff90911603610ef4575f815474010000000000000000000000000000000000000000900460ff166002811115610e6357610e63611fe1565b14610e9a576040517f47592a4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80548a9082907fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1674010000000000000000000000000000000000000000836002811115610eea57610eea611fe1565b0217905550600196505b805474010000000000000000000000000000000000000000900460ff166001816002811115610f2557610f25611fe1565b03610f3557866001019650610f55565b6002816002811115610f4957610f49611fe1565b03610f55578560010195505b5050600101610dec565b5084610f97576040517f8223a7e900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610fa26002826133fa565b841180610fb85750610fb56002826133fa565b83115b15611081575f898152600287016020526040812080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055838511611003576002611006565b60015b90505f6110128c611814565b9050600182600281111561102857611028611fe1565b14806110315750805b1561106f578b7fb9d6ce397e562841871d119aaf77469c60a3b5bf8b99a5d9851656015015c633836040516110669190613432565b60405180910390a25b801561107e5761107e8c6118d1565b50505b50505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff84166110d1576110d17f99ef038800000000000000000000000000000000000000000000000000000000611743565b5f8381527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e016020526040902080547f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e00919060ff161561119a5760048101545f5b81811015611197578483600401828154811061114f5761114f612f52565b905f5260205f2001540361118f576040517f0d5a9ef800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600101611131565b50505b815473ffffffffffffffffffffffffffffffffffffffff166111be576111be6119f3565b81546040517f4f845445000000000000000000000000000000000000000000000000000000008152600560048201525f9173ffffffffffffffffffffffffffffffffffffffff1690634f845445906024015f60405180830381865afa158015611229573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820160405261126e9190810190613526565b825490915060ff166112f657815460038301805473ffffffffffffffffffffffffffffffffffffffff8089167fffffffffffffffffffffffff0000000000000000000000000000000000000000909216919091179091558816610100027fffffffffffffffffffffff0000000000000000000000000000000000000000009091161760011782555b600482018054600181810183555f928352602080842090920187905583518784529085019091526040822090915b828110156114415781604051806040016040528086848151811061134a5761134a612f52565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1681526020015f600281111561137f5761137f611fe1565b905281546001810183555f9283526020928390208251910180547fffffffffffffffffffffffff0000000000000000000000000000000000000000811673ffffffffffffffffffffffffffffffffffffffff909316928317825593830151929390929183917fffffffffffffffffffffff00000000000000000000000000000000000000000016177401000000000000000000000000000000000000000083600281111561142f5761142f611fe1565b02179055505050806001019050611324565b5084546040517f541da4e500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063541da4e59061149d908c908c908b9089906004016135bb565b5f604051808303815f87803b1580156114b4575f5ffd5b505af11580156114c6573d5f5f3e3d5ffd5b50505050505050505050505050565b6114fe7fd5fa71fa00000000000000000000000000000000000000000000000000000000611b2e565b7f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e0080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff831617905550565b61158460405180606001604052806060815260200160608152602001606081525090565b5f8381527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e016020526040902080547f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e00919060ff1661160e576040517ff5ab487200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60038101546040517f069a3ee90000000000000000000000000000000000000000000000000000000081526004810186905273ffffffffffffffffffffffffffffffffffffffff90911690819063069a3ee9906024015f60405180830381865afa15801561167e573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526116c39190810190613797565b9695505050505050565b5f805b8281101561173a578161170c57611703878787308888878181106116f6576116f6612f52565b9050602002013534611c83565b60019150611732565b6117328787873088888781811061172557611725612f52565b905060200201355f611c83565b6001016116d0565b50505050505050565b805f5260045ffd5b5f8381527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e016020526040902080547f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e00919060ff166117cc576117cc7ff5ab487200000000000000000000000000000000000000000000000000000000611743565b847fb9d6ce397e562841871d119aaf77469c60a3b5bf8b99a5d9851656015015c633846040516117fc9190613432565b60405180910390a261180d856118d1565b5050505050565b5f8181527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e016020526040812060048101547f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e009190835b818110156118c157826002015f84600401838154811061188c5761188c612f52565b5f918252602080832090910154835282019290925260400190205460ff166118b957505f95945050505050565b60010161186a565b50600195945050505050565b5050565b5f8181527f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e016020526040812060048101547f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e00925b8181101561197057826001015f84600401838154811061194757611947612f52565b905f5260205f20015481526020019081526020015f205f6119689190611f45565b600101611925565b5061197e600483015f611f60565b5f848152600184016020526040812080547fffffffffffffffffffffff0000000000000000000000000000000000000000001681556003810180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055906119eb6004830182611f60565b505050505050565b5f7f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e0090505f7fc21004fcc619240a31f006438274d15cd813308303284436eef6055f0fdcb600600601546040517f44ab66800000000000000000000000000000000000000000000000000000000081527f53706163654f70657261746f7200000000000000000000000000000000000000600482015273ffffffffffffffffffffffffffffffffffffffff909116906344ab668090602401602060405180830381865afa158015611ac6573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611aea91906138eb565b82547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff919091161790915550565b7fffffffff0000000000000000000000000000000000000000000000000000000081165f9081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b00602052604090205460ff16611c02577fffffffff0000000000000000000000000000000000000000000000000000000081165f9081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b006020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055611c34565b6040517ff2cfeefa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517fffffffff000000000000000000000000000000000000000000000000000000008216907f78f84e5b1c5c05be2b5ad3800781dd404d6d6c6302bc755c0fe20f58a33a7f22905f90a250565b611c8e868483611d73565b5f7f9075c515a635ba70c9696f31149324218d75cf00afe836c482e6473f38b19e005f8681526001828101602052604090912080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016909117815560030180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8716179055905080546040805173ffffffffffffffffffffffffffffffffffffffff898116602083015261173a9316918a9189918891889101604051602081830303815290604052611e31565b34811115611da457611da47ff4e95a4100000000000000000000000000000000000000000000000000000000611743565b73ffffffffffffffffffffffffffffffffffffffff8316611de857611de87f99ef038800000000000000000000000000000000000000000000000000000000611743565b73ffffffffffffffffffffffffffffffffffffffff8216611e2c57611e2c7f4bb7c20500000000000000000000000000000000000000000000000000000000611743565b505050565b8115611ec4576040517f21be050a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8716906321be050a908490611e91908990899089908890600401613906565b5f604051808303818588803b158015611ea8575f5ffd5b505af1158015611eba573d5f5f3e3d5ffd5b50505050506119eb565b6040517f21be050a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8716906321be050a90611f1c908890889088908790600401613906565b5f604051808303815f87803b158015611f33575f5ffd5b505af1158015611081573d5f5f3e3d5ffd5b5080545f8255905f5260205f20908101906109629190611f7b565b5080545f8255905f5260205f20908101906109629190611fb6565b5b80821115611fb25780547fffffffffffffffffffffff000000000000000000000000000000000000000000168155600101611f7c565b5090565b5b80821115611fb2575f8155600101611fb7565b5f60208284031215611fda575f5ffd5b5035919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b6003811061096257610962611fe1565b5f8151808452602084019350602083015f5b8281101561206757815180516120458161200e565b875260209081015160ff16818801526040909601959190910190600101612030565b5093949350505050565b6007811061208157612081611fe1565b9052565b5f8151808452602084019350602083015f5b8281101561206757815180516120ac8161200e565b8088525060ff602082015116602088015260ff604082015116604088015250606086019550602082019150600181019050612097565b602081525f8251606060208401526120fd608084018261201e565b6020858101517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0868403016040870152805180845290820193505f92909101905b8083101561219f578351612153838251612071565b6020810151602084015273ffffffffffffffffffffffffffffffffffffffff6040820151166040840152606081015160608401525060808201915060208401935060018301925061213e565b50604086015192507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08582030160608601526116c38184612085565b5f5f604083850312156121ec575f5ffd5b50508035926020909101359150565b5f81518084528060208401602086015e5f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081525f82516040602084015261226260608401826121fb565b905060208401517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848303016040850152610a3d82826121fb565b60038110610962575f5ffd5b5f5f5f606084860312156122bb575f5ffd5b833592506020840135915060408401356122d48161229d565b809150509250925092565b5f606082840312156122ef575f5ffd5b50919050565b5f5f60408385031215612306575f5ffd5b82359150602083013567ffffffffffffffff811115612323575f5ffd5b61232f858286016122df565b9150509250929050565b602081525f825160606020840152612354608084018261201e565b6020858101518583037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0016040870152805180845292935081019181840191600582901b8501015f5b82811015612434577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe086830301845284516123d9838251612071565b6020810151602084015273ffffffffffffffffffffffffffffffffffffffff6040820151166040840152606081015190506080606084015261241e60808401826121fb565b602096870196959095019492505060010161239d565b50604088015194507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08782030160608801526124708186612085565b98975050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610962575f5ffd5b5f602082840312156124ad575f5ffd5b813561063d8161247c565b5f5f83601f8401126124c8575f5ffd5b50813567ffffffffffffffff8111156124df575f5ffd5b6020830191508360208260051b85010111156124f9575f5ffd5b9250929050565b5f5f5f5f60608587031215612513575f5ffd5b843561251e8161247c565b9350602085013567ffffffffffffffff811115612539575f5ffd5b612545878288016124b8565b909450925050604085013567ffffffffffffffff811115612564575f5ffd5b612570878288016122df565b91505092959194509250565b5f5f5f6040848603121561258e575f5ffd5b833567ffffffffffffffff8111156125a4575f5ffd5b6125b0868287016124b8565b909450925050602084013567ffffffffffffffff8111156125cf575f5ffd5b6125db868287016122df565b9150509250925092565b5f8154808452602084019350825f5260205f205f5b8281101561206757815460ff81166126118161200e565b875260081c60ff166020870152604090950194600191820191016125fa565b5f8154808452602084019350825f5260205f205f5b8281101561206757815460ff811661265c8161200e565b875260ff600882901c8116602089015260109190911c16604087015260609095019460019182019101612645565b60208152606060208201525f6126a360808301846125e5565b8281037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00160408401526001840180548083525f91825260208083209301905b80831015612744576126f98260ff865416612071565b6001840154602083015273ffffffffffffffffffffffffffffffffffffffff6002850154166040830152600384015460608301526080820191506004840193506001830192506126e3565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08582030160608601526116c38160028801612630565b600181811c9082168061279057607f821691505b6020821081036122ef577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b60208152606060208201525f6127e060808301846125e5565b600184017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe084830301604085015281815480845260208401915060208160051b850101835f5260205f2093505f5b82811015612951577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe086830301845261286b8260ff875416612071565b6001850154602083015273ffffffffffffffffffffffffffffffffffffffff600286015416604083015260038501608060608401525f81546128ac8161277c565b806080870152600182165f81146128ca576001811461290457612935565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00831660a088015260a082151560051b8801019350612935565b845f5260205f205f5b8381101561292c57815489820160a0015260019091019060200161290d565b880160a0019450505b505050600496909601956020959095019492505060010161282e565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08782030160608801526124708160028a01612630565b5f5f83357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126129bc575f5ffd5b83018035915067ffffffffffffffff8211156129d6575f5ffd5b6020019150600681901b36038213156124f9575f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b600281901b7f3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82168214612a75577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b919050565b60ff81168114610962575f5ffd5b8135612a938161229d565b612a9c8161200e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0082541660ff82168117835550506020820135612ad881612a7a565b81547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16600882901b61ff0016178255505050565b5f5f83357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112612b40575f5ffd5b83018035915067ffffffffffffffff821115612b5a575f5ffd5b6020019150600781901b36038213156124f9575f5ffd5b60078110610962575f5ffd5b60078210612b8d57612b8d611fe1565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0081541660ff831681178255505050565b8135612bc981612b71565b612bd38183612b7d565b50602082013560018201556040820135612bec8161247c565b6002820180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790555060609190910135600390910155565b68010000000000000000831115612c5757612c576129ed565b805483825580841015612cae57612c6d81612a1a565b612c7685612a1a565b5f8481526020902091820191015b81811015612cab575f80825560018201819055600282018190556003820155600401612c84565b50505b505f8181526020812083915b858110156119eb57612ccc8383612bbe565b6080929092019160049190910190600101612cba565b5f5f83357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112612d15575f5ffd5b83018035915067ffffffffffffffff821115612d2f575f5ffd5b60200191506060810236038213156124f9575f5ffd5b8135612d508161229d565b612d598161200e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0082541660ff82168117835550506020820135612d9581612a7a565b81547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16600882901b61ff0016178255506040820135612dd481612a7a565b81547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff1660109190911b62ff00001617905550565b68010000000000000000831115612e2257612e226129ed565b805483825580841015612e57575f828152602090208481019082015b80821015612e54575f8255600182019150612e3e565b50505b505f8181526020812083915b858110156119eb57612e758383612d45565b6060929092019160019182019101612e63565b612e928283612989565b68010000000000000000811115612eab57612eab6129ed565b825481845580821015612ee0575f848152602090208281019082015b80821015612edd575f8255600182019150612ec7565b50505b505f838152602090205f5b82811015612f1057612efd8483612a88565b6040939093019260019182019101612eeb565b50505050612f216020830183612b0d565b612f2f818360018601612c3e565b5050612f3e6040830183612ce2565b612f4c818360028601612e09565b50505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f5f83357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112612fb2575f5ffd5b83018035915067ffffffffffffffff821115612fcc575f5ffd5b6020019150600581901b36038213156124f9575f5ffd5b5f82357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81833603018112613015575f5ffd5b9190910192915050565b5b818110156118cd575f8155600101613020565b601f821115611e2c57805f5260205f20601f840160051c810160208510156130585750805b61180d601f850160051c83018261301f565b813561307581612b71565b61307f8183612b7d565b506020820135600182015560408201356130988161247c565b6002820180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790555060608201357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe183360301811261310f575f5ffd5b8201803567ffffffffffffffff811115613127575f5ffd5b60208201915080360382131561313b575f5ffd5b6003830167ffffffffffffffff821115613157576131576129ed565b61316b82613165835461277c565b83613033565b5f601f8311600181146131bb575f84156131855750848201355b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17835561173a565b5f838152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561320857878501358255602094850194600190920191016131e8565b5085821015613243577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88760031b161c19848801351681555b505060018460011b01835550505050505050565b68010000000000000000831115613270576132706129ed565b8054838255808410156133165761328681612a1a565b61328f85612a1a565b5f8481526020902091820191015b81811015613313575f81555f60018201555f6002820155600381016132c2815461277c565b801561330957601f8111600181146132dc575f8355613307565b5f838152602090206132f9601f840160051c82016001830161301f565b505f83815260208120818555555b505b505060040161329d565b50505b505f8181526020812083915b858110156119eb5761333d6133378487612fe3565b8361306a565b6020929092019160049190910190600101613322565b61335d8283612989565b68010000000000000000811115613376576133766129ed565b8254818455808210156133ab575f848152602090208281019082015b808210156133a8575f8255600182019150613392565b50505b505f838152602090205f5b828110156133db576133c88483612a88565b60409390930192600191820191016133b6565b505050506133ec6020830183612f7f565b612f2f818360018601613257565b5f8261342d577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b6020810161343f8361200e565b91905290565b6040516080810167ffffffffffffffff81118282101715613468576134686129ed565b60405290565b6040516060810167ffffffffffffffff81118282101715613468576134686129ed565b6040805190810167ffffffffffffffff81118282101715613468576134686129ed565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156134fb576134fb6129ed565b604052919050565b5f67ffffffffffffffff82111561351c5761351c6129ed565b5060051b60200190565b5f60208284031215613536575f5ffd5b815167ffffffffffffffff81111561354c575f5ffd5b8201601f8101841361355c575f5ffd5b805161356f61356a82613503565b6134b4565b8082825260208201915060208360051b850101925086831115613590575f5ffd5b6020840193505b828410156116c35783516135aa8161247c565b825260209384019390910190613597565b5f6080820173ffffffffffffffffffffffffffffffffffffffff871683528560208401528460408401526080606084015280845180835260a0850191506020860192505f5b8181101561363457835173ffffffffffffffffffffffffffffffffffffffff16835260209384019390920191600101613600565b509098975050505050505050565b5f82601f830112613651575f5ffd5b815161365f61356a82613503565b8082825260208201915060208360071b860101925085831115613680575f5ffd5b602085015b838110156136e8576080818803121561369c575f5ffd5b6136a4613445565b81516136af81612b71565b81526020828101519082015260408201516136c98161247c565b6040820152606082810151908201528352602090920191608001613685565b5095945050505050565b5f82601f830112613701575f5ffd5b815161370f61356a82613503565b80828252602082019150602060608402860101925085831115613730575f5ffd5b602085015b838110156136e8576060818803121561374c575f5ffd5b61375461346e565b815161375f8161229d565b8152602082015161376f81612a7a565b6020820152604082015161378281612a7a565b60408201528352602090920191606001613735565b5f602082840312156137a7575f5ffd5b815167ffffffffffffffff8111156137bd575f5ffd5b8201606081850312156137ce575f5ffd5b6137d661346e565b815167ffffffffffffffff8111156137ec575f5ffd5b8201601f810186136137fc575f5ffd5b805161380a61356a82613503565b8082825260208201915060208360061b85010192508883111561382b575f5ffd5b6020840193505b82841015613888576040848a031215613849575f5ffd5b613851613491565b845161385c8161229d565b8152602085015161386c81612a7a565b8060208301525080835250602082019150604084019350613832565b8452505050602082015167ffffffffffffffff8111156138a6575f5ffd5b6138b286828501613642565b602083015250604082015167ffffffffffffffff8111156138d1575f5ffd5b6138dd868285016136f2565b604083015250949350505050565b5f602082840312156138fb575f5ffd5b815161063d8161247c565b73ffffffffffffffffffffffffffffffffffffffff85168152836020820152826040820152608060608201525f6116c360808301846121fb56";
|
|
885
987
|
|
|
886
988
|
type MockEntitlementGatedConstructorParams =
|
|
887
989
|
| [signer?: Signer]
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@towns-protocol/generated",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.246",
|
|
4
4
|
"packageManager": "yarn@3.8.0",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -10,5 +10,5 @@
|
|
|
10
10
|
"make-config": "node ./scripts/make-config.js",
|
|
11
11
|
"preinstall": "node ./scripts/make-config.js"
|
|
12
12
|
},
|
|
13
|
-
"gitHead": "
|
|
13
|
+
"gitHead": "682c0c94458caec886bb045b06c6af9151b486fe"
|
|
14
14
|
}
|