608060405234801562000010575f80fd5b5060015f556200001f62000025565b620000d9565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000765760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620000d65780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b612f9880620000e75f395ff3fe608060405234801561000f575f80fd5b5060043610610201575f3560e01c80637b3e5e7b11610123578063bb6a95be116100b8578063d96a094a11610088578063e1ac8b7f1161006e578063e1ac8b7f1461052f578063e4849b3214610538578063eb91d37e1461054b575f80fd5b8063d96a094a146104b8578063dd62ed3e146104cb575f80fd5b8063bb6a95be1461048c578063bb9cda9414610494578063ca1d209d1461049c578063d44932c0146104af575f80fd5b8063a9059cbb116100f3578063a9059cbb14610435578063b1c9fe6e14610448578063b5545a3c14610462578063b557478a1461046a575f80fd5b80637b3e5e7b146103e657806380ca7d2c146103ef578063879cb32e1461040e57806395d89b411461042d575f80fd5b80633742b94f1161019957806355836c521161016957806355836c521461033c57806370a08231146103455780637165485d1461039957806372a4472a146103c6575f80fd5b80633742b94f146102f85780633d75a1d8146103005780634ce7957c14610313578063518ab2a814610333575f80fd5b806318160ddd116101d457806318160ddd1461029a57806323b872dd146102c1578063246171ac146102d4578063313ce567146102e9575f80fd5b806306f660ef1461020557806306fdde031461021d578063095ea7b31461023257806311eac85514610255575b5f80fd5b624c4b405b6040519081526020015b60405180910390f35b610225610553565b6040516102149190612982565b610245610240366004612a14565b610626565b6040519015158152602001610214565b6001546102759073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610214565b7f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace025461020a565b6102456102cf366004612a3c565b61063f565b6102e76102e2366004612b49565b610662565b005b60405160128152602001610214565b6102e7610896565b61020a61030e366004612c05565b610b25565b6002546102759073ffffffffffffffffffffffffffffffffffffffff1681565b61020a600a5481565b61020a60055481565b61020a610353366004612c1c565b73ffffffffffffffffffffffffffffffffffffffff165f9081527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00602052604090205490565b600e54600f546010546103ab92919083565b60408051938452602084019290925290820152606001610214565b6003546102759073ffffffffffffffffffffffffffffffffffffffff1681565b61020a60095481565b61020a6103fd366004612c1c565b600b6020525f908152604090205481565b61020a61041c366004612c1c565b600c6020525f908152604090205481565b610225610b50565b610245610443366004612a14565b610ba1565b6006546104559060ff1681565b6040516102149190612c69565b6102e7610bae565b610245610478366004612c1c565b600d6020525f908152604090205460ff1681565b6102e7610ed5565b61022561110c565b6102e76104aa366004612c05565b611198565b61020a60075481565b6102e76104c6366004612c05565b61175e565b61020a6104d9366004612ca8565b73ffffffffffffffffffffffffffffffffffffffff9182165f9081527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace016020908152604080832093909416825291909152205490565b61020a60085481565b6102e7610546366004612c05565b611c4d565b61020a611fdc565b7f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0380546060917f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00916105a490612cd9565b80601f01602080910402602001604051908101604052809291908181526020018280546105d090612cd9565b801561061b5780601f106105f25761010080835404028352916020019161061b565b820191905f5260205f20905b8154815290600101906020018083116105fe57829003601f168201915b505050505091505090565b5f33610633818585612071565b60019150505b92915050565b5f3361064c858285612083565b61065785858561216f565b506001949350505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff165f811580156106ac5750825b90505f8267ffffffffffffffff1660011480156106c85750303b155b9050811580156106d6575080155b1561070d576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000166001178555831561076e5784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b6107788b8b612218565b6003805473ffffffffffffffffffffffffffffffffffffffff8a81167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617909255600280548c841690831617905560018054928f1692909116919091179055600680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055600461080e8882612d6e565b50600586905561082730685150ae84a8cdf0000061222e565b83156108885784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050505050505050565b61089e612288565b5f60065460ff1660028111156108b6576108b6612c3c565b03610948576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f43616e6e6f7420776974686472617720617274697374206665657320696e207460448201527f68652043726f776466756e642070686173652e0000000000000000000000000060648201526084015b60405180910390fd5b5f6109516122c9565b60035490915073ffffffffffffffffffffffffffffffffffffffff8083169116146109a8576040517fa1e791ee00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6007545f036109e3576040517ff456040300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600780545f918290556001546003546040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff91821660048201526024810184905292939291169063a9059cbb906044016020604051808303815f875af1158015610a67573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a8b9190612e8a565b905080610ac4576040517f90b8ec1800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6003546040805173ffffffffffffffffffffffffffffffffffffffff9092168252602082018490527ff53c1fb49f194df3749db1041bc9039efd85d88eb45f706e0fe85fa197553c64910160405180910390a1505050610b2360015f55565b565b5f624c4b408181610b3e85670de0b6b3a7640000612ed6565b610b489190612eed565b949350505050565b7f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0480546060917f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00916105a490612cd9565b5f3361063381858561216f565b610bb6612288565b600260065460ff166002811115610bcf57610bcf612c3c565b14610c36576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f43726f776466756e64206e6f742063616e63656c656400000000000000000000604482015260640161093f565b335f908152600d602052604090205460ff1615610caf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f526566756e6420616c726561647920636c61696d656400000000000000000000604482015260640161093f565b335f908152600c6020908152604080832054600b9092529091205481610d31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4e6f2066756e647320746f20726566756e640000000000000000000000000000604482015260640161093f565b335f818152600d6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001908117909155600c8352818420849055600b909252808320839055905490517fa9059cbb000000000000000000000000000000000000000000000000000000008152600481019390935260248301859052909173ffffffffffffffffffffffffffffffffffffffff9091169063a9059cbb906044016020604051808303815f875af1158015610df9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e1d9190612e8a565b905080610e86576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f5553444320726566756e64206661696c65640000000000000000000000000000604482015260640161093f565b60408051338152602081018590527f8f42ffc9d9a2a561d3428041520b29bd3ef146b26d709b2243575defc10bd047910160405180910390a1610ec933836122e7565b505050610b2360015f55565b610edd612288565b5f8060065460ff166002811115610ef657610ef6612c3c565b14610f5d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f496e636f72726563742070686173650000000000000000000000000000000000604482015260640161093f565b60035473ffffffffffffffffffffffffffffffffffffffff16331480610f9a575060025473ffffffffffffffffffffffffffffffffffffffff1633145b611000576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f4e6f7420617574686f72697a65642e0000000000000000000000000000000000604482015260640161093f565b5f60065460ff16600281111561101857611018612c3c565b146110a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f5468697320746f6b656e206973206e6f206c6f6e67657220696e20746865204360448201527f726f776466756e642070686173652c2063616e6e6f742063616e63656c2e0000606482015260840161093f565b600680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660021790555f600881905560078190556040517fc6556bd31951fe874078d5d2f147831653ef2b97e1c56dce2ca4f724c59963409190a150610b2360015f55565b6004805461111990612cd9565b80601f016020809104026020016040519081016040528092919081815260200182805461114590612cd9565b80156111905780601f1061116757610100808354040283529160200191611190565b820191905f5260205f20905b81548152906001019060200180831161117357829003601f168201915b505050505081565b6111a0612288565b5f8060065460ff1660028111156111b9576111b9612c3c565b14611220576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f496e636f72726563742070686173650000000000000000000000000000000000604482015260640161093f565b815f03611259576040517ff456040300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60055460095483919061126c9083612f25565b1061128b576009546005546112819190612f38565b905061128b612341565b5f6112946122c9565b6001546040517fdd62ed3e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff808416600483015230602483015292935084929091169063dd62ed3e90604401602060405180830381865afa15801561130d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113319190612f4b565b1015611399576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f5553444320616c6c6f77616e636520746f6f206c6f7700000000000000000000604482015260640161093f565b6001546040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152306024830152604482018590525f9216906323b872dd906064016020604051808303815f875af1158015611415573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114399190612e8a565b9050806114a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f55534443207472616e73666572206661696c6564000000000000000000000000604482015260640161093f565b5f6114ac84610b25565b90508360095f8282546114bf9190612f25565b909155505073ffffffffffffffffffffffffffffffffffffffff83165f908152600b6020526040812080548392906114f8908490612f25565b909155505073ffffffffffffffffffffffffffffffffffffffff83165f908152600c602052604081208054869290611531908490612f25565b9250508190555080600a5f8282546115499190612f25565b9091555061155a905030848361216f565b5f606461156886600a612ed6565b6115729190612eed565b90505f61157f8287612f38565b90508060075f8282546115929190612f25565b925050819055508160085f8282546115aa9190612f25565b909155506001905060065460ff1660028111156115c9576115c9612c3c565b036116f457600854156116f4576001546002546008546040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff928316600482015260248101919091525f92919091169063a9059cbb906044016020604051808303815f875af1158015611656573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061167a9190612e8a565b9050806116b3576040517f90b8ec1800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7ff35ee58cb2596f79b3a4119680daa6d3dd08c1f71e01a2132e7d2eed04e24a2c6008546040516116e691815260200190565b60405180910390a1505f6008555b6040805173ffffffffffffffffffffffffffffffffffffffff87168152602081018890529081018490527fd5321498ebef1d048889992d8457d0f50576d300db1fd93488480c1f57a656019060600160405180910390a15050505050505061175b60015f55565b50565b611766612288565b60018060065460ff16600281111561178057611780612c3c565b146117e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f496e636f72726563742070686173650000000000000000000000000000000000604482015260640161093f565b815f03611820576040517ff456040300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6118296122c9565b6001546040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff80841660048301529293508592909116906370a0823190602401602060405180830381865afa15801561189c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118c09190612f4b565b1015611928576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f5553444320616c6c6f77616e636520746f6f206c6f7700000000000000000000604482015260640161093f565b6001546040517fdd62ed3e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301523060248301528592169063dd62ed3e90604401602060405180830381865afa15801561199c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119c09190612f4b565b1015611a28576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f5553444320616c6c6f77616e636520746f6f206c6f7700000000000000000000604482015260640161093f565b5f611a3284612452565b905080600e5f01541015611aa2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4e6f7420656e6f75676820746f6b656e7320696e2063757276652e0000000000604482015260640161093f565b6001546040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152306024830152604482018790525f9216906323b872dd906064016020604051808303815f875af1158015611b1e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b429190612e8a565b905080611bab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f55534443207472616e73666572206661696c6564000000000000000000000000604482015260640161093f565b81600e5f015f828254611bbe9190612f38565b9091555050600f80548691905f90611bd7908490612f25565b90915550611be8905030848461216f565b6040805173ffffffffffffffffffffffffffffffffffffffff85168152602081018790529081018390527fcd60aa75dea3072fbc07ae6d7d856b5dc5f4eee88854f5b4abf7b680ef8bc50f906060015b60405180910390a15050505061175b60015f55565b611c55612288565b60018060065460ff166002811115611c6f57611c6f612c3c565b14611cd6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f496e636f72726563742070686173650000000000000000000000000000000000604482015260640161093f565b815f03611d0f576040517ff456040300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f611d186122c9565b905082611d658273ffffffffffffffffffffffffffffffffffffffff165f9081527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00602052604090205490565b1015611dcd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f496e73756666696369656e7420746f6b656e2062616c616e6365000000000000604482015260640161093f565b5f611dd7846124ae565b905080600e600101541015611e48576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f4e6f7420656e6f756768206c69717569646974792e0000000000000000000000604482015260640161093f565b83600e5f015f828254611e5b9190612f25565b9091555050600f80548291905f90611e74908490612f38565b90915550611e85905082308661216f565b6001546040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152602482018490525f92169063a9059cbb906044016020604051808303815f875af1158015611efb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f1f9190612e8a565b905080611f88576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f55534443207472616e73666572206661696c6564000000000000000000000000604482015260640161093f565b6040805173ffffffffffffffffffffffffffffffffffffffff85168152602081018790529081018390527f7ceac0b8ee1aa05d6bffe30efcb415d68896c61a7fc61e16d6ec0a7056e93ab090606001611c38565b601054600f545f918291611ff09190612f25565b600e549091508061205d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f546f6b656e2072657365727665206973207a65726f0000000000000000000000604482015260640161093f565b5f81610b3e84670de0b6b3a7640000612ed6565b61207e838383600161250a565b505050565b73ffffffffffffffffffffffffffffffffffffffff8381165f9081527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114612169578181101561215b576040517ffb8f41b200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84166004820152602481018290526044810183905260640161093f565b61216984848484035f61250a565b50505050565b73ffffffffffffffffffffffffffffffffffffffff83166121be576040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f600482015260240161093f565b73ffffffffffffffffffffffffffffffffffffffff821661220d576040517fec442f050000000000000000000000000000000000000000000000000000000081525f600482015260240161093f565b61207e838383612674565b6122206126c9565b61222a8282612730565b5050565b73ffffffffffffffffffffffffffffffffffffffff821661227d576040517fec442f050000000000000000000000000000000000000000000000000000000081525f600482015260240161093f565b61222a5f8383612674565b60025f54036122c3576040517f3ee5aeb500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60025f55565b5f6122e26e2fd5aeb385d324b580fca7c83823a0612793565b905090565b73ffffffffffffffffffffffffffffffffffffffff8216612336576040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f600482015260240161093f565b61222a825f83612674565b5f8060065460ff16600281111561235a5761235a612c3c565b146123c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f496e636f72726563742070686173650000000000000000000000000000000000604482015260640161093f565b6815af1d78b58c400000600e8190555f600f81905563773594006010819055600680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055604080519384526020840192909252908201819052907f2ce5edbd994005ee69cdfaacac0d5ed26214e466d8e25ab0768856a62f1455499060600160405180910390a15050565b600e54600f546010545f928392909161246b9190612f25565b6124759190612ed6565b600f546010549192505f91859161248b91612f25565b6124959190612f25565b90506124a18183612eed565b600e54610b489190612f38565b600e54600f546010545f92839290916124c79190612f25565b6124d19190612ed6565b90505f83600e5f01546124e49190612f25565b90506124f08183612eed565b600f546010546125009190612f25565b610b489190612f38565b7f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0073ffffffffffffffffffffffffffffffffffffffff851661257a576040517fe602df050000000000000000000000000000000000000000000000000000000081525f600482015260240161093f565b73ffffffffffffffffffffffffffffffffffffffff84166125c9576040517f94280d620000000000000000000000000000000000000000000000000000000081525f600482015260240161093f565b73ffffffffffffffffffffffffffffffffffffffff8086165f9081526001830160209081526040808320938816835292905220839055811561266d578373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258560405161266491815260200190565b60405180910390a35b5050505050565b73ffffffffffffffffffffffffffffffffffffffff82161580156126ae5750600260065460ff1660028111156126ac576126ac612c3c565b145b156126be5761207e8383836127b5565b61207e8383836127b5565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005468010000000000000000900460ff16610b23576040517fd7e6bcf800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6127386126c9565b7f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace007f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace036127848482612d6e565b50600481016121698382612d6e565b5f335f528133036127ae5760205f8038855afa6127ae573838fd5b50505f5190565b7f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0073ffffffffffffffffffffffffffffffffffffffff841661280f5781816002015f8282546128049190612f25565b909155506128bf9050565b73ffffffffffffffffffffffffffffffffffffffff84165f9081526020829052604090205482811015612894576040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86166004820152602481018290526044810184905260640161093f565b73ffffffffffffffffffffffffffffffffffffffff85165f9081526020839052604090209083900390555b73ffffffffffffffffffffffffffffffffffffffff83166128ea576002810180548390039055612915565b73ffffffffffffffffffffffffffffffffffffffff83165f9081526020829052604090208054830190555b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161297491815260200190565b60405180910390a350505050565b5f602080835283518060208501525f5b818110156129ae57858101830151858201604001528201612992565b505f6040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114612a0f575f80fd5b919050565b5f8060408385031215612a25575f80fd5b612a2e836129ec565b946020939093013593505050565b5f805f60608486031215612a4e575f80fd5b612a57846129ec565b9250612a65602085016129ec565b9150604084013590509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112612ab1575f80fd5b813567ffffffffffffffff80821115612acc57612acc612a75565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715612b1257612b12612a75565b81604052838152866020858801011115612b2a575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f805f805f60e0888a031215612b5f575f80fd5b612b68886129ec565b9650602088013567ffffffffffffffff80821115612b84575f80fd5b612b908b838c01612aa2565b975060408a0135915080821115612ba5575f80fd5b612bb18b838c01612aa2565b9650612bbf60608b016129ec565b9550612bcd60808b016129ec565b945060a08a0135915080821115612be2575f80fd5b50612bef8a828b01612aa2565b92505060c0880135905092959891949750929550565b5f60208284031215612c15575f80fd5b5035919050565b5f60208284031215612c2c575f80fd5b612c35826129ec565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b6020810160038310612ca2577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b91905290565b5f8060408385031215612cb9575f80fd5b612cc2836129ec565b9150612cd0602084016129ec565b90509250929050565b600181811c90821680612ced57607f821691505b602082108103612d24577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b601f82111561207e57805f5260205f20601f840160051c81016020851015612d4f5750805b601f840160051c820191505b8181101561266d575f8155600101612d5b565b815167ffffffffffffffff811115612d8857612d88612a75565b612d9c81612d968454612cd9565b84612d2a565b602080601f831160018114612dee575f8415612db85750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555612e82565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015612e3a57888601518255948401946001909101908401612e1b565b5085821015612e7657878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b505060018460011b0185555b505050505050565b5f60208284031215612e9a575f80fd5b81518015158114612c35575f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b808202811582820484141761063957610639612ea9565b5f82612f20577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b8082018082111561063957610639612ea9565b8181038181111561063957610639612ea9565b5f60208284031215612f5b575f80fd5b505191905056fea2646970667358221220a212ce5644a73b71374bd51a4ce2ada8e18452fc758805dfc525d7b24839531464736f6c63430008180033