608060405234801561000f575f80fd5b506103d28061001d5f395ff3fe608060405234801561000f575f80fd5b50600436106100b9575f3560e01c806370a0823111610072578063a9059cbb11610058578063a9059cbb1461010f578063daea85c5146101b6578063dd62ed3e146101ca575f80fd5b806370a082311461016757806395d89b411461017a575f80fd5b806318160ddd116100a257806318160ddd1461013557806323b872dd1461014c578063313ce5671461015f575f80fd5b806306fdde03146100bd578063095ea7b31461010f575b5f80fd5b6100f96040518060400160405280600581526020017f457468657200000000000000000000000000000000000000000000000000000081525081565b6040516101069190610259565b60405180910390f35b61012561011d3660046102ea565b600192915050565b6040519015158152602001610106565b668aa6cdbd38567d5b604051908152602001610106565b61012561015a366004610312565b6101e7565b61013e601281565b61013e61017536600461034b565b505f90565b6100f96040518060400160405280600381526020017f455448000000000000000000000000000000000000000000000000000000000081525081565b6101256101c436600461034b565b50600190565b61013e6101d836600461036b565b670de0b6b3a763ffff92915050565b5f8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161024791815260200190565b60405180910390a35060019392505050565b5f6020808352835180828501525f5b8181101561028457858101830151858201604001528201610268565b505f6040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff811681146102e5575f80fd5b919050565b5f80604083850312156102fb575f80fd5b610304836102c2565b946020939093013593505050565b5f805f60608486031215610324575f80fd5b61032d846102c2565b925061033b602085016102c2565b9150604084013590509250925092565b5f6020828403121561035b575f80fd5b610364826102c2565b9392505050565b5f806040838503121561037c575f80fd5b610385836102c2565b9150610393602084016102c2565b9050925092905056fea2646970667358221220ace33904fcef68286c0808ec94ff1556e328c9f341db5984802315d45ebe3f1e64736f6c63430008150033