Contract: Token
Malicious: no
Decompiled opcodes:
PUSH1 0xa0 PUSH1 0x40 DUP2 SWAP1 MSTORE PUSH1 0x00 PUSH1 0x80 DUP2 SWAP1 MSTORE PUSH2 0x0019 SWAP2 PUSH1 0x01 SWAP2 PUSH2 0x00fe JUMP JUMPDEST POP PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP2 ADD SWAP2 DUP3 SWAP1 MSTORE PUSH1 0x00 SWAP1 DUP2 SWAP1 MSTORE PUSH2 0x0038 SWAP2 PUSH1 0x02 SWAP2 PUSH2 0x00fe JUMP JUMPDEST POP PUSH1 0x03 DUP1 SLOAD PUSH1 0xff NOT AND PUSH1 0x12 OR SWAP1 SSTORE PUSH1 0x00 PUSH1 0x04 SSTORE PUSH1 0x05 DUP1 SLOAD PUSH1 0x01 PUSH1 0xa0 PUSH1 0x02 EXP SUB NOT AND SWAP1 SSTORE CALLVALUE DUP1 ISZERO PUSH2 0x0067 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x08b1 CODESIZE SUB DUP1 PUSH2 0x08b1 DUP4 CODECOPY DUP2 ADD PUSH1 0x40 SWAP1 DUP2 MSTORE DUP2 MLOAD PUSH1 0x20 DUP1 DUP5 ADD MLOAD SWAP3 DUP5 ADD MLOAD PUSH1 0x05 DUP1 SLOAD PUSH1 0x01 PUSH1 0xa0 PUSH1 0x02 EXP SUB NOT AND CALLER OR SWAP1 SSTORE SWAP3 DUP5 ADD DUP1 MLOAD SWAP3 SWAP1 SWAP5 ADD SWAP4 SWAP3 SWAP2 PUSH2 0x00b7 SWAP2 PUSH1 0x01 SWAP2 SWAP1 DUP6 ADD SWAP1 PUSH2 0x00fe JUMP JUMPDEST POP DUP3 MLOAD PUSH2 0x00cb SWAP1 PUSH1 0x02 SWAP1 PUSH1 0x20 DUP7 ADD SWAP1 PUSH2 0x00fe JUMP JUMPDEST POP PUSH8 0x0de0b6b3a7640000 MUL PUSH1 0x04 DUP2 SWAP1 SSTORE PUSH1 0x05 SLOAD PUSH1 0x01 PUSH1 0xa0 PUSH1 0x02 EXP SUB AND PUSH1 0x00 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 SHA3 SSTORE POP PUSH2 0x0199 SWAP1 POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH1 0x01 DUP2 PUSH1 0x01 AND ISZERO PUSH2 0x0100 MUL SUB AND PUSH1 0x02 SWAP1 DIV SWAP1 PUSH1 0x00 MSTORE PUSH1 0x20 PUSH1 0x00 SHA3 SWAP1 PUSH1 0x1f ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH1 0x1f LT PUSH2 0x013f JUMPI DUP1 MLOAD PUSH1 0xff NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x016c JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x01 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x016c JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x016c JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x01 ADD SWAP1 PUSH2 0x0151 JUMP JUMPDEST POP PUSH2 0x0178 SWAP3 SWAP2 POP PUSH2 0x017c JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH2 0x0196 SWAP2 SWAP1 JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x0178 JUMPI PUSH1 0x00 DUP2 SSTORE PUSH1 0x01 ADD PUSH2 0x0182 JUMP JUMPDEST SWAP1 JUMP JUMPDEST PUSH2 0x0709 DUP1 PUSH2 0x01a8 PUSH1 0x00 CODECOPY PUSH1 0x00 RETURN STOP PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x04 CALLDATASIZE LT PUSH2 0x008d JUMPI PUSH4 0xffffffff PUSH29 0x0100000000000000000000000000000000000000000000000000000000 PUSH1 0x00 CALLDATALOAD DIV AND PUSH4 0x06fdde03 DUP2 EQ PUSH2 0x0092 JUMPI DUP1 PUSH4 0x18160ddd EQ PUSH2 0x011c JUMPI DUP1 PUSH4 0x313ce567 EQ PUSH2 0x0143 JUMPI DUP1 PUSH4 0x33a581d2 EQ PUSH2 0x016e JUMPI DUP1 PUSH4 0x70a08231 EQ PUSH2 0x0183 JUMPI DUP1 PUSH4 0x95d89b41 EQ PUSH2 0x01a4 JUMPI DUP1 PUSH4 0xa9059cbb EQ PUSH2 0x01b9 JUMPI DUP1 PUSH4 0xbe45fd62 EQ PUSH2 0x01f1 JUMPI JUMPDEST PUSH1 0x00 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x009e JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH2 0x00a7 PUSH2 0x025a JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP1 DUP3 MSTORE DUP4 MLOAD DUP2 DUP4 ADD MSTORE DUP4 MLOAD SWAP2 SWAP3 DUP4 SWAP3 SWAP1 DUP4 ADD SWAP2 DUP6 ADD SWAP1 DUP1 DUP4 DUP4 PUSH1 0x00 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x00e1 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0x00c9 JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 DUP2 ADD SWAP1 PUSH1 0x1f AND DUP1 ISZERO PUSH2 0x010e JUMPI DUP1 DUP3 SUB DUP1 MLOAD PUSH1 0x01 DUP4 PUSH1 0x20 SUB PUSH2 0x0100 EXP SUB NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP JUMPDEST POP SWAP3 POP POP POP PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x0128 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH2 0x0131 PUSH2 0x02ed JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP2 DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x014f JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH2 0x0158 PUSH2 0x02f3 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0xff SWAP1 SWAP3 AND DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x017a JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH2 0x0131 PUSH2 0x02fc JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x018f JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH2 0x0131 PUSH1 0x01 PUSH1 0xa0 PUSH1 0x02 EXP SUB PUSH1 0x04 CALLDATALOAD AND PUSH2 0x0302 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x01b0 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH2 0x00a7 PUSH2 0x031d JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x01c5 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH2 0x01dd PUSH1 0x01 PUSH1 0xa0 PUSH1 0x02 EXP SUB PUSH1 0x04 CALLDATALOAD AND PUSH1 0x24 CALLDATALOAD PUSH2 0x037d JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP2 ISZERO ISZERO DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x01fd JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 PUSH1 0x04 PUSH1 0x44 CALLDATALOAD DUP2 DUP2 ADD CALLDATALOAD PUSH1 0x1f DUP2 ADD DUP5 SWAP1 DIV DUP5 MUL DUP6 ADD DUP5 ADD SWAP1 SWAP6 MSTORE DUP5 DUP5 MSTORE PUSH2 0x01dd SWAP5 DUP3 CALLDATALOAD PUSH1 0x01 PUSH1 0xa0 PUSH1 0x02 EXP SUB AND SWAP5 PUSH1 0x24 DUP1 CALLDATALOAD SWAP6 CALLDATASIZE SWAP6 SWAP5 PUSH1 0x64 SWAP5 SWAP3 ADD SWAP2 SWAP1 DUP2 SWAP1 DUP5 ADD DUP4 DUP3 DUP1 DUP3 DUP5 CALLDATACOPY POP SWAP5 SWAP8 POP PUSH2 0x03b2 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x02 DUP1 SLOAD PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 PUSH1 0x1f PUSH1 0x00 NOT PUSH2 0x0100 PUSH1 0x01 DUP8 AND ISZERO MUL ADD SWAP1 SWAP5 AND DUP6 SWAP1 DIV SWAP4 DUP5 ADD DUP2 SWAP1 DIV DUP2 MUL DUP3 ADD DUP2 ADD SWAP1 SWAP3 MSTORE DUP3 DUP2 MSTORE PUSH1 0x60 SWAP4 SWAP1 SWAP3 SWAP1 SWAP2 DUP4 ADD DUP3 DUP3 DUP1 ISZERO PUSH2 0x02e3 JUMPI DUP1 PUSH1 0x1f LT PUSH2 0x02b8 JUMPI PUSH2 0x0100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x02e3 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x00 MSTORE PUSH1 0x20 PUSH1 0x00 SHA3 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x01 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x02c6 JUMPI DUP3 SWAP1 SUB PUSH1 0x1f AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x04 SLOAD SWAP1 JUMP JUMPDEST PUSH1 0x03 SLOAD PUSH1 0xff AND SWAP1 JUMP JUMPDEST PUSH1 0x00 NOT DUP2 JUMP JUMPDEST PUSH1 0x01 PUSH1 0xa0 PUSH1 0x02 EXP SUB AND PUSH1 0x00 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 SHA3 SLOAD SWAP1 JUMP JUMPDEST PUSH1 0x01 DUP1 SLOAD PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 PUSH1 0x1f PUSH1 0x02 PUSH1 0x00 NOT PUSH2 0x0100 DUP8 DUP10 AND ISZERO MUL ADD SWAP1 SWAP6 AND SWAP5 SWAP1 SWAP5 DIV SWAP4 DUP5 ADD DUP2 SWAP1 DIV DUP2 MUL DUP3 ADD DUP2 ADD SWAP1 SWAP3 MSTORE DUP3 DUP2 MSTORE PUSH1 0x60 SWAP4 SWAP1 SWAP3 SWAP1 SWAP2 DUP4 ADD DUP3 DUP3 DUP1 ISZERO PUSH2 0x02e3 JUMPI DUP1 PUSH1 0x1f LT PUSH2 0x02b8 JUMPI PUSH2 0x0100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x02e3 JUMP JUMPDEST PUSH1 0x00 PUSH1 0x60 PUSH2 0x038a DUP5 PUSH2 0x03e5 JUMP JUMPDEST ISZERO PUSH2 0x03a1 JUMPI PUSH2 0x039a DUP5 DUP5 DUP4 PUSH2 0x0419 JUMP JUMPDEST SWAP2 POP PUSH2 0x03ab JUMP JUMPDEST PUSH2 0x039a DUP5 DUP5 PUSH2 0x0609 JUMP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x00 PUSH2 0x03bd DUP5 PUSH2 0x03e5 JUMP JUMPDEST ISZERO PUSH2 0x03d4 JUMPI PUSH2 0x03cd DUP5 DUP5 DUP5 PUSH2 0x0419 JUMP JUMPDEST SWAP1 POP PUSH2 0x03de JUMP JUMPDEST PUSH2 0x03cd DUP5 DUP5 PUSH2 0x0609 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x00 DUP1 PUSH1 0x00 PUSH2 0x03f3 DUP5 PUSH2 0x0302 JUMP JUMPDEST LT PUSH2 0x03fc JUMPI POP DUP2 EXTCODESIZE JUMPDEST PUSH1 0x00 DUP2 GT ISZERO PUSH2 0x040e JUMPI PUSH1 0x01 SWAP2 POP PUSH2 0x0413 JUMP JUMPDEST PUSH1 0x00 SWAP2 POP JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x00 DUP1 DUP4 PUSH2 0x0426 CALLER PUSH2 0x0302 JUMP JUMPDEST LT ISZERO PUSH2 0x0431 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST PUSH2 0x0443 PUSH2 0x043d CALLER PUSH2 0x0302 JUMP JUMPDEST DUP6 PUSH2 0x06b0 JUMP JUMPDEST CALLER PUSH1 0x00 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 SHA3 SSTORE PUSH2 0x0465 PUSH2 0x045f DUP7 PUSH2 0x0302 JUMP JUMPDEST DUP6 PUSH2 0x06c5 JUMP JUMPDEST PUSH1 0x01 PUSH1 0xa0 PUSH1 0x02 EXP SUB DUP7 AND PUSH1 0x00 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 SHA3 SWAP5 SWAP1 SWAP5 SSTORE SWAP3 MLOAD PUSH32 0xc0ee0b8a00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE CALLER PUSH1 0x04 DUP3 ADD DUP2 DUP2 MSTORE PUSH1 0x24 DUP4 ADD DUP11 SWAP1 MSTORE PUSH1 0x60 PUSH1 0x44 DUP5 ADD SWAP1 DUP2 MSTORE DUP10 MLOAD PUSH1 0x64 DUP6 ADD MSTORE DUP10 MLOAD DUP13 SWAP9 POP SWAP6 SWAP7 PUSH4 0xc0ee0b8a SWAP7 SWAP4 SWAP6 DUP13 SWAP6 DUP13 SWAP6 PUSH1 0x84 SWAP1 SWAP2 ADD SWAP3 DUP7 ADD SWAP2 DUP2 SWAP1 DUP5 SWAP1 DUP5 SWAP1 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x0501 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0x04e9 JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 DUP2 ADD SWAP1 PUSH1 0x1f AND DUP1 ISZERO PUSH2 0x052e JUMPI DUP1 DUP3 SUB DUP1 MLOAD PUSH1 0x01 DUP4 PUSH1 0x20 SUB PUSH2 0x0100 EXP SUB NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP JUMPDEST POP SWAP5 POP POP POP POP POP PUSH1 0x00 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x00 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x054f JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x0563 JUMPI RETURNDATASIZE PUSH1 0x00 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x00 REVERT JUMPDEST POP POP POP POP DUP3 PUSH1 0x40 MLOAD DUP1 DUP3 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 DUP1 DUP4 DUP4 JUMPDEST PUSH1 0x20 DUP4 LT PUSH2 0x0597 JUMPI DUP1 MLOAD DUP3 MSTORE PUSH1 0x1f NOT SWAP1 SWAP3 ADD SWAP2 PUSH1 0x20 SWAP2 DUP3 ADD SWAP2 ADD PUSH2 0x0578 JUMP JUMPDEST MLOAD DUP2 MLOAD PUSH1 0x20 SWAP4 DUP5 SUB PUSH2 0x0100 EXP PUSH1 0x00 NOT ADD DUP1 NOT SWAP1 SWAP3 AND SWAP2 AND OR SWAP1 MSTORE PUSH1 0x40 DUP1 MLOAD SWAP3 SWAP1 SWAP5 ADD DUP3 SWAP1 SUB DUP3 SHA3 DUP11 DUP4 MSTORE SWAP4 MLOAD SWAP4 SWAP6 POP PUSH1 0x01 PUSH1 0xa0 PUSH1 0x02 EXP SUB DUP12 AND SWAP5 POP CALLER SWAP4 PUSH32 0x5998a692901c98bc4a7dd88a9aee1eb36464008fd7c594a1b5a70d41e664bf1a SWAP4 POP SWAP2 DUP3 SWAP1 SUB ADD SWAP1 LOG4 POP PUSH1 0x01 SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x00 DUP2 PUSH2 0x0615 CALLER PUSH2 0x0302 JUMP JUMPDEST LT ISZERO PUSH2 0x0620 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST PUSH2 0x0632 PUSH2 0x062c CALLER PUSH2 0x0302 JUMP JUMPDEST DUP4 PUSH2 0x06b0 JUMP JUMPDEST CALLER PUSH1 0x00 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 SHA3 SSTORE PUSH2 0x0654 PUSH2 0x064e DUP5 PUSH2 0x0302 JUMP JUMPDEST DUP4 PUSH2 0x06c5 JUMP JUMPDEST PUSH1 0x01 PUSH1 0xa0 PUSH1 0x02 EXP SUB DUP5 AND PUSH1 0x00 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 SWAP2 DUP3 SWAP1 SHA3 SWAP4 SWAP1 SWAP4 SSTORE DUP1 MLOAD DUP6 DUP2 MSTORE SWAP1 MLOAD SWAP2 SWAP3 CALLER SWAP3 PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef SWAP3 DUP2 SWAP1 SUB SWAP1 SWAP2 ADD SWAP1 LOG3 POP PUSH1 0x01 SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x00 DUP2 DUP4 LT ISZERO PUSH2 0x06bf JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP SWAP1 SUB SWAP1 JUMP JUMPDEST PUSH1 0x00 DUP2 PUSH1 0x00 NOT SUB DUP4 GT ISZERO PUSH2 0x06d8 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP ADD SWAP1 JUMP STOP LOG1 PUSH6 0x627a7a723058 SHA3 CALLDATASIZE PUSH12 0x9a1add54da05f9de47ae02ee ORIGIN CODECOPY UNKNOWN_0x24 NUMBER UNKNOWN_0xb4 LOG3 SAR PUSH10 0x91079d987a4b25a85d4c STOP UNKNOWN_0x29 STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP PUSH1 0x00 STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP LOG0 STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP SDIV CREATE2 UNKNOWN_0xe1 STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP LT SLOAD PUSH10 0x6d65746f636f696e2054 PUSH16 0x6b656e00000000000000000000000000 STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP DIV SLOAD SLOAD NUMBER SLOAD STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP