0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c806370a082311161006e57806370a08231146101375780638da5cb5b1461015f57806395d89b411461016d578063a9059cbb1461018c578063cbd2ecd21461019f578063dd62ed3e146101b2575f80fd5b806306fdde03146100aa578063095ea7b3146100e457806318160ddd1461010757806323b872dd1461011e578063313ce56714610131575b5f80fd5b60408051808201909152600c81526b2232b9ba34b73caa37b5b2b760a11b60208201525b6040516100db91906105fd565b60405180910390f35b6100f76100f2366004610663565b6101ea565b60405190151581526020016100db565b6604155b7a0b664a5b6040519081526020016100db565b6100f761012c36600461068b565b610256565b5f610110565b6101106101453660046106c4565b6001600160a01b03165f9081526020819052604090205490565b6040515f81526020016100db565b60408051808201909152600381526244495960e81b60208201526100ce565b6100f761019a366004610663565b6103b9565b6100f76101ad36600461068b565b610453565b6101106101c03660046106e4565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b335f8181526001602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906102449086815260200190565b60405180910390a35060015b92915050565b6001600160a01b0383165f9081526020819052604081205482808210156102985760405162461bcd60e51b815260040161028f90610715565b60405180910390fd5b8584336001600160a01b038316146102ec576001600160a01b0382165f9081526001602090815260408083203384529091529020548111156102ec5760405162461bcd60e51b815260040161028f9061075a565b6001600160a01b038881165f8181526020818152604080832080548c90039055938b168083529184902080548b019055925189815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3600194506001600160a01b0382165f9081526001602090815260408083203384529091529020546604155b7a0b664a1911156103ae576001600160a01b0382165f9081526001602090815260408083203384529091529020805482900390555b505050509392505050565b335f9081526020819052604081205482808210156103e95760405162461bcd60e51b815260040161028f90610715565b335f81815260208181526040808320805489900390556001600160a01b03891680845292819020805489019055518781529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3506001949350505050565b5f8382336001600160a01b038316146104a8576001600160a01b0382165f9081526001602090815260408083203384529091529020548111156104a85760405162461bcd60e51b815260040161028f9061075a565b336001600160a01b038716036105005760405162461bcd60e51b815260206004820152601a60248201527f4449593a20506c656173652075736520617070726f766528292e000000000000604482015260640161028f565b6001600160a01b038087165f908152600160209081526040808320938916835292905290812080548692906105369084906107a1565b90915550506001600160a01b038681165f818152600160209081526040808320948a16808452948252918290205491519182527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3600192506001600160a01b0382165f9081526001602090815260408083203384529091529020546604155b7a0b664a1911156105f4576001600160a01b0382165f9081526001602090815260408083203384529091529020805482900390555b50509392505050565b5f6020808352835180828501525f5b818110156106285785810183015185820160400152820161060c565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461065e575f80fd5b919050565b5f8060408385031215610674575f80fd5b61067d83610648565b946020939093013593505050565b5f805f6060848603121561069d575f80fd5b6106a684610648565b92506106b460208501610648565b9150604084013590509250925092565b5f602082840312156106d4575f80fd5b6106dd82610648565b9392505050565b5f80604083850312156106f5575f80fd5b6106fe83610648565b915061070c60208401610648565b90509250929050565b60208082526025908201527f4449593a207472616e7366657220616d6f756e7420657863656564732062616c60408201526430b731b29760d91b606082015260800190565b60208082526027908201527f4449593a207472616e7366657220616d6f756e74206578636565647320616c6c60408201526637bbb0b731b29760c91b606082015260800190565b8082018082111561025057634e487b7160e01b5f52601160045260245ffdfea2646970667358221220611d21ff6474033dec63024b9409cd173284ca9da2f9104ef1d8627cd0d79a6864736f6c63430008140033
0x60a060405260405162000c5738038062000c578339810160408190526200002691620002ed565b6001600160a01b03821660808190525f8181527fd533709016093afe938749d4424e6017341958a7ab03695550ccb3def7fb2d146020526040908190206604155b7a0b664a19908190559051732002021020031229201507012018061852013142915f8051602062000c3783398151915291620000a591815260200190565b60405180910390a35f805b82518110156200019157828181518110620000cf57620000cf620003d1565b6020908102919091018101516001600160a01b0381165f81815280845260409081902065061cfbe4234890819055905190815291945091732002021020031229201507012018061852013142915f8051602062000c17833981519152910160405180910390a36001600160a01b038281165f818152600160209081526040808320948916808452948252918290206604155b7a0b664a199081905591519182525f8051602062000c37833981519152910160405180910390a3600101620000b0565b506080516001600160a01b03165f908152602081905260408120805466025d34ec84de9b9290620001c4908490620003e5565b90915550507377777dcaefeac067f21162cd2f48e5b5db0a2b975f90815260209081527fe49346499fa99dacefa511f1261c5b3a19bc9ad51dc90a90128ee72929cddc1f805466018121b2814a2701905560805160405166025d34ec84de9b81526001600160a01b0390911691732002021020031229201507012018061852013142915f8051602062000c17833981519152910160405180910390a360405166018121b2814a2781527377777dcaefeac067f21162cd2f48e5b5db0a2b9790732002021020031229201507012018061852013142905f8051602062000c178339815191529060200160405180910390a35050506200040b565b80516001600160a01b0381168114620002d4575f80fd5b919050565b634e487b7160e01b5f52604160045260245ffd5b5f8060408385031215620002ff575f80fd5b6200030a83620002bd565b602084810151919350906001600160401b038082111562000329575f80fd5b818601915086601f8301126200033d575f80fd5b815181811115620003525762000352620002d9565b8060051b604051601f19603f830116810181811085821117156200037a576200037a620002d9565b60405291825284820192508381018501918983111562000398575f80fd5b938501935b82851015620003c157620003b185620002bd565b845293850193928501926200039d565b8096505050505050509250929050565b634e487b7160e01b5f52603260045260245ffd5b808201808211156200040557634e487b7160e01b5f52601160045260245ffd5b92915050565b6080516107f6620004215f395f50506107f65ff3fe608060405234801561000f575f80fd5b50600436106100a6575f3560e01c806370a082311161006e57806370a08231146101375780638da5cb5b1461015f57806395d89b411461016d578063a9059cbb1461018c578063cbd2ecd21461019f578063dd62ed3e146101b2575f80fd5b806306fdde03146100aa578063095ea7b3146100e457806318160ddd1461010757806323b872dd1461011e578063313ce56714610131575b5f80fd5b60408051808201909152600c81526b2232b9ba34b73caa37b5b2b760a11b60208201525b6040516100db91906105fd565b60405180910390f35b6100f76100f2366004610663565b6101ea565b60405190151581526020016100db565b6604155b7a0b664a5b6040519081526020016100db565b6100f761012c36600461068b565b610256565b5f610110565b6101106101453660046106c4565b6001600160a01b03165f9081526020819052604090205490565b6040515f81526020016100db565b60408051808201909152600381526244495960e81b60208201526100ce565b6100f761019a366004610663565b6103b9565b6100f76101ad36600461068b565b610453565b6101106101c03660046106e4565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b335f8181526001602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906102449086815260200190565b60405180910390a35060015b92915050565b6001600160a01b0383165f9081526020819052604081205482808210156102985760405162461bcd60e51b815260040161028f90610715565b60405180910390fd5b8584336001600160a01b038316146102ec576001600160a01b0382165f9081526001602090815260408083203384529091529020548111156102ec5760405162461bcd60e51b815260040161028f9061075a565b6001600160a01b038881165f8181526020818152604080832080548c90039055938b168083529184902080548b019055925189815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3600194506001600160a01b0382165f9081526001602090815260408083203384529091529020546604155b7a0b664a1911156103ae576001600160a01b0382165f9081526001602090815260408083203384529091529020805482900390555b505050509392505050565b335f9081526020819052604081205482808210156103e95760405162461bcd60e51b815260040161028f90610715565b335f81815260208181526040808320805489900390556001600160a01b03891680845292819020805489019055518781529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3506001949350505050565b5f8382336001600160a01b038316146104a8576001600160a01b0382165f9081526001602090815260408083203384529091529020548111156104a85760405162461bcd60e51b815260040161028f9061075a565b336001600160a01b038716036105005760405162461bcd60e51b815260206004820152601a60248201527f4449593a20506c656173652075736520617070726f766528292e000000000000604482015260640161028f565b6001600160a01b038087165f908152600160209081526040808320938916835292905290812080548692906105369084906107a1565b90915550506001600160a01b038681165f818152600160209081526040808320948a16808452948252918290205491519182527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3600192506001600160a01b0382165f9081526001602090815260408083203384529091529020546604155b7a0b664a1911156105f4576001600160a01b0382165f9081526001602090815260408083203384529091529020805482900390555b50509392505050565b5f6020808352835180828501525f5b818110156106285785810183015185820160400152820161060c565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461065e575f80fd5b919050565b5f8060408385031215610674575f80fd5b61067d83610648565b946020939093013593505050565b5f805f6060848603121561069d575f80fd5b6106a684610648565b92506106b460208501610648565b9150604084013590509250925092565b5f602082840312156106d4575f80fd5b6106dd82610648565b9392505050565b5f80604083850312156106f5575f80fd5b6106fe83610648565b915061070c60208401610648565b90509250929050565b60208082526025908201527f4449593a207472616e7366657220616d6f756e7420657863656564732062616c60408201526430b731b29760d91b606082015260800190565b60208082526027908201527f4449593a207472616e7366657220616d6f756e74206578636565647320616c6c60408201526637bbb0b731b29760c91b606082015260800190565b8082018082111561025057634e487b7160e01b5f52601160045260245ffdfea2646970667358221220611d21ff6474033dec63024b9409cd173284ca9da2f9104ef1d8627cd0d79a6864736f6c63430008140033ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9250000000000000000000000007777396948e32f6810cfb7f5be678a53d36a77770000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000900000000000000000000000000001c1d6ab92f943ed4a31da8f447fd9658996000000000000000000000000011119c3a27d5d7e13cb52053af58b2dbddcfe05100000000000000000000000022222ec77c520bdb7d6a2450c3db3c5c138c437200000000000000000000000033339be5d3c5c7ae99c1532df8a09f859770b3e30000000000000000000000004444023b8e794ecd3a21335fca22675739bd7914000000000000000000000000555599f812dc2cf428d67339221e2b066e7fcae500000000000000000000000066660bd655e77b2d8b0ad9f87b4c48d7f284e9b600000000000000000000000077777dcaefeac067f21162cd2f48e5b5db0a2b97000000000000000000000000888853cfdab45eb0608acc157c6295e8efd617a8