0x60806040526004361061029d5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630253040181146102a2578063027c4ed2146102c95780630655949c146102de57806306fdde03146102f3578063095ea7b31461037d5780630aa1d3f3146103ca57806312890153146103fd57806318160ddd146104145780631febcfee1461042957806323b872dd1461045c5780632d3e474a1461049f5780632f8b4b7d146104d0578063313ce567146104e55780633918e59f146105105780633950935114610525578063413198311461055e57806342966c68146105735780634f98fb101461059d5780635406006d146105d057806357fbc940146106095780636c1030671461061e5780636c420036146106515780636f4a48e21461066657806370a082311461067b578063715018a6146106ae57806372918a78146106c357806376cdb03b146106f65780637766fe6a1461070b5780637891df9a1461073e57806379cc67901461077157806382cf5064146107aa57806385cbc926146107bf57806385cde77f1461060957806385f2aef2146107f857806389807b6e1461080d5780638b74730c146108225780638c800d17146108555780638da5cb5b1461086a5780638e8a8d611461087f5780638f32d59b146108b257806393c2c682146108c757806395d89b4114610900578063a457c2d714610915578063a9059cbb1461094e578063ab3e21ca14610987578063b22683fa1461099c578063bc109f9c146109cf578063bd7e700714610a02578063cd3293de14610a17578063d973d49014610a2c578063dacf64e214610a41578063dd62ed3e14610a74578063e023620414610aaf578063eba5d84f14610ac4578063f2fde38b14610af7578063ff6e149214610b2a575b600080fd5b3480156102ae57600080fd5b506102b7610b63565b60408051918252519081900360200190f35b3480156102d557600080fd5b506102b7610b69565b3480156102ea57600080fd5b506102b7610b6f565b3480156102ff57600080fd5b50610308610d9b565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561034257818101518382015260200161032a565b50505050905090810190601f16801561036f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561038957600080fd5b506103b6600480360360408110156103a057600080fd5b50600160a060020a038135169060200135610e31565b604080519115158252519081900360200190f35b3480156103d657600080fd5b506102b7600480360360208110156103ed57600080fd5b5035600160a060020a0316610e4f565b34801561040957600080fd5b50610412610e61565b005b34801561042057600080fd5b506102b7610ed1565b34801561043557600080fd5b506102b76004803603602081101561044c57600080fd5b5035600160a060020a0316610ed7565b34801561046857600080fd5b506103b66004803603606081101561047f57600080fd5b50600160a060020a03813581169160208101359091169060400135610ee9565b3480156104ab57600080fd5b506104b4610f24565b60408051600160a060020a039092168252519081900360200190f35b3480156104dc57600080fd5b50610412610f33565b3480156104f157600080fd5b506104fa61116d565b6040805160ff9092168252519081900360200190f35b34801561051c57600080fd5b50610412611176565b34801561053157600080fd5b506103b66004803603604081101561054857600080fd5b50600160a060020a0381351690602001356111e6565b34801561056a57600080fd5b506102b761123a565b34801561057f57600080fd5b506104126004803603602081101561059657600080fd5b5035611242565b3480156105a957600080fd5b506102b7600480360360208110156105c057600080fd5b5035600160a060020a0316611256565b3480156105dc57600080fd5b506103b6600480360360408110156105f357600080fd5b50600160a060020a0381351690602001356114f5565b34801561061557600080fd5b506102b76115c9565b34801561062a57600080fd5b506102b76004803603602081101561064157600080fd5b5035600160a060020a03166115d1565b34801561065d57600080fd5b506102b76115e3565b34801561067257600080fd5b506102b76115e9565b34801561068757600080fd5b506102b76004803603602081101561069e57600080fd5b5035600160a060020a03166115ef565b3480156106ba57600080fd5b5061041261160a565b3480156106cf57600080fd5b506102b7600480360360208110156106e657600080fd5b5035600160a060020a03166116b3565b34801561070257600080fd5b506104b4611837565b34801561071757600080fd5b506103b66004803603602081101561072e57600080fd5b5035600160a060020a0316611846565b34801561074a57600080fd5b506102b76004803603602081101561076157600080fd5b5035600160a060020a031661185b565b34801561077d57600080fd5b506104126004803603604081101561079457600080fd5b50600160a060020a038135169060200135611a78565b3480156107b657600080fd5b506102b7611a86565b3480156107cb57600080fd5b506103b6600480360360408110156107e257600080fd5b50600160a060020a038135169060200135611c79565b34801561080457600080fd5b506104b4611e1b565b34801561081957600080fd5b50610412611e2a565b34801561082e57600080fd5b506102b76004803603602081101561084557600080fd5b5035600160a060020a0316612048565b34801561086157600080fd5b506102b761218a565b34801561087657600080fd5b506104b4612190565b34801561088b57600080fd5b506102b7600480360360208110156108a257600080fd5b5035600160a060020a03166121a4565b3480156108be57600080fd5b506103b66123a8565b3480156108d357600080fd5b50610412600480360360408110156108ea57600080fd5b50600160a060020a0381351690602001356123d3565b34801561090c57600080fd5b50610308612436565b34801561092157600080fd5b506103b66004803603604081101561093857600080fd5b50600160a060020a038135169060200135612497565b34801561095a57600080fd5b506103b66004803603604081101561097157600080fd5b50600160a060020a038135169060200135612549565b34801561099357600080fd5b506104b4612556565b3480156109a857600080fd5b506102b7600480360360208110156109bf57600080fd5b5035600160a060020a0316612565565b3480156109db57600080fd5b506103b6600480360360208110156109f257600080fd5b5035600160a060020a0316612577565b348015610a0e57600080fd5b506102b761258c565b348015610a2357600080fd5b506104b46127a6565b348015610a3857600080fd5b506102b76127b5565b348015610a4d57600080fd5b5061041260048036036020811015610a6457600080fd5b5035600160a060020a03166127bb565b348015610a8057600080fd5b506102b760048036036040811015610a9757600080fd5b50600160a060020a0381358116916020013516612836565b348015610abb57600080fd5b50610412612861565b348015610ad057600080fd5b506102b760048036036020811015610ae757600080fd5b5035600160a060020a03166128d1565b348015610b0357600080fd5b5061041260048036036020811015610b1a57600080fd5b5035600160a060020a03166128e3565b348015610b3657600080fd5b506103b660048036036040811015610b4d57600080fd5b50600160a060020a038135169060200135612938565b60095481565b600a5481565b6000635fb70700421015610b8557506000610d98565b63603c2e80421015610bbf57610bb86064610bac600a600654612acd90919063ffffffff16565b9063ffffffff612b6916565b9050610d98565b63621d6200421015610be657610bb86064610bac6014600654612acd90919063ffffffff16565b636387ee80421015610c0d57610bb86064610bac601e600654612acd90919063ffffffff16565b6363fe9580421015610c3457610bb86064610bac6023600654612acd90919063ffffffff16565b6364c84b00421015610c5b57610bb86064610bac6028600654612acd90919063ffffffff16565b6365badf00421015610c8257610bb86064610bac602d600654612acd90919063ffffffff16565b636609f900421015610ca957610bb86064610bac6032600654612acd90919063ffffffff16565b6366aad000421015610cd057610bb86064610bac6037600654612acd90919063ffffffff16565b6366fb3b80421015610cf757610bb86064610bac603c600654612acd90919063ffffffff16565b63674ba700421015610d1e57610bb86064610bac6041600654612acd90919063ffffffff16565b6367c24e00421015610d4557610bb86064610bac6046600654612acd90919063ffffffff16565b6368632500421015610d6c57610bb86064610bac6050600654612acd90919063ffffffff16565b63692cda80421015610d9357610bb86064610bac605a600654612acd90919063ffffffff16565b506006545b90565b60038054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610e275780601f10610dfc57610100808354040283529160200191610e27565b820191906000526020600020905b815481529060010190602001808311610e0a57829003601f168201915b5050505050905090565b6000610e45610e3e612bab565b8484612baf565b5060015b92915050565b60116020526000908152604090205481565b600c54600160a060020a03163314610eb1576040805160e560020a62461bcd02815260206004820152601e602482015260008051602061371a833981519152604482015290519081900360640190fd5b600c54600b54610eca91600160a060020a031690612d1c565b6000600b55565b60025490565b60126020526000908152604090205481565b6000610ef6848484612e9c565b610f1a8433610f1585610f098933612836565b9063ffffffff61315716565b612baf565b5060019392505050565b600e54600160a060020a031681565b635f669b80421015610fb5576040805160e560020a62461bcd02815260206004820152602c60248201527f5468652074696d65206d757374206265206c6f6e676572207468616e2074686560448201527f20756e6c6f636b2074696d650000000000000000000000000000000000000000606482015290519081900360840190fd5b3360009081526015602052604090205460ff16151561101e576040805160e560020a62461bcd02815260206004820152601560248201527f546f6b656e73206d757374206265206c6f636b65640000000000000000000000604482015290519081900360640190fd5b63692cda80421061109f576040805160e560020a62461bcd02815260206004820152602d60248201527f5468652074696d65206d757374206265206c657373207468616e20746865207360448201527f746f702073656c6c2074696d6500000000000000000000000000000000000000606482015290519081900360840190fd5b336000818152601560205260409020805460ff191690556110ff906110e3906110c79061185b565b336000908152601160205260409020549063ffffffff61315716565b336000908152601760205260409020549063ffffffff61319916565b33600081815260176020908152604080832094909455601190529182209190915561114d906110e39061113190612048565b336000908152601360205260409020549063ffffffff61315716565b336000908152601760209081526040808320939093556013905290812055565b60055460ff1690565b600c54600160a060020a031633146111c6576040805160e560020a62461bcd02815260206004820152601e602482015260008051602061371a833981519152604482015290519081900360640190fd5b600c546009546111df91600160a060020a031690612d1c565b6000600955565b6000610e456111f3612bab565b84610f158560016000611204612bab565b600160a060020a03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff61319916565b635f669b8081565b61125361124d612bab565b82612d1c565b50565b6000635eed518042101561126c575060006114f0565b635e34bf804210156112b057600160a060020a0382166000908152601260205260409020546112a990606490610bac90600f63ffffffff612acd16565b90506114f0565b635f8e28804210156112ed57600160a060020a0382166000908152601260205260409020546112a990606490610bac90601963ffffffff612acd16565b635fde940042101561132a57600160a060020a0382166000908152601260205260409020546112a990606490610bac90602363ffffffff612acd16565b6360650d0042101561136757600160a060020a0382166000908152601260205260409020546112a990606490610bac90602d63ffffffff612acd16565b63608c9a004210156113a457600160a060020a0382166000908152601260205260409020546112a990606490610bac90603763ffffffff612acd16565b636105e4004210156113e157600160a060020a0382166000908152601260205260409020546112a990606490610bac90604163ffffffff612acd16565b6361a6bb0042101561141e57600160a060020a0382166000908152601260205260409020546112a990606490610bac90604b63ffffffff612acd16565b63621d620042101561145b57600160a060020a0382166000908152601260205260409020546112a990606490610bac90605563ffffffff612acd16565b6362be390042101561149857600160a060020a0382166000908152601260205260409020546112a990606490610bac90605a63ffffffff612acd16565b63633783004210156114d557600160a060020a0382166000908152601260205260409020546112a990606490610bac90605f63ffffffff612acd16565b50600160a060020a0381166000908152601260205260409020545b919050565b600c54600090600160a060020a03163314611548576040805160e560020a62461bcd02815260206004820152601e602482015260008051602061371a833981519152604482015290519081900360640190fd5b600b546000106115a2576040805160e560020a62461bcd02815260206004820181905260248201527f546f6b656e7320617265206f766572206f722073616c6520697320656e646564604482015290519081900360640190fd5b600b546115b5908363ffffffff61315716565b600b556115c283836131f6565b9392505050565b63692cda8081565b60136020526000908152604090205481565b600b5481565b60085481565b600160a060020a031660009081526020819052604090205490565b6116126123a8565b1515611656576040805160e560020a62461bcd02815260206004820181905260248201526000805160206136fa833981519152604482015290519081900360640190fd5b6005546040516000916101009004600160a060020a0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36005805474ffffffffffffffffffffffffffffffffffffffff0019169055565b600160a060020a03811660009081526014602052604081205481906116df90600b63ffffffff612b6916565b9050635eed51804210156116f75760009150506114f0565b635e34bf8042101561170a5790506114f0565b635f8e288042101561172f5761172781600263ffffffff612acd16565b9150506114f0565b635fde940042101561174c5761172781600363ffffffff612acd16565b6360650d004210156117695761172781600463ffffffff612acd16565b63608c9a004210156117865761172781600563ffffffff612acd16565b636105e4004210156117a35761172781600663ffffffff612acd16565b6361a6bb004210156117c05761172781600763ffffffff612acd16565b63621d62004210156117dd5761172781600863ffffffff612acd16565b6362be39004210156117fa5761172781600963ffffffff612acd16565b63633783004210156118175761172781600a63ffffffff612acd16565b5050600160a060020a0381166000908152601460205260409020546114f0565b601054600160a060020a031681565b60156020526000908152604090205460ff1681565b6000635eed5180421015611871575060006114f0565b635f3dbd004210156118ae57600160a060020a0382166000908152601160205260409020546112a990606490610bac90601463ffffffff612acd16565b635fde94004210156118eb57600160a060020a0382166000908152601160205260409020546112a990606490610bac90601e63ffffffff612acd16565b6360650d0042101561192857600160a060020a0382166000908152601160205260409020546112a990606490610bac90603263ffffffff612acd16565b6360dd058042101561196557600160a060020a0382166000908152601160205260409020546112a990606490610bac90603c63ffffffff612acd16565b6361564f804210156119a257600160a060020a0382166000908152601160205260409020546112a990606490610bac90604663ffffffff612acd16565b6361a6bb004210156119df57600160a060020a0382166000908152601160205260409020546112a990606490610bac90605063ffffffff612acd16565b63621d6200421015611a1c57600160a060020a0382166000908152601160205260409020546112a990606490610bac90605a63ffffffff612acd16565b636296ac00421015611a5957600160a060020a0382166000908152601160205260409020546112a990606490610bac90605f63ffffffff612acd16565b50600160a060020a0381166000908152601160205260409020546114f0565b611a82828261320a565b5050565b6000635f8e2880421015611a9c57506000610d98565b63603c2e80421015611ac357610bb86064610bac600a600754612acd90919063ffffffff16565b6362464080421015611aea57610bb86064610bac6014600754612acd90919063ffffffff16565b6362be3900421015611b1157610bb86064610bac601e600754612acd90919063ffffffff16565b636387ee80421015611b3857610bb86064610bac6023600754612acd90919063ffffffff16565b63644f0100421015611b5f57610bb86064610bac6028600754612acd90919063ffffffff16565b6364c84b00421015611b8657610bb86064610bac6032600754612acd90919063ffffffff16565b636609f900421015611bad57610bb86064610bac6037600754612acd90919063ffffffff16565b6366aad000421015611bd457610bb86064610bac603c600754612acd90919063ffffffff16565b63674ba700421015611bfb57610bb86064610bac6041600754612acd90919063ffffffff16565b6367eb2c80421015611c2257610bb86064610bac6046600754612acd90919063ffffffff16565b63688c0380421015611c4957610bb86064610bac6050600754612acd90919063ffffffff16565b63692cda80421015611c7057610bb86064610bac605a600754612acd90919063ffffffff16565b50600754610d98565b600c54600090600160a060020a03163314611ccc576040805160e560020a62461bcd02815260206004820152601e602482015260008051602061371a833981519152604482015290519081900360640190fd5b600954600010611d26576040805160e560020a62461bcd02815260206004820181905260248201527f546f6b656e7320617265206f766572206f722073616c6520697320656e646564604482015290519081900360640190fd5b600160a060020a038316600090815260116020526040902054611d4f908363ffffffff61319916565b600160a060020a038416600090815260116020526040812091909155611d83612710610bac856107d063ffffffff612acd16565b600160a060020a038516600090815260136020526040902054909150611daf908263ffffffff61319916565b600160a060020a0385166000908152601360209081526040808320939093556015905220805460ff19166001179055600954611df7908290610f09908663ffffffff61315716565b600955611e1384611e0e858463ffffffff61319916565b6131f6565b949350505050565b600d54600160a060020a031681565b635f669b80421015611eac576040805160e560020a62461bcd02815260206004820152602c60248201527f5468652074696d65206d757374206265206c6f6e676572207468616e2074686560448201527f20756e6c6f636b2074696d650000000000000000000000000000000000000000606482015290519081900360840190fd5b3360009081526016602052604090205460ff161515611f15576040805160e560020a62461bcd02815260206004820152601560248201527f546f6b656e73206d757374206265206c6f636b65640000000000000000000000604482015290519081900360640190fd5b63692cda804210611f96576040805160e560020a62461bcd02815260206004820152602d60248201527f5468652074696d65206d757374206265206c657373207468616e20746865207360448201527f746f702073656c6c2074696d6500000000000000000000000000000000000000606482015290519081900360840190fd5b336000818152601660205260409020805460ff19169055611fda906110e390611fbe90611256565b336000908152601260205260409020549063ffffffff61315716565b336000818152601760209081526040808320949094556012905291822091909155612028906110e39061200c906116b3565b336000908152601460205260409020549063ffffffff61315716565b336000908152601760209081526040808320939093556014905290812055565b600160a060020a038116600090815260136020526040812054819061207490600963ffffffff612b6916565b9050635eed518042101561208c5760009150506114f0565b635f3dbd0042101561209f5790506114f0565b635fde94004210156120bc5761172781600263ffffffff612acd16565b6360650d004210156120d95761172781600363ffffffff612acd16565b6360dd05804210156120f65761172781600463ffffffff612acd16565b6361564f804210156121135761172781600563ffffffff612acd16565b6361a6bb004210156121305761172781600663ffffffff612acd16565b63621d620042101561214d5761172781600763ffffffff612acd16565b636296ac0042101561216a5761172781600863ffffffff612acd16565b5050600160a060020a0381166000908152601360205260409020546114f0565b60075481565b6005546101009004600160a060020a031690565b6000806121b0836115ef565b600d54909150600160a060020a03848116911614156121f6576121f36121e66121d7610b6f565b6006549063ffffffff61315716565b829063ffffffff61315716565b90505b600e54600160a060020a038481169116141561222c576122296121e661221a611a86565b6007549063ffffffff61315716565b90505b600f54600160a060020a03848116911614156122625761225f6121e661225061258c565b6008549063ffffffff61315716565b90505b600160a060020a03831660009081526015602052604090205460ff16156122f0576122b76121e66122928561185b565b600160a060020a0386166000908152601160205260409020549063ffffffff61315716565b90506122ed6121e66122c885612048565b600160a060020a0386166000908152601360205260409020549063ffffffff61315716565b90505b600160a060020a03831660009081526016602052604090205460ff161561237e576123456121e661232085611256565b600160a060020a0386166000908152601260205260409020549063ffffffff61315716565b905061237b6121e6612356856116b3565b600160a060020a0386166000908152601460205260409020549063ffffffff61315716565b90505b600160a060020a0383166000908152601760205260409020546115c290829063ffffffff61315716565b6005546000906101009004600160a060020a03166123c4612bab565b600160a060020a031614905090565b6123db6123a8565b151561241f576040805160e560020a62461bcd02815260206004820181905260248201526000805160206136fa833981519152604482015290519081900360640190fd5b601054611a8290600160a060020a031683836132d7565b60048054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610e275780601f10610dfc57610100808354040283529160200191610e27565b6000610e456124a4612bab565b84610f1585606060405190810160405280602581526020017f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7781526020017f207a65726f00000000000000000000000000000000000000000000000000000081525060016000612512612bab565b600160a060020a03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff6134f816565b6000610e45338484612e9c565b600c54600160a060020a031681565b60176020526000908152604090205481565b60166020526000908152604090205460ff1681565b6000635fde94004210156125a257506000610d98565b63608c9a004210156125c957610bb86064610bac600a600854612acd90919063ffffffff16565b63612ec2804210156125f057610bb86064610bac600f600854612acd90919063ffffffff16565b636296ac0042101561261757610bb86064610bac6014600854612acd90919063ffffffff16565b636337830042101561263e57610bb86064610bac6019600854612acd90919063ffffffff16565b63644f010042101561266557610bb86064610bac601e600854612acd90919063ffffffff16565b6364c84b0042101561268c57610bb86064610bac6028600854612acd90919063ffffffff16565b63663186004210156126b357610bb86064610bac602d600854612acd90919063ffffffff16565b636681f1804210156126da57610bb86064610bac6037600854612acd90919063ffffffff16565b6366fb3b8042101561270157610bb86064610bac603c600854612acd90919063ffffffff16565b63674ba70042101561272857610bb86064610bac6041600854612acd90919063ffffffff16565b636812b98042101561274f57610bb86064610bac6046600854612acd90919063ffffffff16565b6368b4e20042101561277657610bb86064610bac6050600854612acd90919063ffffffff16565b63692cda8042101561279d57610bb86064610bac605a600854612acd90919063ffffffff16565b50600854610d98565b600f54600160a060020a031681565b60065481565b6127c36123a8565b1515612807576040805160e560020a62461bcd02815260206004820181905260248201526000805160206136fa833981519152604482015290519081900360640190fd5b6010805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a03918216600090815260016020908152604080832093909416825291909152205490565b600c54600160a060020a031633146128b1576040805160e560020a62461bcd02815260206004820152601e602482015260008051602061371a833981519152604482015290519081900360640190fd5b600c54600a546128ca91600160a060020a031690612d1c565b6000600a55565b60146020526000908152604090205481565b6128eb6123a8565b151561292f576040805160e560020a62461bcd02815260206004820181905260248201526000805160206136fa833981519152604482015290519081900360640190fd5b61125381613592565b600c54600090600160a060020a0316331461298b576040805160e560020a62461bcd02815260206004820152601e602482015260008051602061371a833981519152604482015290519081900360640190fd5b600a546000106129e5576040805160e560020a62461bcd02815260206004820181905260248201527f546f6b656e7320617265206f766572206f722073616c6520697320656e646564604482015290519081900360640190fd5b600160a060020a038316600090815260126020526040902054612a0e908363ffffffff61319916565b600160a060020a038416600090815260126020526040812091909155612a42612710610bac856105d863ffffffff612acd16565b600160a060020a038516600090815260146020526040902054909150612a6e908263ffffffff61319916565b600160a060020a0385166000908152601460209081526040808320939093556016905220805460ff19166001179055600a54612ab6908290610f09908663ffffffff61315716565b600a55611e1384611e0e858463ffffffff61319916565b6000821515612ade57506000610e49565b828202828482811515612aed57fe5b04146115c2576040805160e560020a62461bcd02815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60448201527f7700000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60006115c283836040805190810160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061368c565b3390565b600160a060020a0383161515612c34576040805160e560020a62461bcd028152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a0382161515612cba576040805160e560020a62461bcd02815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b600160a060020a0382161515612da2576040805160e560020a62461bcd02815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f7300000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60408051606081018252602281527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e6020808301919091527f636500000000000000000000000000000000000000000000000000000000000082840152600160a060020a0385166000908152908190529190912054612e2891839063ffffffff6134f816565b600160a060020a038316600090815260208190526040902055600254612e54908263ffffffff61315716565b600255604080518281529051600091600160a060020a038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b63692cda8042101561314757601054600160a060020a03838116911614156130e757600160a060020a038316600090815260176020526040902054811115612f2e576040805160e560020a62461bcd02815260206004820152601760248201527f546f6b656e73206d75737420626520756e6c6f636b6564000000000000000000604482015290519081900360640190fd5b63692cda804210612faf576040805160e560020a62461bcd02815260206004820152602d60248201527f5468652074696d65206d757374206265206c657373207468616e20746865207360448201527f746f702073656c6c2074696d6500000000000000000000000000000000000000606482015290519081900360840190fd5b601054604080517f4a225898000000000000000000000000000000000000000000000000000000008152600160a060020a0386811660048301526024820185905291519190921691634a2258989160448083019260209291908290030181600087803b15801561301e57600080fd5b505af1158015613032573d6000803e3d6000fd5b505050506040513d602081101561304857600080fd5b505115156130a0576040805160e560020a62461bcd02815260206004820152600c60248201527f42616e6b2070726f626c656d0000000000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a0383166000908152601760205260409020546130c9908263ffffffff61315716565b600160a060020a038416600090815260176020526040902055613147565b6130f0836121a4565b811115613147576040805160e560020a62461bcd02815260206004820152601460248201527f4e6f20617661696c61626c652062616c616e6365000000000000000000000000604482015290519081900360640190fd5b6131528383836132d7565b505050565b60006115c283836040805190810160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506134f8565b6000828201838110156115c2576040805160e560020a62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000610e45613203612bab565b8484612e9c565b6132148282612d1c565b611a8282613220612bab565b610f1584606060405190810160405280602481526020017f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f7781526020017f616e6365000000000000000000000000000000000000000000000000000000008152506001600089600160a060020a0316600160a060020a0316815260200190815260200160002060006132b0612bab565b600160a060020a03168152602081019190915260400160002054919063ffffffff6134f816565b600160a060020a038316151561335d576040805160e560020a62461bcd02815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a03821615156133e3576040805160e560020a62461bcd02815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60408051606081018252602681527f45524332303a207472616e7366657220616d6f756e74206578636565647320626020808301919091527f616c616e6365000000000000000000000000000000000000000000000000000082840152600160a060020a038616600090815290819052919091205461346991839063ffffffff6134f816565b600160a060020a03808516600090815260208190526040808220939093559084168152205461349e908263ffffffff61319916565b600160a060020a038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000818484111561358a5760405160e560020a62461bcd0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561354f578181015183820152602001613537565b50505050905090810190601f16801561357c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600160a060020a0381161515613618576040805160e560020a62461bcd02815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600554604051600160a060020a0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a360058054600160a060020a039092166101000274ffffffffffffffffffffffffffffffffffffffff0019909216919091179055565b6000818184116136e15760405160e560020a62461bcd0281526004018080602001828103825283818151815260200191508051906020019080838360008381101561354f578181015183820152602001613537565b50600083858115156136ef57fe5b049594505050505056fe4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657253656e646572206d757374206265206120746f6b656e7320686f6c6465720000a165627a7a723058203da77f0757f88f66ae477e4ce30e3c7d1a2d7b1b32b015b662ad7d054ab5ea5d0029
0x60806040523480156200001157600080fd5b5060405160808062003d1f833981018060405260808110156200003357600080fd5b50805160208083015160408085015160609095015181518083018352600e81527f4f6b73636861696e20546f6b656e000000000000000000000000000000000000818601908152835180850190945260038085527f4f4b5300000000000000000000000000000000000000000000000000000000009685019690965281519697949694959294919392601292620000cb929062000508565b508151620000e190600490602085019062000508565b506005805460ff191660ff9290921691909117905550600090506200010e6401000000006200035d810204565b6005805461010060a860020a031916610100600160a060020a03841690810291909117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600c8054600160a060020a031916600160a060020a0386161790556200019264010000000062000362810204565b60ff16600a0a64014c980b0002600955620001b564010000000062000362810204565b60ff16600a0a6401a8fb2a8002600a81905550620001e162000362640100000000026401000000009004565b60ff16600a0a6349e8e60002600b819055506200022d600c60009054906101000a9004600160a060020a0316600b54600a5460095401016200036b640100000000026401000000009004565b600d8054600160a060020a031916600160a060020a0385161790556200025b64010000000062000362810204565b60ff16600a0a6349e8e600026006819055600d546200028f91600160a060020a03909116906401000000006200036b810204565b600e8054600160a060020a031916600160a060020a038416179055620002bd64010000000062000362810204565b60ff16600a0a63127a3980026007819055600e54620002f191600160a060020a03909116906401000000006200036b810204565b600f8054600160a060020a031916600160a060020a0383161790556200031f64010000000062000362810204565b60ff16600a0a636edd5900026008819055600f546200035391600160a060020a03909116906401000000006200036b810204565b50505050620005aa565b335b90565b60055460ff1690565b600160a060020a0382161515620003e357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b600254620004009082640100000000620031996200048c82021704565b600255600160a060020a038216600090815260208190526040902054620004369082640100000000620031996200048c82021704565b600160a060020a0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6000828201838110156200050157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200054b57805160ff19168380011785556200057b565b828001600101855582156200057b579182015b828111156200057b5782518255916020019190600101906200055e565b50620005899291506200058d565b5090565b6200035f91905b8082111562000589576000815560010162000594565b61376580620005ba6000396000f3fe60806040526004361061029d5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630253040181146102a2578063027c4ed2146102c95780630655949c146102de57806306fdde03146102f3578063095ea7b31461037d5780630aa1d3f3146103ca57806312890153146103fd57806318160ddd146104145780631febcfee1461042957806323b872dd1461045c5780632d3e474a1461049f5780632f8b4b7d146104d0578063313ce567146104e55780633918e59f146105105780633950935114610525578063413198311461055e57806342966c68146105735780634f98fb101461059d5780635406006d146105d057806357fbc940146106095780636c1030671461061e5780636c420036146106515780636f4a48e21461066657806370a082311461067b578063715018a6146106ae57806372918a78146106c357806376cdb03b146106f65780637766fe6a1461070b5780637891df9a1461073e57806379cc67901461077157806382cf5064146107aa57806385cbc926146107bf57806385cde77f1461060957806385f2aef2146107f857806389807b6e1461080d5780638b74730c146108225780638c800d17146108555780638da5cb5b1461086a5780638e8a8d611461087f5780638f32d59b146108b257806393c2c682146108c757806395d89b4114610900578063a457c2d714610915578063a9059cbb1461094e578063ab3e21ca14610987578063b22683fa1461099c578063bc109f9c146109cf578063bd7e700714610a02578063cd3293de14610a17578063d973d49014610a2c578063dacf64e214610a41578063dd62ed3e14610a74578063e023620414610aaf578063eba5d84f14610ac4578063f2fde38b14610af7578063ff6e149214610b2a575b600080fd5b3480156102ae57600080fd5b506102b7610b63565b60408051918252519081900360200190f35b3480156102d557600080fd5b506102b7610b69565b3480156102ea57600080fd5b506102b7610b6f565b3480156102ff57600080fd5b50610308610d9b565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561034257818101518382015260200161032a565b50505050905090810190601f16801561036f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561038957600080fd5b506103b6600480360360408110156103a057600080fd5b50600160a060020a038135169060200135610e31565b604080519115158252519081900360200190f35b3480156103d657600080fd5b506102b7600480360360208110156103ed57600080fd5b5035600160a060020a0316610e4f565b34801561040957600080fd5b50610412610e61565b005b34801561042057600080fd5b506102b7610ed1565b34801561043557600080fd5b506102b76004803603602081101561044c57600080fd5b5035600160a060020a0316610ed7565b34801561046857600080fd5b506103b66004803603606081101561047f57600080fd5b50600160a060020a03813581169160208101359091169060400135610ee9565b3480156104ab57600080fd5b506104b4610f24565b60408051600160a060020a039092168252519081900360200190f35b3480156104dc57600080fd5b50610412610f33565b3480156104f157600080fd5b506104fa61116d565b6040805160ff9092168252519081900360200190f35b34801561051c57600080fd5b50610412611176565b34801561053157600080fd5b506103b66004803603604081101561054857600080fd5b50600160a060020a0381351690602001356111e6565b34801561056a57600080fd5b506102b761123a565b34801561057f57600080fd5b506104126004803603602081101561059657600080fd5b5035611242565b3480156105a957600080fd5b506102b7600480360360208110156105c057600080fd5b5035600160a060020a0316611256565b3480156105dc57600080fd5b506103b6600480360360408110156105f357600080fd5b50600160a060020a0381351690602001356114f5565b34801561061557600080fd5b506102b76115c9565b34801561062a57600080fd5b506102b76004803603602081101561064157600080fd5b5035600160a060020a03166115d1565b34801561065d57600080fd5b506102b76115e3565b34801561067257600080fd5b506102b76115e9565b34801561068757600080fd5b506102b76004803603602081101561069e57600080fd5b5035600160a060020a03166115ef565b3480156106ba57600080fd5b5061041261160a565b3480156106cf57600080fd5b506102b7600480360360208110156106e657600080fd5b5035600160a060020a03166116b3565b34801561070257600080fd5b506104b4611837565b34801561071757600080fd5b506103b66004803603602081101561072e57600080fd5b5035600160a060020a0316611846565b34801561074a57600080fd5b506102b76004803603602081101561076157600080fd5b5035600160a060020a031661185b565b34801561077d57600080fd5b506104126004803603604081101561079457600080fd5b50600160a060020a038135169060200135611a78565b3480156107b657600080fd5b506102b7611a86565b3480156107cb57600080fd5b506103b6600480360360408110156107e257600080fd5b50600160a060020a038135169060200135611c79565b34801561080457600080fd5b506104b4611e1b565b34801561081957600080fd5b50610412611e2a565b34801561082e57600080fd5b506102b76004803603602081101561084557600080fd5b5035600160a060020a0316612048565b34801561086157600080fd5b506102b761218a565b34801561087657600080fd5b506104b4612190565b34801561088b57600080fd5b506102b7600480360360208110156108a257600080fd5b5035600160a060020a03166121a4565b3480156108be57600080fd5b506103b66123a8565b3480156108d357600080fd5b50610412600480360360408110156108ea57600080fd5b50600160a060020a0381351690602001356123d3565b34801561090c57600080fd5b50610308612436565b34801561092157600080fd5b506103b66004803603604081101561093857600080fd5b50600160a060020a038135169060200135612497565b34801561095a57600080fd5b506103b66004803603604081101561097157600080fd5b50600160a060020a038135169060200135612549565b34801561099357600080fd5b506104b4612556565b3480156109a857600080fd5b506102b7600480360360208110156109bf57600080fd5b5035600160a060020a0316612565565b3480156109db57600080fd5b506103b6600480360360208110156109f257600080fd5b5035600160a060020a0316612577565b348015610a0e57600080fd5b506102b761258c565b348015610a2357600080fd5b506104b46127a6565b348015610a3857600080fd5b506102b76127b5565b348015610a4d57600080fd5b5061041260048036036020811015610a6457600080fd5b5035600160a060020a03166127bb565b348015610a8057600080fd5b506102b760048036036040811015610a9757600080fd5b50600160a060020a0381358116916020013516612836565b348015610abb57600080fd5b50610412612861565b348015610ad057600080fd5b506102b760048036036020811015610ae757600080fd5b5035600160a060020a03166128d1565b348015610b0357600080fd5b5061041260048036036020811015610b1a57600080fd5b5035600160a060020a03166128e3565b348015610b3657600080fd5b506103b660048036036040811015610b4d57600080fd5b50600160a060020a038135169060200135612938565b60095481565b600a5481565b6000635fb70700421015610b8557506000610d98565b63603c2e80421015610bbf57610bb86064610bac600a600654612acd90919063ffffffff16565b9063ffffffff612b6916565b9050610d98565b63621d6200421015610be657610bb86064610bac6014600654612acd90919063ffffffff16565b636387ee80421015610c0d57610bb86064610bac601e600654612acd90919063ffffffff16565b6363fe9580421015610c3457610bb86064610bac6023600654612acd90919063ffffffff16565b6364c84b00421015610c5b57610bb86064610bac6028600654612acd90919063ffffffff16565b6365badf00421015610c8257610bb86064610bac602d600654612acd90919063ffffffff16565b636609f900421015610ca957610bb86064610bac6032600654612acd90919063ffffffff16565b6366aad000421015610cd057610bb86064610bac6037600654612acd90919063ffffffff16565b6366fb3b80421015610cf757610bb86064610bac603c600654612acd90919063ffffffff16565b63674ba700421015610d1e57610bb86064610bac6041600654612acd90919063ffffffff16565b6367c24e00421015610d4557610bb86064610bac6046600654612acd90919063ffffffff16565b6368632500421015610d6c57610bb86064610bac6050600654612acd90919063ffffffff16565b63692cda80421015610d9357610bb86064610bac605a600654612acd90919063ffffffff16565b506006545b90565b60038054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610e275780601f10610dfc57610100808354040283529160200191610e27565b820191906000526020600020905b815481529060010190602001808311610e0a57829003601f168201915b5050505050905090565b6000610e45610e3e612bab565b8484612baf565b5060015b92915050565b60116020526000908152604090205481565b600c54600160a060020a03163314610eb1576040805160e560020a62461bcd02815260206004820152601e602482015260008051602061371a833981519152604482015290519081900360640190fd5b600c54600b54610eca91600160a060020a031690612d1c565b6000600b55565b60025490565b60126020526000908152604090205481565b6000610ef6848484612e9c565b610f1a8433610f1585610f098933612836565b9063ffffffff61315716565b612baf565b5060019392505050565b600e54600160a060020a031681565b635f669b80421015610fb5576040805160e560020a62461bcd02815260206004820152602c60248201527f5468652074696d65206d757374206265206c6f6e676572207468616e2074686560448201527f20756e6c6f636b2074696d650000000000000000000000000000000000000000606482015290519081900360840190fd5b3360009081526015602052604090205460ff16151561101e576040805160e560020a62461bcd02815260206004820152601560248201527f546f6b656e73206d757374206265206c6f636b65640000000000000000000000604482015290519081900360640190fd5b63692cda80421061109f576040805160e560020a62461bcd02815260206004820152602d60248201527f5468652074696d65206d757374206265206c657373207468616e20746865207360448201527f746f702073656c6c2074696d6500000000000000000000000000000000000000606482015290519081900360840190fd5b336000818152601560205260409020805460ff191690556110ff906110e3906110c79061185b565b336000908152601160205260409020549063ffffffff61315716565b336000908152601760205260409020549063ffffffff61319916565b33600081815260176020908152604080832094909455601190529182209190915561114d906110e39061113190612048565b336000908152601360205260409020549063ffffffff61315716565b336000908152601760209081526040808320939093556013905290812055565b60055460ff1690565b600c54600160a060020a031633146111c6576040805160e560020a62461bcd02815260206004820152601e602482015260008051602061371a833981519152604482015290519081900360640190fd5b600c546009546111df91600160a060020a031690612d1c565b6000600955565b6000610e456111f3612bab565b84610f158560016000611204612bab565b600160a060020a03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff61319916565b635f669b8081565b61125361124d612bab565b82612d1c565b50565b6000635eed518042101561126c575060006114f0565b635e34bf804210156112b057600160a060020a0382166000908152601260205260409020546112a990606490610bac90600f63ffffffff612acd16565b90506114f0565b635f8e28804210156112ed57600160a060020a0382166000908152601260205260409020546112a990606490610bac90601963ffffffff612acd16565b635fde940042101561132a57600160a060020a0382166000908152601260205260409020546112a990606490610bac90602363ffffffff612acd16565b6360650d0042101561136757600160a060020a0382166000908152601260205260409020546112a990606490610bac90602d63ffffffff612acd16565b63608c9a004210156113a457600160a060020a0382166000908152601260205260409020546112a990606490610bac90603763ffffffff612acd16565b636105e4004210156113e157600160a060020a0382166000908152601260205260409020546112a990606490610bac90604163ffffffff612acd16565b6361a6bb0042101561141e57600160a060020a0382166000908152601260205260409020546112a990606490610bac90604b63ffffffff612acd16565b63621d620042101561145b57600160a060020a0382166000908152601260205260409020546112a990606490610bac90605563ffffffff612acd16565b6362be390042101561149857600160a060020a0382166000908152601260205260409020546112a990606490610bac90605a63ffffffff612acd16565b63633783004210156114d557600160a060020a0382166000908152601260205260409020546112a990606490610bac90605f63ffffffff612acd16565b50600160a060020a0381166000908152601260205260409020545b919050565b600c54600090600160a060020a03163314611548576040805160e560020a62461bcd02815260206004820152601e602482015260008051602061371a833981519152604482015290519081900360640190fd5b600b546000106115a2576040805160e560020a62461bcd02815260206004820181905260248201527f546f6b656e7320617265206f766572206f722073616c6520697320656e646564604482015290519081900360640190fd5b600b546115b5908363ffffffff61315716565b600b556115c283836131f6565b9392505050565b63692cda8081565b60136020526000908152604090205481565b600b5481565b60085481565b600160a060020a031660009081526020819052604090205490565b6116126123a8565b1515611656576040805160e560020a62461bcd02815260206004820181905260248201526000805160206136fa833981519152604482015290519081900360640190fd5b6005546040516000916101009004600160a060020a0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36005805474ffffffffffffffffffffffffffffffffffffffff0019169055565b600160a060020a03811660009081526014602052604081205481906116df90600b63ffffffff612b6916565b9050635eed51804210156116f75760009150506114f0565b635e34bf8042101561170a5790506114f0565b635f8e288042101561172f5761172781600263ffffffff612acd16565b9150506114f0565b635fde940042101561174c5761172781600363ffffffff612acd16565b6360650d004210156117695761172781600463ffffffff612acd16565b63608c9a004210156117865761172781600563ffffffff612acd16565b636105e4004210156117a35761172781600663ffffffff612acd16565b6361a6bb004210156117c05761172781600763ffffffff612acd16565b63621d62004210156117dd5761172781600863ffffffff612acd16565b6362be39004210156117fa5761172781600963ffffffff612acd16565b63633783004210156118175761172781600a63ffffffff612acd16565b5050600160a060020a0381166000908152601460205260409020546114f0565b601054600160a060020a031681565b60156020526000908152604090205460ff1681565b6000635eed5180421015611871575060006114f0565b635f3dbd004210156118ae57600160a060020a0382166000908152601160205260409020546112a990606490610bac90601463ffffffff612acd16565b635fde94004210156118eb57600160a060020a0382166000908152601160205260409020546112a990606490610bac90601e63ffffffff612acd16565b6360650d0042101561192857600160a060020a0382166000908152601160205260409020546112a990606490610bac90603263ffffffff612acd16565b6360dd058042101561196557600160a060020a0382166000908152601160205260409020546112a990606490610bac90603c63ffffffff612acd16565b6361564f804210156119a257600160a060020a0382166000908152601160205260409020546112a990606490610bac90604663ffffffff612acd16565b6361a6bb004210156119df57600160a060020a0382166000908152601160205260409020546112a990606490610bac90605063ffffffff612acd16565b63621d6200421015611a1c57600160a060020a0382166000908152601160205260409020546112a990606490610bac90605a63ffffffff612acd16565b636296ac00421015611a5957600160a060020a0382166000908152601160205260409020546112a990606490610bac90605f63ffffffff612acd16565b50600160a060020a0381166000908152601160205260409020546114f0565b611a82828261320a565b5050565b6000635f8e2880421015611a9c57506000610d98565b63603c2e80421015611ac357610bb86064610bac600a600754612acd90919063ffffffff16565b6362464080421015611aea57610bb86064610bac6014600754612acd90919063ffffffff16565b6362be3900421015611b1157610bb86064610bac601e600754612acd90919063ffffffff16565b636387ee80421015611b3857610bb86064610bac6023600754612acd90919063ffffffff16565b63644f0100421015611b5f57610bb86064610bac6028600754612acd90919063ffffffff16565b6364c84b00421015611b8657610bb86064610bac6032600754612acd90919063ffffffff16565b636609f900421015611bad57610bb86064610bac6037600754612acd90919063ffffffff16565b6366aad000421015611bd457610bb86064610bac603c600754612acd90919063ffffffff16565b63674ba700421015611bfb57610bb86064610bac6041600754612acd90919063ffffffff16565b6367eb2c80421015611c2257610bb86064610bac6046600754612acd90919063ffffffff16565b63688c0380421015611c4957610bb86064610bac6050600754612acd90919063ffffffff16565b63692cda80421015611c7057610bb86064610bac605a600754612acd90919063ffffffff16565b50600754610d98565b600c54600090600160a060020a03163314611ccc576040805160e560020a62461bcd02815260206004820152601e602482015260008051602061371a833981519152604482015290519081900360640190fd5b600954600010611d26576040805160e560020a62461bcd02815260206004820181905260248201527f546f6b656e7320617265206f766572206f722073616c6520697320656e646564604482015290519081900360640190fd5b600160a060020a038316600090815260116020526040902054611d4f908363ffffffff61319916565b600160a060020a038416600090815260116020526040812091909155611d83612710610bac856107d063ffffffff612acd16565b600160a060020a038516600090815260136020526040902054909150611daf908263ffffffff61319916565b600160a060020a0385166000908152601360209081526040808320939093556015905220805460ff19166001179055600954611df7908290610f09908663ffffffff61315716565b600955611e1384611e0e858463ffffffff61319916565b6131f6565b949350505050565b600d54600160a060020a031681565b635f669b80421015611eac576040805160e560020a62461bcd02815260206004820152602c60248201527f5468652074696d65206d757374206265206c6f6e676572207468616e2074686560448201527f20756e6c6f636b2074696d650000000000000000000000000000000000000000606482015290519081900360840190fd5b3360009081526016602052604090205460ff161515611f15576040805160e560020a62461bcd02815260206004820152601560248201527f546f6b656e73206d757374206265206c6f636b65640000000000000000000000604482015290519081900360640190fd5b63692cda804210611f96576040805160e560020a62461bcd02815260206004820152602d60248201527f5468652074696d65206d757374206265206c657373207468616e20746865207360448201527f746f702073656c6c2074696d6500000000000000000000000000000000000000606482015290519081900360840190fd5b336000818152601660205260409020805460ff19169055611fda906110e390611fbe90611256565b336000908152601260205260409020549063ffffffff61315716565b336000818152601760209081526040808320949094556012905291822091909155612028906110e39061200c906116b3565b336000908152601460205260409020549063ffffffff61315716565b336000908152601760209081526040808320939093556014905290812055565b600160a060020a038116600090815260136020526040812054819061207490600963ffffffff612b6916565b9050635eed518042101561208c5760009150506114f0565b635f3dbd0042101561209f5790506114f0565b635fde94004210156120bc5761172781600263ffffffff612acd16565b6360650d004210156120d95761172781600363ffffffff612acd16565b6360dd05804210156120f65761172781600463ffffffff612acd16565b6361564f804210156121135761172781600563ffffffff612acd16565b6361a6bb004210156121305761172781600663ffffffff612acd16565b63621d620042101561214d5761172781600763ffffffff612acd16565b636296ac0042101561216a5761172781600863ffffffff612acd16565b5050600160a060020a0381166000908152601360205260409020546114f0565b60075481565b6005546101009004600160a060020a031690565b6000806121b0836115ef565b600d54909150600160a060020a03848116911614156121f6576121f36121e66121d7610b6f565b6006549063ffffffff61315716565b829063ffffffff61315716565b90505b600e54600160a060020a038481169116141561222c576122296121e661221a611a86565b6007549063ffffffff61315716565b90505b600f54600160a060020a03848116911614156122625761225f6121e661225061258c565b6008549063ffffffff61315716565b90505b600160a060020a03831660009081526015602052604090205460ff16156122f0576122b76121e66122928561185b565b600160a060020a0386166000908152601160205260409020549063ffffffff61315716565b90506122ed6121e66122c885612048565b600160a060020a0386166000908152601360205260409020549063ffffffff61315716565b90505b600160a060020a03831660009081526016602052604090205460ff161561237e576123456121e661232085611256565b600160a060020a0386166000908152601260205260409020549063ffffffff61315716565b905061237b6121e6612356856116b3565b600160a060020a0386166000908152601460205260409020549063ffffffff61315716565b90505b600160a060020a0383166000908152601760205260409020546115c290829063ffffffff61315716565b6005546000906101009004600160a060020a03166123c4612bab565b600160a060020a031614905090565b6123db6123a8565b151561241f576040805160e560020a62461bcd02815260206004820181905260248201526000805160206136fa833981519152604482015290519081900360640190fd5b601054611a8290600160a060020a031683836132d7565b60048054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610e275780601f10610dfc57610100808354040283529160200191610e27565b6000610e456124a4612bab565b84610f1585606060405190810160405280602581526020017f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7781526020017f207a65726f00000000000000000000000000000000000000000000000000000081525060016000612512612bab565b600160a060020a03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff6134f816565b6000610e45338484612e9c565b600c54600160a060020a031681565b60176020526000908152604090205481565b60166020526000908152604090205460ff1681565b6000635fde94004210156125a257506000610d98565b63608c9a004210156125c957610bb86064610bac600a600854612acd90919063ffffffff16565b63612ec2804210156125f057610bb86064610bac600f600854612acd90919063ffffffff16565b636296ac0042101561261757610bb86064610bac6014600854612acd90919063ffffffff16565b636337830042101561263e57610bb86064610bac6019600854612acd90919063ffffffff16565b63644f010042101561266557610bb86064610bac601e600854612acd90919063ffffffff16565b6364c84b0042101561268c57610bb86064610bac6028600854612acd90919063ffffffff16565b63663186004210156126b357610bb86064610bac602d600854612acd90919063ffffffff16565b636681f1804210156126da57610bb86064610bac6037600854612acd90919063ffffffff16565b6366fb3b8042101561270157610bb86064610bac603c600854612acd90919063ffffffff16565b63674ba70042101561272857610bb86064610bac6041600854612acd90919063ffffffff16565b636812b98042101561274f57610bb86064610bac6046600854612acd90919063ffffffff16565b6368b4e20042101561277657610bb86064610bac6050600854612acd90919063ffffffff16565b63692cda8042101561279d57610bb86064610bac605a600854612acd90919063ffffffff16565b50600854610d98565b600f54600160a060020a031681565b60065481565b6127c36123a8565b1515612807576040805160e560020a62461bcd02815260206004820181905260248201526000805160206136fa833981519152604482015290519081900360640190fd5b6010805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a03918216600090815260016020908152604080832093909416825291909152205490565b600c54600160a060020a031633146128b1576040805160e560020a62461bcd02815260206004820152601e602482015260008051602061371a833981519152604482015290519081900360640190fd5b600c54600a546128ca91600160a060020a031690612d1c565b6000600a55565b60146020526000908152604090205481565b6128eb6123a8565b151561292f576040805160e560020a62461bcd02815260206004820181905260248201526000805160206136fa833981519152604482015290519081900360640190fd5b61125381613592565b600c54600090600160a060020a0316331461298b576040805160e560020a62461bcd02815260206004820152601e602482015260008051602061371a833981519152604482015290519081900360640190fd5b600a546000106129e5576040805160e560020a62461bcd02815260206004820181905260248201527f546f6b656e7320617265206f766572206f722073616c6520697320656e646564604482015290519081900360640190fd5b600160a060020a038316600090815260126020526040902054612a0e908363ffffffff61319916565b600160a060020a038416600090815260126020526040812091909155612a42612710610bac856105d863ffffffff612acd16565b600160a060020a038516600090815260146020526040902054909150612a6e908263ffffffff61319916565b600160a060020a0385166000908152601460209081526040808320939093556016905220805460ff19166001179055600a54612ab6908290610f09908663ffffffff61315716565b600a55611e1384611e0e858463ffffffff61319916565b6000821515612ade57506000610e49565b828202828482811515612aed57fe5b04146115c2576040805160e560020a62461bcd02815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60448201527f7700000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60006115c283836040805190810160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061368c565b3390565b600160a060020a0383161515612c34576040805160e560020a62461bcd028152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a0382161515612cba576040805160e560020a62461bcd02815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b600160a060020a0382161515612da2576040805160e560020a62461bcd02815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f7300000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60408051606081018252602281527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e6020808301919091527f636500000000000000000000000000000000000000000000000000000000000082840152600160a060020a0385166000908152908190529190912054612e2891839063ffffffff6134f816565b600160a060020a038316600090815260208190526040902055600254612e54908263ffffffff61315716565b600255604080518281529051600091600160a060020a038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b63692cda8042101561314757601054600160a060020a03838116911614156130e757600160a060020a038316600090815260176020526040902054811115612f2e576040805160e560020a62461bcd02815260206004820152601760248201527f546f6b656e73206d75737420626520756e6c6f636b6564000000000000000000604482015290519081900360640190fd5b63692cda804210612faf576040805160e560020a62461bcd02815260206004820152602d60248201527f5468652074696d65206d757374206265206c657373207468616e20746865207360448201527f746f702073656c6c2074696d6500000000000000000000000000000000000000606482015290519081900360840190fd5b601054604080517f4a225898000000000000000000000000000000000000000000000000000000008152600160a060020a0386811660048301526024820185905291519190921691634a2258989160448083019260209291908290030181600087803b15801561301e57600080fd5b505af1158015613032573d6000803e3d6000fd5b505050506040513d602081101561304857600080fd5b505115156130a0576040805160e560020a62461bcd02815260206004820152600c60248201527f42616e6b2070726f626c656d0000000000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a0383166000908152601760205260409020546130c9908263ffffffff61315716565b600160a060020a038416600090815260176020526040902055613147565b6130f0836121a4565b811115613147576040805160e560020a62461bcd02815260206004820152601460248201527f4e6f20617661696c61626c652062616c616e6365000000000000000000000000604482015290519081900360640190fd5b6131528383836132d7565b505050565b60006115c283836040805190810160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506134f8565b6000828201838110156115c2576040805160e560020a62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000610e45613203612bab565b8484612e9c565b6132148282612d1c565b611a8282613220612bab565b610f1584606060405190810160405280602481526020017f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f7781526020017f616e6365000000000000000000000000000000000000000000000000000000008152506001600089600160a060020a0316600160a060020a0316815260200190815260200160002060006132b0612bab565b600160a060020a03168152602081019190915260400160002054919063ffffffff6134f816565b600160a060020a038316151561335d576040805160e560020a62461bcd02815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a03821615156133e3576040805160e560020a62461bcd02815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60408051606081018252602681527f45524332303a207472616e7366657220616d6f756e74206578636565647320626020808301919091527f616c616e6365000000000000000000000000000000000000000000000000000082840152600160a060020a038616600090815290819052919091205461346991839063ffffffff6134f816565b600160a060020a03808516600090815260208190526040808220939093559084168152205461349e908263ffffffff61319916565b600160a060020a038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000818484111561358a5760405160e560020a62461bcd0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561354f578181015183820152602001613537565b50505050905090810190601f16801561357c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600160a060020a0381161515613618576040805160e560020a62461bcd02815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600554604051600160a060020a0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a360058054600160a060020a039092166101000274ffffffffffffffffffffffffffffffffffffffff0019909216919091179055565b6000818184116136e15760405160e560020a62461bcd0281526004018080602001828103825283818151815260200191508051906020019080838360008381101561354f578181015183820152602001613537565b50600083858115156136ef57fe5b049594505050505056fe4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657253656e646572206d757374206265206120746f6b656e7320686f6c6465720000a165627a7a723058203da77f0757f88f66ae477e4ce30e3c7d1a2d7b1b32b015b662ad7d054ab5ea5d00290000000000000000000000007e9e8c73bac7238b9fb2e7a92c4b98aa8249fdcc0000000000000000000000001546672c2dee8b361599208b7f2840a570185763000000000000000000000000e8228f14abc1bd136066d2545e0d7774502f38220000000000000000000000000e7d89b8ca56846922508b7481c8c1552bffdd1f