0x608060405234801561001057600080fd5b50600436106101c45760003560e01c80637ecebe00116100f9578063d145fb3111610097578063e35c9b4411610071578063e35c9b4414610452578063eb9c0baf14610465578063f0dc2c2014610478578063f2fde38b1461048b57600080fd5b8063d145fb3114610401578063d505accf14610414578063dd62ed3e1461042757600080fd5b80639b9965ef116100d35780639b9965ef146103a85780639ba990c8146103c8578063a9059cbb146103db578063c14a785b146103ee57600080fd5b80637ecebe00146103585780638da5cb5b1461037857806395d89b41146103a057600080fd5b806330adf81f11610166578063484b973c11610140578063484b973c1461031557806348c7ab841461032857806370a0823114610330578063715018a61461035057600080fd5b806330adf81f146102ad578063313ce567146102d45780633644e5151461030d57600080fd5b80630bbd52bc116101a25780630bbd52bc1461025b57806318160ddd146102705780631faa82831461028757806323b872dd1461029a57600080fd5b806301ffc9a7146101c957806306fdde0314610233578063095ea7b314610248575b600080fd5b61021e6101d736600461123e565b7fffffffff00000000000000000000000000000000000000000000000000000000167f7f5828d0000000000000000000000000000000000000000000000000000000001490565b60405190151581526020015b60405180910390f35b61023b61049e565b60405161022a9190611287565b61021e610256366004611323565b61052c565b61026e61026936600461134d565b6105a5565b005b61027960025481565b60405190815260200161022a565b61026e61029536600461134d565b610682565b61021e6102a8366004611366565b6106b7565b6102797f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b6102fb7f000000000000000000000000000000000000000000000000000000000000001281565b60405160ff909116815260200161022a565b6102796107fb565b61026e610323366004611323565b610856565b61026e610888565b61027961033e3660046113a2565b60036020526000908152604090205481565b61026e6109a6565b6102796103663660046113a2565b60056020526000908152604090205481565b60065460405173ffffffffffffffffffffffffffffffffffffffff909116815260200161022a565b61023b610a21565b6102796103b636600461134d565b60009081526008602052604090205490565b61026e6103d63660046113bd565b610a2e565b61021e6103e9366004611323565b610a64565b61026e6103fc366004611323565b610ae9565b61026e61040f3660046113a2565b610b88565b61026e6104223660046113df565b610bf3565b610279610435366004611452565b600460209081526000928352604080842090915290825290205481565b61026e6104603660046113a2565b610f1f565b61026e61047336600461156d565b610f8f565b61026e6104863660046113a2565b611021565b61026e6104993660046113a2565b611094565b600080546104ab906115d1565b80601f01602080910402602001604051908101604052809291908181526020018280546104d7906115d1565b80156105245780601f106104f957610100808354040283529160200191610524565b820191906000526020600020905b81548152906001019060200180831161050757829003601f168201915b505050505081565b33600081815260046020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906105949086815260200190565b60405180910390a350600192915050565b60008181526008602052604090205461061f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f496e76616c6964207574696c697479206964000000000000000000000000000060448201526064015b60405180910390fd5b6007546000828152600860205260409020546106519173ffffffffffffffffffffffffffffffffffffffff1690610a64565b50604051819033907fc77719ad160dfe81cd33098aab1a7d627a37dbe9ae6c8a3e13963ee2396015db90600090a350565b60065473ffffffffffffffffffffffffffffffffffffffff1633146106a657600080fd5b600090815260086020526040812055565b73ffffffffffffffffffffffffffffffffffffffff831660009081526004602090815260408083203384529091528120547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461074b576107198382611654565b73ffffffffffffffffffffffffffffffffffffffff861660009081526004602090815260408083203384529091529020555b73ffffffffffffffffffffffffffffffffffffffff851660009081526003602052604081208054859290610780908490611654565b909155505073ffffffffffffffffffffffffffffffffffffffff808516600081815260036020526040908190208054870190555190918716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906107e89087815260200190565b60405180910390a3506001949350505050565b60007f000000000000000000000000000000000000000000000000000000000000000146146108315761082c61112c565b905090565b507f1daec8d3393b9a54b830aed5e8c5462cafcde431813f093fe64a301c67ad7e0890565b60065473ffffffffffffffffffffffffffffffffffffffff16331461087a57600080fd5b61088482826111c6565b5050565b600754604080517f88af7c4e00000000000000000000000000000000000000000000000000000000815290516109209273ffffffffffffffffffffffffffffffffffffffff169182916388af7c4e916004808201926020929091908290030181865afa1580156108fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103e9919061166b565b506007546040517f6a62784200000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff90911690636a62784290602401600060405180830381600087803b15801561098c57600080fd5b505af11580156109a0573d6000803e3d6000fd5b50505050565b60065473ffffffffffffffffffffffffffffffffffffffff1633146109f7576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600680547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b600180546104ab906115d1565b60065473ffffffffffffffffffffffffffffffffffffffff163314610a5257600080fd5b60009182526008602052604090912055565b33600090815260036020526040812080548391908390610a85908490611654565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600081815260036020526040908190208054850190555133907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906105949086815260200190565b3360009081526009602052604090205460ff1661087a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f52657175657374206f6e6c792076616c69642066726f6d207374616b696e672060448201527f636f6e74726163740000000000000000000000000000000000000000000000006064820152608401610616565b60065473ffffffffffffffffffffffffffffffffffffffff163314610bac57600080fd5b600780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b42841015610c5d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f5045524d49545f444541444c494e455f455850495245440000000000000000006044820152606401610616565b6000610c676107fb565b73ffffffffffffffffffffffffffffffffffffffff89811660008181526005602090815260409182902080546001810190915582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98184015280840194909452938c166060840152608083018b905260a083019390935260c08083018a90528151808403909101815260e0830190915280519201919091207f190100000000000000000000000000000000000000000000000000000000000061010083015261010282019290925261012281019190915261014201604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600080855291840180845281905260ff88169284019290925260608301869052608083018590529092509060019060a0016020604051602081039080840390855afa158015610dc6573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff811615801590610e4157508873ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b610ea7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f494e56414c49445f5349474e45520000000000000000000000000000000000006044820152606401610616565b73ffffffffffffffffffffffffffffffffffffffff90811660009081526004602090815260408083208b8516808552908352928190208a905551898152919350918a16917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350505050505050565b60065473ffffffffffffffffffffffffffffffffffffffff163314610f4357600080fd5b73ffffffffffffffffffffffffffffffffffffffff16600090815260096020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b60065473ffffffffffffffffffffffffffffffffffffffff163314610fb357600080fd5b60005b825181101561101c57818181518110610fd157610fd1611684565b602002602001015160086000858481518110610fef57610fef611684565b60200260200101518152602001908152602001600020819055508080611014906116b3565b915050610fb6565b505050565b60065473ffffffffffffffffffffffffffffffffffffffff16331461104557600080fd5b73ffffffffffffffffffffffffffffffffffffffff16600090815260096020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055565b60065473ffffffffffffffffffffffffffffffffffffffff1633146110e5576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f600060405161115e91906116ec565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b80600260008282546111d891906117bf565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000818152600360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b60006020828403121561125057600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461128057600080fd5b9392505050565b600060208083528351808285015260005b818110156112b457858101830151858201604001528201611298565b818111156112c6576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461131e57600080fd5b919050565b6000806040838503121561133657600080fd5b61133f836112fa565b946020939093013593505050565b60006020828403121561135f57600080fd5b5035919050565b60008060006060848603121561137b57600080fd5b611384846112fa565b9250611392602085016112fa565b9150604084013590509250925092565b6000602082840312156113b457600080fd5b611280826112fa565b600080604083850312156113d057600080fd5b50508035926020909101359150565b600080600080600080600060e0888a0312156113fa57600080fd5b611403886112fa565b9650611411602089016112fa565b95506040880135945060608801359350608088013560ff8116811461143557600080fd5b9699959850939692959460a0840135945060c09093013592915050565b6000806040838503121561146557600080fd5b61146e836112fa565b915061147c602084016112fa565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f8301126114c557600080fd5b8135602067ffffffffffffffff808311156114e2576114e2611485565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f8301168101818110848211171561152557611525611485565b60405293845285810183019383810192508785111561154357600080fd5b83870191505b8482101561156257813583529183019190830190611549565b979650505050505050565b6000806040838503121561158057600080fd5b823567ffffffffffffffff8082111561159857600080fd5b6115a4868387016114b4565b935060208501359150808211156115ba57600080fd5b506115c7858286016114b4565b9150509250929050565b600181811c908216806115e557607f821691505b6020821081141561161f577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008282101561166657611666611625565b500390565b60006020828403121561167d57600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156116e5576116e5611625565b5060010190565b600080835481600182811c91508083168061170857607f831692505b6020808410821415611741577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b8180156117555760018114611784576117b1565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008616895284890196506117b1565b60008a81526020902060005b868110156117a95781548b820152908501908301611790565b505084890196505b509498975050505050505050565b600082198211156117d2576117d2611625565b50019056fea26469706673582212204f4831a9dee4c59609534fe97ea1ff46ae1761bf6891d3d5eb03224e24b113c164736f6c634300080c0033
0x60e06040523480156200001157600080fd5b506040805180820182526006808252654752494c4c4160d01b6020808401828152855180870190965292855284015281519192916012916200005791600091906200013d565b5081516200006d9060019060208501906200013d565b5060ff81166080524660a05262000083620000a1565b60c0525050600680546001600160a01b0319163317905550620002c4565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6000604051620000d5919062000220565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b8280546200014b90620001e3565b90600052602060002090601f0160209004810192826200016f5760008555620001ba565b82601f106200018a57805160ff1916838001178555620001ba565b82800160010185558215620001ba579182015b82811115620001ba5782518255916020019190600101906200019d565b50620001c8929150620001cc565b5090565b5b80821115620001c85760008155600101620001cd565b600181811c90821680620001f857607f821691505b602082108114156200021a57634e487b7160e01b600052602260045260246000fd5b50919050565b600080835481600182811c9150808316806200023d57607f831692505b60208084108214156200025e57634e487b7160e01b86526022600452602486fd5b8180156200027557600181146200028757620002b6565b60ff19861689528489019650620002b6565b60008a81526020902060005b86811015620002ae5781548b82015290850190830162000293565b505084890196505b509498975050505050505050565b60805160a05160c05161180d620002f46000396000610834015260006107ff015260006102d9015261180d6000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c80637ecebe00116100f9578063d145fb3111610097578063e35c9b4411610071578063e35c9b4414610452578063eb9c0baf14610465578063f0dc2c2014610478578063f2fde38b1461048b57600080fd5b8063d145fb3114610401578063d505accf14610414578063dd62ed3e1461042757600080fd5b80639b9965ef116100d35780639b9965ef146103a85780639ba990c8146103c8578063a9059cbb146103db578063c14a785b146103ee57600080fd5b80637ecebe00146103585780638da5cb5b1461037857806395d89b41146103a057600080fd5b806330adf81f11610166578063484b973c11610140578063484b973c1461031557806348c7ab841461032857806370a0823114610330578063715018a61461035057600080fd5b806330adf81f146102ad578063313ce567146102d45780633644e5151461030d57600080fd5b80630bbd52bc116101a25780630bbd52bc1461025b57806318160ddd146102705780631faa82831461028757806323b872dd1461029a57600080fd5b806301ffc9a7146101c957806306fdde0314610233578063095ea7b314610248575b600080fd5b61021e6101d736600461123e565b7fffffffff00000000000000000000000000000000000000000000000000000000167f7f5828d0000000000000000000000000000000000000000000000000000000001490565b60405190151581526020015b60405180910390f35b61023b61049e565b60405161022a9190611287565b61021e610256366004611323565b61052c565b61026e61026936600461134d565b6105a5565b005b61027960025481565b60405190815260200161022a565b61026e61029536600461134d565b610682565b61021e6102a8366004611366565b6106b7565b6102797f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b6102fb7f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff909116815260200161022a565b6102796107fb565b61026e610323366004611323565b610856565b61026e610888565b61027961033e3660046113a2565b60036020526000908152604090205481565b61026e6109a6565b6102796103663660046113a2565b60056020526000908152604090205481565b60065460405173ffffffffffffffffffffffffffffffffffffffff909116815260200161022a565b61023b610a21565b6102796103b636600461134d565b60009081526008602052604090205490565b61026e6103d63660046113bd565b610a2e565b61021e6103e9366004611323565b610a64565b61026e6103fc366004611323565b610ae9565b61026e61040f3660046113a2565b610b88565b61026e6104223660046113df565b610bf3565b610279610435366004611452565b600460209081526000928352604080842090915290825290205481565b61026e6104603660046113a2565b610f1f565b61026e61047336600461156d565b610f8f565b61026e6104863660046113a2565b611021565b61026e6104993660046113a2565b611094565b600080546104ab906115d1565b80601f01602080910402602001604051908101604052809291908181526020018280546104d7906115d1565b80156105245780601f106104f957610100808354040283529160200191610524565b820191906000526020600020905b81548152906001019060200180831161050757829003601f168201915b505050505081565b33600081815260046020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906105949086815260200190565b60405180910390a350600192915050565b60008181526008602052604090205461061f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f496e76616c6964207574696c697479206964000000000000000000000000000060448201526064015b60405180910390fd5b6007546000828152600860205260409020546106519173ffffffffffffffffffffffffffffffffffffffff1690610a64565b50604051819033907fc77719ad160dfe81cd33098aab1a7d627a37dbe9ae6c8a3e13963ee2396015db90600090a350565b60065473ffffffffffffffffffffffffffffffffffffffff1633146106a657600080fd5b600090815260086020526040812055565b73ffffffffffffffffffffffffffffffffffffffff831660009081526004602090815260408083203384529091528120547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461074b576107198382611654565b73ffffffffffffffffffffffffffffffffffffffff861660009081526004602090815260408083203384529091529020555b73ffffffffffffffffffffffffffffffffffffffff851660009081526003602052604081208054859290610780908490611654565b909155505073ffffffffffffffffffffffffffffffffffffffff808516600081815260036020526040908190208054870190555190918716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906107e89087815260200190565b60405180910390a3506001949350505050565b60007f000000000000000000000000000000000000000000000000000000000000000046146108315761082c61112c565b905090565b507f000000000000000000000000000000000000000000000000000000000000000090565b60065473ffffffffffffffffffffffffffffffffffffffff16331461087a57600080fd5b61088482826111c6565b5050565b600754604080517f88af7c4e00000000000000000000000000000000000000000000000000000000815290516109209273ffffffffffffffffffffffffffffffffffffffff169182916388af7c4e916004808201926020929091908290030181865afa1580156108fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103e9919061166b565b506007546040517f6a62784200000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff90911690636a62784290602401600060405180830381600087803b15801561098c57600080fd5b505af11580156109a0573d6000803e3d6000fd5b50505050565b60065473ffffffffffffffffffffffffffffffffffffffff1633146109f7576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600680547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b600180546104ab906115d1565b60065473ffffffffffffffffffffffffffffffffffffffff163314610a5257600080fd5b60009182526008602052604090912055565b33600090815260036020526040812080548391908390610a85908490611654565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600081815260036020526040908190208054850190555133907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906105949086815260200190565b3360009081526009602052604090205460ff1661087a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f52657175657374206f6e6c792076616c69642066726f6d207374616b696e672060448201527f636f6e74726163740000000000000000000000000000000000000000000000006064820152608401610616565b60065473ffffffffffffffffffffffffffffffffffffffff163314610bac57600080fd5b600780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b42841015610c5d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f5045524d49545f444541444c494e455f455850495245440000000000000000006044820152606401610616565b6000610c676107fb565b73ffffffffffffffffffffffffffffffffffffffff89811660008181526005602090815260409182902080546001810190915582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98184015280840194909452938c166060840152608083018b905260a083019390935260c08083018a90528151808403909101815260e0830190915280519201919091207f190100000000000000000000000000000000000000000000000000000000000061010083015261010282019290925261012281019190915261014201604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600080855291840180845281905260ff88169284019290925260608301869052608083018590529092509060019060a0016020604051602081039080840390855afa158015610dc6573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff811615801590610e4157508873ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b610ea7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f494e56414c49445f5349474e45520000000000000000000000000000000000006044820152606401610616565b73ffffffffffffffffffffffffffffffffffffffff90811660009081526004602090815260408083208b8516808552908352928190208a905551898152919350918a16917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350505050505050565b60065473ffffffffffffffffffffffffffffffffffffffff163314610f4357600080fd5b73ffffffffffffffffffffffffffffffffffffffff16600090815260096020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b60065473ffffffffffffffffffffffffffffffffffffffff163314610fb357600080fd5b60005b825181101561101c57818181518110610fd157610fd1611684565b602002602001015160086000858481518110610fef57610fef611684565b60200260200101518152602001908152602001600020819055508080611014906116b3565b915050610fb6565b505050565b60065473ffffffffffffffffffffffffffffffffffffffff16331461104557600080fd5b73ffffffffffffffffffffffffffffffffffffffff16600090815260096020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055565b60065473ffffffffffffffffffffffffffffffffffffffff1633146110e5576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f600060405161115e91906116ec565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b80600260008282546111d891906117bf565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000818152600360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b60006020828403121561125057600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461128057600080fd5b9392505050565b600060208083528351808285015260005b818110156112b457858101830151858201604001528201611298565b818111156112c6576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461131e57600080fd5b919050565b6000806040838503121561133657600080fd5b61133f836112fa565b946020939093013593505050565b60006020828403121561135f57600080fd5b5035919050565b60008060006060848603121561137b57600080fd5b611384846112fa565b9250611392602085016112fa565b9150604084013590509250925092565b6000602082840312156113b457600080fd5b611280826112fa565b600080604083850312156113d057600080fd5b50508035926020909101359150565b600080600080600080600060e0888a0312156113fa57600080fd5b611403886112fa565b9650611411602089016112fa565b95506040880135945060608801359350608088013560ff8116811461143557600080fd5b9699959850939692959460a0840135945060c09093013592915050565b6000806040838503121561146557600080fd5b61146e836112fa565b915061147c602084016112fa565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f8301126114c557600080fd5b8135602067ffffffffffffffff808311156114e2576114e2611485565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f8301168101818110848211171561152557611525611485565b60405293845285810183019383810192508785111561154357600080fd5b83870191505b8482101561156257813583529183019190830190611549565b979650505050505050565b6000806040838503121561158057600080fd5b823567ffffffffffffffff8082111561159857600080fd5b6115a4868387016114b4565b935060208501359150808211156115ba57600080fd5b506115c7858286016114b4565b9150509250929050565b600181811c908216806115e557607f821691505b6020821081141561161f577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008282101561166657611666611625565b500390565b60006020828403121561167d57600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156116e5576116e5611625565b5060010190565b600080835481600182811c91508083168061170857607f831692505b6020808410821415611741577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b8180156117555760018114611784576117b1565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008616895284890196506117b1565b60008a81526020902060005b868110156117a95781548b820152908501908301611790565b505084890196505b509498975050505050505050565b600082198211156117d2576117d2611625565b50019056fea26469706673582212204f4831a9dee4c59609534fe97ea1ff46ae1761bf6891d3d5eb03224e24b113c164736f6c634300080c0033