60806040526000600b55611af4600c55610438600d5567011c37937e080000600e5567013fbe85edc90000600f5567011c37937e08000060105567013fbe85edc90000601155600560125560146013553480156200005c57600080fd5b50604080518082018252600e81526d04d45544147524150485820312e360941b60208083019182528351808501909452600384526209a8eb60eb1b908401528151919291620000ae916000916200013d565b508051620000c49060019060208401906200013d565b505050620000e1620000db620000e760201b60201c565b620000eb565b6200021f565b3390565b600a80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b8280546200014b90620001e3565b90600052602060002090601f0160209004810192826200016f5760008555620001ba565b82601f106200018a57805160ff1916838001178555620001ba565b82800160010185558215620001ba579182015b82811115620001ba5782518255916020019190600101906200019d565b50620001c8929150620001cc565b5090565b5b80821115620001c85760008155600101620001cd565b600181811c90821680620001f857607f821691505b6020821081036200021957634e487b7160e01b600052602260045260246000fd5b50919050565b613110806200022f6000396000f3fe6080604052600436106102ff5760003560e01c8063715018a611610190578063bceae77b116100dc578063dff6324311610095578063f29f15af1161006f578063f29f15af146108c5578063f2fde38b146108e5578063f5b1dd7c14610905578063fdaf01251461091b57600080fd5b8063dff6324314610856578063e985e9c514610869578063efd0cbf9146108b257600080fd5b8063bceae77b146107a8578063bf8bcee4146107be578063c87b56dd146107de578063cdfe4bb6146107fe578063cffdcc581461082b578063dc68c2041461084157600080fd5b806395d89b4111610149578063a22cb46511610123578063a22cb46514610732578063a35d75dc14610752578063b88d4fde14610772578063b91ec9ea1461079257600080fd5b806395d89b41146106da57806399ec6765146106ef5780639ea7a6791461070557600080fd5b8063715018a61461063e57806377fcae72146106535780638ba4cc3c146106735780638cf59658146106935780638da5cb5b146106a657806390fd0396146106c457600080fd5b806341a5437c1161024f5780635f54db1511610208578063697cc0b5116101e2578063697cc0b5146105be5780636ac6431d146105de5780636fad40d5146105fe57806370a082311461061e57600080fd5b80635f54db1514610558578063611f3f10146105885780636352211e1461059e57600080fd5b806341a5437c146104ac57806342842e0e146104c25780634cffc28e146104e25780634f6ccce71461050257806355f804b314610522578063565d0eaf1461054257600080fd5b806317ff70f8116102bc5780632f745c59116102965780632f745c591461044e57806332cb6b0c1461046e5780633ccfd60b1461048457806340c95cf61461049957600080fd5b806317ff70f8146103f957806318160ddd1461041957806323b872dd1461042e57600080fd5b806301ffc9a71461030457806306fdde0314610339578063081812fc1461035b578063095ea7b3146103935780630a82f53b146103b55780630d1db8b5146103d9575b600080fd5b34801561031057600080fd5b5061032461031f36600461282b565b61093b565b60405190151581526020015b60405180910390f35b34801561034557600080fd5b5061034e610966565b60405161033091906128a0565b34801561036757600080fd5b5061037b6103763660046128b3565b6109f8565b6040516001600160a01b039091168152602001610330565b34801561039f57600080fd5b506103b36103ae3660046128e8565b610a92565b005b3480156103c157600080fd5b506103cb600b5481565b604051908152602001610330565b3480156103e557600080fd5b506103b36103f43660046128b3565b610ba7565b34801561040557600080fd5b50610324610414366004612959565b610bd6565b34801561042557600080fd5b506008546103cb565b34801561043a57600080fd5b506103b3610449366004612a0b565b610bec565b34801561045a57600080fd5b506103cb6104693660046128e8565b610c1d565b34801561047a57600080fd5b506103cb600c5481565b34801561049057600080fd5b506103b3610cb3565b6103b36104a7366004612a47565b610d10565b3480156104b857600080fd5b506103cb60165481565b3480156104ce57600080fd5b506103b36104dd366004612a0b565b610ee9565b3480156104ee57600080fd5b506103b36104fd366004612b2f565b610f04565b34801561050e57600080fd5b506103cb61051d3660046128b3565b610f41565b34801561052e57600080fd5b506103b361053d366004612b2f565b610fd4565b34801561054e57600080fd5b506103cb60105481565b34801561056457600080fd5b50610324610573366004612b78565b601a6020526000908152604090205460ff1681565b34801561059457600080fd5b506103cb60115481565b3480156105aa57600080fd5b5061037b6105b93660046128b3565b611011565b3480156105ca57600080fd5b506103b36105d9366004612b93565b611088565b3480156105ea57600080fd5b506103246105f9366004612959565b6110c6565b34801561060a57600080fd5b506103b3610619366004612bc5565b6110d5565b34801561062a57600080fd5b506103cb610639366004612b78565b61110a565b34801561064a57600080fd5b506103b3611191565b34801561065f57600080fd5b506103b361066e3660046128b3565b6111c7565b34801561067f57600080fd5b506103b361068e3660046128e8565b6111f6565b6103b36106a1366004612a47565b6112c7565b3480156106b257600080fd5b50600a546001600160a01b031661037b565b3480156106d057600080fd5b506103cb600f5481565b3480156106e657600080fd5b5061034e611498565b3480156106fb57600080fd5b506103cb600d5481565b34801561071157600080fd5b506103cb610720366004612b78565b60196020526000908152604090205481565b34801561073e57600080fd5b506103b361074d366004612be7565b6114a7565b34801561075e57600080fd5b506103b361076d3660046128b3565b6114b2565b34801561077e57600080fd5b506103b361078d366004612c23565b6114e1565b34801561079e57600080fd5b506103cb600e5481565b3480156107b457600080fd5b506103cb60135481565b3480156107ca57600080fd5b506103b36107d93660046128b3565b611519565b3480156107ea57600080fd5b5061034e6107f93660046128b3565b611548565b34801561080a57600080fd5b506103cb610819366004612b78565b601b6020526000908152604090205481565b34801561083757600080fd5b506103cb60175481565b34801561084d57600080fd5b506103b361169e565b6103b36108643660046128b3565b611808565b34801561087557600080fd5b50610324610884366004612c9f565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b6103b36108c03660046128b3565b611997565b3480156108d157600080fd5b506103b36108e03660046128b3565b611b4b565b3480156108f157600080fd5b506103b3610900366004612b78565b611b7a565b34801561091157600080fd5b506103cb60125481565b34801561092757600080fd5b506103cb610936366004612cd2565b611c15565b60006001600160e01b0319821663780e9d6360e01b1480610960575061096082611c5e565b92915050565b60606000805461097590612d05565b80601f01602080910402602001604051908101604052809291908181526020018280546109a190612d05565b80156109ee5780601f106109c3576101008083540402835291602001916109ee565b820191906000526020600020905b8154815290600101906020018083116109d157829003601f168201915b5050505050905090565b6000818152600260205260408120546001600160a01b0316610a765760405162461bcd60e51b815260206004820152602c60248201527f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860448201526b34b9ba32b73a103a37b5b2b760a11b60648201526084015b60405180910390fd5b506000908152600460205260409020546001600160a01b031690565b6000610a9d82611011565b9050806001600160a01b0316836001600160a01b031603610b0a5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610a6d565b336001600160a01b0382161480610b265750610b268133610884565b610b985760405162461bcd60e51b815260206004820152603860248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760448201527f6e6572206e6f7220617070726f76656420666f7220616c6c00000000000000006064820152608401610a6d565b610ba28383611cae565b505050565b600a546001600160a01b03163314610bd15760405162461bcd60e51b8152600401610a6d90612d3f565b601655565b6000610be58260165485611d1c565b9392505050565b610bf63382611d32565b610c125760405162461bcd60e51b8152600401610a6d90612d74565b610ba2838383611e29565b6000610c288361110a565b8210610c8a5760405162461bcd60e51b815260206004820152602b60248201527f455243373231456e756d657261626c653a206f776e657220696e646578206f7560448201526a74206f6620626f756e647360a81b6064820152608401610a6d565b506001600160a01b03919091166000908152600660209081526040808320938352929052205490565b600a546001600160a01b03163314610cdd5760405162461bcd60e51b8152600401610a6d90612d3f565b6040514790339082156108fc029083906000818181858888f19350505050158015610d0c573d6000803e3d6000fd5b5050565b600b54600114610d6e5760405162461bcd60e51b8152602060048201526024808201527f47656e657369732057686974656c6973742053616c65206973206e6f74206f70604482015263195b995960e21b6064820152608401610a6d565b610db5610d7c338686611c15565b838380806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250610bd692505050565b610df15760405162461bcd60e51b815260206004820152600d60248201526c24b73b30b634b210383937b7b360991b6044820152606401610a6d565b600d5485610dfe60185490565b610e089190612ddb565b10610e255760405162461bcd60e51b8152600401610a6d90612df3565b33600090815260196020526040902054610e40908690612ddb565b336000908152601960205260409020819055831015610e715760405162461bcd60e51b8152600401610a6d90612e37565b3485600e54610e809190612e7c565b1115610e9e5760405162461bcd60e51b8152600401610a6d90612e9b565b60005b85811015610ee1576000610eb460185490565b9050610ec03382611fd0565b610ece601880546001019055565b5080610ed981612ed2565b915050610ea1565b505050505050565b610ba2838383604051806020016040528060008152506114e1565b600a546001600160a01b03163314610f2e5760405162461bcd60e51b8152600401610a6d90612d3f565b8051610d0c90601590602084019061277c565b6000610f4c60085490565b8210610faf5760405162461bcd60e51b815260206004820152602c60248201527f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60448201526b7574206f6620626f756e647360a01b6064820152608401610a6d565b60088281548110610fc257610fc2612eeb565b90600052602060002001549050919050565b600a546001600160a01b03163314610ffe5760405162461bcd60e51b8152600401610a6d90612d3f565b8051610d0c90601490602084019061277c565b6000818152600260205260408120546001600160a01b0316806109605760405162461bcd60e51b815260206004820152602960248201527f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460448201526832b73a103a37b5b2b760b91b6064820152608401610a6d565b600a546001600160a01b031633146110b25760405162461bcd60e51b8152600401610a6d90612d3f565b600e93909355600f91909155601055601155565b6000610be58260175485611d1c565b600a546001600160a01b031633146110ff5760405162461bcd60e51b8152600401610a6d90612d3f565b601291909155601355565b60006001600160a01b0382166111755760405162461bcd60e51b815260206004820152602a60248201527f4552433732313a2062616c616e636520717565727920666f7220746865207a65604482015269726f206164647265737360b01b6064820152608401610a6d565b506001600160a01b031660009081526003602052604090205490565b600a546001600160a01b031633146111bb5760405162461bcd60e51b8152600401610a6d90612d3f565b6111c56000611fea565b565b600a546001600160a01b031633146111f15760405162461bcd60e51b8152600401610a6d90612d3f565b600d55565b600a546001600160a01b031633146112205760405162461bcd60e51b8152600401610a6d90612d3f565b600c548161122d60185490565b6112379190612ddb565b106112845760405162461bcd60e51b815260206004820181905260248201527f507572636861736520776f756c6420657863656564204d41585f535550504c596044820152606401610a6d565b60005b81811015610ba257600061129a60185490565b90506112a68482611fd0565b6112b4601880546001019055565b50806112bf81612ed2565b915050611287565b600b546004146113255760405162461bcd60e51b815260206004820152602360248201527f5075626c69632057686974656c6973742053616c65206973206e6f74206f70656044820152621b995960ea1b6064820152608401610a6d565b61136c611333338686611c15565b8383808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152506110c692505050565b6113a85760405162461bcd60e51b815260206004820152600d60248201526c24b73b30b634b210383937b7b360991b6044820152606401610a6d565b600c54856113b560185490565b6113bf9190612ddb565b106113dc5760405162461bcd60e51b8152600401610a6d90612df3565b336000908152601b60205260409020546113f7908690612ddb565b336000908152601b602052604090208190558310156114285760405162461bcd60e51b8152600401610a6d90612e37565b34856010546114379190612e7c565b11156114555760405162461bcd60e51b8152600401610a6d90612e9b565b60005b85811015610ee157600061146b60185490565b90506114773382611fd0565b611485601880546001019055565b508061149081612ed2565b915050611458565b60606001805461097590612d05565b610d0c33838361203c565b600a546001600160a01b031633146114dc5760405162461bcd60e51b8152600401610a6d90612d3f565b601755565b6114eb3383611d32565b6115075760405162461bcd60e51b8152600401610a6d90612d74565b6115138484848461210a565b50505050565b600a546001600160a01b031633146115435760405162461bcd60e51b8152600401610a6d90612d3f565b600c55565b6000818152600260205260409020546060906001600160a01b03166115c75760405162461bcd60e51b815260206004820152602f60248201527f4552433732314d657461646174613a2055524920717565727920666f72206e6f60448201526e3732bc34b9ba32b73a103a37b5b2b760891b6064820152608401610a6d565b6000601480546115d690612d05565b90501161166d57601580546115ea90612d05565b80601f016020809104026020016040519081016040528092919081815260200182805461161690612d05565b80156116635780601f1061163857610100808354040283529160200191611663565b820191906000526020600020905b81548152906001019060200180831161164657829003601f168201915b5050505050610960565b60146116788361213d565b604051602001611689929190612f1d565b60405160208183030381529060405292915050565b600b546003146116f05760405162461bcd60e51b815260206004820152601c60248201527f5075626c69632041697264726f70206973206e6f74206f70656e6564000000006044820152606401610a6d565b336000908152601a602052604090205460ff16156117505760405162461bcd60e51b815260206004820152601d60248201527f596f7520616c7265616479206d696e7465642061697264726f707065640000006044820152606401610a6d565b33600090815260196020526040902054806117ad5760405162461bcd60e51b815260206004820152601960248201527f4e6f7468696e6720666f722047656e656973204d696e746564000000000000006044820152606401610a6d565b336000908152601a60205260408120805460ff191660011790555b81811015610d0c5760006117db60185490565b90506117e73382611fd0565b6117f5601880546001019055565b508061180081612ed2565b9150506117c8565b600b546002146118645760405162461bcd60e51b815260206004820152602160248201527f47656e65736973205075626c69632053616c65206973206e6f74206f70656e656044820152601960fa1b6064820152608401610a6d565b600d548161187160185490565b61187b9190612ddb565b106118985760405162461bcd60e51b8152600401610a6d90612df3565b336000908152601960205260409020546118b3908290612ddb565b33600090815260196020526040902081905560125410156119275760405162461bcd60e51b815260206004820152602860248201527f507572636861736520776f756c64206578636565642047454e455349535f4d49604482015267139517d31253525560c21b6064820152608401610a6d565b3481600f546119369190612e7c565b11156119545760405162461bcd60e51b8152600401610a6d90612e9b565b60005b81811015610d0c57600061196a60185490565b90506119763382611fd0565b611984601880546001019055565b508061198f81612ed2565b915050611957565b600b546005146119e95760405162461bcd60e51b815260206004820152601960248201527f5075626c69632053616c65206973206e6f74206f70656e6564000000000000006044820152606401610a6d565b600c54816119f660185490565b611a009190612ddb565b10611a4d5760405162461bcd60e51b815260206004820181905260248201527f507572636861736520776f756c6420657863656564204d41585f535550504c596044820152606401610a6d565b336000908152601b6020526040902054611a68908290612ddb565b336000908152601b602052604090208190556013541015611adb5760405162461bcd60e51b815260206004820152602760248201527f507572636861736520776f756c6420657863656564205055424c49435f4d494e6044820152661517d31253525560ca1b6064820152608401610a6d565b3481601154611aea9190612e7c565b1115611b085760405162461bcd60e51b8152600401610a6d90612e9b565b60005b81811015610d0c576000611b1e60185490565b9050611b2a3382611fd0565b611b38601880546001019055565b5080611b4381612ed2565b915050611b0b565b600a546001600160a01b03163314611b755760405162461bcd60e51b8152600401610a6d90612d3f565b600b55565b600a546001600160a01b03163314611ba45760405162461bcd60e51b8152600401610a6d90612d3f565b6001600160a01b038116611c095760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a6d565b611c1281611fea565b50565b6040805160208082019490945260609490941b6bffffffffffffffffffffffff191684820152605480850192909252805180850390920182526074909301909252815191012090565b60006001600160e01b031982166380ac58cd60e01b1480611c8f57506001600160e01b03198216635b5e139f60e01b145b8061096057506301ffc9a760e01b6001600160e01b0319831614610960565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190611ce382611011565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600082611d29858461223e565b14949350505050565b6000818152600260205260408120546001600160a01b0316611dab5760405162461bcd60e51b815260206004820152602c60248201527f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860448201526b34b9ba32b73a103a37b5b2b760a11b6064820152608401610a6d565b6000611db683611011565b9050806001600160a01b0316846001600160a01b03161480611df15750836001600160a01b0316611de6846109f8565b6001600160a01b0316145b80611e2157506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b949350505050565b826001600160a01b0316611e3c82611011565b6001600160a01b031614611ea05760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610a6d565b6001600160a01b038216611f025760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610a6d565b611f0d8383836122b2565b611f18600082611cae565b6001600160a01b0383166000908152600360205260408120805460019290611f41908490612fc3565b90915550506001600160a01b0382166000908152600360205260408120805460019290611f6f908490612ddb565b909155505060008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b610d0c82826040518060200160405280600081525061236a565b600a80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b816001600160a01b0316836001600160a01b03160361209d5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610a6d565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b612115848484611e29565b6121218484848461239d565b6115135760405162461bcd60e51b8152600401610a6d90612fda565b6060816000036121645750506040805180820190915260018152600360fc1b602082015290565b8160005b811561218e578061217881612ed2565b91506121879050600a83613042565b9150612168565b60008167ffffffffffffffff8111156121a9576121a9612912565b6040519080825280601f01601f1916602001820160405280156121d3576020820181803683370190505b5090505b8415611e21576121e8600183612fc3565b91506121f5600a86613056565b612200906030612ddb565b60f81b81838151811061221557612215612eeb565b60200101906001600160f81b031916908160001a905350612237600a86613042565b94506121d7565b600081815b84518110156122aa57600085828151811061226057612260612eeb565b602002602001015190508083116122865760008381526020829052604090209250612297565b600081815260208490526040902092505b50806122a281612ed2565b915050612243565b509392505050565b6001600160a01b03831661230d5761230881600880546000838152600960205260408120829055600182018355919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30155565b612330565b816001600160a01b0316836001600160a01b03161461233057612330838261249e565b6001600160a01b03821661234757610ba28161253b565b826001600160a01b0316826001600160a01b031614610ba257610ba282826125ea565b612374838361262e565b612381600084848461239d565b610ba25760405162461bcd60e51b8152600401610a6d90612fda565b60006001600160a01b0384163b1561249357604051630a85bd0160e11b81526001600160a01b0385169063150b7a02906123e190339089908890889060040161306a565b6020604051808303816000875af192505050801561241c575060408051601f3d908101601f19168201909252612419918101906130a7565b60015b612479573d80801561244a576040519150601f19603f3d011682016040523d82523d6000602084013e61244f565b606091505b5080516000036124715760405162461bcd60e51b8152600401610a6d90612fda565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050611e21565b506001949350505050565b600060016124ab8461110a565b6124b59190612fc3565b600083815260076020526040902054909150808214612508576001600160a01b03841660009081526006602090815260408083208584528252808320548484528184208190558352600790915290208190555b5060009182526007602090815260408084208490556001600160a01b039094168352600681528383209183525290812055565b60085460009061254d90600190612fc3565b6000838152600960205260408120546008805493945090928490811061257557612575612eeb565b90600052602060002001549050806008838154811061259657612596612eeb565b60009182526020808320909101929092558281526009909152604080822084905585825281205560088054806125ce576125ce6130c4565b6001900381819060005260206000200160009055905550505050565b60006125f58361110a565b6001600160a01b039093166000908152600660209081526040808320868452825280832085905593825260079052919091209190915550565b6001600160a01b0382166126845760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610a6d565b6000818152600260205260409020546001600160a01b0316156126e95760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610a6d565b6126f5600083836122b2565b6001600160a01b038216600090815260036020526040812080546001929061271e908490612ddb565b909155505060008181526002602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b82805461278890612d05565b90600052602060002090601f0160209004810192826127aa57600085556127f0565b82601f106127c357805160ff19168380011785556127f0565b828001600101855582156127f0579182015b828111156127f05782518255916020019190600101906127d5565b506127fc929150612800565b5090565b5b808211156127fc5760008155600101612801565b6001600160e01b031981168114611c1257600080fd5b60006020828403121561283d57600080fd5b8135610be581612815565b60005b8381101561286357818101518382015260200161284b565b838111156115135750506000910152565b6000815180845261288c816020860160208601612848565b601f01601f19169290920160200192915050565b602081526000610be56020830184612874565b6000602082840312156128c557600080fd5b5035919050565b80356001600160a01b03811681146128e357600080fd5b919050565b600080604083850312156128fb57600080fd5b612904836128cc565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561295157612951612912565b604052919050565b6000806040838503121561296c57600080fd5b8235915060208084013567ffffffffffffffff8082111561298c57600080fd5b818601915086601f8301126129a057600080fd5b8135818111156129b2576129b2612912565b8060051b91506129c3848301612928565b81815291830184019184810190898411156129dd57600080fd5b938501935b838510156129fb578435825293850193908501906129e2565b8096505050505050509250929050565b600080600060608486031215612a2057600080fd5b612a29846128cc565b9250612a37602085016128cc565b9150604084013590509250925092565b600080600080600060808688031215612a5f57600080fd5b853594506020860135935060408601359250606086013567ffffffffffffffff80821115612a8c57600080fd5b818801915088601f830112612aa057600080fd5b813581811115612aaf57600080fd5b8960208260051b8501011115612ac457600080fd5b9699959850939650602001949392505050565b600067ffffffffffffffff831115612af157612af1612912565b612b04601f8401601f1916602001612928565b9050828152838383011115612b1857600080fd5b828260208301376000602084830101529392505050565b600060208284031215612b4157600080fd5b813567ffffffffffffffff811115612b5857600080fd5b8201601f81018413612b6957600080fd5b611e2184823560208401612ad7565b600060208284031215612b8a57600080fd5b610be5826128cc565b60008060008060808587031215612ba957600080fd5b5050823594602084013594506040840135936060013592509050565b60008060408385031215612bd857600080fd5b50508035926020909101359150565b60008060408385031215612bfa57600080fd5b612c03836128cc565b915060208301358015158114612c1857600080fd5b809150509250929050565b60008060008060808587031215612c3957600080fd5b612c42856128cc565b9350612c50602086016128cc565b925060408501359150606085013567ffffffffffffffff811115612c7357600080fd5b8501601f81018713612c8457600080fd5b612c9387823560208401612ad7565b91505092959194509250565b60008060408385031215612cb257600080fd5b612cbb836128cc565b9150612cc9602084016128cc565b90509250929050565b600080600060608486031215612ce757600080fd5b612cf0846128cc565b95602085013595506040909401359392505050565b600181811c90821680612d1957607f821691505b602082108103612d3957634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526031908201527f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f6040820152701ddb995c881b9bdc88185c1c1c9bdd9959607a1b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b60008219821115612dee57612dee612dc5565b500190565b60208082526024908201527f507572636861736520776f756c64206578636565642047454e455349535f535560408201526350504c5960e01b606082015260800190565b60208082526025908201527f507572636861736520776f756c64206578636565642057686974656c697374206040820152641b1a5b5a5d60da1b606082015260800190565b6000816000190483118215151615612e9657612e96612dc5565b500290565b6020808252601c908201527f45544820616d6f756e74206973206e6f742073756666696369656e7400000000604082015260600190565b600060018201612ee457612ee4612dc5565b5060010190565b634e487b7160e01b600052603260045260246000fd5b60008151612f13818560208601612848565b9290920192915050565b600080845481600182811c915080831680612f3957607f831692505b60208084108203612f5857634e487b7160e01b86526022600452602486fd5b818015612f6c5760018114612f7d57612faa565b60ff19861689528489019650612faa565b60008b81526020902060005b86811015612fa25781548b820152908501908301612f89565b505084890196505b505050505050612fba8185612f01565b95945050505050565b600082821015612fd557612fd5612dc5565b500390565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b634e487b7160e01b600052601260045260246000fd5b6000826130515761305161302c565b500490565b6000826130655761306561302c565b500690565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061309d90830184612874565b9695505050505050565b6000602082840312156130b957600080fd5b8151610be581612815565b634e487b7160e01b600052603160045260246000fdfea264697066735822122026879f77fd89f80f2598a487f5b3f82e2c1536f1e22046178fc05f0421684d7664736f6c634300080d0033